View a markdown version of this page

Verwenden von EventBridge Amazon-Benachrichtigungen für das Amazon Chime SDK - Amazon Chime SDK

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden von EventBridge Amazon-Benachrichtigungen für das Amazon Chime SDK

Amazon Chime SDK Call Analytics unterstützt das Senden von Ereignissen an den EventBridge Standardbus, wenn sich der Status der Media Insights-Pipeline ändert oder wenn die Bedingungen für Anrufanalysen in Echtzeit erfüllt sind. Für die Aktualisierung des Fehlerstatus der Media Insights-Pipeline empfehlen wir Ihnen, ein EventBridge Ziel zu konfigurieren, das Sie benachrichtigt, wenn Ihre Ressourcen asynchron ausfallen. Anrufanalysebenachrichtigungen haben eine aws.chime-Quelle und verschiedene Detailtypen, die in den folgenden Abschnitten beschrieben werden. Weitere Informationen finden Sie im EventBridge Amazon-Benutzerhandbuch.

Status-Aktualisierungen

Media Insights-Pipelines senden EventBridge Benachrichtigungen, wenn eine Anrufanalysesitzung fortschreitet und entweder erfolgreich beendet wird oder Fehler auftreten. Sie erhalten eine EventBridge Benachrichtigung mit dem Detailtyp „Media Insights State Change“, wenn:

  • Der Status einer Media Insights-Pipeline ändert sich.

  • Der Status eines Elements der Media Insights Pipeline ändert sich.

  • Jedes Pipeline-Element wird gestoppt.

  • Jedes Pipeline-Element schlägt fehl.

Der Detailbereich enthält immer die folgenden Felder:

  • version

  • mediaInsightsPipelineArn

  • eventType

Der Detailbereich enthält auch ein mediaInsightsPipelineElementStatuses Feld, wenn die Media Insights-Pipeline mehrere Elemente enthält, z. B. Analyseprozessoren und Datensenken. Dieses Feld gibt den Status der einzelnen Elemente in der Pipeline an. Der mögliche Status für jedes Pipeline-Element könnte wie folgt lauten:

  • NotStarted

  • InProgress

  • Stopped

  • Failed

Der Detailbereich enthält auch alle Schlüssel-Wert-Paare, die MediaInsightsRuntimeMetadata während des CreateMediaInsightsPipeline API-Aufrufs angegeben wurden. Wenn eine Anruf-Analysesitzung von einem Voice Connector initiiert wurde, wird der Metadatenbereich automatisch mit den folgenden Parametern gefüllt:

  • transactionId

  • fromNumber

  • toNumber

  • callId

  • voiceConnectorId

  • direction

Die folgenden Ereignistypen können immer dann auftreten, wenn eine Media Insights-Pipeline ein einzelnes Element enthält. Erweitern Sie jeden Abschnitt, um mehr zu erfahren.

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [] "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsInProgress", "version": "0", "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [] "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsPaused", "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [] "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsStopped", "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Zeigt an, dass der Dienst auf einen temporären Fehler gestoßen ist und versucht, es erneut zu versuchen. Sie müssen nichts unternehmen.

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [] "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsTemporaryFailure", "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Weist auf einen Fehler hin, der Maßnahmen von Ihnen erfordert. Verwenden Sie dasfailureReason, um das Problem zu beheben. Zu den typischen Fehlern können unter anderem Folgendes gehören:

  • Unzureichende Berechtigungen für die Ressourcenzugriffsrolle

  • Fehlende oder gelöschte Ressourcen

  • Drosselung durch einen AWS Dienst, der Analytics-Aufrufe in Ihrem Namen durchführt, wie Amazon Transcribe oder Amazon Kinesis.

  • Inkompatible Medienformate auf KVS-Streams

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [] "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsPermanentFailure", "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string", "failureReason": "string" } }
Anmerkung

Das Feld failureReason ist optional. Ein typischer Grund könnte beispielsweise seinAccess denied when assuming resource access role.

Die folgenden Ereignistypen können auftreten, wenn eine Media Insights-Pipeline für eine von einem Amazon Chime SDK Voice Connector initiierte Anruf-Analysesitzung erstellt wird oder der Erstellungsversuch fehlschlägt. Erweitern Sie jeden Abschnitt, um mehr zu erfahren.

