CallAndBridge - Amazon Chime SDK

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

CallAndBridge

Membuat panggilan keluar ke nomor telepon PSTN, atau ke trunk SIP yang dikonfigurasi sebagai Amazon Chime SDK Voice Connector atau Amazon Chime SDK Voice Connector Group, lalu menjembatani panggilan dengan leg panggilan yang ada. Anda gunakan PSTN saat memanggil nomor telepon, dan AWS saat memanggil trunk SIP.

Leg panggilan yang ada dapat berupa leg panggilan keluar yang dibuat dengan menggunakan CreateSIPMediaApplicationCallAPI, atau kaki masuk yang dibuat oleh aturan SIP yang memanggil AWS Lambda fungsi dengan acara. NewInboundCall Saat menerapkan CallAndBridge tindakan ke titik akhir Konektor Suara atau Grup Konektor Suara, Anda harus menentukan Nomor Sumber Daya Amazon (ARN) Konektor Suara atau Grup Konektor Suara.

Anda juga dapat menambahkan header SIP khusus ke kaki dan AWS Lambda fungsi panggilan keluar. Header khusus memungkinkan Anda untuk meneruskan nilai seperti nomor lantai dan kode pos. Untuk informasi selengkapnya tentang header khusus, lihat. Menggunakan header SIP

Kode contoh berikut menunjukkan tindakan khas yang menjembatani ke titik akhir PSTN.

