Serviços de Comunicação do Azure - Eventos de Mensagens Avançadas
Este artigo fornece as propriedades e o esquema para eventos de Mensagens Avançadas dos Serviços de Comunicação. Para obter uma introdução aos esquemas de eventos, consulte Esquema de eventos da Grade de Eventos do Azure.
Tipos de evento
Os Serviços de Comunicação do Azure emitem os seguintes tipos de eventos de Mensagens Avançadas:
Tipo de evento | Description |
---|---|
Microsoft.Communication.AdvancedMessageReceived | Publicado quando o Mensagens Avançadas dos Serviços de Comunicação recebe uma mensagem. |
Microsoft.Communication.AdvancedMessageDeliveryStatusAtualizado | Publicado quando o Mensagens Avançadas dos Serviços de Comunicação recebe uma atualização de status para uma notificação de mensagem enviada anteriormente. |
Microsoft.Communication.AdvancedMessageAnalysisCompleted(Pré-visualização) | Publicado quando o Serviço de Comunicação conclui uma análise de IA com uma mensagem do cliente. |
Respostas a eventos
Quando um evento é acionado, o serviço Grade de Eventos envia dados sobre esse evento para os pontos de extremidade de assinatura.
Esta seção contém um exemplo da aparência desses dados para cada evento.
Evento Microsoft.Communication.AdvancedMessageReceived
Publicado quando o Mensagens Avançadas dos Serviços de Comunicação recebe uma mensagem.
Cenário de exemplo: um usuário do WhatsApp envia uma mensagem do WhatsApp para um número comercial do WhatsApp que está conectado a um canal de mensagens avançadas ativo em um recurso de serviços de comunicação. Como resultado, um Microsoft.Communication.AdvancedMessageReceived
com o conteúdo da mensagem do WhatsApp do usuário é publicado.
Lista de atributos
Detalhes dos atributos específicos dos Microsoft.Communication.AdvancedMessageReceived
eventos.
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
channelType | string |
✔️ | Tipo de canal do canal em que a mensagem foi enviada. Ex. "WhatsApp". |
de | string |
✔️ | ID do remetente que enviou a mensagem. |
para | string |
✔️ | O ID do canal que recebeu a mensagem, formatado como um GUID. |
receivedTimestamp | DateTimeOffset |
✔️ | Carimbo de data/hora da mensagem. |
content | string |
✔️ | O conteúdo de texto na mensagem. |
suporte de dados | MediaContent |
✔️ | Contém detalhes sobre a mídia recebida. |
Contexto | MessageContext |
✔️ | Contém detalhes sobre a mídia recebida. |
botão | ButtonContent |
✔️ | Contém detalhes sobre a mídia recebida. |
interativo | InteractiveContent |
✔️ | Contém detalhes sobre a mídia recebida. |
Conteúdo de mídia
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
mimeType | string |
❌ | Tipo MIME da mídia. Usado para determinar o tipo de arquivo correto para downloads de mídia. |
id | string |
❌ | ID de mídia. Usado para recuperar mídia para download, formatado como um GUID. |
fileName | string |
✔️ | O nome do arquivo de mídia subjacente, conforme especificado quando carregado. |
legenda | string |
✔️ | Texto de legenda para o objeto de mídia, se suportado e fornecido. |
MessageContext
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
de | string |
✔️ | O ID do WhatsApp do cliente que respondeu a uma mensagem de entrada. |
id | string |
✔️ | O ID da mensagem enviada para uma resposta de entrada. |
BotãoConteúdo
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
texto | string |
✔️ | O texto do botão. |
payload | string |
✔️ | A carga útil, configurada pela empresa, do botão que o usuário selecionou. |
Conteúdo interativo
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
tipo | InteractiveReplyType |
✔️ | Tipo de conteúdo interativo. |
botãoResponder | InteractiveButtonReplyContent |
✔️ | Enviado quando um cliente seleciona um botão. |
listResponder | InteractiveListReplyContent |
✔️ | Enviado quando um cliente seleciona um item de uma lista. |
InteractiveReplyType
valor | Description |
---|---|
botãoResponder | O conteúdo interativo é um botão. |
listResponder | O conteúdo interativo é uma lista. |
desconhecido | O conteúdo interativo é desconhecido. |
InteractiveButtonReplyContent
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
id | string |
✔️ | ID do botão. |
title | string |
✔️ | Título do botão. |
InteractiveListReplyContent
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
id | string |
✔️ | ID do item de lista selecionado. |
title | string |
✔️ | Título do item de lista selecionado. |
descrição | string |
✔️ | Descrição da linha selecionada. |
Exemplos
Mensagem de texto recebida
[{
"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",
"from": "{sender@id}",
"to": "11111111-1111-1111-1111-111111111111",
"receivedTimestamp": "2023-07-06T18:30:19+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2023-07-06T18:30:22.1921716Z"
}]
Mensagem de mídia recebida
[{
"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",
"media": {
"mimeType": "image/jpeg",
"id": "22222222-2222-2222-2222-222222222222",
"caption": "This is a media caption"
},
"from": "{sender@id}",
"to": "11111111-1111-1111-1111-111111111111",
"receivedTimestamp": "2023-07-06T18:30:19+00:00"
},
"eventType": "Microsoft.Communication.AdvancedMessageReceived",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2023-07-06T18:30:22.1921716Z"
}]
Evento Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated
Publicado quando o Mensagens Avançadas dos Serviços de Comunicação recebe uma atualização de status para uma notificação de mensagem enviada anteriormente.
Cenário de exemplo: a Contoso usa um canal de Mensagens Avançadas ativo conectado a uma Conta do WhatsApp Business para enviar uma mensagem do WhatsApp a um usuário do WhatsApp. Em seguida, o WhatsApp responde ao canal de Mensagens Avançadas da Contoso com o status da mensagem enviada anteriormente. Como resultado, um Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated
evento que contém o status da mensagem é publicado.
Lista de atributos
Detalhes dos atributos específicos dos Microsoft.Communication.AdvancedMessageReceived
eventos.
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
channelType | string |
✔️ | Tipo de canal do canal em que a mensagem foi enviada. |
de | string |
✔️ | O ID do canal que enviou a mensagem, formatado como um GUID. |
para | string |
✔️ | ID do destinatário para o qual a mensagem foi enviada. |
receivedTimestamp | DateTimeOffset |
✔️ | Carimbo de data/hora da mensagem. |
messageId | string |
✔️ | O ID da mensagem, formatada como um GUID. |
status | string |
✔️ | Status da mensagem. Os valores possíveis incluem Sent , Delivered , Read , e Failed . Para obter mais informações, consulte Status. |
error | ChannelEventError |
✔️ | Contém os detalhes de um erro. |
ChannelEventError
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
Código do canal | string |
✔️ | O código de erro recebido neste canal. |
channelMessage | string |
✔️ | A mensagem de erro recebida neste canal. |
Status
valor | Description |
---|---|
Enviado | O serviço de mensagens enviou a mensagem para o destinatário |
Entregues | O destinatário da mensagem recebeu a mensagem |
Lida | O destinatário da mensagem leu a mensagem |
Com falhas | A mensagem falhou ao enviar corretamente |
Exemplos
Atualização para entrega de mensagens
[{
"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"
}]
Atualização para entrega de mensagens com falha
[{
"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 quando o Serviço de Comunicação conclui uma análise de IA com uma mensagem do cliente.
Cenário de exemplo: um usuário do WhatsApp envia uma mensagem do WhatsApp para um número comercial do WhatsApp que está conectado a um canal de mensagens avançadas ativo em um recurso de serviços de comunicação que optou pelo recurso de análise de mensagens. Como resultado, um Microsoft.Communication.AdvancedMessageAnalysisCompleted com a análise da mensagem do WhatsApp do usuário é publicado.
Lista de atributos
Detalhes dos atributos específicos dos Microsoft.Communication.AdvancedMessageAnalysisCompleted
eventos.
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
channelType | string |
✔️ | Tipo de canal do canal em que a mensagem foi enviada. |
de | string |
✔️ | O ID do canal que enviou a mensagem, formatado como um GUID. |
para | string |
✔️ | ID do destinatário para o qual a mensagem foi enviada. |
receivedTimestamp | DateTimeOffset |
✔️ | Carimbo de data/hora da mensagem. |
originalMensagem | string |
✔️ | A mensagem de usuário original. |
Análise de intenção | string |
✔️ | A análise de intenção da mensagem de usuário recebida. |
languageDetection | LanguageDetection |
✔️ | Contém a deteção de idioma da mensagem de usuário recebida. |
extractedKeyPhrases | List<string> |
✔️ | Contém as frases-chave da mensagem de usuário recebida. |
Deteção de idioma
Atributo | Type | Que podem ser nulos | Description |
---|---|---|---|
idioma | string |
✔️ | O idioma detetado. |
confiançaScore | float |
✔️ | O índice de confiança da língua detetada. |
tradução | string |
✔️ | A tradução da mensagem. |
Exemplos
Análise de mensagens concluída
[{
"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"
}]
Início Rápido
Para obter um guia de início rápido que mostra como se inscrever em eventos de Mensagens Avançadas usando ganchos da Web, consulte Guia de início rápido: manipular eventos de mensagens avançadas.