Log Perekaman Panggilan Azure Communication Services
Azure Communication Services menawarkan kemampuan pengelogan yang dapat Anda gunakan untuk memantau dan men-debug solusi Communication Services Anda. Anda mengonfigurasi kemampuan ini melalui portal Azure.
Konten dalam artikel ini mengacu pada log yang diaktifkan melalui Azure Monitor (lihat juga FAQ). Untuk mengaktifkan log ini untuk Communication Services, lihat Mengaktifkan pengelogan di pengaturan diagnostik.
Kategori log sumber daya
Communication Services menawarkan jenis log berikut yang dapat Anda aktifkan:
- Log penggunaan: Berikan data penggunaan yang terkait dengan setiap penawaran layanan yang ditagih.
- Log ringkasan Rekaman Panggilan: Berikan informasi ringkasan untuk rekaman panggilan, seperti:
- Durasi panggilan.
- Konten media (misalnya, audio/video, unmixed, atau transkripsi).
- Jenis format yang digunakan untuk perekaman (misalnya, WAV atau MP4).
- Alasan mengapa rekaman berakhir.
- Merekam log operasi masuk: Berikan informasi tentang permintaan masuk untuk operasi Perekaman Panggilan. Setiap entri sesuai dengan hasil panggilan ke API Rekaman Panggilan, seperti StartRecording, StopRecording, PauseRecording, dan ResumeRecording.
File rekaman dihasilkan di akhir panggilan atau rapat. Pengguna atau aplikasi (bot) dapat memulai dan menghentikan perekaman. Perekaman juga dapat berakhir karena kegagalan sistem.
Log ringkasan diterbitkan setelah rekaman siap diunduh. Log diterbitkan dalam waktu latensi standar untuk log sumber daya Azure Monitor. Lihat Waktu penyerapan data log di Azure Monitor.
Skema log penggunaan
Properti | Deskripsi |
---|---|
timestamp |
Tanda waktu (UTC) saat log dihasilkan. |
operationName |
Operasi yang dikaitkan dengan catatan log. |
operationVersion |
Nilai api-version yang terkait dengan operasi, jika operationName operasi dilakukan melalui API. Jika tidak ada API yang sesuai dengan operasi ini, versi mewakili versi operasi, jika properti yang terkait dengan perubahan operasi di masa mendatang. |
category |
Kategori log kejadian. Kategorinya adalah granularitas di mana Anda dapat mengaktifkan atau menonaktifkan log pada sumber daya. Properti yang muncul dalam properties blob peristiwa sama dalam kategori log dan jenis sumber daya. |
correlationID |
ID untuk kejadian berkorelasi. Anda dapat menggunakannya untuk mengidentifikasi peristiwa yang berkorelasi antara beberapa tabel. |
Properties |
Data lain yang berlaku untuk berbagai mode Communication Services. |
recordID |
ID unik untuk rekaman penggunaan. |
usageType |
Mode penggunaan (misalnya, Obrolan, PSTN, atau NAT). |
unitType |
Jenis unit yang digunakan didasarkan pada mode penggunaan (misalnya, menit, megabyte, atau pesan). |
quantity |
Jumlah unit yang digunakan atau dikonsumsi untuk rekaman ini. |
Skema log ringkasan Rekaman Panggilan
Nama properti | Jenis data | Deskripsi |
---|---|---|
timeGenerated |
DateTime | Stempel waktu (UTC) saat log dihasilkan. |
operationName |
String | Operasi yang terkait dengan catatan log. |
correlationId |
String | ID yang digunakan untuk menghubungkan peristiwa antar tabel. |
recordingID |
String | ID untuk rekaman yang dirujuk log ini. |
category |
String | Kategori log kejadian. Log dengan kategori log dan jenis sumber daya yang sama memiliki bidang properti yang sama. |
resultType |
String | Status operasi. |
level |
String | Tingkat keparahan operasi. |
chunkCount |
Bilangan bulat | Jumlah total gugus yang dibuat untuk perekaman. |
channelType |
String | Jenis saluran rekaman, seperti campuran atau tidak terkompak. |
recordingStartTime |
DateTime | Waktu perekaman dimulai. |
contentType |
String | Konten rekaman, seperti audio saja, audio/video, atau transkripsi. |
formatType |
String | Format file rekaman. |
recordingLength |
Laju | Durasi perekaman dalam hitungan detik. |
audioChannelsCount |
Bilangan bulat | Jumlah total saluran audio dalam rekaman. |
recordingEndReason |
String | Alasan mengapa rekaman berakhir. |
Perekaman Panggilan dan data contoh
"operationName": "Call Recording Summary",
"operationVersion": "1.0",
"category": "RecordingSummary",
Panggilan dapat memiliki satu rekaman atau banyak rekaman, tergantung pada berapa kali peristiwa perekaman dipicu.
Misalnya, jika agen memulai panggilan keluar pada baris yang direkam dan panggilan turun karena sinyal jaringan yang buruk, callID
akan memiliki satu recordingID
nilai. Jika agen memanggil kembali pelanggan, sistem menghasilkan instans baru callID
dan nilai baru recordingID
.
Contoh: Perekaman Panggilan untuk satu panggilan ke satu rekaman
"properties"
{
"TimeGenerated":"2022-08-17T23:18:26.4332392Z",
"OperationName": "RecordingSummary",
"Category": "CallRecordingSummary",
"CorrelationId": "zzzzzz-cada-4164-be10-0000000000",
"ResultType": "Succeeded",
"Level": "Informational",
"RecordingId": "eyJQbGF0Zm9ybUVuZHBvaW5xxxxxxxxFmNjkwxxxxxxxxxxxxSZXNvdXJjZVNwZWNpZmljSWQiOiJiZGU5YzE3Ni05M2Q3LTRkMWYtYmYwNS0yMTMwZTRiNWNlOTgifQ",
"RecordingEndReason": "CallEnded",
"RecordingStartTime": "2022-08-16T09:07:54.0000000Z",
"RecordingLength": "73872.94",
"ChunkCount": 6,
"ContentType": "Audio - Video",
"ChannelType": "mixed",
"FormatType": "mp4",
"AudioChannelsCount": 1
}
Jika agen memulai perekaman lalu menghentikan dan memulai ulang perekaman beberapa kali saat panggilan masih aktif, callID
akan memiliki banyak recordingID
nilai. Jumlah nilai tergantung pada berapa kali peristiwa perekaman dipicu.
Contoh: Perekaman Panggilan untuk satu panggilan ke banyak rekaman
{
"TimeGenerated": "2022-08-17T23:55:46.6304762Z",
"OperationName": "RecordingSummary",
"Category": "CallRecordingSummary",
"CorrelationId": "xxxxxxx-cf78-4156-zzzz-0000000fa29cc",
"ResultType": "Succeeded",
"Level": "Informational",
"RecordingId": "eyJQbGF0Zm9ybUVuZHBxxxxxxxxxxxxjkwMC05MmEwLTRlZDYtOTcxYS1kYzZlZTkzNjU0NzciLCJSxxxxxNwZWNpZmljSWQiOiI5ZmY2ZTY2Ny04YmQyLTQ0NzAtYmRkYy00ZTVhMmUwYmNmOTYifQ",
"RecordingEndReason": "CallEnded",
"RecordingStartTime": "2022-08-17T23:55:43.3304762Z",
"RecordingLength": 3.34,
"ChunkCount": 1,
"ContentType": "Audio - Video",
"ChannelType": "mixed",
"FormatType": "mp4",
"AudioChannelsCount": 1
}
{
"TimeGenerated": "2022-08-17T23:55:56.7664976Z",
"OperationName": "RecordingSummary",
"Category": "CallRecordingSummary",
"CorrelationId": "xxxxxxx-cf78-4156-zzzz-0000000fa29cc",
"ResultType": "Succeeded",
"Level": "Informational",
"RecordingId": "eyJQbGF0Zm9ybUVuxxxxxxiOiI4NDFmNjkwMC1mMjBiLTQzNmQtYTg0Mi1hODY2YzE4M2Y0YTEiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI2YzRlZDI4NC0wOGQ1LTQxNjEtOTExMy1jYWIxNTc3YjM1ODYifQ",
"RecordingEndReason": "CallEnded",
"RecordingStartTime": "2022-08-17T23:55:54.0664976Z",
"RecordingLength": 2.7,
"ChunkCount": 1,
"ContentType": "Audio - Video",
"ChannelType": "mixed",
"FormatType": "mp4",
"AudioChannelsCount": 1
}
Log ACSCallRecordingIncomingOperations
Berikut adalah propertinya:
Properti | Deskripsi |
---|---|
timeGenerated |
Stempel waktu (UTC) saat log dihasilkan. |
callConnectionId |
ID koneksi atau kaki panggilan, jika tersedia. |
callerIpAddress |
Alamat IP penelepon, jika operasi sesuai dengan panggilan API yang berasal dari entitas dengan alamat IP yang tersedia untuk umum. |
correlationId |
ID untuk kejadian berkorelasi. Anda dapat menggunakannya untuk mengidentifikasi peristiwa yang berkorelasi antara beberapa tabel. |
durationMs |
Durasi operasi, dalam milidetik. |
level |
Tingkat keparahan operasi. |
operationName |
Operasi yang terkait dengan rekaman log. |
operationVersion |
Versi API yang terkait dengan operasi atau versi operasi (jika tidak ada versi API). |
resourceId |
Pengidentifikasi unik untuk sumber daya yang terkait dengan rekaman. |
resultSignature |
Substatus operasi. Jika operasi ini sesuai dengan panggilan REST API, bidang ini adalah kode status HTTP dari panggilan REST yang sesuai. |
resultType |
Status operasi. |
sdkType |
Jenis SDK yang digunakan dalam permintaan. |
sdkVersion |
Versi SDK. |
serverCallId |
ID panggilan server. |
URI |
URI permintaan. |
Berikut contohnya:
"properties"
{ "TimeGenerated": "2023-05-09T15:58:30.100Z",
"Level": "Informational",
"CorrelationId": "a999f996-b4e1-xxxx-ac04-a59test87d97",
"OperationName": "ResumeCallRecording",
"OperationVersion": "2023-03-06",
"URI": "https://acsresouce.communication.azure.com/calling/recordings/ eyJQbGF0Zm9ybUVuZHBviI0MjFmMTIwMC04MjhiLTRmZGItOTZjYi0...:resume?api-version=2023-03-06",
"ResultType": "Succeeded",
"ResultSignature": 202,
"DurationMs": 130,
"CallerIpAddress": "127.0.0.1",
"CallConnectionId": "d5596715-ab0b-test-8eee-575c250e4234",
"ServerCallId": "aHR0cHM6Ly9hcGk0vjCCCCCCQd2pRP2k9OTMmZT02Mzc5OTQ3xMDAzNDUwMzg...",
"SdkVersion": "1.0.0-alpha.20220829.1",
"SdkType": "dotnet"
}