Dieses Beispiel zeigt ein typisches Erfolgsereignis.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [] "detail": { "version": "0", "mediaInsightsPipelineConfigurationArn": "string", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsCreated", "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string", } }

Dieses Beispiel zeigt ein typisches Fehlerereignis.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [] "detail": { "version": "0", "mediaInsightsPipelineConfigurationArn": "string", "eventType": "chime:MediaInsightsCreateFailed", "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string", "failureOrigin": "Voice Connector", "httpStatusCode": "string", "failureReason": "string" } }

Die folgenden Ereignistypen können auftreten, wenn eine Media Insights-Pipeline mehrere Elemente enthält. Die Beispielbenachrichtigungen sind für die AmazonTranscribeProcessor Kombination mitS3RecordingSink. Erweitern Sie jeden Abschnitt, um mehr zu erfahren.

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsInProgress", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "InProgress", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "NotStarted", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsInProgress", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "Stopped", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "InProgress", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsInProgress", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "Failed", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "InProgress", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsPermanentFailure", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "Failed", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "Stopped", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string", "failureReason": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsPermanentFailure", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "Stopped", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "Failed", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string", "failureReason": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsPaused", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "Paused", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "NotStarted", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsTemporaryFailure", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "TemporarilyFailed", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "NotStarted", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "region": "string", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsStopped", "mediaInsightsPipelineElementStatuses": [ { "type": "AmazonTranscribeProcessor", "status": "Stopped", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "Stopped", "updatedOn": 1686184070655 } ] "callId": "string", "transactionId": "string", "fromNumber": "string", "toNumber": "string", "voiceConnectorId": "string", "direction": "string" } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "time": "yyyy-mm-ddThh:mm:ssZ", "region": "string", "detail": { "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsInProgress", "version": "0", "mediaInsightsPipelineElementStatuses": [ { "type": "VoiceEnhancementSink", "status": "InProgress", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "Stopped", "updatedOn": 1686184070655 } ] } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "time": "yyyy-mm-ddThh:mm:ssZ", "region": "string", "detail": { "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsStopped", "version": "0", "mediaInsightsPipelineElementStatuses": [ { "type": "VoiceEnhancement", "status": "NotSupported", "updatedOn": 1686184070655, "statusDetail": "Unsupported recording length" }, { "type": "S3RecordingSink", "status": "Stopped", "updatedOn": 1686184070655 } ] } }

Dieses Beispiel zeigt eine typische Eventstruktur.

{ "version": "0", "id": "string", "detail-type": "Media Insights State Change", "source": "aws.chime", "account": number, "time": "yyyy-mm-ddThh:mm:ssZ", "region": "string", "detail": { "mediaInsightsPipelineArn": "string", "eventType": "chime:MediaInsightsPermanentFailure", "version": "0", "mediaInsightsPipelineElementStatuses": [ { "type": "VoiceEnhancement", "status": "Failed", "updatedOn": 1686184070655 }, { "type": "S3RecordingSink", "status": "Stopped", "updatedOn": 1686184070655 } ] } }

Real-time Warnmeldungen

Anmerkung

Nur Amazon Transcribe- und Amazon Transcribe Call Analytics-Prozessoren unterstützen Benachrichtigungen in Echtzeit.

Mit der Amazon Chime SDK-Anrufanalyse können Entwickler Regeln für das Senden von Echtzeitwarnungen über einen Prozessor während einer Analysesitzung einrichten. Benachrichtigungen werden EventBridge mit dem Detailtyp Media Insights Rules Matched an Amazon gesendet. EventBridge unterstützt die Integration mit nachgelagerten Diensten wie Lambda, Amazon SQS und Amazon SNS, um Benachrichtigungen für den Endbenutzer auszulösen oder eine andere benutzerdefinierte Geschäftslogik zu initiieren.

Real-time Warnungen werden als Teil des RealTimeAlertConfiguration Felds für das eingerichtet. MediaInsightsPipelineConfiguration Sie können die Amazon Chime SDK-Konsole verwenden, um das Feld zu konfigurieren, oder Sie können die CreateMediaInsightsPipelineConfiguration oder UpdateMediaInsightsPipelineConfiguration APIs aufrufen.

