Fernando Aguirre

Members
  • Content Count

    186
  • Joined

  • Last visited

  • Days Won

    21

Everything posted by Fernando Aguirre

  1. Hola amigos. Les comparto los diferentes nombres de dominio para los diferentes siteId de ML $domains = array(//Array with domain names from siteId => Domain 'MLA' => 'com.ar',//Argentina 'MBO' => 'com.bo',//Bolivia 'MLB' => 'com.br',//Brasil 'MLC' => 'cl',//Chile 'MCO' => 'com.co',//Colombia 'MCR' => 'co.cr',//Costa Rica 'MRD' => 'com.do',//Dominicana 'MEC' => 'com.ec',//Ecuador 'MHN' => 'com.hn',//Honduras 'MGT' => 'com.gt',//Guatemala 'MLM' => 'com.mx',//Mexico 'MNI' => 'com.ni',//Nicaragua 'MPY' => 'com.py',//Paraguay 'MPA' => 'com.pa',//Panama 'MPE' => 'com.pe',//Peru 'MSV' => 'com.sv',//Salvador 'MLU' => 'com.uy',//Uruguay 'MLV' => 'com.ve'//Venezuela ); //Como usar para dirigir al usuario a su cuenta de ML $siteId = 'MLM'; $domain = $domains[$siteId]; $url = 'https://myaccount.mercadolibre.'.$domain; Y claro, tienen que guardar informacion basica de su usuario en su DB, como por ejemplo el siteId, entre otros. De esta manera su app puede ser mas dinamica conforme a los paises donde la pueden usar, por ejemplo. Saludos!
  2. Hola. Asi es, esta API esta muy basica, te ponen la informacion mas basica y nosotros ya hacemos las maravillas con ella. Saludos
  3. Hola. Esque estas mal al no guardar la informacion en tu BD y estar llamando a la API cada vez que tu cliente hace refresh a la pagina, eso no debe de hacerse, saturas la API. Y simplemente has un foreach o un for. Por ejemplo, si te dice que hay 1000 resultados, divide ese numero entre 50 y ya son las iteraciones que tienes que realizar. pero como te comento no lo hagas asi. Guarda toda la informacion basica en tu BD y con las notificaciones ve actualizando dicha informacion, o con un cronjob. La verdad todos trabajamos asi, ese offset es para que no se sature el server de ML tambien, imaginate que le pongas que mostrara 500 datos a la vez. Saludos.
  4. Hola! Claro, tienes que definir $appId, $secretKey, $token, $r_token,$con_token Cuando corras la funcion solo los sustituyes para que ya quede listo. Saludos!
  5. Hola Es correcto, solo es para facilitar el trabajo, Basicamente son post y gets que hace a ML. Puedes usar las direcciones completas https://api.mercadolibre.com/orders/111111111111?access_token=1111111111111111 Por ejemplo, y hacer post o get en tu aplicacion con las funciones de .NET y listo, no necesitas del SDK. Saludos!
  6. Hola buen dia. Abre el archivo del SDK y modifica tu mismo el error para que acepte long, tambien puedes poner el error en Github y corregirlo. Saludos
  7. Hola buen dia 1- ¿Existe forma de obtener el código automáticamente, sin intervención del usuario solo con su id y Secret key? No, es necesario que el usuario de los permisos para poder usar tu APP, una unica vez, y cuando lo haga guardas el token y el refresh para que ya no sea necesario que vuelva a autorizar y obtener el token. 2 - además de la técnica del cron job para refrescar el token, que otra técnica se podría utilizar del lado del servidor para acceder a los recursos privados de ML? Ninguna, los recursos privados, son privados, solo puedes accesar a ellos por medio de un token. Y la forma mas eficaz y sin problemas es usar el cronjob para estar actualizando el token, asi no se lo dejas al usuario y tu sistema funcionara en automatico. 3 - Esta es más por desconocimiento de la API, ¿para el caso de las notificaciones es necesario algún tipo de autenticación, o solo con la configuración del endpoint que las recibirá basta? En tu endpoint manerajas la notificacion con la informacion que te brinda, ya aqui es donde tu "pediras" informacion a ML con el SDK. 4 - Como puedo obtener el JSON que me llega de la notificación?, me refiero a si llega algo como body.data o algo similar. ML te envia la informacion en un POST, verifica la documentacion de Node para ver como obtener la informacion de un post. 5 - cuando se crea la aplicación, en la opción de tópicos, cual es la diferencia entre orders y orders_v2. y cual es aconsejable utilizar? El orders_v2 es el que funciona actualmente en ML. Lee la documentacion, ahi vienen las diferencias. Creo que te hace falta leer un poco mas y entender un poco mas. No pasa nada, a todos nos pasa. Saludos!
  8. Hola Me llego un correo con informacion para facturacion, pero no sirve para Mexico, por si eres de aqui: https://developers.mercadolibre.com/es_ar/facturacion Es esa informacion que esta en la documentacion de la API pero se les olvida publicarla. Saludos y una disculpa
  9. Hola, Asi es, aqui no se da soporte a plugins. Por aqui anda un usuario que se llama WOOMELLY y el ofrece un plugin que si sirve. Saludos
  10. Hola. Un hola al inicio del mensaje no cuesta nada. Si estas tratando de ver las cantidades de publicaciones que no son tuyas, esos datos estan bloqueados practicamente. ML lo hizo para que los competidores no estuvieran contando ventas y que supieran cuanto es lo que vende el vecino. Si las publicaciones son propias, el numero total de productos vendidos si sera el correcto, y claro, usando token. Saludos
  11. Hola. Aqui todos somos personas, de perdida un hola al principio seria de buen gusto. Y si la misma respuesta de la API te esta respondiendo tu duda, no veo el motuvo de abrir un tema en el foro. Saludos
  12. Hola. No le tengas confianza a los datos que dan en ML, ML no te obliga a facturar por lo que muchas personas no ponen sus datos correctos, esto me refiero a que si quieres obtener los datos como RFC para facturar ante hacienda. Igual en el api de shipments viene mas informacion del usuario. Saludos!
  13. Hola Creo que tienes un error aqui: $ship=$itemventas['json']['shipping']['id']; Deberia ser, ya que la respuesta te la da en el 'body' no existe ningun objecto que se llame 'json' $ship=$itemventas['body']->shipping->id; No uses el SDK para obtener la guia, usa la direccion directamente $guia = 'https://api.mercadolibre.com/shipment_labels?shipment_ids='.$ship.'&response_type=pdf&access_token='.$token Saludos.
  14. Hola Acabo de ingresar al link que posteaste y me funciona a la perfeccion. Si te das cuenta, al momento del login no importa dd que pais seas, siempre te enviara a mercadolibre.com Saludos
  15. Hola. Si estas en linux es muy facil 0 */5 * * * php -q /path/a/tu/script.php Y listo, se va a estar ejecutando cada 5 horas el script para hacer refresh. En en login_example.php viene como hacer refresh. Saludos
  16. Hola. Descargate la app de Mercadolibre y en cada venta te avisara, es lo mas facil y rapido. En cambio si ya te pones mas geek, recibe las notificaciones y utiliza algun servicio para enviar sms, hay bastantes, o monta un servidor con una rasoberry pi y un modem gsm usb y desde ahi envias los mensajes. Igual, es mas facil descargar la app. Saludos
  17. Hola. Tambien puedes hacer un foreach Por ejemplo: $results = $data['body']->results; $count = 0; foreach ($results as $order){ $messages = $order->count; $count += $messages; } echo $count; Saludos
  18. Hola, Estas llamando a la API dos veces a lo mismo, tu urlorden es lo mismo que el resource. Generalmente el resource te dice a que objeto llamar en la api, por ejemplo $resource = '/orders/14848394' y eso te lo envia la misma notificacion. Analiza un poco el codigo amigo y trata de visualizar y entenderlo un poco mas. Saludos
  19. Hola, yo si lo implemente para una herramienta que ando probando. Lo que hago es guardar cada orden, y en otra columna pongo el shipping_id entonces, hago un foreach, y creo un array donde se crean objetos con el shipping id, por lo que si este se repite, se van a guardar todas las ordenes dentro de ese objeto, algo asi: array ( "121212121" => array ( todos los orders id referentes al shipping id), "122222222" => array ( todos los orders id referentes al shipping id), "333333333" => array ( todos los orders id referentes al shipping id), . . . . . ) Y ya de esta manera agrupo las ventas que son de carrito. Ahorita no tengo una venta con carrito, en cuanto tenga una venta te muestro como agrupo la informacion en la plataforma. Esa fue la manera mas facil que encontre, sin que se pusiera tan compleja la cosa. Saludos!
  20. Hola a todos! Alguien sabe si se va a hacer algun evento para developers mexicanos? Saludos!
  21. Hola. Tu tienes que definir tu estructura, la API de ML te va a brindar la informacion basica de las ordenes y demas, ya lo que tu quieras hacer con esta informacion es tu decision, por lo tanto como manejarla tambien. Utiliza algo que te haya funcionado antes y dependiendo del resultado final que ocupes, adapta la estructura. ML te va a dar la informacion en formato JSON, ahi tu sabras como guardar esa informacion y extraer lo que realmente necesitas. Recuerda activar las notificaciones para que puedas recibir actualizaciones de productos, ordenes y demas. Saludos!
  22. Hola, concuerdo con Woomelly, me inclino mas por un problema con tu servidor. Si tienes activadas las notificaciones, de forma que no te vas a dar cuenta, ML te va a estar bombardeando con notificaciones constantemente, y si estas alojado en un web hosting shared, a los que ofrecen el servicio no les va a gustar esto, y van a empezar a bloquear temporalmente las ip de ML, a fin de cuentas ellos no saben que son primordiales para ti, o de igual manera, simplemente tienen filtros. De igual manera si utilizas algun servicio como cloudfare, incluye el rango de IPs en el white list, para que no las bloqueen. Por ahi en algun hilo del foro publique el rango de IPs. Es recomendable que utilices un VPS para tu herramienta, de esta manera tu controlas la mayoria de los filtros, seguridad y demas, y tu herramienta no dependera de alguien mas que solo se enfoca en cosas basicas y generales. Yo siempre les digo a todos que la API de ML no es la que falla, en algunos casos puntuales si, si no lo que falla es nuestro codigo o servidor. Saludos!
  23. Hola. Woomelly tiene razon, supongo que esa informacion la bloquearon y generalizaron porque basicamente podias saber cuanto estaba vendiendo tu competencia, y la verdad esa informacion en las manos incorrectas, es un peligro. Como vendedor, me parece excelente esta informacion, pero como developer que desarrolla una herramienta para analizar a la competencia, si destrozo cualquier posibilidad jajaja. Saludos!
  24. Hola. A veces ML no da informacion en la API, creo que tienes que calcular esa informacion tu, es facil, guarda esa info en una base de datos, la fecha de cracion y la de respuesta, y con algun pequeño script haces el calulo, y listo. Te recuerdo que la API te va a dar la informacion basica para que tu la manipules de acuerdo a lo que necesitas, porque si no, se iba a volver muy compleja porque tendria que hacer lo que cada developer necesita. Saludos!
  25. Que gusto que se resolviera tu problema. Y no es molestia, me gusta ayudar a los demas. Y como digo, generalmente el problema no esta en la API si no en algo de nosotros jajaja. Saludos!