{ "SchemaVersion": "1.0", "Actions": [{ "Type": "CallAndBridge", "Parameters": { "CallTimeoutSeconds": 30, "CallerIdNumber": "e164PhoneNumber", // required "Endpoints": [{ "BridgeEndpointType": "PSTN", // required "Uri": "e164PhoneNumber", // required }], } } ] }

Contoh berikut menunjukkan tindakan tipikal yang menggunakan Konektor Suara atau Grup Konektor Suara, ditambah header SIP khusus.

{ "SchemaVersion":"1.0", "Actions":[ { "Type":"CallAndBridge", "Parameters":{ "CallTimeoutSeconds":30, "CallerIdNumber": "e164PhoneNumber", // required "RingbackTone": { // optional "Type": "S3", "BucketName": "s3_bucket_name", "Key": "audio_file_name" }, "Endpoints":[ { "BridgeEndpointType":"AWS", // enum type, required "Arn":"arn:aws:chime:us-east-1:0123456789101:vc/abcdefg1hijklm2nopq3rs" //VC or VCG ARN, required for AWS endpoints "Uri":"ValidString", // required, see description below } ], "SipHeaders": { "x-String":"String" } } } ] }
CallTimeoutSeconds

Deskripsi — Interval sebelum waktu panggilan habis. Timer dimulai pada pengaturan panggilan.

Nilai yang diizinkan - Antara 1 dan 120, inklusif

Diperlukan - Tidak

Nilai default - 30

CallerIdNumber

Deskripsi — Nomor milik pelanggan, atau nomor Dari A Leg

Nilai yang diizinkan - Nomor telepon yang valid dalam format E.164

Diperlukan - Ya

Nilai default - Tidak ada

Endpoints

Deskripsi — Titik akhir panggilan

Nilai yang diizinkan:

  • BridgeEndpointType- AWS untuk Konektor Suara dan Grup Konektor Suara, jika tidakPSTN.

  • Arn— ARN dari Konektor Suara atau Grup Konektor Suara. Hanya diperlukan ketika Anda menggunakan AWS sebagaiBridgeEndpointType.

  • Uri— Nilai URI tergantung pada jenis titik akhir.

    Untuk PSTN titik akhir, URI harus berupa nomor telepon E.164 yang valid.

    Untuk AWS titik akhir, nilai URI menetapkan user bagian dari. Request-URI Anda harus menggunakan Augmented Backus-Naur Format. Panjang yang dibutuhkan: antara 1 dan 30, inklusif. Gunakan nilai-nilai berikut: a-z, A-Z, 0-9, &, =, +, $, /, %, -, _, !, ~, *, (,), (.)

    Nilai host berasal dari rute Inbound dari Konektor Suara target. Request-URI Contoh berikut menunjukkan CallAndBridge tindakan dengan AWS titik akhir.

    { "SchemaVersion":"1.0", "Actions":[ { "Type":"CallAndBridge", "Parameters":{ "CallTimeoutSeconds":30, "CallerIdNumber": "+18005550122", "Endpoints":[ { "BridgeEndpointType":"AWS", "Arn":"arn:aws:chime:us-east-1:0123456789101:vc/abcdefg1hijklm2nopq3rs", "Uri":"5550" } ], "SipHeaders": { "x-String":"String" } } } ] }

    Untuk informasi selengkapnya tentang rute Masuk dan Konektor Suara, lihat Mengedit setelan Konektor Suara Amazon Chime SDK.

Diperlukan - Ya

Nilai default - Tidak ada

SipHeaders

Deskripsi - Memungkinkan Anda untuk melewati nilai tambahan. Gunakan hanya dengan tipe AWS endpoint.

Nilai yang diizinkan - header SIP Valid

Diperlukan - Tidak

Nilai default - Tidak ada

Contoh berikut menunjukkan CallAndBridge tindakan sukses yang menggunakan endpoint PSTN:

{ "SchemaVersion": "1.0", "Sequence": 3, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type": "CallAndBridge", "Parameters": { "CallTimeoutSeconds": 30, "CallerIdNumber": "e164PhoneNumber", "Endpoints":[ { "BridgeEndpointType": "PSTN", "Uri": "e164PhoneNumber" } ], "CallId": "call-id-1" } }, "CallDetails":{ ..... ..... "Participants":[ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", ..... "Status": "Connected" }, { "CallId": "call-id-2", "ParticipantTag": "LEG-B", ..... "Status": "Connected" } ] } }

Contoh berikut menunjukkan CallAndBridge tindakan yang gagal.

{ "SchemaVersion": "1.0", "Sequence":2, "InvocationEventType": "ACTION_FAILED", "ActionData":{ "Type": "CallAndBridge", "Parameters":{ "CallTimeoutSeconds": 30, "CallerIdNumber": "e164PhoneNumber", "Endpoints": [ { "BridgeEndpointType": "PSTN", "Uri": "e164PhoneNumber" } ], "CallId": "call-id-1" }, "ErrorType": "CallNotAnswered", "ErrorMessage": "Call not answered" }, "CallDetails":{ ..... ..... "Participants":[ { "CallId": "call-id-1", "ParticipantTag": "LEG-A", ..... } ] } }

Alur panggilan

CallAndBridgeTindakan ini memberikan pensinyalan panggilan dan pengalaman audio yang berbeda untuk leg panggilan yang ada, tergantung pada parameter dan apakah kaki terhubung.

Diagram berikut menunjukkan menunjukkan alur panggilan dengan parameter yang berbeda ketika kaki panggilan masuk A sudah terhubung.

Aliran panggilan yang dijawab melalui CallAndBridge tindakan.

Diagram berikut menunjukkan alur panggilan untuk panggilan yang tidak dijawab.

Aliran panggilan yang tidak terjawab melalui CallAndBridge tindakan.
Detail Tambahan

Ingat fakta-fakta ini tentang CallAndBridge tindakan tersebut.

  • CallTimeoutSeconds— Timer ini dimulai ketika undangan SIP dikirim pada B-Leg. Anda dapat menetapkan nilai target yang diinginkan, tetapi nilai ini dapat diabaikan oleh operator hulu.

  • CallerIdNumber— Nomor telepon ini harus milik pelanggan, atau nomor Dari A-Leg.

  • Perilaku hang-up dan kasus tepi - Jika satu kaki panggilan menutup telepon, kaki panggilan lainnya tidak secara otomatis menutup panggilan. Ketika suatu Hangup acara dikirim ke AWS Lambda fungsi, kaki yang tersisa harus diputuskan secara independen. Jika kaki panggilan dibiarkan menggantung, panggilan ditagih sampai ditutup. Misalnya, skenario berikut dapat menyebabkan biaya tak terduga:

    • Anda mencoba menjembatani ke nomor telepon tujuan. Tujuannya sibuk dan mengirim panggilan langsung ke voicemail. Dari perspektif Layanan Audio, pergi ke voicemail adalah panggilan yang dijawab. A-Leg menutup telepon, tetapi B-Leg terus mendengarkan pesan voicemail. Sementara B-Leg mendengarkan, Anda ditagih.

    • Sebagai praktik terbaik, gunakan AWS Lambda fungsi, atau pesta di ujung lain panggilan, untuk menutup setiap kaki panggilan secara independen.

  • Penagihan - Anda ditagih untuk hal berikut saat menggunakan: CallAndBridge

    • Menit panggilan aktif untuk setiap leg panggilan yang dibuat (A-Leg, B-Leg, dll.) Ke PSTN.

    • Menit penggunaan Layanan Audio.

Lihat contoh kerja di GitHub: