Protokoly záznamu volání služby Azure Communication Services
Azure Communication Services nabízí možnosti protokolování, které můžete použít k monitorování a ladění řešení Communication Services. Tyto funkce nakonfigurujete prostřednictvím webu Azure Portal.
Obsah v tomto článku se týká protokolů povolených prostřednictvím služby Azure Monitor (viz také nejčastější dotazy). Pokud chcete povolit tyto protokoly pro komunikační služby, přečtěte si téma Povolení protokolování v nastavení diagnostiky.
Kategorie protokolu prostředků
Služba Communication Services nabízí následující typy protokolů, které můžete povolit:
- Protokoly využití: Poskytují data o využití přidružená k jednotlivým fakturovaným nabídkám služeb.
- Protokoly souhrnu záznamu hovoru: Zadejte souhrnné informace o záznamech hovorů, například:
- Doba trvání hovoru.
- Mediální obsah (například zvuk/video, nemixovaný nebo přepis).
- Typy formátů používané pro záznam (například WAV nebo MP4).
- Důvod, proč nahrávka skončila
- Zaznamenávání protokolů příchozích operací: Zadejte informace o příchozích požadavcích na operace záznamu volání. Každá položka odpovídá výsledku volání rozhraní API pro záznam volání, jako jsou startRecording, StopRecording, PauseRecording a ResumeRecording.
Soubor záznamu se vygeneruje na konci hovoru nebo schůzky. Záznam může spustit a zastavit uživatel nebo aplikace (robot). Záznam může také končit kvůli selhání systému.
Souhrnné protokoly se publikují poté, co je záznam připravený ke stažení. Protokoly se publikují v době standardní latence pro protokoly prostředků služby Azure Monitor. Viz Čas příjmu dat protokolu ve službě Azure Monitor.
Schéma protokolu využití
Vlastnost | Popis |
---|---|
timestamp |
Časové razítko (UTC) při vygenerování protokolu |
operationName |
Operace přidružená k záznamu protokolu. |
operationVersion |
Hodnota api-version přidružená k operaci, pokud operationName byla operace provedena prostřednictvím rozhraní API. Pokud žádné rozhraní API neodpovídá této operaci, verze představuje verzi operace v případě, že se vlastnosti přidružené k operaci v budoucnu změní. |
category |
Kategorie protokolu události. Kategorie je členitost, ve které můžete povolit nebo zakázat protokoly prostředku. Vlastnosti, které se zobrazí v objektu properties blob události, jsou stejné v kategorii protokolu a typu prostředku. |
correlationID |
ID pro korelované události. Můžete ho použít k identifikaci korelovaných událostí mezi více tabulkami. |
Properties |
Další data, která se vztahují na různé režimy komunikačních služeb. |
recordID |
Jedinečné ID záznamu využití. |
usageType |
Režim použití (například Chat, PSTN nebo NAT). |
unitType |
Typ jednotky, na které se používá režim použití (například minuty, megabajty nebo zprávy). |
quantity |
Počet použitých nebo spotřebovaných jednotek pro tento záznam. |
Schéma protokolu souhrnu záznamu volání
Název vlastnosti | Datový typ | Popis |
---|---|---|
timeGenerated |
DateTime | Časové razítko (UTC) doby vygenerování protokolu |
operationName |
String | Operace přidružená k záznamu protokolu. |
correlationId |
String | ID, které slouží ke korelaci událostí mezi tabulkami. |
recordingID |
String | ID záznamu, na který tento protokol odkazuje. |
category |
String | Kategorie protokolu události. Protokoly se stejnou kategorií protokolu a typem prostředku mají stejná pole vlastností. |
resultType |
String | Stav operace. |
level |
String | Úroveň závažnosti operace. |
chunkCount |
Celé číslo | Celkový počet bloků dat vytvořených pro záznam. |
channelType |
String | Typ kanálu nahrávky, například smíšený nebo nemixovaný. |
recordingStartTime |
DateTime | Čas, kdy záznam začal. |
contentType |
String | Obsah nahrávky, například jenom zvuk, zvuk nebo video nebo přepis. |
formatType |
String | Formát souboru nahrávky. |
recordingLength |
Hodnota s dvojitou přesností | Doba trvání záznamu v sekundách. |
audioChannelsCount |
Celé číslo | Celkový počet zvukových kanálů v záznamu. |
recordingEndReason |
String | Důvod, proč nahrávka skončila |
Záznam hovoru a ukázková data
"operationName": "Call Recording Summary",
"operationVersion": "1.0",
"category": "RecordingSummary",
Hovor může mít jednu nahrávku nebo mnoho nahrávek v závislosti na tom, kolikrát se událost záznamu aktivuje.
Pokud například agent spustí odchozí volání na zaznamenaném řádku a volání klesne kvůli špatnému síťovému signálu, callID
bude mít jednu recordingID
hodnotu. Pokud agent volá zpět zákazníka, systém vygeneruje novou callID
instanci a novou recordingID
hodnotu.
Příklad: Záznam hovoru pro jeden hovor na jeden záznam
"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
}
Pokud agent spustí záznam a pak záznam zastaví a restartuje několikrát, dokud je hovor stále zapnutý, callID
bude mít mnoho recordingID
hodnot. Počet hodnot závisí na tom, kolikrát se události záznamu aktivovaly.
Příklad: Záznam hovoru pro jeden hovor na mnoho nahrávek
{
"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
}
Protokoly ACSCallRecordingIncomingOperations
Tady jsou vlastnosti:
Vlastnost | Popis |
---|---|
timeGenerated |
Časové razítko (UTC) doby vygenerování protokolu |
callConnectionId |
ID připojení nebo noha volání, pokud je k dispozici. |
callerIpAddress |
IP adresa volajícího, pokud operace odpovídá volání rozhraní API, které pochází z entity s veřejně dostupnou IP adresou. |
correlationId |
ID pro korelované události. Můžete ho použít k identifikaci korelovaných událostí mezi více tabulkami. |
durationMs |
Doba trvání operace v milisekundách. |
level |
Úroveň závažnosti operace. |
operationName |
Operace přidružená k záznamům protokolu. |
operationVersion |
Verze rozhraní API přidružená k operaci nebo verzi operace (pokud neexistuje verze rozhraní API). |
resourceId |
Jedinečný identifikátor prostředku, ke kterému je záznam přidružený. |
resultSignature |
Podstatus operace. Pokud tato operace odpovídá volání rozhraní REST API, toto pole je stavový kód HTTP odpovídajícího volání REST. |
resultType |
Stav operace. |
sdkType |
Typ sady SDK použitý v požadavku. |
sdkVersion |
Verze sady SDK. |
serverCallId |
ID volání serveru. |
URI |
Identifikátor URI požadavku. |
Tady je příklad:
"properties"
{ "TimeGenerated": "2023-05-09T15:58:30.100Z",
"Level": "Informational",
"CorrelationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
"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"
}
Další kroky
- Získejte přehledy záznamu hovorů.
- Přečtěte si další informace o záznamu hovoru.