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.
PlayAudioAndGetDigits
Spielt Audio ab und sammelt DTMF-Ziffern. Wenn ein Fehler auftritt, z. B. ein Benutzer, der nicht die richtige Anzahl von DTMF-Ziffern eingibt, spielt die Aktion das „Failure“ -Audio ab und gibt dann das Haupt-Audio wieder ab, bis die SIP-Medienanwendung die Anzahl der imRepeat
-Parameter.
Sie müssen Audiodateien aus dem S3-Bucket abspielen. Der S3-Bucket muss demselben angehörenAWSKonto als SIP-Medienanwendung. Außerdem müssen Sie dass3:GetObject
Erlaubnis zumPrinzipal des Amazon Chime Voice Connector-Dienstes,voiceconnector.chime.amazonaws.com
aus. Sie können dazu die S3-Konsole oder die CLI verwenden.
Das folgende Codebeispiel zeigt eine typische S3-Bucket-Richtlinie.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMARead", "Effect": "Allow", "Principal": { "Service": "voiceconnector.chime.amazonaws.com" }, "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::
bucket-name
/*", "Condition": { "StringEquals": { "aws:SourceAccount": "aws-account-id
" } } } ] }
Der PSTN Audio-Dienst liest und schreibt im Auftrag Ihrer Sip Media Application in Ihren S3-Bucket. Um das zu vermeidenverwirrtes Stellvertreterproblemkönnen Sie den S3-Bucket-Zugriff auf eine einzelne SIP-Medienanwendung einschränken.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMARead", "Effect": "Allow", "Principal": { "Service": "voiceconnector.chime.amazonaws.com" }, "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::
bucket-name
/*", "Condition": { "StringEquals": { "aws:SourceAccount": "aws-account-id
", "aws:SourceArn": "arn:aws:region
:aws-account-id
:sma/sip-media-application-id
" } } } ] }
Das folgende Beispiel zeigt einen typischenPlayAudioAndGetDigits
Aktion
{ "Type" : "PlayAudioAndGetDigits", "Parameters" : { "CallId": "
call-id-1
", "ParticipantTag": "LEG-A" "InputDigitsRegex": "^\d{2}#$
", "AudioSource": { "Type": "S3", "BucketName": "bucket-name
", "Key": "audio-file-1.wav
" }, "FailureAudioSource": { "Type": "S3", "BucketName": "bucket-name
", "Key": "audio-file-failure.wav
" }, "MinNumberOfDigits":3
, "MaxNumberOfDigits":5
, "TerminatorDigits": ["#
"], "InBetweenDigitsDurationInMilliseconds":5000
, "Repeat": 3, "RepeatDurationInMilliseconds":10000
} }
- CalLid
-
Beschreibung–
CallId
des Teilnehmers derCallDetails
derAWS LambdaAufrufen der -FunktionZulässige Werte- Eine gültige Anruf-ID
Erforderlich— Nein
Standardwert – Keine
- ParticipantTag
-
Beschreibung–
ParticipantTag
eines der verbundenen Teilnehmer imCallDetails
Zulässige Werte–
LEG-A
oderLEG-B
Erforderlich— Nein
Standardwert–
ParticipantTag
des AufruftetencallLeg
Ignoriert wenn Sie angebenCallId
- InputDigitsRegex
-
Beschreibung— Ein Muster von regulären Ausdrücken
Zulässige Werte— Ein gültiges Muster von regulären Ausdrücken
Erforderlich— Nein
Standardwert – Keine
- AudioSource-Typ
-
Beschreibung— Art der Quelle für den Audiodateityp
Zulässige Werte— Einen S3-Bucket
Erforderlich— Ja
Standardwert–
"S3"
- AudioSource-BucketName
-
Beschreibung— Für S3
AudioSource.Type
Werte, muss der S3-Bucket demselben angehörenAWSKonto als SIP-Medienanwendung. Der Bucket S3 muss Zugriff auf diePrinzipal des Amazon Chime Voice Connector-Dienstes,voiceconnector.chime.amazonaws.com
aus.Zulässige Werte— Ein gültiger S3-Bucket, für den Amazon Chime SDK verfügt
s3:GetObject
Zugriff auf Aktionen.Erforderlich— Ja
Standardwert – Keine
- AudioSource.Key
-
Beschreibung— Der Schlüsselname des Audio-Objekts im
AudioSource.BucketName
Einen S3-Bucket.Zulässige Werte- Gültige Audiodateien
Erforderlich— Ja
Standardwert – Keine
- FailureAudioSource-Typ
-
Beschreibung— Der Schlüsselname des Audio-Objekts im
FailureAudioSource.BucketName
Einen S3-Bucket.Zulässige Werte— S3
Erforderlich— Ja
Standardwert – Keine
- FailureAudioSource.BucketName
-
Beschreibung— Für S3-Quelltypen muss der S3-Bucket demselben angehörenAWSKonto als SIP-Medienanwendung. DiePrinzipal des Amazon Chime Voice Connector-Dienstes,
voiceconnector.chime.amazonaws.com
, muss Zugriff auf den S3-Bucket haben.Zulässige Werte— Ein gültiger S3-Bucket, für den Amazon Chime SDK verfügt
s3:GetObject
Zugriff auf Aktionen.Erforderlich— Ja
Standardwert – Keine
- FailureAudioSource.Key
-
Beschreibung— Der Schlüsselname des Audio-Objekts im
FailureAudioSource.BucketName
Einen S3-Bucket.Zulässige Werte- Gültige Audiodateien
Erforderlich— Ja
Standardwert – Keine
- minNumberOfDigits
-
Beschreibung— Die Mindestanzahl von Ziffern, die vor dem Timing Out oder Wiedergabe von „Call fehlgeschlagen“ -Audio erfasst werden sollen
Zulässige Werte— >=0
Erforderlich— Nein
Standardwert— 0
- MaxNumberOfDigits
-
Beschreibung— Die maximale Anzahl von Ziffern, die vor dem Anhalten ohne eine abschließende Ziffer erfasst werden sollen.
Zulässige Werte— >
MinNumberOfDigits
Erforderlich— Nein
Standardwert— 128
- TerminatorDigits
-
Beschreibung— Ziffern, die verwendet werden, um die Eingabe zu beenden, wenn der Benutzer weniger als die
MaxNumberOfDigits
Zulässige Werte— Eine dieser Ziffern: 0123456789#*
Erforderlich— Nein
Standardwert— #
- InbetweenDigitsDurationInMilliseconds
-
Beschreibung— Die Wartezeit in Millisekunden zwischen Zifferneingaben vor dem Abspielen
FailureAudio
aus.Zulässige Werte— >0
Erforderlich— Nein
Standardwert— Falls nicht anders festgelegt, gilt der Standardwert
RepeatDurationInMilliseconds
Wert. - REPEAT
-
Beschreibung- Gesamtzahl der Versuche, Ziffern zu erhalten
Zulässige Werte— >0
Erforderlich— Nein
Standardwert— 1
- RepeatDurationInMilliseconds
-
Beschreibung— Zeit in Millisekunden, zwischen
Repeat
VersucheZulässige Werte— >0
Erforderlich— Ja
Standardwert – Keine
Die SIP-Medienanwendung ruft immer ihreAWS LambdaFunktion nach dem Ausführen desPlayAudioAndGetDigits
Aktion, mit einemACTION_SUCCESSFUL
oderACTION_FAILED
-Aufruftyp. Wenn die Anwendung erfolgreich Ziffern sammelt, wird dieReceivedDigits
Wert imActionData
-Objekt. Das folgende Beispiel zeigt die Aufruftastruktur dieserAWS LambdaFunktion.
{ "SchemaVersion": "1.0", "Sequence": 3, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type": "PlayAudioAndGetDigits", "Parameters" : { "CallId": "
call-id-1
", "ParticipantTag": "LEG-A", "InputDigitsRegex": "^\d{2}#$
", "AudioSource": { "Type": "S3", "BucketName": "bucket-name
", "Key": "audio-file-1.wav
" }, "FailureAudioSource": { "Type": "S3", "BucketName": "bucket-name
", "Key": "audio-file-failure.wav
" }, "MinNumberOfDigits":3
, "MaxNumberOfDigits":5
, "TerminatorDigits": ["#
"], "InBetweenDigitsDurationInMilliseconds":5000
, "Repeat":3
, "RepeatDurationInMilliseconds":10000
}, "ErrorType": "InvalidAudioSource", "ErrorMessage": "Audio Source parameter value is invalid." }, "ReceivedDigits": "1234
" }, "CallDetails": { ... } }
Fehlerbehandlung
Wenn ein Validierungsfehler auftritt, ruft die SIP-MedienanwendungAWS LambdaFunktion mit der entsprechenden Fehlermeldung. In der folgenden Tabelle werden die möglichen Fehlermeldungen aufgeführt.
Fehler |
Fehlermeldung |
Grund |
---|---|---|
|
Der Parameterwert der Audioquelle ist ungültig. |
Dieser Fehler kann aus mehreren Gründen auftreten. Beispielsweise kann die SIP-Medienanwendung aufgrund von Berechtigungsproblemen oder Problemen mit dem S3-Bucket nicht auf die Datei zugreifen. Oder die Audiodatei kann aufgrund von Dauer, Größe oder nicht unterstütztem Format die Validierung fehlschlagen. |
|
|
EIN |
|
Systemfehler beim Ausführen der Aktion. |
Beim Ausführen der Aktion ist ein Systemfehler aufgetreten. |
Wenn die Aktion die Anzahl der angegebenen Ziffern aufgrund eines Timeouts oder zu vieler Wiederholungen nicht erfasst, ruft die SIP-Medienanwendung dieAWS LambdaFunktion mit demACTION_FAILED
-Aufruftyp.
{ "SchemaVersion": "1.0", "Sequence":
4
, "InvocationEventType": "ACTION_FAILED", "ActionData": { "Type": "PlayAudioAndGetDigits", "Parameters" : { "CallId": "call-id-1
", "ParticipantTag": "LEG-A", "InputDigitsRegex": "^\d{2}#$
", "AudioSource": { "Type": "S3", "BucketName": "bucket-name
", "Key": "audio-file-1.wav
" }, "FailureAudioSource": { "Type": "S3", "BucketName": "bucket-name
", "Key": "audio-file-failure.wav
" }, "MinNumberOfDigits":3
, "MaxNumberOfDigits":5
, "TerminatorDigits": ["#
"], "InBetweenDigitsDurationInMilliseconds":5000
, "Repeat":3
, "RepeatDurationInMilliseconds":10000
}, "ErrorType": "InvalidAudioSource", "ErrorMessage": "Audio Source parameter value is invalid." } "CallDetails": { ... } }
Siehe Arbeitsbeispiele auf GitHub: