Skip to main content

Qué es

Suscríbase a whatsapp.echo_message.created. Recibe este evento cuando YCloud registra un eco saliente para un Agent incorporado a través de la API REST pública. Lea el contenido con formato de mensaje estándar desde whatsappMessage; no use este evento para mensajes entrantes de clientes. El contrato actual mantiene el nombre del evento sin cambios mientras expone el eco como un mensaje estándar de WhatsApp. Los campos de Agent, traspaso y enrutamiento de Inbox no forman parte de esta carga útil.

Antes de comenzar

  1. Incorpore el Agent a través de la API REST pública.
  2. Suscriba un endpoint de webhook activo en la misma cuenta a whatsapp.echo_message.created.
  3. Verifique YCloud-Signature con el cuerpo de la solicitud sin procesar, acepte cada evento de forma duradera y procéselo de manera idempotente.
Los Agents creados en la consola no emiten este webhook de cliente. La sincronización de su Inbox es un flujo independiente.
Consulte Configurar webhooks para la configuración del endpoint.

Cómo funciona

Todos los ejemplos usan identificadores de marcador de posición. Enrute mediante el type externo y lea whatsappMessage, no whatsappMetaBusinessAgent, whatsappEchoMessage o data. Deduplique entregas repetidas con el id externo. El createTime externo es la hora del evento de webhook; los campos de hora de mensajes anidados son horas de origen RFC 3339.
  • Use id o wamid para correlacionar eventos de estado posteriores.
  • Lea el texto desde text.body. Para contenido multimedia, inspeccione type y el objeto de contenido correspondiente. Los ID de multimedia no son URL públicas de descarga.
  • El teléfono del cliente y el BSUID son independientes. Cuando la devolución de llamada de origen proporciona ambos, el evento incluye to junto con recipientUserId o parentRecipientUserId. Las identidades faltantes se omiten y no se infieren unas de otras.
  • from es el número de teléfono visible de la empresa cuando la devolución de llamada de origen suministra un número de teléfono válido. No se deriva de phoneNumberId.
  • El contexto de respuesta se normaliza según el contrato estándar de mensajes. Por ejemplo, el context.id de origen se expone como context.message_id.
  • Los campos de Agent, traspaso, enrutamiento, precios y conversación no están incluidos.
  • status es el estado almacenado cuando se procesa el eco; no se garantiza que sea sent.
  • Los mensajes entrantes de clientes utilizan whatsapp.inbound_message.received. Los ecos de Business App utilizan whatsapp.smb.message.echoes.

Solicitud

YCloud envía estos cuerpos JSON en solicitudes HTTP POST a su URL de Webhook configurada.

Respuesta

Devuelva una respuesta 2xx tras aceptar cada evento de forma duradera. Procese el trabajo lento de manera asíncrona.

Eco de texto saliente

Solicitud

Almacene el texto de whatsappMessage.text.body. id y wamid vinculan eventos de estado posteriores.

Respuesta

Explicación

Lea el texto recibido como eco desde whatsappMessage.text.body. Use id o wamid para correlacionar eventos de estado posteriores.

Eco de imagen saliente

Solicitud

El contenido del mensaje varía según el tipo. Trate los ID de multimedia como referencias del proveedor, no como URL públicas de descarga.

Respuesta

Explicación

Use type para seleccionar el objeto de contenido coincidente. Trate el id de multimedia como una referencia del proveedor.

Ejemplos relacionados