View a markdown version of this page

RecordAudio - Amazon Chime SDK

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

RecordAudio

Memungkinkan aplikasi media SIP untuk merekam media dari ID panggilan tertentu. Misalnya, aplikasi pesan suara dan pengumuman peserta rapat. Aplikasi merekam hingga mencapai durasi yang Anda tetapkan, atau ketika pengguna menekan salah satuRecordingTerminators, atau ketika aplikasi mendeteksi keheningan. Dalam kasus tersebut, tindakan memberitahu aplikasi Anda untuk memasukkan file media yang dihasilkan ke dalam bucket S3 yang ditentukan. Bucket S3 harus milik AWS akun yang sama dengan aplikasi media SIP. Selain itu, tindakan harus memberikan s3:PutObject dan s3:PutObjectAcl izin kepada prinsipal layanan Konektor Suara Amazon Chime SDK, prinsip layanan Konektor Suara Amazon Chime SDK,. voiceconnector.chime.amazonaws.com

catatan

Rekaman yang dibuat menggunakan fitur ini mungkin tunduk pada undang-undang atau peraturan mengenai perekaman komunikasi elektronik. Adalah tanggung jawab Anda dan pengguna akhir Anda untuk mematuhi semua undang-undang yang berlaku mengenai rekaman, termasuk memberi tahu semua peserta dalam sesi rekaman atau komunikasi bahwa sesi atau komunikasi sedang direkam, dan mendapatkan persetujuan mereka.

Contoh kebijakan IAM berikut memberikan s3:PutObjectAcl izin s3:PutObject dan ke prinsipal layanan Konektor Suara Amazon Chime SDK:

