Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Memahami end-to-end panggilan untuk layanan audio Amazon Chime SDK PSTN

Mode fokus
Memahami end-to-end panggilan untuk layanan audio Amazon Chime SDK PSTN - Amazon Chime SDK

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kasus penggunaan ini memberikan contoh kode untuk menerima panggilan telepon dari pemanggil PSTN, menyapa pemanggil dengan pesan audio, mendapatkan PIN rapat dari pemanggil, memutar audio, dan bergabung dengan pemanggil ke rapat.

Acara dan tindakan doa

Layanan Audio meneruskan peristiwa pemanggilan ke AWS Lambda fungsi sebagai objek JSON. Objek termasuk jenis acara pemanggilan dan metatdata yang relevan. AWS Lambda Fungsi ini juga mengembalikan tindakan aplikasi media SIP sebagai objek JSON, dan objek tersebut menyertakan tipe tindakan dan metadata yang relevan.

Tabel berikut mencantumkan peristiwa pemanggilan, dan kemungkinanActionData.Type, saat Anda menerima acara pemanggilan.

Acara doa ActionData.Tipe

ACTION_SUCCESSFUL

CallAndBridge

ReceiveDigits

PlayAudio

PlayAudioAndGetDigits

JoinChimeMeeting

ModifyChimeMeetingAttendees

RecordMeeting

ACTION_FAILED

CallAndBridge

PlayAudio

PlayAudioAndGetDigits

ModifyChimeMeetingAttendees

RecordMeeting

HANGUP

HangUp

DIGITS_RECEIVED

ReceiveDigits
catatan

Untuk menerapkan kasus penggunaan berikut, Anda memerlukan setidaknya satu nomor telepon di inventaris Amazon Chime SDK, objek yang dikelola aplikasi media SIP yang menggunakan AWS Lambda fungsi dengan Nama Sumber Daya Amazon (ARN), dan aturan SIP yang menggunakan nomor telepon sebagai pemicunya.

Saat Amazon Chime SDK menerima panggilan ke nomor telepon yang ditentukan dalam aturan, layanan audio PSTN akan memanggil AWS Lambda fungsi dengan jenis peristiwa pemanggilan. NEW_INBOUND_CALL

{ "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" } ] } }

Anda dapat memprogram AWS Lambda fungsi untuk memvalidasi detail panggilan dan menyimpannya untuk digunakan di masa mendatang. Untuk suatu NEW_INBOUND_CALL acara, AWS Lambda fungsi merespons dengan serangkaian tindakan yang memainkan prompt selamat datang dan meminta PIN rapat.

File audio memiliki persyaratan sebagai berikut:

  • Anda harus memutar file audio dari bucket Amazon Simple Storage Service (S3). Bucket S3 harus memiliki AWS akun yang sama dengan aplikasi media SIP. Selain itu, Anda harus memberikan s3:GetObject izin kepada kepala layanan Amazon Chime SDK Voice Connector—. voiceconnector.chime.amazonaws.com Anda dapat menggunakan konsol S3 atau antarmuka baris perintah (CLI) untuk melakukannya.

  • Anda harus menggunakan file WAV PCM dengan ukuran tidak lebih dari 50 MB. Amazon Chime SDK merekomendasikan 8 mono. KHz

  • Metadata S3 untuk setiap file WAV harus berisi. {'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 } } ] }

Aplikasi media SIP menjalankan tindakan ini pada call leg A. Dengan asumsi PlayAudioAndGetDigits tindakan menerima digit, aplikasi media SIP memanggil AWS Lambda fungsi dengan jenis acara. ACTION_SUCCESSFUL

{ "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 } } }

Anda dapat memprogram AWS Lambda fungsi untuk mengidentifikasi pemanggil berdasarkan CallDetails data. Anda juga dapat memvalidasi PIN rapat yang diterima sebelumnya. Dengan asumsi PIN yang benar, Anda kemudian menggunakan CreateMeeting dan CreateAttendee APIs untuk membuat rapat Amazon Chime SDK dan menghasilkan token gabungan yang digunakan oleh peserta rapat. AWS Lambda Fungsi merespons dengan tindakan untuk bergabung dengan rapat Amazon Chime SDK.

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

Dengan JoinToken asumsi valid, aplikasi media SIP bergabung dengan rapat Amazon Chime SDK dan memanggil AWS Lambda fungsi dengan ACTION_SUCCESSFUL acara, CallDetails di mana berisi data dari aplikasi media SIP dan layanan Chime Media () 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" } ] } }

Jika Anda ingin berhenti menjalankan tindakan pada panggilan atau panggilan kaki pada titik ini, Anda dapat merespons dengan serangkaian tindakan kosong.

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

Setelah pemanggil menutup telepon, aplikasi media SIP memanggil AWS Lambda fungsi dengan acara tersebut. HANGUP

{ "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" } ] } }

Jika Anda menanggapi Hangup peristiwa dengan tindakan, aplikasi media SIP mengabaikan tindakan jika tidak ada yang lain Participants menunjukkan aStatus. Connected

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.