Azure Communication Services – Advanced Messaging-Ereignisse
In diesem Artikel werden die Eigenschaften und das Schema für Advanced Messaging-Ereignisse von Communication Services beschrieben. Eine Einführung in Ereignisschemas finden Sie unter Azure Event Grid-Ereignisschema.
Ereignistypen
Von Azure Communication Services werden folgende Advanced Messaging-Ereignistypen ausgegeben:
Ereignistyp | Beschreibung |
---|---|
Microsoft.Communication.AdvancedMessageReceived | Veröffentlicht, wenn Communication Services Advanced Messaging eine Nachricht empfängt. |
Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated | Veröffentlicht, wenn Communication Services Advanced Messaging ein Statusupdate für eine zuvor gesendete Nachrichtenbenachrichtigung empfängt. |
Microsoft.Communication.AdvancedMessageAnalysisCompleted(Preview) | Wird veröffentlicht, wenn der Kommunikationsdienst eine KI-Analyse mit einer Kundennachricht abgeschlossen hat. |
Ereignisantworten
Wenn ein Ereignis ausgelöst wird, sendet der Event Grid-Dienst Daten zum Ereignis an die Endpunkte, die über ein entsprechendes Abonnement verfügen.
In diesem Abschnitt wird anhand eines Beispiels gezeigt, wie diese Daten für jedes Ereignis aussehen.
Microsoft.Communication.AdvancedMessageReceived Ereignis
Veröffentlicht, wenn Communication Services Advanced Messaging eine Nachricht empfängt.
Beispielszenario: Ein WhatsApp-Benutzer sendet eine WhatsApp-Nachricht an eine WhatsApp Business Number, die mit einem aktiven Advanced Messaging-Kanal in einer Communication Services-Ressource verbunden ist. Daher wird eine Microsoft.Communication.AdvancedMessageReceived
mit dem Inhalt der WhatsApp-Nachricht des Benutzers veröffentlicht.
Attributliste
Details zu den Attributen, die für Microsoft.Communication.AdvancedMessageReceived
-Ereignisse spezifisch sind.
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
channelType | string |
✔️ | Kanaltyp des Kanals, an den die Nachricht gesendet wurde. Ex. "whatsapp". |
Von | string |
✔️ | Absender-ID des Absenders der Nachricht. |
Bis | string |
✔️ | Die Kanal-ID, die die Nachricht empfangen hat, formatiert als GUID. |
receivedTimestamp | DateTimeOffset |
✔️ | Zeitstempel der Nachricht. |
content | string |
✔️ | Der Textinhalt in der Nachricht. |
Medien- | MediaContent |
✔️ | Enthält Details zu den empfangenen Medien. |
context | MessageContext |
✔️ | Enthält Details zu den empfangenen Medien. |
Schaltfläche "+" ein | ButtonContent |
✔️ | Enthält Details zu den empfangenen Medien. |
Interaktiv | InteractiveContent |
✔️ | Enthält Details zu den empfangenen Medien. |
MediaContent
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
mimeType | string |
❌ | MIME-Typ des Mediums. Wird verwendet, um den richtigen Dateityp für Mediendownloads zu ermitteln. |
id | string |
❌ | Media ID. Wird verwendet, um Medien zum Herunterladen abzurufen, formatiert als GUID. |
fileName | string |
✔️ | Der Dateiname der zugrunde liegenden Mediendatei, wie beim Hochladen angegeben. |
Beschriftung | string |
✔️ | Beschriftungstext für das Medienobjekt, sofern unterstützt und bereitgestellt. |
MessageContext
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
from | string |
✔️ | Die WhatsApp-ID für den Kunden, der auf eine eingehende Nachricht geantwortet hat. |
id | string |
✔️ | Die Nachrichten-ID für die gesendete Nachricht für eine eingehende Antwort. |
ButtonContent
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
Text | string |
✔️ | Der Text der Schaltfläche. |
payload | string |
✔️ | Die Nutzlast, die vom Unternehmen eingerichtet wird, der Schaltfläche, die der Benutzer ausgewählt hat. |
InteractiveContent
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
Typ | InteractiveReplyType |
✔️ | Typ des interaktiven Inhalts. |
buttonReply | InteractiveButtonReplyContent |
✔️ | Gesendet, wenn ein Kunde eine Schaltfläche auswählt. |
listReply | InteractiveListReplyContent |
✔️ | Gesendet, wenn ein Kunde ein Element aus einer Liste auswählt. |
InteractiveReplyType
Wert | Beschreibung |
---|---|
buttonReply | Der interaktive Inhalt ist eine Schaltfläche. |
listReply | Der interaktive Inhalt ist eine Liste. |
Unbekannt | Der interaktive Inhalt ist unbekannt. |
InteractiveButtonReplyContent
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
id | string |
✔️ | ID der Schaltfläche. |
title | string |
✔️ | Titel der Schaltfläche |
InteractiveListReplyContent
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
id | string |
✔️ | ID des ausgewählten Listenelements. |
title | string |
✔️ | Titel des ausgewählten Listenelements. |
Beschreibung | string |
✔️ | Beschreibung der ausgewählten Zeile. |
Beispiele
Empfangene Nachricht
[{
"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"
}]
Empfangene Fehlermeldung
[{
"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"
}]
Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated Ereignis
Veröffentlicht, wenn Communication Services Advanced Messaging ein Statusupdate für eine zuvor gesendete Nachrichtenbenachrichtigung empfängt.
Beispielszenario: Contoso verwendet einen aktiven Advanced Messaging-Kanal, der mit einem WhatsApp Business-Konto verbunden ist, um eine WhatsApp-Nachricht an einen WhatsApp-Benutzer zu senden. WhatsApp antwortet dann auf den Advanced Messaging-Kanal von Contoso mit dem Status der zuvor gesendeten Nachricht. Als Ergebnis wird ein Microsoft.Communication.AdvancedMessageDeliveryStatusUpdated
-Ereignis, das den Nachrichtenstatus enthält, veröffentlicht.
Attributliste
Details zu den Attributen, die für Microsoft.Communication.AdvancedMessageReceived
-Ereignisse spezifisch sind.
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
channelType | string |
✔️ | Kanaltyp des Kanals, an den die Nachricht gesendet wurde. |
Von | string |
✔️ | Die Kanal-ID, die die Nachricht gesendet hat, formatiert als GUID. |
Bis | string |
✔️ | Empfänger-ID, an die die Nachricht gesendet wurde. |
receivedTimestamp | DateTimeOffset |
✔️ | Zeitstempel der Nachricht. |
messageId | string |
✔️ | Die ID der Nachricht, formatiert als GUID. |
status | string |
✔️ | Status der Nachricht. Mögliche Werte: Sent , Delivered , Read und Failed . Weitere Informationen finden Sie unter Status. |
error | ChannelEventError |
✔️ | Enthält die Details eines Fehlers. |
ChannelEventError
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
channelCode | string |
✔️ | Der in diesem Kanal empfangene Fehlercode. |
channelMessage | string |
✔️ | Die Fehlermeldung, die in diesem Kanal empfangen wurde. |
Status
Wert | Beschreibung |
---|---|
Gesendet | Der Nachrichtendienst hat die Nachricht an den Empfänger gesendet. |
Übermittelt | Der Nachrichtenempfänger hat die Nachricht empfangen. |
Lesen Sie | Der Nachrichtenempfänger liest die Nachricht |
Fehler | Fehler beim Senden der Nachricht. |
Beispiele
Update für die Nachrichtenübermittlung
[{
"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"
}]
Update für die Nachrichtenübermittlung mit Fehler
[{
"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"
}]
Microsoft.Communication.AdvancedMessageAnalysisCompleted(Preview)-Event
Wird veröffentlicht, wenn der Kommunikationsdienst eine KI-Analyse mit einer Kundennachricht abgeschlossen hat.
Beispielszenario: Ein WhatsApp-Benutzer sendet eine WhatsApp-Nachricht an eine WhatsApp Business-Nummer, die mit einem aktiven Advanced Messaging-Kanal in einer Communication Services-Ressource verbunden ist, für die die Funktion Nachrichtenanalyse aktiviert wurde. Als Ergebnis wird ein Microsoft.Communication.AdvancedMessageAnalysisCompleted mit der Analyse der WhatsApp-Nachricht des Benutzers veröffentlicht.
Attributliste
Details zu den Attributen, die für Microsoft.Communication.AdvancedMessageAnalysisCompleted
-Ereignisse spezifisch sind.
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
channelType | string |
✔️ | Kanaltyp des Kanals, an den die Nachricht gesendet wurde. |
Von | string |
✔️ | Die Kanal-ID, die die Nachricht gesendet hat, formatiert als GUID. |
Bis | string |
✔️ | Empfänger-ID, an die die Nachricht gesendet wurde. |
receivedTimestamp | DateTimeOffset |
✔️ | Zeitstempel der Nachricht. |
originalMessage | string |
✔️ | Die ursprüngliche Benutzernachricht. |
intentAnalysis | string |
✔️ | Die Absichtsanalyse der empfangenen Benutzernachricht. |
languageDetection | LanguageDetection |
✔️ | Enthält die Spracherkennung der empfangenen Benutzernachricht. |
extractedKeyPhrases | List<string> |
✔️ | Enthält die Schlüsselphrasen der empfangenen Benutzernachricht. |
LanguageDetection
attribute | Typ | NULL-Werte zulässig | Beschreibung |
---|---|---|---|
language | string |
✔️ | Die erkannte Sprache. |
confidenceScore | float |
✔️ | Die Konfidenzbewertung der erkannten Sprache. |
Verschiebung | string |
✔️ | Die Übersetzung der Nachricht. |
Beispiele
Nachrichtenanalyse abgeschlossen
[{
"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"
}]
Schnellstart
Ein Schnellstart, der zeigt, wie Sie Advanced Messaging-Ereignisse mithilfe von Webhooks abonnieren, finden Sie unter Schnellstart: Behandeln von Ereignissen für erweitertes Messaging.