سجلات المكالمات الصوتية ومخاطبة الفيديو في Azure Communication Services
توفر Azure Communication Services إمكانات التسجيل التي يمكنك استخدامها لمراقبة حل Communication Services وتصحيحه. قم بتكوين هذه الإمكانات من خلال مدخل Microsoft Azure.
يشير المحتوى في هذه المقالة إلى السجلات الممكنة من خلال Azure Monitor (راجع أيضا الأسئلة المتداولة). لتمكين هذه السجلات لخدمات الاتصالات، راجع تمكين تسجيل الدخول إلى إعدادات التشخيص.
مفاهيم البيانات
الأوصاف عالية المستوى التالية لمفاهيم البيانات خاصة بالمكالمات الصوتية والمكالمات الصوتية. هذه المفاهيم مهمة للمراجعة بحيث يمكنك فهم معنى البيانات التي تم التقاطها في السجلات.
الكيانات والمعرفات
تعرف على المصطلحات التالية:
استدعاء: كما هو موضح في البيانات، الاستدعاء هو تجريد يصوره
correlationId
.correlationId
تعد قيم فريدة لكل مكالمة، وهي محددة زمنيا استناداcallStartTime
إلى وcallDuration
.المشارك: يمثل الاتصال بين نقطة نهاية والخادم. يكون المشارك (
participantId
) موجودا فقط عندما تكون المكالمة عبارة عن مكالمة جماعية.نقطة النهاية: الكيان الأكثر تميزا، ممثلا ب
endpointId
. كل استدعاء هو حدث يحتوي على بيانات من نقطتي نهاية أو أكثر. تمثل نقاط النهاية المشاركين في المكالمة.EndpointType
يخبرك ما إذا كانت نقطة النهاية مستخدما بشريا (PSTN أو VoIP) أو روبوتا أو الخادم الذي يدير عدة مشاركين في مكالمة.endpointType
عندما تكون القيمة ،"Server"
لا يتم تعيين معرف فريد لنقطة النهاية. يمكنك تحليلendpointType
وعددendpointId
القيم لتحديد عدد المستخدمين والمشاركين الآخرين غير البشر (الروبوتات والخوادم) الذين ينضمون إلى مكالمة.تعيد SDKs الأصلية لنظامي التشغيل Android وiOS استخدام نفس
endpointId
القيمة للمستخدم عبر مكالمات متعددة، حتى تتمكن من فهم التجارب عبر الجلسات. تختلف هذه العملية عن نقاط النهاية المستندة إلى الويب، والتي تنشئ دائما قيمة جديدةendpointId
لكل استدعاء جديد.Stream: الكيان الأكثر دقة. هناك دفق واحد لكل اتجاه (وارد أو صادر) وقيمة
mediaType
(على سبيل المثال،Audio
أوVideo
).
تعريفات البيانات
مخطط سجل الاستخدام
الخاصية | الوصف |
---|---|
Timestamp |
الطابع الزمني (UTC) عند إنشاء السجل. |
Operation Name |
العملية المقترنة بسجل السجل. |
Operation Version |
api-version القيمة المقترنة بالعملية، إذا Operation Name تم تنفيذ العملية من خلال واجهة برمجة تطبيقات. إذا لم تتوافق أي واجهة برمجة تطبيقات مع هذه العملية، فإن الإصدار يمثل إصدار العملية، في حالة تغيير الخصائص المقترنة بالعملية في المستقبل. |
Category |
فئة السجل للحدث. الفئة هي الدقة التي يمكنك من خلالها تمكين السجلات على مورد أو تعطيلها. الخصائص التي تظهر داخل كائن properties ثنائي كبير الحجم لحدث ما هي نفسها ضمن فئة السجل ونوع المورد. |
Correlation ID |
معرف الأحداث المترابطة. يمكنك استخدامه لتحديد الأحداث المرتبطة بين جداول متعددة. |
Properties |
البيانات الأخرى التي تنطبق على أوضاع مختلفة من Communication Services. |
Record ID |
المعرف الفريد لسجل الاستخدام. |
Usage Type |
وضع الاستخدام (على سبيل المثال، الدردشة أو PSTN أو NAT). |
Unit Type |
نوع الوحدة التي يستند إليها الاستخدام لوضع الاستخدام (على سبيل المثال، الدقائق أو الميغابايت أو الرسائل). |
Quantity |
عدد الوحدات المُستخدمة أو المستهلكة لهذا السجل. |
مخطط سجل ملخص المكالمات
يحتوي سجل ملخص المكالمات على بيانات لمساعدتك في تحديد الخصائص الرئيسية لجميع المكالمات. يتم إنشاء سجل ملخص مكالمة مختلف لكل participantId
قيمة (أو endpointId
لاستدعاءات نظير إلى نظير [P2P] ) في المكالمة.
هام
تختلف معلومات المشاركين في سجل ملخص المكالمة استنادا إلى مستأجر المشارك. يتم تنقيح إصدار SDK وإصدار نظام التشغيل إذا لم يكن المشارك ضمن نفس المستأجر (يسمى أيضا عبر المستأجر) كمورد Communication Services. يتم تصنيف المشاركين عبر المستأجرين كمستخدمين خارجيين مدعوين من قبل مستأجر مورد للانضمام والتعاون أثناء المكالمة.
الخاصية | الوصف |
---|---|
time |
الطابع الزمني (UTC) عند إنشاء السجل. |
operationName |
العملية المقترنة بسجل السجل. |
operationVersion |
api-version القيمة المقترنة بالعملية، إذا operationName تم تنفيذ العملية من خلال واجهة برمجة تطبيقات. إذا لم تتوافق أي واجهة برمجة تطبيقات مع هذه العملية، فإن الإصدار يمثل إصدار العملية، في حالة تغيير الخصائص المقترنة بالعملية في المستقبل. |
category |
فئة السجل للحدث. هذه الخاصية هي الدقة التي يمكنك من خلالها تمكين السجلات أو تعطيلها على مورد. الخصائص التي تظهر داخل كائن properties ثنائي كبير الحجم لحدث ما هي نفسها ضمن فئة السجل ونوع المورد. |
correlationId |
المعرف الفريد لمكالمة. وهو يحدد الأحداث المرتبطة من جميع المشاركين ونقاط النهاية التي تتصل أثناء مكالمة واحدة، ويمكنك استخدامها لضم البيانات من سجلات مختلفة. إذا كنت بحاجة إلى فتح حالة دعم مع Microsoft، يمكنك استخدام correlationId القيمة لتحديد المكالمة التي تقوم باستكشاف الأخطاء وإصلاحها بسهولة. |
identifier |
معرِّف فريد للمستخدم. يمكن أن تكون الهوية مستخدم Azure Communication Services أو معرف مستخدم Microsoft Entra أو معرف مستخدم Teams مجهول أو معرف روبوت Teams. يمكنك استخدام هذا المعرف لربط أحداث المستخدم عبر السجلات. |
callStartTime |
طابع زمني لبدء المكالمة، استنادا إلى أول محاولة اتصال من أي نقطة نهاية. |
callDuration |
مدة المكالمة، التي يتم التعبير عنها بالثوان، استنادا إلى أول محاولة اتصال ونهاية الاتصال الأخير بين نقطتي نهاية. |
callType |
نوع المكالمة. يحتوي على إما "P2P" أو "Group" . "P2P" المكالمة هي اتصال مباشر 1:1 بين نقطتي نهاية فقط غير خادم. "Group" المكالمة هي مكالمة تحتوي على أكثر من نقطتي نهاية أو تم إنشاؤها كمكالمة "Group" قبل الاتصال. |
teamsThreadId |
معرف مؤشر ترابط Teams. لا يكون هذا المعرف ذا صلة إلا عندما يتم تنظيم المكالمة كاجتماع Teams. ثم يمثل حالة استخدام إمكانية التشغيل التفاعلي بين Microsoft Teams وAzure Communication Services. يتم عرض هذا المعرف في السجلات التشغيلية. يمكنك أيضا الحصول على هذا المعرف من خلال واجهات برمجة تطبيقات الدردشة. |
participantId |
المعرف الذي تم إنشاؤه لتمثيل الاتصال ثنائي الاتجاه بين "Participant" نقطة نهاية (endpointType = "Server" ) والخادم. عندما callType = "P2P" ، يكون هناك اتصال مباشر بين نقطتي نهاية، ولا يتم إنشاء أي participantId قيمة. |
participantStartTime |
الطابع الزمني لبداية محاولة الاتصال الأولى للمشارك. |
participantDuration |
مدة اتصال كل مشارك بالثوان، من participantStartTime إلى الطابع الزمني عند انتهاء الاتصال. |
participantEndReason |
سبب نهاية اتصال المشارك. يحتوي على استدعاء رموز خطأ SDK التي تصدرها SDK (عند الاقتضاء) لكل participantId قيمة. |
endpointId |
المعرف الفريد الذي يمثل كل نقطة نهاية متصلة باستدعاء، حيث endpointType يعرف نوع نقطة النهاية. عندما تكون القيمة ، null يكون الكيان المتصل هو خادم Communication Services ( = endpointType "Server" ). endpointId يمكن أن تستمر القيمة في بعض الأحيان لنفس المستخدم عبر مكالمات متعددة (correlationId ) للعملاء الأصليين. يحدد عدد endpointId القيم عدد سجلات ملخص المكالمات. يتم إنشاء سجل ملخص مميز لكل endpointId قيمة. |
endpointType |
تصف هذه القيمة خصائص كل نقطة نهاية متصلة باستدعاء . يمكن أن يحتوي على "Server" أو "PSTN" "VOIP" أو "BOT" أو أو "Unknown" . |
sdkVersion |
سلسلة الإصدار لإصدار Communication Services Calling SDK الذي تستخدمه كل نقطة نهاية ذات صلة (على سبيل المثال، "1.1.00.20212500" ). |
osVersion |
سلسلة تمثل نظام التشغيل وإصدار كل جهاز نقطة نهاية. |
participantTenantId |
معرف مستأجر Microsoft المقترن بهوية المشارك. يمكن أن يكون المستأجر إما مستأجر Azure الذي يمتلك مورد Azure Communication Services أو مستأجر Microsoft لهوية Microsoft 365. يتم استخدام هذا الحقل لتوجيه redaction عبر المستأجرين. |
participantType |
وصف المشارك كمزيج من عميله (Azure Communication Services أو Teams)، وهويته (Azure Communication Services أو Microsoft 365). تتضمن القيم المحتملة: Azure Communication Services (هوية Azure Communication Services وAzure Communication Services SDK)، وTeams (Teams identity and Teams client)، وAzure Communication Services كمستخدم خارجي ل Teams (هوية Azure Communication Services وAzure Communication Services SDK في مكالمة أو اجتماع Teams)، وAzure Communication Services كمستخدم Microsoft 365 (هوية Microsoft 365 وعميل Azure Communication Services)، وTeams Voice Apps. |
pstnPartcipantCallType |
يمثل نوع واتجاه المشاركين في PSTN بما في ذلك مكالمات الطوارئ والتوجيه المباشر والنقل وإعادة التوجيه وما إلى ذلك. |
ParticipantEndSubCode |
يمثل الرمز الفرعي لخطأ استدعاء SDK الذي تصدره SDK (عند الاقتضاء) لكل participantId قيمة. |
ResultCategory |
يمثل فئة المشارك الذي أنهى المكالمة. يمكن أن تكون إحدى هذه القيم الأربع: Success، ExpectedError، UnexpectedClientError، UnexpectedServerError. |
استدعاء مخطط سجل التشخيص
توفر سجلات تشخيص المكالمات معلومات مهمة حول نقاط النهاية وعمليات نقل الوسائط لكل مشارك. كما أنها توفر قياسات تساعدك على فهم مشكلات الجودة.
لكل نقطة نهاية داخل مكالمة، يتم إنشاء سجل تشخيص مكالمة مميز لتدفقات الوسائط الصادرة (الصوت أو الفيديو، على سبيل المثال) بين نقاط النهاية. في استدعاء P2P، يحتوي كل سجل على بيانات تتعلق بكل من التدفقات الصادرة المقترنة بكل نقطة نهاية. في مكالمات المجموعة، participantId
يعمل كمعرف رئيسي للانضمام إلى السجلات الصادرة ذات الصلة في اتصال مشارك مميز. تظل سجلات تشخيص المكالمات سليمة وهي نفسها بغض النظر عن المستأجر المشارك.
إشعار
في هذه المقالة، توجد مكالمات P2P والمجموعة داخل نفس المستأجر، بشكل افتراضي، لجميع سيناريوهات المكالمات عبر المستأجرين. يتم تحديدها وفقا لذلك في جميع أنحاء المقالة.
الخاصية | الوصف |
---|---|
operationName |
العملية المقترنة بسجل السجل. |
operationVersion |
api-version القيمة المقترنة بالعملية، إذا operationName تم تنفيذ العملية من خلال واجهة برمجة تطبيقات. إذا لم تتوافق أي واجهة برمجة تطبيقات مع هذه العملية، فإن الإصدار يمثل إصدار العملية، في حالة تغيير الخصائص المقترنة بالعملية في المستقبل. |
category |
فئة السجل للحدث. هذه الخاصية هي الدقة التي يمكنك من خلالها تمكين السجلات أو تعطيلها على مورد. الخصائص التي تظهر داخل كائن properties ثنائي كبير الحجم لحدث ما هي نفسها ضمن فئة السجل ونوع المورد. |
correlationId |
المعرف الفريد لمكالمة. وهو يحدد الأحداث المرتبطة من جميع المشاركين ونقاط النهاية التي تتصل أثناء مكالمة واحدة. إذا كنت بحاجة إلى فتح حالة دعم مع Microsoft، يمكنك استخدام correlationId القيمة لتحديد المكالمة التي تقوم باستكشاف الأخطاء وإصلاحها بسهولة. |
participantId |
تم إنشاء المعرف لتمثيل الاتصال ثنائي الاتجاه بين "Participant" نقطة نهاية (endpointType = "Server" ) والخادم. عندما callType = "P2P" ، يكون هناك اتصال مباشر بين نقطتي نهاية، ولا يتم إنشاء أي participantId قيمة. |
identifier |
معرِّف فريد للمستخدم. يمكن أن تكون الهوية مستخدم Azure Communication Services أو معرف مستخدم Microsoft Entra أو معرف عنصر Teams أو معرف روبوت Teams. يمكنك استخدام هذا المعرف لربط أحداث المستخدم عبر السجلات. |
endpointId |
المعرف الفريد الذي يمثل كل نقطة نهاية متصلة باستدعاء، حيث endpointType يعرف نوع نقطة النهاية. عندما تكون القيمة ، null يكون الكيان المتصل هو خادم Communication Services. EndpointId يمكن أن تستمر لنفس المستخدم عبر مكالمات متعددة (correlationId ) للعملاء الأصليين ولكنها فريدة لكل مكالمة عندما يكون العميل مستعرض ويب. |
endpointType |
القيمة التي تصف خصائص كل endpointId مثيل. يمكن أن يحتوي على "Server" أو "VOIP" أو "PSTN" أو "Voicemail" "BOT" "Anonymous" "Unknown" . |
mediaType |
قيمة السلسلة التي تصف نوع الوسائط التي يتم إرسالها بين نقاط النهاية داخل كل دفق. تتضمن "Audio" القيم المحتملة و "Video" و "VBSS" (مشاركة الشاشة المستندة إلى الفيديو) و."AppSharing" |
streamId |
عدد صحيح غير أحادي، جنبا إلى جنب مع mediaType ، يمكنك استخدامه لتعريف التدفقات ذات القيمة نفسها participantId بشكل فريد. |
transportType |
قيمة السلسلة التي تصف بروتوكول نقل الشبكة لكل participantId قيمة. يمكن أن يحتوي على "UDP" أو "TCP" أو "Unrecognized" . "Unrecognized" يشير إلى أن النظام لم يتمكن من تحديد ما إذا كان نوع النقل TCP أو UDP. |
roundTripTimeAvg |
متوسط الوقت المستغرق للحصول على حزمة IP من نقطة نهاية إلى أخرى خلال فترة participantDuration . يرتبط تأخير نشر الشبكة هذا بالمسافة المادية بين النقطتين وسرعة الضوء وأي حمل تأخذه أجهزة التوجيه المختلفة بينهما. يتم قياس زمن الانتقال على أنه وقت أحادي الاتجاه أو وقت ذهابا وإيابا (RTT). يتم التعبير عن قيمته بالمللي ثانية. يؤثر RTT أكبر من 500 مللي ثانية سلبا على جودة المكالمة. |
roundTripTimeMax |
الحد الأقصى ل RTT (بالمللي ثانية) الذي تم قياسه للوصول إلى دفق الوسائط خلال participantDuration فترة في مكالمة جماعية أو خلال callDuration فترة في مكالمة P2P. |
jitterAvg |
متوسط التغير في التأخير بين الحزم المتتابعة. يمكن ل Azure Communication Services التكيف مع بعض مستويات التشويه من خلال التخزين المؤقت. عندما يتجاوز التشويه التخزين المؤقت، والذي يكون تقريبا في jitterAvg وقت أكبر من 30 مللي ثانية، فإنه يمكن أن يؤثر سلبا على الجودة. تؤدي الحزم التي تصل بسرعات مختلفة إلى صوت السماعة إلى صوت روبوتي. يتم قياس هذا المقياس لكل دفق وسائط على مدار participantDuration الفترة في مكالمة جماعية callDuration أو خلال الفترة في مكالمة P2P. |
jitterMax |
الحد الأقصى لقيمة التشويه التي يتم قياسها بين الحزم لكل دفق وسائط. يمكن أن تتسبب الاندفاعات في ظروف الشبكة في حدوث مشاكل في تدفق حركة مرور الصوت/الفيديو. |
packetLossRateAvg |
متوسط النسبة المئوية للحزم التي يتم فقدانها. يؤثر فقدان الحزمة بشكل مباشر على جودة الصوت. الحزم الصغيرة والفردية المفقودة ليس لها أي تأثير تقريبا، في حين تتسبب خسائر الاندفاع من الخلف إلى الخلف في قطع الصوت تماما. تتسبب الحزم التي يتم إسقاطها وعدم الوصول إلى وجهتها المقصودة في حدوث فجوات في الوسائط. ينتج عن هذا الموقف مقاطع وكلمات فائتة، إلى جانب مقاطع فيديو متقطعة ومشاركة. من المحتمل أن يكون لمعدل فقدان الحزمة أكبر من 10٪ (0.1) تأثير سلبي على الجودة. يتم قياس هذا المقياس لكل دفق وسائط على مدار participantDuration الفترة في مكالمة جماعية callDuration أو خلال الفترة في مكالمة P2P. |
packetLossRateMax |
تمثل هذه القيمة الحد الأقصى لمعدل فقدان الحزمة (النسبة المئوية) لكل دفق وسائط خلال participantDuration الفترة في مكالمة جماعية أو خلال callDuration الفترة في مكالمة P2P. يمكن أن تتسبب الاندفاعات في ظروف الشبكة في حدوث مشاكل في تدفق حركة مرور الصوت/الفيديو. |
JitterBufferSizeAvg |
متوسط حجم المخزن المؤقت للتشويه على مدى مدة كل دفق وسائط. المخزن المؤقت للتشويه هو منطقة بيانات مشتركة حيث يمكن جمع الحزم الصوتية وتخزينها وإرسالها إلى المعالج الصوتي في فواصل زمنية متباعدة بالتساوي. يستخدم المخزن المؤقت للتشويه لمواجهة تأثيرات التشويه. يمكن أن تكون المخازن المؤقتة المشتتة إما ثابتة أو ديناميكية. يتم تعيين المخازن المؤقتة للهزات الثابتة إلى حجم ثابت، بينما يمكن لمخازن التشويش الديناميكية ضبط حجمها استنادا إلى ظروف الشبكة. الهدف من المخزن المؤقت للتشويه هو توفير دفق سلس وغير متقطع من بيانات الصوت والفيديو للمستخدم. في SDK الويب، هذه JitterBufferSizeAvg هي متوسط قيمة jitterBufferDelay أثناء الاستدعاء. هي jitterBufferDelay مدة عينة صوت أو إطار فيديو يبقى في المخزن المؤقت للتشويه. عادة عندما JitterBufferSizeAvg تكون القيمة أكبر من 200 مللي ثانية، فإنها تؤثر سلبا على الجودة. |
JitterBufferSizeMax |
الحد الأقصى لحجم المخزن المؤقت للتشويه الذي تم قياسه خلال مدة كل دفق وسائط. عادة عندما تكون هذه القيمة أكبر من 200 مللي ثانية، فإنها تؤثر سلبا على الجودة. |
HealedDataRatioAvg |
متوسط النسبة المئوية لحزم البيانات المفقودة أو التالفة التي تم إعادة بنائها أو استردادها بنجاح من قبل المعالج على مدار مدة دفق الصوت. نسبة البيانات المعالجة هي مقياس لفعالية تقنيات تصحيح الأخطاء المستخدمة في أنظمة VoIP. عندما تكون هذه القيمة أكبر من 0.1 (10٪)، فإننا نعتبر الدفق جودة سيئة. |
HealedDataRatioMax |
الحد الأقصى لنسبة البيانات المعالجة التي تم قياسها خلال مدة كل دفق وسائط. عندما تكون هذه القيمة أكبر من 0.1 (10٪)، فإننا نعتبر الدفق جودة سيئة. |
VideoFrameRateAvg |
متوسط عدد إطارات الفيديو التي يتم إرسالها في الثانية أثناء مكالمة فيديو/مشاركة الشاشة. يمكن أن يؤثر معدل إطار الفيديو على جودة تدفق الفيديو ونعومته، مع ارتفاع معدلات الإطارات بشكل عام مما يؤدي إلى حركة أكثر سلاسة وسوائل. معدل الإطار القياسي لفيديو WebRTC عادة ما يكون 30 إطارا في الثانية (fps)، على الرغم من أن معدل الإطار يمكن أن يختلف اعتمادا على التنفيذ المحدد وظروف الشبكة. تعتبر جودة الدفق ضعيفة عندما تكون هذه القيمة أقل من 7 لدفق الفيديو، أو أقل من 1 لدفق مشاركة الشاشة. |
RecvResolutionHeight |
متوسط الحجم العمودي لدفق الفيديو الوارد الذي يتم إرساله أثناء مكالمة فيديو/مشاركة الشاشة. يتم قياسه بالبكسل وهو أحد العوامل التي تحدد الدقة الشاملة وجودة دفق الفيديو. قد تعتمد الدقة المحددة المستخدمة على قدرات الأجهزة وظروف الشبكة المتضمنة في المكالمة. تعتبر جودة الدفق ضعيفة عندما تكون هذه القيمة أقل من 240 لدفق الفيديو، أو أقل من 768 لدفق مشاركة الشاشة. |
RecvFreezeDurationPerMinuteInMs |
متوسط مدة التجميد بالمللي ثانية في الدقيقة لدفق مشاركة الفيديو/الشاشة الواردة. عادة ما يكون التجميد بسبب حالة شبكة غير صحيحة ويمكن أن يؤدي إلى تدهور جودة الدفق. تعتبر جودة الدفق ضعيفة عندما تكون هذه القيمة أكبر من 6000 مللي ثانية لتدفق الفيديو، أو أكبر من 25000 مللي ثانية لدفق مشاركة الشاشة. |
PacketUtilization |
الحزم المرسلة أو المستلمة لدفق وسائط معين. عادة ما يكون الاستدعاء أطول، كلما كانت القيمة أعلى. إذا كانت هذه القيمة صفر، فقد تشير إلى أن الوسائط لا تتدفق. |
VideoBitRateAvg |
متوسط معدل البت (بت في الثانية) لفيديو أو دفق مشاركة الشاشة. قد تشير قيمة معدل البت المنخفض إلى مشكلة سيئة في الشبكة. يمكن العثور على الحد الأدنى من معدل البت (النطاق الترددي) المطلوب هنا: النطاق الترددي للشبكة. |
VideoBitRateMax |
الحد الأقصى لمرات البت (بت في الثانية) لدفق مشاركة الشاشة أو الفيديو. قد تشير قيمة معدل البت المنخفض إلى مشكلة سيئة في الشبكة. يمكن العثور على الحد الأدنى من معدل البت (النطاق الترددي) المطلوب هنا: النطاق الترددي للشبكة. |
StreamDirection |
اتجاه دفق الوسائط. إما واردة أو صادرة. |
CodecName |
اسم برنامج الترميز المستخدم لمعالجة تدفقات الوسائط. يمكن أن يكون OPUS وG722 وH264S وSATIN وما إلى ذلك. |
استدعاء مخطط سجل عمليات العميل
يوفر سجل عمليات عميل المكالمات معلومات من جانب العميل حول نقاط نهاية الاتصال والمشاركين المشاركين في مكالمة. هذه السجلات قيد المعاينة حاليا وتظهر أحداث العميل التي حدثت في مكالمة والإجراءات التي يتخذها العميل أثناء المكالمة.
يوفر هذا السجل معلومات مفصلة حول الإجراءات المتخذة أثناء المكالمة ويمكن استخدامه لتصور مشكلات المكالمة والتحقيق فيها باستخدام تشخيصات المكالمات لمورد Azure Communication Services. تعرف على المزيد حول تشخيص المكالمات
الخاصية | الوصف |
---|---|
CallClientTimeStamp |
الطابع الزمني لوقت تشغيل حدث على SDK في UTC. |
OperationName |
اسم العملية التي تم تشغيلها على استدعاء SDK. |
CallId |
المعرف الفريد لمكالمة. وهو يحدد الأحداث المرتبطة من جميع المشاركين ونقاط النهاية التي تتصل أثناء مكالمة واحدة، ويمكنك استخدامها لضم البيانات من سجلات مختلفة. إنه مشابه ل correlationId في سجل ملخص المكالمات وسجل تشخيص المكالمات. |
ParticipantId |
المعرف الفريد لكل مكالمة (في مكالمات المجموعة) أو المشارك في المكالمة (في مكالمات نظير إلى نظير). هذا المعرف هو نقطة الارتباط الرئيسية بين سجلات CallSummary و CallDiagnostic و CallClientOperations و CallClientMediaStats. |
OperationType |
استدعاء عملية العميل. |
OperationId |
GGUID فريد يحدد عملية SDK. |
DurationMs |
الوقت الذي استغرقته عملية استدعاء SDK للفشل أو النجاح. |
ResultType |
حقل يصف نجاح العملية أو فشلها. |
ResultSignature |
رمز الفشل أو النجاح مثل HTTP (200، 500). |
SdkVersion |
إصدار استدعاء SDK قيد الاستخدام. |
UserAgent |
يتم استخدام سلسلة عامل المستخدم القياسية استنادا إلى المتصفح أو النظام الأساسي Calling SDK. |
ClientInstanceId |
GGUID فريد يحدد كائن CallClient. |
EndpointId |
المعرف الفريد الذي يمثل كل نقطة نهاية متصلة باستدعاء، حيث يحدد endpointType نوع نقطة النهاية. عندما تكون القيمة فارغة، يكون الكيان المتصل هو خادم Communication Services (endpointType = "Server"). يمكن أن تستمر قيمة endpointId في بعض الأحيان لنفس المستخدم عبر استدعاءات متعددة (correlationId) للعملاء الأصليين. يحدد عدد قيم endpointId عدد سجلات ملخص المكالمة. يتم إنشاء سجل ملخص مميز لكل قيمة endpointId. |
OperationPayload |
حمولة ديناميكية تختلف بناء على العملية التي توفر المزيد من التفاصيل الخاصة بالعملية. |
استدعاء مخطط سجل السلسلة الزمنية لإعلام العميل
يوفر سجل التسلسل الزمني لإحصاءات وسائط عميل الاتصال معلومات من جانب العميل حول تدفقات الوسائط بين المشاركين الفرديين المشاركين في مكالمة. هذه السجلات حاليا في معاينة محدودة وتوفر بيانات سلسلة زمنية مفصلة على الصوت والفيديو ومشاركة الشاشة بخار الوسائط بين المشاركين مع فاصل تجميع افتراضي مدته 10 ثوان. تحتوي السجلات على معلومات سلسلة زمنية دقيقة حول نوع دفق الوسائط والاتجاه وخصائص برنامج الترميز ومعدل البت (على سبيل المثال، الحد الأقصى والحد الأدنى والمتوسط).
يوفر هذا السجل معلومات أكثر تفصيلا من سجل تشخيص المكالمات لفهم جودة تبخير الوسائط بين المشاركين. يمكن استخدامه لتصور مشكلات الجودة والتحقيق فيها لمكالماتك من خلال تشخيص المكالمات لمورد Azure Communication Services. تعرف على المزيد حول تشخيص المكالمات
الخاصية | الوصف |
---|---|
OperationName |
العملية المقترنة بسجل السجل. |
CallId |
المعرف الفريد لمكالمة. وهو يحدد الأحداث المرتبطة من جميع المشاركين ونقاط النهاية التي تتصل أثناء مكالمة واحدة، ويمكنك استخدامها لضم البيانات من سجلات مختلفة. إنه مشابه ل correlationId في سجل ملخص المكالمات وسجل تشخيص المكالمات. |
CallClientTimeStamp |
الطابع الزمني عند تسجيل إحصائيات الوسائط. |
MetricName |
اسم إحصائيات الوسائط، مثل Bitrate و JitterInMs PacketsPerSecond و وهكذا. |
Count |
عدد نقاط البيانات التي تم أخذ عينات منها في طابع زمني معين. |
Sum |
مجموع قيم القياس لجميع نقاط البيانات التي تم أخذ عينات منها. |
Average |
متوسط قيمة القياس لنقاط البيانات التي تم أخذ عينات منها. المتوسط = المجموع / العدد. |
Minimum |
الحد الأدنى من القيم القياسية لجميع نقاط البيانات التي تم أخذ عينات منها. |
Maximum |
الحد الأقصى للقيم القياسية لجميع نقاط البيانات التي تم أخذ عينات منها. |
MediaStreamDirection |
اتجاه دفق الوسائط. يمكن أن يكون send أو receive . |
MediaStreamType |
نوع دفق الوسائط. يمكن أن يكون video ، أو audio ، أو screen . |
MediaStreamCodec |
برنامج الترميز المستخدم لترميز/فك ترميز دفق الوسائط، مثل H264 و OPUS VP8 و وهكذا. |
ParticipantId |
المعرف الفريد الذي تم إنشاؤه لتمثيل كل نقطة نهاية في المكالمة. |
ClientInstanceId |
المعرف الفريد الذي يمثل كائن Call Client الذي تم إنشاؤه في استدعاء SDK. |
EndpointId |
المعرف الفريد الذي يمثل كل نقطة نهاية متصلة بالمكالمة. يمكن أن يستمر EndpointId لنفس المستخدم عبر مكالمات متعددة (callIds ) للعملاء الأصليين ولكنه فريد لكل مكالمة عندما يكون العميل مستعرض ويب. EndpointId لم يتم وضع علامة حاليا في هذا السجل. عند التنفيذ، فإنه يطابق القيم في سجلات CallSummary/Diagnostics |
RemoteParticipantId |
المعرف الفريد الذي يمثل نقطة النهاية البعيدة في دفق الوسائط. على سبيل المثال، يمكن للمستخدم عرض تدفقات فيديو متعددة للمستخدمين الآخرين في نفس المكالمة. يحتوي كل دفق فيديو على .RemoteParticipantId |
RemoteEndpointId |
مثل EndpointId ، ولكنه يمثل المستخدم على الجانب البعيد من الدفق. |
MediaStreamId |
معرف فريد يمثل كل دفق وسائط في المكالمة. MediaStreamId غير مسجل حاليا في العملاء. عند تنفيذه، فإنه يطابق streamId العمود في سجلات CallDiagnostics. |
AggregationIntervalSeconds |
الفاصل الزمني لتجميع إحصائيات الوسائط. حاليا في Calling SDK، يتم أخذ عينات من مقاييس الوسائط كل ثانية، وعندما نبلغ في السجل نقوم بتجميع جميع العينات كل 10 ثوان. لذلك يحتوي كل صف في هذا الجدول على 10 نقاط أخذ عينات على الأكثر. |
P2P مقابل مكالمات المجموعة
هناك نوعان من الاستدعاءات، كما هو ممثل في callType
:
استدعاء نظير إلى نظير (P2P): اتصال بين نقطتي نهاية فقط، بدون نقطة نهاية خادم. يتم بدء استدعاءات P2P كمكالمة بين نقاط النهاية هذه ولا يتم إنشاؤها كحدث مكالمة جماعية قبل الاتصال.
مكالمة جماعية: أي مكالمة تحتوي على أكثر من نقطتي نهاية متصلتين. تتضمن استدعاءات المجموعة نقطة نهاية الخادم والاتصال بين كل نقطة نهاية والخادم. تتوقف مكالمات P2P التي تضيف نقطة نهاية أخرى أثناء المكالمة عن أن تكون P2P، وتصبح مكالمة جماعية. يمكنك تحديد المخطط الزمني للوقت الذي انضمت فيه كل نقطة نهاية إلى المكالمة باستخدام المقاييس
participantStartTime
وparticipantDuration
.
بنية السجل
تنشئ Azure Communication Services أربعة أنواع من السجلات:
سجلات ملخص المكالمات: تحتوي على معلومات أساسية حول المكالمة، بما في ذلك جميع المعرفات ذات الصلة والطوابع الزمنية ونقاط النهاية ومعلومات SDK. لكل مشارك في مكالمة، تقوم Communication Services بإنشاء سجل ملخص مكالمة مميز.
إذا أعاد شخص ما الانضمام إلى مكالمة، فإن هذا المشارك له نفس
EndpointId
القيمة ولكنه قيمة مختلفةParticipantId
. يمكن أن تحتوي نقطة النهاية هذه بعد ذلك على سجلين لملخص المكالمات.استدعاء سجلات التشخيص: تحتوي على معلومات حول الدفق، جنبا إلى جنب مع مجموعة من المقاييس التي تشير إلى جودة قياسات التجربة.
EndpointId
لكل مكالمة داخل (بما في ذلك الخادم)، تقوم Azure Communication Services بإنشاء سجل تشخيص مكالمة مميز لكل دفق وسائط (صوت أو فيديو، على سبيل المثال) بين نقاط النهاية.استدعاء سجلات عمليات العميل: تحتوي على أحداث مفصلة لعميل المكالمات. يتم إنشاء أحداث السجل هذه لكل
EndpointId
منها في مكالمة ويعتمد عدد سجلات الأحداث التي تم إنشاؤها على العمليات التي نفذها المشارك أثناء المكالمة.استدعاء سجلات إحصائيات وسائط العميل: تحتوي على قيم دفق وسائط مفصلة. يتم إنشاء هذه السجلات لكل دفق وسائط في مكالمة.
EndpointId
لكل مكالمة داخل (بما في ذلك الخادم)، تنشئ Azure Communication Services سجلا مميزا لكل دفق وسائط (صوت أو فيديو، على سبيل المثال) بين نقاط النهاية. يعتمد حجم البيانات التي تم إنشاؤها في كل سجل على مدة المكالمة وعدد بخار الوسائط في المكالمة.
في استدعاء P2P، يحتوي كل سجل على بيانات تتعلق بكل من التدفقات الصادرة المقترنة بكل نقطة نهاية. في مكالمة جماعية، ينشئ كل دفق مقترن endpointType
= "Server"
بسجل يحتوي على بيانات للتدفقات الواردة. تنشئ جميع التدفقات الأخرى سجلات تحتوي على بيانات للتدفقات الصادرة لجميع نقاط النهاية غير الخادمة. في مكالمات المجموعة، استخدم participantId
القيمة كمفتاح للانضمام إلى السجلات الواردة والصادرة ذات الصلة في اتصال مشارك مميز.
مثال: مكالمة P2P
يمثل الرسم التخطيطي التالي نقطتي نهاية متصلتين مباشرة في مكالمة P2P. في هذا المثال، تنشئ Communication Services سجلين لملخص المكالمات (سجل واحد لكل participantID
قيمة) وأربعة سجلات تشخيص المكالمات (سجل واحد لكل دفق وسائط).
بالنسبة للمشاركين في اتصالات Azure Communication Services، هناك أيضا سلسلة من سجلات عمليات عميل المكالمات وسجلات التسلسل الزمني لإحصائيات وسائط العميل. يعتمد العدد الدقيق لهذه السجلات على نوع عمليات SDK التي يتم استدعاؤها ومدة الاستدعاء.
مثال: مكالمة جماعية
يمثل الرسم التخطيطي التالي مثال استدعاء مجموعة بثلاث participantId
قيم (مما يعني ثلاثة مشاركين) ونقطة نهاية خادم. من المحتمل أن تظهر قيم متعددة ل endpointId
في عدة مشاركين- على سبيل المثال، عند إعادة الانضمام إلى مكالمة من نفس الجهاز. تقوم Communication Services بإنشاء سجل ملخص مكالمة واحد لكل participantId
قيمة. يقوم بإنشاء أربعة سجلات تشخيص المكالمات: واحد لكل دفق وسائط لكل participantId
.
بالنسبة للمشاركين في اتصال Azure Communication Services، تكون سجلات عمليات عميل المكالمات هي نفسها مكالمات P2P. لكل مشارك يستخدم استدعاء SDK، هناك سلسلة من سجلات عمليات عميل المكالمات.
بالنسبة للمشاركين في اتصال Azure Communication Services، تكون سجلات عمليات عميل المكالمات وسجلات السلاسل الزمنية لإحصائيات وسائط العميل هي نفسها مكالمات P2P. لكل مشارك يستخدم استدعاء SDK، هناك سلسلة من سجلات عمليات عميل المكالمات وسجلات التسلسل الزمني لإحصائيات وسائط العميل.
مثال: مكالمة P2P عبر المستأجرين
يمثل الرسم التخطيطي التالي اثنين من المشاركين عبر عدة مستأجرين متصلين مباشرة في مكالمة P2P. في هذا المثال، تقوم Communication Services بإنشاء سجل ملخص مكالمة واحد (واحد لكل مشارك) مع إصدارات نظام التشغيل وSDK منقحة. تنشئ Communication Services أيضا أربعة سجلات تشخيص المكالمات (سجل واحد لكل دفق وسائط). يحتوي كل سجل على بيانات تتعلق بالتدفق الصادر ل participantID
.
مثال: مكالمة مجموعة عبر المستأجرين
يمثل الرسم التخطيطي التالي مثال استدعاء مجموعة بثلاث participantId
قيم عبر مستأجرين متعددين. تنشئ Communication Services سجل ملخص مكالمة واحدا لكل مشارك باستخدام إصدارات نظام التشغيل وSDK التي تم تنقيحها. تنشئ Communication Services أيضا أربعة سجلات تشخيص المكالمات التي تتعلق بكل participantId
قيمة (واحدة لكل دفق وسائط).
إشعار
يدعم هذا الإصدار سجلات التشخيص الصادرة فقط. يمكن تنقيح إصدارات نظام التشغيل وSDK المرتبطة بالروبوت والمشارك لأن Communication Services تتعامل مع هويات المشاركين والروبوتات بنفس الطريقة.
عينة بيانات
مكالمة P2P
فيما يلي حقول مشتركة لكافة السجلات في مكالمة P2P:
"time": "2021-07-19T18:46:50.188Z",
"resourceId": "SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/ACS-TEST-RG/PROVIDERS/MICROSOFT.COMMUNICATION/COMMUNICATIONSERVICES/ACS-PROD-CCTS-TESTS",
"correlationId": "8d1a8374-344d-4502-b54b-ba2d6daaf0ae",
سجلات ملخص المكالمات
تقوم سجلات ملخص المكالمات بمشاركة معلومات العملية والفئة:
"operationName": "CallSummary",
"operationVersion": "1.0",
"category": "CallSummary",
فيما يلي ملخص مكالمة لمستخدم VoIP 1:
"properties": {
"identifier": "acs:61fddbe3-0003-4066-97bc-6aaf143bbb84_0000000b-4fee-66cf-ac00-343a0d003158",
"callStartTime": "2021-07-19T17:54:05.113Z",
"callDuration": 6,
"callType": "P2P",
"teamsThreadId": "null",
"participantId": "null",
"participantStartTime": "2021-07-19T17:54:06.758Z",
"participantDuration": "5",
"participantEndReason": "0",
"endpointId": "570ea078-74e9-4430-9c67-464ba1fa5859",
"endpointType": "VoIP",
"sdkVersion": "1.0.1.0",
"osVersion": "Windows 10.0.17763 Arch: x64"
}
فيما يلي ملخص مكالمة لمستخدم VoIP 2:
"properties": {
"identifier": "acs:7af14122-9ac7-4b81-80a8-4bf3582b42d0_06f9276d-8efe-4bdd-8c22-ebc5434903f0",
"callStartTime": "2021-07-19T17:54:05.335Z",
"callDuration": 6,
"callType": "P2P",
"teamsThreadId": "null",
"participantId": "null",
"participantStartTime": "2021-07-19T17:54:06.335Z",
"participantDuration": "5",
"participantEndReason": "0",
"endpointId": "a5bd82f9-ac38-4f4a-a0fa-bb3467cdcc64",
"endpointType": "VoIP",
"sdkVersion": "1.1.0.0",
"osVersion": "null"
}
فيما يلي سجل ملخص المكالمات عبر المستأجرين لمستخدم VoIP 1:
"properties": {
"identifier": "1e4c59e1-r1rr-49bc-893d-990dsds8f9f5",
"callStartTime": "2022-08-14T06:18:27.010Z",
"callDuration": 520,
"callType": "P2P",
"teamsThreadId": "null",
"participantId": "null",
"participantTenantId": "02cbdb3c-155a-4b95-b829-6d56a45787ca",
"participantStartTime": "2022-08-14T06:18:27.010Z",
"participantDuration": "520",
"participantEndReason": "0",
"endpointId": "02cbdb3c-155a-4d98-b829-aaaaa61d44ea",
"endpointType": "VoIP",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
فيما يلي ملخص مكالمة لمكالمة PSTN:
إشعار
تحتوي سجلات مكالمات P2P أو المجموعة على إصدارات نظام التشغيل وSDK منقحة بغض النظر عما إذا كان مستأجر المشارك أو مستأجر الروبوت.
"properties": {
"identifier": "b1999c3e-bbbb-4650-9b23-9999bdabab47",
"callStartTime": "2022-08-07T13:53:12Z",
"callDuration": 1470,
"callType": "Group",
"teamsThreadId": "19:36ec5177126fff000aaa521670c804a3@thread.v2",
"participantId": " b25cf111-73df-4e0a-a888-640000abe34d",
"participantStartTime": "2022-08-07T13:56:45Z",
"participantDuration": 960,
"participantEndReason": "0",
"endpointId": "8731d003-6c1e-4808-8159-effff000aaa2",
"endpointType": "PSTN",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
استدعاء سجلات التشخيص
سجلات تشخيص المكالمات تشارك معلومات العملية:
"operationName": "CallDiagnostics",
"operationVersion": "1.0",
"category": "CallDiagnostics",
فيما يلي سجل تشخيص لدفق صوت من نقطة نهاية VoIP 1 إلى نقطة نهاية VoIP 2:
"properties": {
"identifier": "acs:61fddbe3-0003-4066-97bc-6aaf143bbb84_0000000b-4fee-66cf-ac00-343a0d003158",
"participantId": "null",
"endpointId": "570ea078-74e9-4430-9c67-464ba1fa5859",
"endpointType": "VoIP",
"mediaType": "Audio",
"streamId": "1000",
"transportType": "UDP",
"roundTripTimeAvg": "82",
"roundTripTimeMax": "88",
"jitterAvg": "1",
"jitterMax": "1",
"packetLossRateAvg": "0",
"packetLossRateMax": "0"
}
فيما يلي سجل تشخيصي لدفق صوت من نقطة نهاية VoIP 2 إلى نقطة نهاية VoIP 1:
"properties": {
"identifier": "acs:7af14122-9ac7-4b81-80a8-4bf3582b42d0_06f9276d-8efe-4bdd-8c22-ebc5434903f0",
"participantId": "null",
"endpointId": "a5bd82f9-ac38-4f4a-a0fa-bb3467cdcc64",
"endpointType": "VoIP",
"mediaType": "Audio",
"streamId": "1363841599",
"transportType": "UDP",
"roundTripTimeAvg": "78",
"roundTripTimeMax": "84",
"jitterAvg": "1",
"jitterMax": "1",
"packetLossRateAvg": "0",
"packetLossRateMax": "0"
}
فيما يلي سجل تشخيصي لدفق فيديو من نقطة نهاية VoIP 1 إلى نقطة نهاية VoIP 2:
"properties": {
"identifier": "acs:61fddbe3-0003-4066-97bc-6aaf143bbb84_0000000b-4fee-66cf-ac00-343a0d003158",
"participantId": "null",
"endpointId": "570ea078-74e9-4430-9c67-464ba1fa5859",
"endpointType": "VoIP",
"mediaType": "Video",
"streamId": "2804",
"transportType": "UDP",
"roundTripTimeAvg": "103",
"roundTripTimeMax": "143",
"jitterAvg": "0",
"jitterMax": "4",
"packetLossRateAvg": "3.146336E-05",
"packetLossRateMax": "0.001769911"
}
مكالمة جماعية
يتم إنشاء بيانات مكالمة جماعية في ثلاثة سجلات ملخص مكالمة وستة سجلات تشخيص المكالمات. فيما يلي حقول مشتركة لكافة السجلات في المكالمة:
"time": "2021-07-05T06:30:06.402Z",
"resourceId": "SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/ACS-TEST-RG/PROVIDERS/MICROSOFT.COMMUNICATION/COMMUNICATIONSERVICES/ACS-PROD-CCTS-TESTS",
"correlationId": "341acde7-8aa5-445b-a3da-2ddadca47d22",
سجلات ملخص المكالمات
تقوم سجلات ملخص المكالمات بمشاركة معلومات العملية والفئة:
"operationName": "CallSummary",
"operationVersion": "1.0",
"category": "CallSummary",
فيما يلي ملخص مكالمة لنقطة نهاية VoIP 1:
"properties": {
"identifier": "acs:1797dbb3-f982-47b0-b98e-6a76084454f1_0000000b-1531-729f-ac00-343a0d00d975",
"callStartTime": "2021-07-05T06:16:40.240Z",
"callDuration": 87,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLT77777OOOOO99999jgxOTkw@thread.v2",
"participantId": "04cc26f5-a86d-481c-b9f9-7a40be4d6fba",
"participantStartTime": "2021-07-05T06:16:44.235Z",
"participantDuration": "82",
"participantEndReason": "0",
"endpointId": "5ebd55df-ffff-ffff-89e6-4f3f0453b1a6",
"endpointType": "VoIP",
"sdkVersion": "1.0.0.3",
"osVersion": "Darwin Kernel Version 18.7.0: Mon Nov 9 15:07:15 PST 2020; root:xnu-4903.272.3~3/RELEASE_ARM64_S5L8960X"
}
فيما يلي ملخص مكالمة لنقطة نهاية VoIP 3:
"properties": {
"identifier": "acs:1797dbb3-f982-47b0-b98e-6a76084454f1_0000000b-1531-57c6-ac00-343a0d00d972",
"callStartTime": "2021-07-05T06:16:40.240Z",
"callDuration": 87,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLTk2ZDUtYTZlM2I2ZjgxOTkw@thread.v2",
"participantId": "1a9cb3d1-7898-4063-b3d2-26c1630ecf03",
"participantStartTime": "2021-07-05T06:16:40.240Z",
"participantDuration": "87",
"participantEndReason": "0",
"endpointId": "5ebd55df-ffff-ffff-ab89-19ff584890b7",
"endpointType": "VoIP",
"sdkVersion": "1.0.0.3",
"osVersion": "Android 11.0; Manufacturer: Google; Product: redfin; Model: Pixel 5; Hardware: redfin"
}
فيما يلي ملخص مكالمة لنقطة نهاية PSTN 2:
"properties": {
"identifier": "null",
"callStartTime": "2021-07-05T06:16:40.240Z",
"callDuration": 87,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLT77777OOOOO99999jgxOTkw@thread.v2",
"participantId": "515650f7-8204-4079-ac9d-d8f4bf07b04c",
"participantStartTime": "2021-07-05T06:17:10.447Z",
"participantDuration": "52",
"participantEndReason": "0",
"endpointId": "46387150-692a-47be-8c9d-1237efe6c48b",
"endpointType": "PSTN",
"sdkVersion": "null",
"osVersion": "null"
}
فيما يلي سجل ملخص المكالمات عبر المستأجرين:
"properties": {
"identifier": "1e4c59e1-r1rr-49bc-893d-990dsds8f9f5",
"callStartTime": "2022-08-14T06:18:27.010Z",
"callDuration": 912,
"callType": "Group",
"teamsThreadId": "19:meeting_MjZiOTAyN2YtZWU1Yi00ZTZiLT77777OOOOO99999jgxOTkw@thread.v2",
"participantId": "aa1dd7da-5922-4bb1-a4fa-e350a111fd9c",
"participantTenantId": "02cbdb3c-155a-4b95-b829-6d56a45787ca",
"participantStartTime": "2022-08-14T06:18:27.010Z",
"participantDuration": "902",
"participantEndReason": "0",
"endpointId": "02cbdb3c-155a-4d98-b829-aaaaa61d44ea",
"endpointType": "VoIP",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
فيما يلي سجل ملخص المكالمات عبر المستأجرين مع روبوت كمشارك:
"properties": {
"identifier": "b1902c3e-b9f7-4650-9b23-9999bdabab47",
"callStartTime": "2022-08-09T16:00:32Z",
"callDuration": 1470,
"callType": "Group",
"teamsThreadId": "19:meeting_MmQwZDcwYTQtZ000HWE6NzI4LTg1YTAtNXXXXX99999ZZZZZ@thread.v2",
"participantId": "66e9d9a7-a434-4663-d91d-fb1ea73ff31e",
"participantStartTime": "2022-08-09T16:14:18Z",
"participantDuration": 644,
"participantEndReason": "0",
"endpointId": "69680ec2-5ac0-4a3c-9574-eaaa77720b82",
"endpointType": "Bot",
"sdkVersion": "Redacted",
"osVersion": "Redacted"
}
استدعاء سجلات التشخيص
سجلات تشخيص المكالمات تشارك معلومات العملية:
"operationName": "CallDiagnostics",
"operationVersion": "1.0",
"category": "CallDiagnostics",
فيما يلي سجل تشخيص لدفق صوت من نقطة نهاية VoIP 1 إلى نقطة نهاية الخادم:
"properties": {
"identifier": "acs:1797dbb3-f982-47b0-b98e-6a76084454f1_0000000b-1531-729f-ac00-343a0d00d975",
"participantId": "04cc26f5-a86d-481c-b9f9-7a40be4d6fba",
"endpointId": "5ebd55df-ffff-ffff-89e6-4f3f0453b1a6",
"endpointType": "VoIP",
"mediaType": "Audio",
"streamId": "14884",
"transportType": "UDP",
"roundTripTimeAvg": "46",
"roundTripTimeMax": "48",
"jitterAvg": "0",
"jitterMax": "1",
"packetLossRateAvg": "0",
"packetLossRateMax": "0"
}
فيما يلي سجل تشخيص لدفق صوت من نقطة نهاية خادم إلى نقطة نهاية VoIP 1:
"properties": {
"identifier": null,
"participantId": "04cc26f5-a86d-481c-b9f9-7a40be4d6fba",
"endpointId": null,
"endpointType": "Server",
"mediaType": "Audio",
"streamId": "2001",
"transportType": "UDP",
"roundTripTimeAvg": "42",
"roundTripTimeMax": "44",
"jitterAvg": "1",
"jitterMax": "1",
"packetLossRateAvg": "0",
"packetLossRateMax": "0"
}
فيما يلي سجل تشخيص لدفق صوت من نقطة نهاية VoIP 3 إلى نقطة نهاية الخادم:
"properties": {
"identifier": "acs:1797dbb3-f982-47b0-b98e-6a76084454f1_0000000b-1531-57c6-ac00-343a0d00d972",
"participantId": "1a9cb3d1-7898-4063-b3d2-26c1630ecf03",
"endpointId": "5ebd55df-ffff-ffff-ab89-19ff584890b7",
"endpointType": "VoIP",
"mediaType": "Audio",
"streamId": "13783",
"transportType": "UDP",
"roundTripTimeAvg": "45",
"roundTripTimeMax": "46",
"jitterAvg": "1",
"jitterMax": "2",
"packetLossRateAvg": "0",
"packetLossRateMax": "0"
}
فيما يلي سجل تشخيص لدفق صوت من نقطة نهاية خادم إلى نقطة نهاية VoIP 3:
"properties": {
"identifier": "null",
"participantId": "1a9cb3d1-7898-4063-b3d2-26c1630ecf03",
"endpointId": null,
"endpointType": "Server"
"mediaType": "Audio",
"streamId": "1000",
"transportType": "UDP",
"roundTripTimeAvg": "45",
"roundTripTimeMax": "46",
"jitterAvg": "1",
"jitterMax": "4",
"packetLossRateAvg": "0",
استدعاء سجل عمليات العميل واستدعاء سجلات إحصائيات وسائط العميل لمكالمات P2P والمجموعة
بالنسبة لسجل عمليات عميل المكالمات وسجل السلسلة الزمنية لإحصائيات وسائط العميل للاتصال، لا يوجد فرق بين سيناريوهات مكالمات P2P والمجموعة ويعتمد عدد السجلات على عمليات SDK ومدة المكالمة. التعليمات البرمجية التالية هي عينة عامة تعرض مخطط هذه السجلات.
استدعاء سجل عمليات العميل
فيما يلي سجل عمليات عميل الاستدعاء لعملية "CreateView":
"properties": {
"TenantId": "4e7403f8-515a-4df5-8e13-59f0e2b76e3a",
"TimeGenerated": "2024-01-09T17:06:50.3Z",
"CallClientTimeStamp": "2024-01-09T15:07:56.066Z",
"OperationName": "CreateView" ,
"CallId": "92d800c4-abde-40be-91e9-3814ee786b19",
"ParticipantId": "2656fd6c-6d4a-451d-a1a5-ce1baefc4d5c",
"OperationType": "client-api-request",
"OperationId": "0d987336-37e0-4acc-aba3-e48741d88103",
"DurationMs": "577",
"ResultType": "Succeeded",
"ResultSignature": "200",
"SdkVersion": "1.19.2.2_beta",
"UserAgent": "azure-communication-services/1.3.1-beta.1 azsdk-js-communication-calling/1.19.2-beta.2 (javascript_calling_sdk;#clientTag:904f667c-5f25-4729-9ee8-6968b0eaa40b). Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"ClientInstanceId": "d08a3d05-db90-415f-88a7-87ae74edc1dd",
"OperationPayload": "{"StreamType":"Video","StreamId":"2.0","Source":"remote","RemoteParticipantId":"remote"}",
"Type": "ACSCallClientOperations"
}
يمكن أن يكون لكل مشارك العديد من المقاييس المختلفة للمكالمة. يمكنك تشغيل الاستعلام التالي في Log Analytics في مدخل Microsoft Azure لسرد جميع العمليات المحتملة في سجل عمليات عميل الاستدعاء:
ACSCallClientOperations | distinct OperationName
استدعاء سجل السلاسل الزمنية لإحصاءات وسائط العميل
فيما يلي مثال على سجل السلاسل الزمنية لإحصاءات الوسائط. يظهر مقياس Jitter الخاص بالمشارك لتلقي دفق صوتي في طابع زمني محدد.
"properties": {
"TenantId": "4e7403f8-515a-4df5-8e13-59f0e2b76e3a",
"TimeGenerated": "2024-01-10T07:36:51.771Z",
"OperationName": "CallClientMediaStatsTimeSeries" ,
"CallId": "92d800c4-abde-40be-91e9-3814ee786b19",
"CallClientTimeStamp": "2024-01-09T15:07:56.066Z",
"MetricName": "JitterInMs",
"Count": "2",
"Sum": "34",
"Average": "17",
"Minimum": "10",
"Maximum": "25",
"MediaStreamDirection": "recv",
"MediaStreamType": "audio",
"MediaStreamCodec": "OPUS",
"ParticipantId": "2656fd6c-6d4a-451d-a1a5-ce1baefc4d5c",
"ClientInstanceId": "d08a3d05-db90-415f-88a7-87ae74edc1dd",
"AggregationIntervalSeconds": "10",
"Type": "ACSCallClientMediaStatsTimeSeries"
}
يمكن لكل مشارك الحصول على العديد من مقاييس إحصائيات الوسائط المختلفة لمكالمة. يمكن تشغيل الاستعلام التالي في Log Analytics في مدخل Microsoft Azure لإظهار جميع المقاييس الممكنة في هذا السجل:
ACSCallClientMediaStatsTimeSeries | distinct MetricName
رموز الخطأ
participantEndReason
تحتوي الخاصية على قيمة من مجموعة رموز خطأ استدعاء SDK. يمكنك الرجوع إلى هذه الرموز لاستكشاف المشكلات وإصلاحها أثناء المكالمة، لكل نقطة نهاية. راجع استكشاف أخطاء رموز استجابة نهاية المكالمة وإصلاحها لاستدعاء SDK وأتمتة المكالمات SDK وPSTN وSDK للدردشة وSMS SDK.
الخطوات التالية
تعرف على لوحة معلومات نتائج التحليلات لمراقبة سجلات ومقاييس المكالمات الصوتية ومطالبات الفيديو.
تعرف على أفضل الممارسات لإدارة جودة المكالمة والموثوقية، راجع: تحسين جودة المكالمة وإدارتها
تعرف على كيفية استخدام سجلات المكالمات لتشخيص مشكلات جودة المكالمة والموثوقية مع تشخيص المكالمات، راجع: تشخيص المكالمات