Ricardo Infante

Members
  • Content Count

    25
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Ricardo Infante

  1. Solucionado. Se puede seguir la documentación para enviar mensajes posventa. La dificultad era que la documentación no dice cual es el atributo $pack_id ya que el mismo no sale o sale (null), entonces al crear un mensaje se puede reemplazar por el número de orden. Donde $PACK_ID se puede substituir por el número de orden. Les dejo un ejemplo completo: $body = array( 'from' => array( 'user_id' => 'XXXXXXX', 'email' => "XXXXXXX@gmail.com" ), 'to' => [array('user_id' => $order_data_buyerid , 'resource' => 'orders', 'resource_id' => $order_data_id , 'site_id' => 'MLV')], 'subject' => 'mensaje', 'text' => 'Mensaje que se quiere enviar al comprador', ); $response = $meli->post('/messages/packs/'.$resource.'/sellers/XXXXXXX', $body, $params); echo "<pre>"; print_r($response); echo "</pre>"; } *Quizás no sea el mejor ejemplo ya que lo estoy puliendo. Pero ya funciona.
  2. Hola a todos, La manera en que se explica la nueva documentación es bastante confusa, alguien tendrá algo hecho con PHP para el envío de mensaje automático a los compradores? Ya que ha cambiado y dejado de funcionar desde el 15/01/2020 por lo menos en Venezuela.
  3. Muchísimas gracias, realmente era más fácil de lo que pensaba. Voy a probar.
  4. Hola de momento amigo lo tengo muy crudo porque es para el manejo de mi cuenta, pero cualquier ayuda que desees me escribes por privado. Salu2
  5. Claro, y cómo se lee el array obtenido, eso es lo que he intentado y no me funciona, supongo que en el loop podría leer el array y obtener el ID. A ver si estoy en lo correcto, si lo hago inmediatamente luego de publicar podré leer ese array que da como respuesta la api rest? file_get_contents('php://input') Intenté pero no me lo lee, hice algo así: $id = $itemInfo['body']->id
  6. Si, no se si estoy por buen camino por lo siguiente, estoy sincronizando los productos de dos cuentas en mercadolibre, y para ello hice una base de datos donde están los ID de los artículos de la cuenta principal y quiero que cuando yo clone el artículo en la segunda cuenta, este ID nuevo que se crea quede registrado en mi base de datos para que luego pueda hacer actulizaciones. Por lo que, voy a hacer un loop, en donde se cree un nuevo artículo en la segunda cuenta y mientras se corre esa instrucción, se registre el nuevo id de la segunda cuenta en mi base de datos. Cómo hago para acceder a ese resource que sale al publicar. En pantalla se muestra si hago un Print_r del verbo put, pero no puedo acceder a la respuesta, esto es posible?
  7. Hola amigos, tengo el siguiente problema. quiero registrar el número ID que asigna mercadolibre a un producto nuevo en el momento en que se publica. Cuando consulto en cónsola la respuesta tiene el número id, pero no sé cómo acceder a el. Estoy confundido, intenté con php://input, pero al parecer no se puede acceder a esos datos. Alguna idea? Array ( [body] => stdClass Object ( [id] => MLV526736105 <<<<----- [site_id] => MLV [title] => Item De Test - No Ofertar [subtitle] => [seller_id] => 96773693 [category_id] => MLV60184 [official_store_id] => [price] => 10 [base_price] => 10 [original_price] => [currency_id] => VES [initial_quantity] => 1 [available_quantity] => 1 [sold_quantity] => 0 [sale_terms] => Array (
  8. Hola, no lo obtienes directo de la notificación, te vas al recurso que viene siendo el número de orden. Ejmp: $data = json_decode(file_get_contents('php://input'), true);//Con esto atrapas la informacion que te envia ML $resource = $data['resource']; //Aqui creas tu variable que contiene el resource $meli = new Meli($appId, $secretKey, $token); //Crea la sesion de ML $params = array('access_token' => $token); $order_data = $meli->get($resource, $params);//Haces un GET a la API para obtener los datos de la orden $order_data_buyerid = $order_data['body']->buyer->id; $order_data_id = $order_data['body']->id; //SACAMOS MAS DATOS DE LA ORDEN $urlorden = '/orders/'.$order_data_id.''; $orden = $meli->get($urlorden, $params); En la variable $orden están todos los atributos de la orden. Si quieres sacar el nombre del cliente sería algo así: //nombre de comprador $first_name = $orden['body']->buyer->first_name; $last_name = $orden['body']->buyer->last_name; $nombre_comprador = $first_name .' '. $last_name;
  9. Hola me pasa igual desde hace una semana en MLV Venezuela, alguien ha podido arreglar este error?
  10. Hola, recibimos también el mismo error desde Venezuela. Pudiste solucionarlo?
  11. Hola mi nombre es ricardo, Desde hace unas semanas he dejado de poder controlar las notificaciones porque han cambiado los id de las notificaciones a un formato que no conozco. Y todo ha dejado de funcionar. Antes: resource = 17455692323 Ahora _id = f2554f1ff249c68d3336986ee4 resource = /order/17455692323 ??????? Bien.. No se si es un error de la Api de mercadolibre o han hecho este cambio por alguna razón sin notificar. Alguien más ha de tener este problema? Gracias
  12. Te envía notificaciones del app que previamente autorizaste.
  13. Hola, según la documentación create_orders también hace notificaciones para muchos eventos, no solo cuando se crea la orden.. Cómo se filtran si el json no lo menciona.
  14. Hola alguien sabe por que se mandan varios mensajes cuando el cliente compra por mercadopago?
  15. No se puede consultar todos los item de una sola vez?, si son más de 50 resultados cómo se hace?
  16. Ok en la app tengo direccionado la lectura de notificaciones a este script. y da error 404 <?php require 'Meli/meli.php'; require 'Meli/configApp.php'; # CONECTAR A BASE DE DATOS mysql_connect('localhost', 'xxxxxx', 'xxxxxx'); mysql_select_db('xxxxxx'); $sql= "SELECT * FROM meli WHERE id = '1' "; $result = mysql_query($sql); $row = mysql_fetch_assoc($result); $appId = $row['appId']; $secretKey = $row['secretKey']; $token = $row['token']; $r_token = $row['r_token']; # CONSULTAMOS LAS NOTIFICACIONES $data = json_decode(file_get_contents('php://input'), true);//Con esto atrapas la informacion que te envia ML $resource = $data['resource']; //Aqui creas tu variable que contiene el resource $meli = new Meli($appId, $secretKey, $token); //Crea la sesion de ML $params = array('access_token' => $token); $order_data = $meli->get($resource, $params);//Haces un GET a la API para obtener los datos de la orden $order_data_buyerid = $order_data['body']->buyer->id; $order_data_id = $order_data['body']->id; //creacion de mensaje $body = array( 'from' => array( 'user_id' => 'XXXXXXX'//este dato lo oculto por seguridad ), 'to' => [array('user_id' => $order_data_buyerid , 'resource' => 'orders', 'resource_id' => $order_data_id , 'site_id' => 'MLV')], 'subject' => 'Prueba', 'text' => array('plain' => 'Hola muchas gracias por tu compra, Ten un excelente dia'), ); $response = $meli->post('/messages', $body, $params); echo '<pre>'; print_r($order_data); print_r($response); echo '</pre>';
  17. SE QUEDA EN BUCLE Y ENVÍA MUCHOS MENSAJES. PORQUE? # CONSULTAMOS LAS NOTIFICACIONES $data = json_decode(file_get_contents('php://input'), true);//Con esto atrapas la informacion que te envia ML $resource = $data['resource']; //Aqui creas tu variable que contiene el resource $ml_session = new Meli($appId, $secretKey, $token); //Crea la sesion de ML $params = array('access_token' => $token); $order_data = $ml_session->get($resource, $params);//Haces un GET a la API para obtener los datos de la orden $order_data_buyerid = $order_data['body']->buyer->id; $order_data_id = $order_data['body']->id; $site_id = $order_data['body']->site_id; echo $site_id; echo $order_data_id ; $message_body = array( "from" => array( "user_id" => "XXXXXXX" ), "to" => [array("user_id" => "84476670", "resource" => "orders", "resource_id" => "1656000013", "site_id" => "MLV")], "subject" => "Prueba", "text" => array("plain" => "prueba"), ); $message_send = $ml_session->post('/messages',$message_body, $params);
  18. Hola amigos cómo en PHP contar los menesajes totales que están sin leer en el Array? "user_id": "XXXXXX", "results": [ { "order_id": "1645027493", "count": 1 }, { "order_id": "1645098715", "count": 1 }, { "order_id": "1645349894", "count": 1 }, { "order_id": "1647178750", "count": 1 }, { "order_id": "1647831741", "count": 1 }, { "order_id": "1649128303", "count": 1 }, { "order_id": "1650864771", "count": 2 }, { "order_id": "1650888741", "count": 1 }, { "order_id": "1654479486", "count": 2 }, { "order_id": "1655059414", "count": 1 }, { "order_id": "1655531672", "count": 2 }, { "order_id": "1655918367", "count": 1 }, { "order_id": "1656935777", "count": 3 }, { "order_id": "1657139232", "count": 1 }, { "order_id": "1657567298", "count": 1 }, { "order_id": "1657605506", "count": 1 }, { "order_id": "1657670101", "count": 1 } ] }
  19. Esta parte me da error, los arrays en algún punto da un error $message_body = array('from' => array('user_id' => xxxxxxxxxxx),//Aqui va tu user ID, el de tu cuenta. 'to' => [array('user_id' => $order_data_buyerid ,// A quien le enviamos el mensaje 'resource'=> 'orders', 'resource_id'=> $order_data_id,//El id de la orden 'site_id' => "MLM")],//Que ML usamos, en mi caso es Mexico, por eso la M 'text' => array('plain' => 'Hola muchas gracias por tu compra, Ten un excelente dia'), );
  20. Hola Fernando, ya leí la documentación he hice un par de pruebas. Sin embargo, cómo puedo armar una app en PHP que reciba esa notificación y automáticamente envíe el mensaje? ya se usar la parte de autorización y el manejo de formato json y pase de post vía curl. Primera vez que trabajo con esto de apis.
  21. Hola, alguien tiene un ejemplo o solución en php de como enviar un mensaje automático " Gracias por tu compra... estos son las instrucciones para concretar..." a los clientes que compran. ?? Muchas gracias
  22. Hola buenas, Somos una empresa que publicamos en mercadolibre. Necesitamos que nos guíen como usar la api para enviar mensajes a clientes de forma automática cada vez que ofertan. Necesitamos enviar información de contacto, instrucciones y cuenta bancarias. Gracias de antemano.