Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Putar file audio di setiap kaki panggilan. Audio dapat diulang beberapa kali. Audio yang sedang berlangsung dapat dihentikan menggunakan digit DTMF yang diatur dalam file. PlaybackTerminators
Saat ini, Amazon Chime SDK hanya mendukung pemutaran file audio dari bucket Amazon Simple Storage Service (Amazon 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. Anda dapat melakukannya dengan menggunakan konsol S3 atau antarmuka baris perintah (CLI).
Contoh kode berikut menunjukkan kebijakan bucket yang khas.
{
"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
"
}
}
}
]
}
Layanan Audio membaca dan menulis ke bucket S3 Anda atas nama Aplikasi Sip Media Anda. Untuk menghindari masalah deputi yang membingungkan, Anda dapat membatasi akses bucket S3 ke satu aplikasi media SIP.
{
"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:chime:region
:aws-account-id
:sma/sip-media-application-id
"
}
}
}
]
}
Contoh kode berikut menunjukkan tindakan yang khas.
{
"Type": "PlayAudio",
"Parameters": {
"CallId": "call-id-1
",
"ParticipantTag": "LEG-A",
"PlaybackTerminators": ["1
", "8
", "#
"],
"Repeat": "5
",
"AudioSource": {
"Type": "S3",
"BucketName": "valid-S3-bucket-name
",
"Key": "wave-file.wav
"
}
}
}
- CallID
-
Deskripsi —
CallId
peserta dalamCallDetails
.Nilai yang diizinkan - ID panggilan yang valid.
Wajib - Tidak, jika
ParticipantTag
ada.Nilai default - Tidak ada.
- ParticipantTag
-
Deskripsi —
ParticipantTag
dari salah satu peserta yang terhubung diCallDetails
.Nilai yang diizinkan —
LEG-A
atauLEG-B
.Wajib - Tidak, jika
CallId
ada.Nilai default -
ParticipantTag
dari yang dipanggilcallLeg
. Diabaikan jika Anda menentukanCallId
. - PlaybackTerminator
-
Deskripsi - Mengakhiri audio yang sedang berlangsung dengan menggunakan input DTMF dari pengguna
Nilai yang diizinkan - Array dari nilai berikut; “0",” 1", “2", “3",” 4 “,” 5",” 6",” 7",” 8 “,” 9",” “#”, “*”
Diperlukan - Tidak
Nilai default - Tidak ada
- Repeat
-
Deskripsi - Mengulangi audio berapa kali yang ditentukan
Nilai yang diizinkan - Bilangan bulat lebih besar dari nol
Diperlukan - Tidak
Nilai default - 1
- AudioSource.Type
-
Deskripsi - Jenis sumber untuk file audio.
Nilai yang diizinkan - S3.
Diperlukan - Ya.
Nilai default - Tidak ada.
- AudioSource.BucketName
-
Deskripsi — Untuk tipe sumber S3, bucket S3 harus memiliki AWS akun yang sama dengan aplikasi SIP. Bucket harus memiliki akses ke kepala layanan Amazon Chime SDK Voice Connector, yaitu voiceconnector.chime.amazonaws.com.
Nilai yang diizinkan — Bucket S3 valid yang dapat diakses oleh Amazon Chime SDK ke tindakan tersebut.
s3:GetObject
Diperlukan - Ya.
Nilai default - Tidak ada.
- AudioSource.key
-
Deskripsi — Untuk tipe sumber S3, nama file dari bucket S3 ditentukan dalam atribut.
AudioSource.BucketName
Nilai yang diizinkan - File audio yang valid.
Diperlukan - Ya.
Nilai default - Tidak ada.
Aplikasi media SIP mencoba memutar audio dari URL sumber. Anda dapat menggunakan file PCM.wav mentah dan tidak terkompresi dengan ukuran tidak lebih dari 50 MB. Amazon Chime SDK merekomendasikan 8 mono. KHz
Ketika instruksi terakhir dalam dialplan PlayAudio
dan file selesai diputar, atau jika pengguna menghentikan pemutaran dengan menekan tombol, aplikasi akan memanggil AWS Lambda fungsi dengan peristiwa yang ditunjukkan dalam contoh berikut.
{
"SchemaVersion": "1.0",
"Sequence": INTEGER,
"InvocationEventType": "ACTION_SUCCESSFUL",
"ActionData": {
"Type": "PlayAudio",
"Parameters" : {
"CallId": "call-id-1
",
"AudioSource": {
"Type": "S3",
"BucketName": "valid-S3-bucket-name
",
"Key": "wave-file.wav
",
}
}
}
Setelah digit penghentian menghentikan audio, itu tidak akan diulang.
Penanganan kesalahan
Ketika file validasi berisi kesalahan, atau terjadi kesalahan saat menjalankan tindakan, aplikasi media SIP memanggil AWS Lambda fungsi dengan kode kesalahan yang sesuai.
Kesalahan | Pesan | Alasan |
---|---|---|
|
Parameter sumber audio tidak valid. |
Kesalahan ini dapat terjadi karena berbagai alasan. Misalnya, aplikasi media SIP tidak dapat mengakses file karena masalah izin, atau masalah dengan URL. Atau, file audio mungkin gagal validasi karena format, durasi, ukuran, dan sebagainya. |
|
Kesalahan sistem saat menjalankan tindakan. |
Kesalahan sistem lain terjadi saat menjalankan tindakan. |
|
CallId atau ParticipantTag parameter untuk tindakan tidak valid. |
Tindakan berisi parameter yang tidak valid. |
Contoh kode berikut menunjukkan kegagalan pemanggilan khas.
{
"SchemaVersion": "1.0",
"Sequence": 2,
"InvocationEventType": "ACTION_FAILED",
"ActionData": {
"Type": "PlayAudio",
"Parameters" : {
"CallId": "call-id-1
",
"AudioSource": {
"Type": "S3",
"BucketName": "bucket-name
",
"Key": "audio-file.wav
"
},
},
"ErrorType": "InvalidAudioSource",
"ErrorMessage": "Audio Source parameter value is invalid."
}
"CallDetails": {
...
}
}
Lihat contoh kerja di GitHub: