سجلات تسجيل المكالمات في Azure Communication Services
توفّر Azure Communication Services إمكانات التسجيل التي يُمكنك استخدامها لمراقبة حل Communication Services الخاص بك وتتبع أخطائه. يمكنك تكوين هذه الإمكانات من خلال مدخل Microsoft Azure.
يشير المحتوى في هذه المقالة إلى السجلات الممكنة من خلال Azure Monitor (راجع أيضا الأسئلة المتداولة). لتمكين هذه السجلات لخدمات الاتصالات، راجع تمكين تسجيل الدخول إلى إعدادات التشخيص.
فئات سجل الموارد
تقدم Communication Services الأنواع التالية من السجلات التي يمكنك تمكينها:
- سجلات الاستخدام: توفير بيانات الاستخدام المقترنة بكل عرض خدمة تمت فوترتها.
- سجلات ملخص تسجيل المكالمات: توفير معلومات موجزة لتسجيلات المكالمات، مثل:
- مدة المكالمة.
- محتوى الوسائط (على سبيل المثال، الصوت/الفيديو أو غير مixed أو النسخ).
- أنواع التنسيق المستخدمة للتسجيل (على سبيل المثال، WAV أو MP4).
- سبب انتهاء التسجيل.
- تسجيل سجلات العمليات الواردة: توفير معلومات حول الطلبات الواردة لعمليات تسجيل المكالمات. يتوافق كل إدخال مع نتيجة استدعاء واجهات برمجة تطبيقات تسجيل المكالمات، مثل StartRecording و StopRecording و PauseRecording و ResumeRecording.
يتم إنشاء ملف تسجيل في نهاية مكالمة أو اجتماع. يمكن لمستخدم أو تطبيق (روبوت) بدء التسجيل وإيقافه. يمكن أن ينتهي التسجيل أيضا بسبب فشل النظام.
يتم نشر سجلات الملخص بعد أن يصبح التسجيل جاهزا للتنزيل. يتم نشر السجلات خلال وقت الاستجابة القياسي لسجلات موارد Azure Monitor. راجع وقت استيعاب بيانات السجل في Azure Monitor.
مخطط سجل الاستخدام
الخاصية | الوصف |
---|---|
timestamp |
الطابع الزمني (UTC) لتوقيت إنشاء السجل. |
operationName |
العملية المقترنة بسجل السجل. |
operationVersion |
api-version القيمة المقترنة بالعملية، إذا operationName تم تنفيذ العملية من خلال واجهة برمجة تطبيقات. إذا لم تتوافق أي واجهة برمجة تطبيقات مع هذه العملية، فإن الإصدار يمثل إصدار العملية، في حالة تغيير الخصائص المقترنة بالعملية في المستقبل. |
category |
فئة السجل للحدث. الفئة هي الدقة التي يمكنك من خلالها تمكين السجلات على مورد أو تعطيلها. الخصائص التي تظهر داخل كائن properties ثنائي كبير الحجم لحدث ما هي نفسها ضمن فئة السجل ونوع المورد. |
correlationID |
معرف الأحداث المترابطة. يمكنك استخدامه لتحديد الأحداث المرتبطة بين جداول متعددة. |
Properties |
البيانات الأخرى التي تنطبق على أوضاع مختلفة من Communication Services. |
recordID |
المعرف الفريد لسجل الاستخدام. |
usageType |
وضع الاستخدام (على سبيل المثال، الدردشة أو PSTN أو NAT). |
unitType |
نوع الوحدة التي يستند إليها الاستخدام لوضع الاستخدام (على سبيل المثال، الدقائق أو الميغابايت أو الرسائل). |
quantity |
عدد الوحدات المُستخدمة أو المستهلكة لهذا السجل. |
مخطط سجل ملخص تسجيل المكالمات
اسم الخاصية | نوع البيانات | الوصف |
---|---|---|
timeGenerated |
DateTime | الطابع الزمني (UTC) لوقت إنشاء السجل. |
operationName |
السلسلة | العملية المقترنة بسجل سجل. |
correlationId |
السلسلة | المعرف المستخدم لربط الأحداث بين الجداول. |
recordingID |
السلسلة | معرف التسجيل الذي يشير إليه هذا السجل. |
category |
السلسلة | فئة السجل للحدث. السجلات التي لها نفس فئة السجل ونوع المورد لها نفس حقول الخصائص. |
resultType |
السلسلة | وضع العملية. |
level |
السلسلة | مستوى خطورة العملية. |
chunkCount |
Integer | العدد الإجمالي للأجزاء التي تم إنشاؤها للتسجيل. |
channelType |
السلسلة | نوع قناة التسجيل، مثل مختلط أو غير مختلط. |
recordingStartTime |
DateTime | الوقت الذي بدأ فيه التسجيل. |
contentType |
السلسلة | محتوى التسجيل، مثل الصوت فقط أو الصوت/الفيديو أو النسخ. |
formatType |
السلسلة | تنسيق ملف التسجيل. |
recordingLength |
مزدوج | مدة التسجيل بالثوان. |
audioChannelsCount |
Integer | العدد الإجمالي للقنوات الصوتية في التسجيل. |
recordingEndReason |
السلسلة | سبب انتهاء التسجيل. |
تسجيل المكالمات وبيانات المثال
"operationName": "Call Recording Summary",
"operationVersion": "1.0",
"category": "RecordingSummary",
يمكن أن تحتوي المكالمة على تسجيل واحد أو العديد من التسجيلات، اعتمادا على عدد المرات التي يتم فيها تشغيل حدث التسجيل.
على سبيل المثال، إذا بدأ عامل مكالمة صادرة على سطر مسجل وسقطت المكالمة بسبب إشارة شبكة ضعيفة، callID
فسيكون له قيمة واحدة recordingID
. إذا اتصل العامل بالعميل، ينشئ النظام مثيلا جديدا callID
وقيمة جديدة recordingID
.
مثال: تسجيل المكالمات لمكالمة واحدة لتسجيل واحد
"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
}
إذا بدأ العامل تسجيلا ثم توقف ثم أعد تشغيل التسجيل عدة مرات أثناء استمرار تشغيل المكالمة، callID
فسيكون له العديد من recordingID
القيم. يعتمد عدد القيم على عدد المرات التي تم فيها تشغيل أحداث التسجيل.
مثال: تسجيل المكالمات لمكالمة واحدة للعديد من التسجيلات
{
"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
}
سجلات ACSCallRecordingIncomingOperations
فيما يلي الخصائص:
الخاصية | الوصف |
---|---|
timeGenerated |
الطابع الزمني (UTC) لوقت إنشاء السجل. |
callConnectionId |
معرف اتصال المكالمة أو الساق، إذا كان متوفرا. |
callerIpAddress |
عنوان IP المتصل، إذا كانت العملية تتوافق مع استدعاء واجهة برمجة التطبيقات الذي يأتي من كيان بعنوان IP متاح للجمهور. |
correlationId |
معرف الأحداث المترابطة. يمكنك استخدامه لتحديد الأحداث المرتبطة بين جداول متعددة. |
durationMs |
مدة العملية بالملي ثانية. |
level |
مستوى خطورة العملية. |
operationName |
العملية المقترنة بسجلات السجل. |
operationVersion |
إصدار واجهة برمجة التطبيقات المقترن بالعملية أو إصدار العملية (إذا لم يكن هناك إصدار API). |
resourceId |
معرف فريد للمورد المقترن بالسجل. |
resultSignature |
الإحصائية الفرعية للعملية. إذا كانت هذه العملية تتوافق مع استدعاء واجهة برمجة تطبيقات REST، يكون هذا الحقل هو رمز حالة HTTP الخاص باستدعاء REST المقابل. |
resultType |
وضع العملية. |
sdkType |
نوع SDK المُستخدم في الطلب. |
sdkVersion |
إصدار SDK. |
serverCallId |
معرف استدعاء الخادم. |
URI |
معرف الموارد المنتظم (URI) الخاص بالطلب. |
إليك مثال:
"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"
}
الخطوات التالية
- الحصول على نتيجة تحليلات تسجيل المكالمات.
- تعرف على المزيد حول تسجيل المكالمات.