Partilhar via


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.