Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Grundlegendes zu end-to-end Aufrufen für den Amazon Chime SDK PSTN-Audiodienst

Fokusmodus
Grundlegendes zu end-to-end Aufrufen für den Amazon Chime SDK PSTN-Audiodienst - 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.

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.

Dieser Anwendungsfall bietet Beispielcode für das Empfangen eines Telefonanrufs von einem PSTN-Anrufer, das Begrüßen des Anrufers mit einer Audionachricht, das Abrufen der Meeting-PIN vom Anrufer, das Abspielen von Audio und das Hinzufügen des Anrufers zur Besprechung.

Aufrufereignisse und Aktionen

Der Audiodienst übergibt Aufrufereignisse als AWS Lambda JSON-Objekte an Funktionen. Die Objekte enthalten den Aufrufereignistyp und alle relevanten Metadaten. Die AWS Lambda Funktion gibt auch Aktionen von SIP-Medienanwendungen als JSON-Objekte zurück, und diese Objekte enthalten einen Aktionstyp und alle relevanten Metadaten.

In der folgenden Tabelle sind die Aufrufereignisse und die möglichen Ereignisse aufgeführtActionData.Type, wenn Sie ein Aufrufereignis erhalten.

Aufrufereignis ActionData.Typ

ACTION_ERFOLGREICH

CallAndBridge

ReceiveDigits

PlayAudio

PlayAudioAndGetDigits

JoinChimeMeeting

ModifyChimeMeetingAttendees

RecordMeeting

ACTION_FAILED

CallAndBridge

PlayAudio

PlayAudioAndGetDigits

ModifyChimeMeetingAttendees

RecordMeeting

AUFLEGEN

HangUp

ZIFFERN_ERHALTEN

ReceiveDigits
Anmerkung

Um den folgenden Anwendungsfall zu implementieren, benötigen Sie mindestens eine Telefonnummer in Ihrem Amazon Chime SDK-Inventar, ein von einer SIP-Medienanwendung verwaltetes Objekt, das eine AWS Lambda Funktion mit einem Amazon-Ressourcennamen (ARN) verwendet, und eine SIP-Regel, die die Telefonnummer als Auslöser verwendet.

Wenn das Amazon Chime SDK einen Anruf an die in der Regel angegebene Telefonnummer empfängt, ruft der PSTN-Audiodienst eine AWS Lambda Funktion mit dem NEW_INBOUND_CALL Aufrufereignistyp auf.

