Azure Communication Services: eventos de mensajería avanzada
Artículo 02/27/2025
6 colaboradores
Comentarios
En este artículo
En este artículo se proporcionan las propiedades y el esquema de los eventos de mensajería avanzada de Communication Services. Para una introducción a los esquemas de eventos, consulte Esquema de eventos de Azure Event Grid .
Tipos de eventos
Azure Communication Services emite los siguientes tipos de evento de mensajería avanzada:
Respuestas de eventos
Cuando se desencadena un evento, el servicio Event Grid envía datos sobre ese evento a los puntos de conexión correspondientes.
Esta sección contiene un ejemplo del aspecto de los datos en cada evento.
Evento Microsoft.Communication.AdvancedMessageReceived
Publicado cuando la mensajería avanzada de Communication Services recibe un mensaje.
Escenario de ejemplo: un usuario de WhatsApp envía un mensaje de WhatsApp a un número de negocio de WhatsApp que está conectado a un canal de mensajería avanzada activo en un recurso de Communication Services. Como resultado, se publica un evento Microsoft.Communication.AdvancedMessageReceived
con el contenido del mensaje de WhatsApp del usuario.
Lista de atributos
Detalles de los atributos específicos de los eventos Microsoft.Communication.AdvancedMessageReceived
.
Attribute
Tipo
Aceptación de valores NULL
Descripción
channelType
string
❌
Tipo de canal del canal en el que se envió el mensaje. Por ejemplo: "whatsapp"
.
messageId
string
❌
Identificador de mensaje del evento de recepción del mensaje como GUID.
messageType
string
❌
Tipo de mensaje del evento de recepción del mensaje. Por ejemplo: "interactive"
, "sticker"
, "reaction"
.
from
string
❌
Id. de remitente que envió el mensaje.
to
string
❌
Identificador de canal que recibió el mensaje, con formato de GUID.
receivedTimestamp
DateTimeOffset
❌
Marca de tiempo en que se recibió el mensaje.
content
string
✔️
Contenido de texto del mensaje.
media
MediaContent
✔️
Contiene detalles sobre los elementos multimedia recibidos.
context
MessageContext
✔️
Contiene detalles sobre el contexto del mensaje de respuesta en caso de que el usuario responda al mensaje empresarial.
botón
ButtonContent
✔️
Contiene detalles del contenido del botón de respuesta que el usuario ha seleccionado para el mensaje de plantilla.
interactiva
InteractiveContent
✔️
Contiene detalles sobre la respuesta del mensaje interactivo, como buttonReply o listReply .
reaction
ReactionContent
✔️
Contiene detalles sobre la reacción recibida sobre el mensaje de envío empresarial.
MediaContent
Attribute
Tipo
Aceptación de valores NULL
Descripción
mimeType
string
❌
Tipo MIME de los elementos multimedia. Se usa para determinar el tipo de archivo correcto para realizar descargas multimedia.
ID
string
❌
Id. de elemento multimedia. Se usa para recuperar elementos multimedia para su descarga, con formato de GUID.
fileName
string
✔️
Nombre de archivo del archivo multimedia subyacente tal como se especificó al cargarse.
caption
string
✔️
Texto de la descripción para el objeto multimedia, si se admite y proporciona.
animated
string
✔️
Establézcalo en true si la pegatina está animada y en false en caso contrario.
MessageContext
Attribute
Tipo
Aceptación de valores NULL
Descripción
desde
string
✔️
Identificador de WhatsApp para el cliente que respondió a un mensaje entrante.
ID
string
✔️
Identificador de mensaje del mensaje enviado para una respuesta entrante.
ButtonContent
Attribute
Tipo
Aceptación de valores NULL
Descripción
text
string
✔️
Texto del botón.
payload
string
✔️
La carga, configurada por la empresa, del botón seleccionado por el usuario.
InteractiveContent
InteractiveReplyType
Valor
Descripción
buttonReply
El contenido interactivo es un botón.
listReply
El contenido interactivo es una lista.
unknown
El contenido interactivo es desconocido.
InteractiveButtonReplyContent
Attribute
Tipo
Aceptación de valores NULL
Descripción
ID
string
✔️
Id. del botón.
title
string
✔️
Título del botón.
InteractiveListReplyContent
Attribute
Tipo
Aceptación de valores NULL
Descripción
ID
string
✔️
Identificador del elemento de lista seleccionado.
title
string
✔️
Título del elemento de lista seleccionado.
descripción
string
✔️
Descripción de la fila seleccionada.
ReactionContent
Attribute
Tipo
Aceptación de valores NULL
Descripción
messageId
string
❌
Identificador de mensaje al que responde el usuario.
emoji
string
✔️
Cadena que representa la secuencia de escape de Unicode del emoji.
Ejemplos
Mensaje de texto recibido
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/sender/{sender@id}/recipient/11111111-1111-1111-1111-111111111111",
"data": {
"content": "Hello",
"channelType": "whatsapp",
"messageType": "text",
"from": "{sender@id}",
"to": "{channel-id}",
"receivedTimestamp": "2023-07-06T18:30:19+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2023-07-06T18:30:22.1921716Z"
}]
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/sender/{sender@id}/recipient/11111111-1111-1111-1111-111111111111",
"data": {
"channelType": "whatsapp",
"messageType": "image",
"media": {
"mimeType": "image/jpeg",
"id": "00000000-0000-0000-0000-000000000000",
"caption": "This is a media caption"
},
"from": "{sender@id}",
"to": "{channel-id}",
"receivedTimestamp": "2023-07-06T18:30:19+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2023-07-06T18:30:22.1921716Z"
}]
{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/acs-cpm-ppe-resources/providers/microsoft.communication/communicationservices/acscpm-whatsup-pperesource",
"subject": "advancedMessage/sender/14254360097/recipient/75476a19-a68d-4e10-806c-3680f099e069",
"data": {
"channelType": "whatsapp",
"messageType": "document",
"media": {
"mimeType": "application/pdf",
"id": "00000000-0000-0000-0000-000000000000",
"fileName": "UTSAV Mela 2024 India's Independence Day Kids Out and About Seattle.pdf"
},
"from": "14254360097",
"to": "{channel-id}",
"receivedTimestamp": "2024-12-24T06:41:56+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2024-12-24T06:41:59.1218953Z"
}
Mensaje de respuesta de lista recibido con InteractiveListReplyContent
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/sender/{sender@id}/recipient/00000000-0000-0000-0000-000000000000",
"data": {
"channelType": "whatsapp",
"messageType": "interactive",
"context": {
"from": "{receiverphonenumber@id}",
"id": "{reply-message-id}"
},
"interactive": {
"type": "listReply",
"listReply": {
"id": "priority_mail",
"title": "Priority Mail",
"description": "1–3 Days"
}
},
"from": "{sender@id}",
"to": "{channel-id}",
"receivedTimestamp": "2024-12-04T23:53:28+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2024-12-04T23:53:29.3079089Z"
}]
Mensaje de botón de respuesta recibido con InteractiveButtonReplyContent
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/sender/{sender@id}/recipient/00000000-0000-0000-0000-000000000000",
"data": {
"channelType": "whatsapp",
"messageType": "interactive",
"context": {
"from": "{receiverphonenumber@id}",
"id": "{reply-message-id}"
},
"interactive": {
"type": "buttonReply",
"buttonReply": {
"id": "agree",
"title": "Agree"
}
},
"from": "{sender@id}",
"to": "{channel-id}",
"receivedTimestamp": "2024-12-04T23:57:04+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2024-12-04T23:57:04.9459858Z"
}]
Mensaje de pegatina de respuesta recibido
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/sender/{sender@id}/recipient/00000000-0000-0000-0000-000000000000",
"data": {
"channelType": "whatsapp",
"messageType": "sticker",
"media": {
"mimeType": "image/webp",
"id": "00000000-0000-0000-0000-000000000000",
"animated": false
},
"from": "{sender@id}",
"to": "{channel-id}",
"receivedTimestamp": "2024-12-04T23:57:04+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2024-12-04T23:57:04.9459858Z"
}]
Mensaje de reacción de respuesta recibido
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/sender/{sender@id}/recipient/00000000-0000-0000-0000-000000000000",
"data": {
"channelType": "whatsapp",
"messageType": "reaction",
"reaction": {
"messageId": "{reply-message-id}",
"emoji": "👍"
},
"from": "{sender@id}",
"to": "{channel-id}",
"receivedTimestamp": "2024-12-04T23:57:04+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2024-12-04T23:57:04.9459858Z"
}]
Mensaje ButtonContent recibido
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/sender/{sender@id}/recipient/00000000-0000-0000-0000-000000000000",
"data": {
"channelType": "whatsapp",
"messageType": "button",
"context": {
"from": "{receiverphonenumber@id}",
"id": "{reply-message-id}"
},
"button": {
"text": "Yes",
"payload": "Kat said yes"
},
"from": "{sender@id}",
"to": "{channel-id}",
"receivedTimestamp": "2024-12-20T04:03:22+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2024-12-20T04:03:22.7978135Z"
}]
Evento Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated
Publicado cuando la mensajería avanzada de Communication Services recibe una actualización de estado para una notificación de mensaje enviada anteriormente.
Escenario de ejemplo: Contoso usa un canal de mensajería avanzada activo conectado a una cuenta de WhatsApp Business para enviar un mensaje de WhatsApp a un usuario de WhatsApp. A continuación, WhatsApp responde al canal de mensajería avanzada de Contoso con el estado del mensaje enviado anteriormente. Como resultado, se publica un evento Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated
que contiene el estado del mensaje.
Lista de atributos
Detalles de los atributos específicos de los eventos Microsoft.Communication.AdvancedMessageReceived
.
Attribute
Tipo
Aceptación de valores NULL
Descripción
channelType
string
❌
Tipo de canal del canal en el que se envió el mensaje.
from
string
❌
Identificador de canal que envió el mensaje, con formato de GUID.
to
string
❌
Id. de destinatario al que se envió el mensaje.
receivedTimestamp
DateTimeOffset
❌
Marca de tiempo del mensaje.
messageId
string
✔️
Identificador del mensaje, con formato de GUID.
status
string
✔️
Estado del mensaje. Los valores posibles incluyen Sent
, Delivered
, Read
y Failed
. Para obtener más información, consulte Status .
error
ChannelEventError
✔️
Contiene los detalles de un error.
ChannelEventError
Attribute
Tipo
Aceptación de valores NULL
Descripción
channelCode
string
✔️
El código de error recibido en este canal.
channelMessage
string
✔️
El mensaje de error recibido en este canal.
Estado
Valor
Descripción
Enviada
El servicio de mensajería envió el mensaje al destinatario
Delivered (Entregado)
El destinatario del mensaje recibió el mensaje
Leer
El destinatario del mensaje leyó el mensaje
Con error
El mensaje no se pudo enviar correctamente
Ejemplos
Actualización de la entrega de mensajes
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "advancedMessage/22222222-2222-2222-2222-222222222222/status/Sent",
"data": {
"messageId": "22222222-2222-2222-2222-222222222222",
"status": "Sent",
"channelType": "whatsapp",
"from": "{sender@id}",
"to": "{receiver@id}",
"receivedTimestamp": "2023-07-06T18:42:28+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2023-07-06T18:42:28.8454662Z"
}]
Actualización de la entrega de mensajes con errores
[{
"id": "00000000-0000-0000-0000-000000000000",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/acsxplatmsg-test",
"subject": "advancedMessage/22222222-2222-2222-2222-222222222222/status/Failed",
"data": {
"messageId": "22222222-2222-2222-2222-222222222222",
"status": "Failed",
"channelType": "whatsapp",
"from": "{sender@id}",
"to": "{receiver@id}",
"receivedTimestamp": "2023-07-06T18:42:28+00:00",
"error": {
"channelCode": "131026",
"channelMessage": "Message Undeliverable."
}
},
"eventType": "Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2023-07-06T18:42:28.8454662Z"
}]
Evento Microsoft.Communication.AdvancedMessageAnalysisCompleted(Preview)
Publicado cuando el servicio de comunicación completa un análisis de IA con un mensaje de cliente.
Escenario de ejemplo: un usuario de WhatsApp envía un mensaje de WhatsApp a un número de empresa de WhatsApp que está conectado a un canal de mensajería avanzada activo en un recurso de Communication Services que ha optado por la característica Análisis de mensajes. Como resultado, el sistema publica un Microsoft.Communication.AdvancedMessageAnalysisCompleted
con el análisis del mensaje de WhatsApp del usuario.
Lista de atributos
Detalles de los atributos específicos de los eventos Microsoft.Communication.AdvancedMessageAnalysisCompleted
.
Attribute
Tipo
Aceptación de valores NULL
Descripción
channelType
string
✔️
Tipo de canal del canal en el que se envió el mensaje.
from
string
✔️
Identificador de canal que envió el mensaje, con formato de GUID.
to
string
✔️
Id. de destinatario al que se envió el mensaje.
receivedTimestamp
DateTimeOffset
✔️
Marca de tiempo del mensaje.
originalMessage
string
✔️
Mensaje de usuario original.
intentAnalysis
string
✔️
El análisis de intención del mensaje de usuario recibido.
languageDetection
LanguageDetection
✔️
Contiene la detección de idioma del mensaje de usuario recibido.
extractedKeyPhrases
List<string>
✔️
Contiene las frases clave del mensaje de usuario recibido.
LanguageDetection
Attribute
Tipo
Aceptación de valores NULL
Descripción
language
string
✔️
Idioma detectado.
confidenceScore
float
✔️
Puntuación de confianza del idioma detectado.
traducción
string
✔️
Traducción del mensaje.
Ejemplos
Análisis del mensaje completado
[{
"id": "df1c2d92-6155-4ad7-a865-cb8497106c52",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name}/providers/microsoft.communication/communicationservices/acsxplatmsg-test",
"subject": "advancedMessage/sender/{sender@id}/recipient/00000000-0000-0000-0000-000000000000",
"data": {
"originalMessage": "Hello, could u help me order some flowers for Mother’s Day?",
"channelType": "whatsapp",
"languageDetection": {
"language": "English",
"confidenceScore": 0.99
},
"intentAnalysis": "Order request: The customer is contacting customer service to request assistance with ordering flowers for Mother's Day.",
"extractedKeyPhrases": [
"order",
"flowers",
"Mother's Day"
],
"from": "{sender@id}",
"to": "00000000-0000-0000-0000-000000000000",
"receivedTimestamp": "2024-07-05T19:10:35.28+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageAnalysisCompleted",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2024-07-05T19:10:35.2806524Z"
}]
Inicio rápido
Para ver un inicio rápido que muestra cómo suscribirse a eventos de mensajería avanzada mediante webhooks, consulte Inicio rápido: Control de eventos de mensajería avanzada .