contoh: Kebijakan IAM untuk perekaman panggilan
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMARead", "Effect": "Allow", "Principal": { "Service": "voiceconnector.chime.amazonaws.com" }, "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": "arn:aws:s3:::bucket-name/*", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }

Contoh berikut berhenti merekam ketika pemanggil menekan tombol pound (#), atau 10 detik berlalu tanpa aktivitas, atau penelepon tetap diam selama 3 detik, dan itu menulis file media yang dihasilkan ke lokasi yang ditentukan oleh parameter. RecordingDestination

catatan

Contoh ini menggunakan CallId parameter. Anda dapat menggunakan ParticipantTag parameter sebagai gantinya, tetapi Anda tidak dapat menggunakan keduanya.

{ "Type": "RecordAudio", "Parameters": { "CallId": "call-id-1", "DurationInSeconds": "10", "SilenceDurationInSeconds": 3, "SilenceThreshold": 100, "RecordingTerminators": [ "#" ], "RecordingDestination": { "Type": "S3", "BucketName": "valid-bucket-name", "Prefix": "valid-prefix-name" } } }
CallId

Des CallId kripsi — peserta dalam CallDetails pemang AWS Lambda gilan fungsi

Nilai yang diizinkan — ID panggilan yang valid

Diperlukan - Tidak

Nilai default - Tidak ada

ParticipantTag

Deskripsi - ParticipantTag dari salah satu peserta yang terhubung di CallDetails

Nilai yang diizinkan — LEG-A atau LEG-B

Diperlukan - Tidak

Nilai default — ParticipantTag dari yang dipanggil Diab callLeg aikan jika Anda menentukan CallId

RecordingDestination.Type

Deskripsi — Jenis tujuan. Hanya S3.

Nilai yang diizinkan — S3

Diperlukan - Ya

Nilai default - Tidak ada

RecordingDestination.BucketName

Deskripsi — Nama bucket S3 yang valid. Bucket harus memiliki akses ke prinsipal layanan Konektor Suara Amazon Chime SDK,voiceconnector.chime.amazonaws.com.

Nilai yang diizinkan — Bucket S3 yang valid yang Amazon Chime SDK memiliki akses ke s3:PutObjectAcl tindakan s3:PutObject dan.

Diperlukan - Ya

Nilai default - Tidak ada

RecordingDestination.Prefix

Deskripsi - S3 awalan file rekaman

Nilai yang diizinkan — Nama awalan yang valid yang berisi hingga 979 karakter aman. Untuk informasi selengkapnya tentang karakter aman, lihat Karakter aman di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Diperlukan - Tidak

Default - Tidak ada. Jika tidak ditentukan, rekaman disimpan ke root bucket S3.

DurationInSeconds

Deskripsi — Durasi rekaman, dalam detik

Nilai yang diizinkan — >0

Diperlukan - Tidak

Nilai default - Tidak ada

SilenceDurationInSeconds

Deskripsi — Durasi keheningan dalam hitungan detik, setelah itu rekaman berhenti. Jika tidak ditentukan, deteksi diam dinonaktifkan.

Nilai yang diizinkan — [1; 1000]

Diperlukan - Tidak

Nilai default - 200

SilenceThreshold

Deskripsi — Tingkat kebisingan yang dianggap “diam.” Jika Anda tidak menentukanSilenceDurationInSeconds, parameter ini diabaikan.

Nilai referensi (tingkat kebisingan dan ambang batas untuk memperlakukan kebisingan sebagai keheningan):
  • 1-30dB atau di bawah, seperti ruangan yang tenang

  • 100-40-50 dB, seperti bisikan atau kantor yang tenang

  • 200—60dB, seperti kantor yang ramai

  • 1000—75 dB, seperti orang yang keras atau musik

Nilai yang diizinkan — [1; 1000]

Diperlukan - Tidak

Nilai default - 200

RecordingTerminators

Deskripsi - Mencantumkan semua terminator rekaman yang tersedia.

Nilai yang diizinkan — Array digit tunggal dan simbol dari [123456789*0#]

Diperlukan - Ya

Nilai default - Tidak ada

Menangani peristiwa ACTION_SUCCESSFUL

Saat perekaman berakhir, aplikasi media SIP Amazon Chime SDK memanggil AWS Lambda fungsi tersebut dan meneruskannya acara ACTION_SUCCESSFUL, bersama dengan hasil pemanggilan.

{ "SchemaVersion": "1.0", "Sequence": INTEGER, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type" : "RecordAudio", "Parameters": { ... }, "RecordingDestination": { "Type": "S3", "BucketName": "valid-bucket-name", "Key": "valid-S3-key" }, "RecordingTerminatorUsed":"#" }, "CallDetails": { ... } }

A ACTION_SUCCESSFUL cara berisiActionData, yang berisi bidang-bidang ini:

Type

Deskripsi — Jenis tindakan,RecordAudio.

Parameters

Deskripsi — Parameter tindakan.

RecordingDestination.Type

Deskripsi — Jenis tujuan. Hanya S3.

RecordingDestination.BucketName

Deskripsi — Bucket S3 yang berisi file rekaman.

RecordingDestination.Key

Deskripsi — Kunci S3 dari file rekaman.

RecordingTerminatorUsed

Deskripsi — Terminator yang digunakan untuk menghentikan perekaman — salah satu terminator yang diteruskan dalam parameter. RecordingTerminators Jika perekaman berhenti setelah mencapai durasi maksimum (DurationInSeconds) atau karena diam (SilenceDurationInSeconds), pasangan nilai kunci ini tidak termasuk dalam output.

Penanganan kesalahan

Untuk kesalahan validasi, aplikasi media SIP memanggil AWS Lambda fungsi dengan pesan kesalahan yang sesuai. Tabel berikut mencantumkan pesan kesalahan yang mungkin terjadi.

Kesalahan Pesan Alasan

InvalidActionParameter

CallIdatau ParticipantTag parameter untuk tindakan tidak valid.

DurationInSecondsnilai parameter tidak valid.

SilenceDurationInSecondsnilai parameter tidak valid.

SilenceThresholdnilai parameter tidak valid.

RecordingDestinationnilai parameter tidak valid.

Terjadi kesalahan saat mengunggah rekaman ke bucket S3.

Parameter apa pun tidak valid.

SystemException

Kesalahan sistem saat menjalankan tindakan.

Jenis lain dari kesalahan sistem terjadi saat menjalankan tindakan.

Penanganan TINDAKAN_GAGAL peristiwa

Ketika tindakan gagal merekam media pada leg panggilan, aplikasi media SIP memanggil AWS Lambda fungsi dengan jenis peristiwa. ACTION_FAILED Lihat contoh berikut ini.

{ "SchemaVersion": "1.0", "Sequence": 5, "InvocationEventType": "ACTION_FAILED", "ActionData": { "Type" : "RecordAudio", "Parameters": { ... }, "ErrorType": "InvalidActionParameter", "ErrorMessage": "RecordingDestination parameter value is invalid." }, "CallDetails": { ... } }

Lihat contoh kerja di GitHub: https://github.com/aws-samples/amazon-chime-sma-bridging