{ "SchemaVersion": "1.0", "Sequence": 1, "InvocationEventType": "NEW_INBOUND_CALL", "CallDetails": { "TransactionId": "transaction-id", "AwsAccountId": "aws-account-id", "AwsRegion": "us-east-1", "SipRuleId": "sip-rule-id", "SipApplicationId": "sip-application-id", "Participants": [ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", "To": "+11234567890", "From": "+19876543210", "Direction": "Inbound", "StartTimeInMilliseconds": "159700958834234", "Status": "Connected" } ] } }

Sie können die AWS Lambda Funktion so programmieren, dass sie die Anrufdetails validiert und für die future Verwendung speichert. Bei einer NEW_INBOUND_CALL Veranstaltung reagiert die AWS Lambda Funktion mit einer Reihe von Aktionen, bei denen eine Begrüßungsaufforderung abgespielt und nach der Meeting-PIN gefragt wird.

Für Audiodateien gelten die folgenden Anforderungen:

  • Sie müssen Audiodateien aus einem Amazon Simple Storage Service (S3) -Bucket abspielen. Der S3-Bucket muss zu demselben AWS Konto gehören wie die SIP-Medienanwendung. Darüber hinaus müssen Sie dem Amazon Chime SDK Voice Connector-Service Principal die s3:GetObject Genehmigung erteilen—voiceconnector.chime.amazonaws.com. Sie können dazu die S3-Konsole oder die Befehlszeilenschnittstelle (CLI) verwenden.

  • Sie müssen PCM-WAV-Dateien mit einer Größe von nicht mehr als 50 MB verwenden. Das Amazon Chime SDK empfiehlt 8 KHz mono.

  • Die S3-Metadaten für jede WAV-Datei müssen Folgendes enthalten: {'ContentType': 'audio/wav'}

{ "SchemaVersion": "1.0", "Actions": [ { "Type" : "PlayAudio", "Parameters" : { "CallId": "call-id-1", "AudioSource": { "Type": "S3", "BucketName": "chime-meetings-audio-files-bucket-name", "Key": "welcome-to-meetings.wav" } } }, { "Type": "PlayAudioAndGetDigits", "Parameters" : { "ParticipantTag": "LEG-A", "AudioSource": { "Type": "S3", "BucketName": "chime-meetings-audio-files-bucket-name", "Key": "enter-meeting-pin.wav" }, "FailureAudioSource": { "Type": "S3", "BucketName": "chime-meetings-audio-files-bucket-name", "Key": "invalid-meeting-pin.wav" }, "MinNumberOfDigits": 3, "MaxNumberOfDigits": 5, "TerminatorDigits": ["#"], "InBetweenDigitsDurationInMilliseconds": 5000, "Repeat": 3, "RepeatDurationInMilliseconds": 10000 } } ] }

Die SIP-Medienanwendung führt diese Aktionen auf Anrufstrecke A aus. Unter der Annahme, dass die PlayAudioAndGetDigits Aktion die Ziffern empfängt, ruft die SIP-Medienanwendung die AWS Lambda Funktion mit dem ACTION_SUCCESSFUL Ereignistyp auf.

{ "SchemaVersion": "1.0", "Sequence": 2, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type": "PlayAudioAndGetDigits", "Parameters" : { "ParticipantTag": "LEG-A", "AudioSource": { "Type": "S3", "BucketName": "chime-meetings-audio-files-bucket-name", "Key": "enter-meeting-pin.wav" }, "FailureAudioSource": { "Type": "S3", "BucketName": "chime-meetings-audio-files-bucket-name", "Key": "invalid-meeting-pin.wav" }, "MinNumberOfDigits": 3, "MaxNumberOfDigits": 5, "TerminatorDigits": ["#"], "InBetweenDigitsDurationInMilliseconds": 5000, "Repeat": 3, "RepeatDurationInMilliseconds": 10000 }, "ReceivedDigits": "12345" // meeting PIN }, "CallDetails": { ... // same as in previous event } } }

Sie können eine AWS Lambda Funktion programmieren, um den Anrufer anhand der CallDetails Daten zu identifizieren. Sie können auch die zuvor erhaltene Besprechungs-PIN überprüfen. Gehen Sie von einer korrekten PIN aus, verwenden Sie dann die CreateMeeting und CreateAttendee APIs um das Amazon Chime SDK-Meeting zu erstellen und das vom Meeting-Teilnehmer verwendete Teilnahme-Token zu generieren. Die AWS Lambda Funktion reagiert mit der Aktion, am Amazon Chime SDK-Meeting teilzunehmen.

{ "SchemaVersion": "1.0", "Actions": [ { "Type": "JoinChimeMeeting", "Parameters": { "JoinToken": "meeting-attendee-join-token" } } ] }

Unter der Annahme, dass gültig JoinToken ist, nimmt die SIP-Medienanwendung am Amazon Chime SDK-Meeting teil und ruft eine AWS Lambda Funktion mit dem ACTION_SUCCESSFUL Ereignis auf, die die Daten aus der SIP-Medienanwendung und dem Chime Media-Service CallDetails enthält () LEG-B

{ "SchemaVersion": "1.0", "Sequence": 3, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type" : "JoinChimeMeeting", "Parameters" : { "JoinToken": "meeting-attendee-join-token" } }, "CallDetails": { "TransactionId": "transaction-id", "AwsAccountId": "aws-account-id", "AwsRegion": "us-east-1", "SipRuleId": "sip-rule-id", "SipApplicationId": "sip-application-id", "Participants": [ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", "To": "+11234567890", "From": "+19876543210", "Direction": "Inbound", "StartTimeInMilliseconds": "159700958834234", "Status": "Connected" }, { "CallId": "call-id-2", "ParticipantTag": "LEG-B", "To": "SMA", "From": "+17035550122", "Direction": "Outbound", "StartTimeInMilliseconds": "159700958834234", "Status": "Connected" } ] } }

Wenn Sie zu diesem Zeitpunkt die Ausführung von Aktionen für den Anruf oder die Anrufabteilung beenden möchten, können Sie mit einer leeren Gruppe von Aktionen antworten.

{ "SchemaVersion": "1.0" "Actions": [] }

Nachdem der Anrufer aufgelegt hat, ruft die SIP-Medienanwendung die AWS Lambda Funktion mit dem HANGUP Ereignis auf.

{ "SchemaVersion": "1.0", "Sequence": 4, "InvocationEventType": "HANGUP", "ActionData": { "Type": "Hangup", "Parameters": { "CallId": "call-id-1", "ParticipantTag": "LEG-A" } }, "CallDetails": { "TransactionId": "transaction-id", "AwsAccountId": "aws-account-id", "AwsRegion": "us-east-1", "SipRuleId": "sip-rule-id", "SipApplicationId": "sip-application-id", "Participants": [ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", "To": "+11234567890", "From": "+19876543210", "Direction": "Inbound", "StartTimeInMilliseconds": "159700958834234", "Status": "Disconnected" }, { "CallId": "call-id-2", "ParticipantTag": "LEG-B", "To": "SMA", "From": "+17035550122", "Direction": "Outbound", "StartTimeInMilliseconds": "159700958834234", "Status": "Disconnected" } ] } }

Wenn Sie auf ein Hangup Ereignis mit einer Aktion antworten, ignoriert die SIP-Medienanwendung die Aktion, sofern keine andere Anwendung ein of Participants anzeigt. Status Connected

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.