Dieses Beispiel zeigt, wie eine Echtzeit-Warnmeldungskonfiguration über die API erstellt oder aktualisiert wird.

{ "MediaInsightsPipelineConfigurationName": "config_name", "ResourceAccessRoleArn": "arn:aws:iam::account_id:role/role_name", "RealTimeAlertConfiguration": { "Disabled": false, "Rules": [{ "Type": "KeywordMatch", "KeywordMatchConfiguration": { "RuleName": "rule_name_1", "Keywords": [ "hello", "thank you" ], "Negate": false } }, { "Type": "Sentiment", "RuleName": "rule_name_2", "SentimentType": "NEGATIVE", "TimePeriod": 60 }, { "Type": "IssueDetection", "RuleName": "rule_name_3" } ] }, "Elements": [{ "Type": "AmazonTranscribeCallAnalyticsProcessor", "AmazonTranscribeCallAnalyticsProcessorConfiguration": { "LanguageCode": "en-US" } }, { "Type": "KinesisDataStreamSink", "KinesisDataStreamSinkConfiguration": { "InsightsTarget": "arn:aws:kinesis:us-east-1:account_id:stream/stream_name" } } ] }

Jede Regel in einer Konfiguration für Echtzeitwarnungen wird unabhängig ausgelöst. Sie erhalten möglicherweise mehrere EventBridge Benachrichtigungen, wenn mehrere Regelbedingungen gleichzeitig erfüllt sind. Um eine Liste mit Regeln für Ihre Benachrichtigungen zu erstellen, können Sie zwischen den folgenden Regeltypen wählen:

Übereinstimmung mit dem Schlüsselwort

Warnt, wenn eine bestimmte Gruppe von Schlüsselwörtern oder Ausdrücken in einer Äußerung oder einem Transkriptereignis übereinstimmt. Sie können die Warnung so konfigurieren, dass sie in den folgenden Fällen ein Ereignis ausgibt:

  • Alle angegebenen Schlüsselwörter werden gesprochen und Negate sind auf gesetztfalse.

  • Alle angegebenen Schlüsselwörter werden während des gesamten Anrufs nicht ausgesprochen, sofern auf gesetzt Negate ist. true

Amazon Transcribe und Amazon Transcribe Analytics unterstützen diesen Regeltyp.

Stimmungsanalyse

Warnt, wenn ein bestimmter Stimmungstyp für einen fortlaufenden Zeitraum andauert. Nur Transcribe Call Analytics unterstützt diese Regel.

Erkennung von Problemen

Warnt, wenn bei einer Äußerung ein Problem erkannt wird. Nur Transcribe Call Analytics unterstützt diesen Regeltyp.

Das folgende Beispiel zeigt ein Alarmereignis in Echtzeit für eine KeywordMatch Regel.

{ "version": "0", "id": "string", "detail-type": "Media Insights Rules Matched", "source": "aws.chime", "account": number, "region": "us-east-1", "time": "yyyy-mm-ddThh:mm:ssZ", "resources": [], "detail": { "version": "0", "sourceMetadata": {} "ruleName": "string" "utteranceId": "string", "beginTimestamp": "yyyy-mm-ddThh:mm:ssZ", } }

Einige EventBridge Felder sind spezifisch für den Regeltyp, für den eine Übereinstimmung gefunden wurde:

Felder für die Suche nach Schlüsselwörtern

utteranceId: ID des Transkripts, das ein übereinstimmendes Schlüsselwort enthält, wenn Sie Amazon Transcribe Call Analytics verwenden. Nur für die Übereinstimmung mit gesprochenen Stichwörtern.

resultId: ID des Transkripts, das ein passendes Keyword enthält, wenn Sie Amazon Transcribe verwenden. Nur für die Übereinstimmung mit gesprochenen Stichwörtern.

beginTimestamp: Startzeit des Transkripts, das ein passendes Schlüsselwort enthält. Nur für die Übereinstimmung mit gesprochenen Stichwörtern.

Felder für die Stimmungsanalyse

beginTimestamp: Startzeit des fortlaufenden Fensters für das übereinstimmende Sentiment.

endTimestamp: Endzeit des fortlaufenden Zeitfensters für das übereinstimmende Sentiment.