Saltearse al contenido

Mercado Libre - Obtener Mensajes

Este modulo permite consultar los mensajes de conversaciones post-venta con compradores, ya sea de una orden especifica o listar conversaciones recientes.

Este modulo requiere credenciales de tipo Mercado Libre (OAuth) con los siguientes campos:

CampoDescripcion
access_tokenToken de acceso OAuth valido
CampoTipoRequeridoDescripcion
credentials_idstringSiID de las credenciales
pack_idstringNoID del pack/carrito
order_idstringNoID de la orden
user_idstringNoID del usuario
rolestringNoseller o buyer
statusstringNounread, unanswered
tagstringNopost_sale, pre_sale
limitnumberNoMensajes por pagina
offsetnumberNoDesplazamiento
ValorDescripcion
unreadNo leidos
unansweredSin responder
ValorDescripcion
post_saleMensajes post-venta
pre_salePreguntas pre-venta
{
"success": true,
"messages": [
{
"id": "abc123",
"from": {
"user_id": 123456789,
"role": "buyer"
},
"to": {
"user_id": 987654321,
"role": "seller"
},
"text": "Hola, cuando llega mi pedido?",
"date_created": "2024-01-15T10:30:00.000-03:00",
"status": "unread"
}
],
"pack_id": "2000001234567890",
"conversation_status": {...},
"message": "5 mensajes obtenidos"
}
{
"credentials_id": "meli_cuenta",
"order_id": "2000001234567890"
}
{
"credentials_id": "meli_cuenta",
"pack_id": "2000001234567890"
}
{
"credentials_id": "meli_cuenta",
"status": "unread"
}
{
"credentials_id": "meli_cuenta",
"status": "unanswered",
"role": "seller"
}
{
"credentials_id": "meli_cuenta",
"tag": "post_sale",
"limit": 50
}
CampoDescripcion
idID unico del mensaje
fromRemitente (user_id, role)
toDestinatario
textContenido del mensaje
date_createdFecha de envio
statusEstado (read, unread)
attachmentsArchivos adjuntos
[Webhook mensaje] -> [MeliGetMessages] -> [Clasificar] -> [MeliSendMessage respuesta]
[Schedule c/5min] -> [MeliGetMessages unread] -> [Alerta si hay pendientes]
[MeliGetMessages order] -> [Analizar sentimiento] -> [Clasificar satisfaccion]
// Clasificar mensajes por urgencia
const mensajes = ctx.data.messages;
const clasificados = {
urgente: [],
normal: [],
resuelto: []
};
const palabrasUrgentes = ['urgente', 'problema', 'reclamo', 'devolucion', 'reembolso'];
mensajes.forEach(m => {
const texto = m.text.toLowerCase();
if (palabrasUrgentes.some(p => texto.includes(p))) {
clasificados.urgente.push(m);
} else if (m.status === 'unread') {
clasificados.normal.push(m);
} else {
clasificados.resuelto.push(m);
}
});
ctx.data = {
total_mensajes: mensajes.length,
urgentes: clasificados.urgente.length,
pendientes: clasificados.normal.length,
resueltos: clasificados.resuelto.length,
mensajes_urgentes: clasificados.urgente
};
  • Los mensajes estan vinculados a ordenes o packs
  • El tiempo de respuesta afecta metricas de atencion
  • Los mensajes pueden incluir archivos adjuntos
  • El historial de conversacion es importante para reclamos
  • Los mensajes eliminados no se pueden recuperar