المقدمة
يصف هذا المستند طريقة أستكشاف الأخطاء وإصلاحها لتعريف المشكلة في حالات تحديث قوائم الانتظار أو مجموعات المهارات التي تمت ملاحظتها في بيئة سطح المكتب لوكيل Finesse، والتي نتجت تحديدا عن تأخيرات الرسائل بين خوادم دمج الاتصال الهاتفي بجهاز الكمبيوتر (CTI) وخوادم Finesse. توفر المقالة تحليلات السجل، وتختتم بحل بديل لتحسين قدرة خادم Finesse على معالجة رسائل تحديث الحالات هذه في شبكة متأخرة دون المستوى الأمثل.
المتطلبات الأساسية
المتطلبات
توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:
- خادم Cisco Unified Contact Center Enterprise (UCCE) CTI (CTISVR)
- خادم Finesse من Cisco
المكونات المستخدمة
تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية:
- بوابة الأجهزة الطرفية لوكيل UCCE مع تثبيت CTISVR
- مجموعة Finesse Server
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
الاصطلاحات
أحلت ال cisco فني طرف إتفاق لمعلومة على وثيقة إتفاق.
معلومات أساسية
توفر خوادم FindSE التي تشترك في CTISVR كعملاء CTI وظائف وكيل تشبه ما يمكن أن يقدمه خادم كائنات تكامل الاتصال الهاتفي بجهاز الكمبيوتر (CTIOS) وسطح مكتب وكيل Cisco (CAD). ويمكن أيضا أن يواجه الوكلاء/المشرفون البارعون بعض المشاكل التي يواجهها الوكلاء التابعون للجنة العلم والتكنولوجيا واليونيسيف.
إحدى هذه المشكلات هي قوائم الانتظار أو قوائم انتظار Skillgroup الوقت الفعلي التي لا يتم تحديثها إلى سطح مكتب وكيل/مشرف Finesse. في بيئة CTIOS و CAD، يتحقق المهندسون عادة من إرشادات التصميم ويدققون من تجاوز حدود التكوين مثل مجموعة المهارات لكل عميل وإجمالي مجموعات المهارات لكل جهاز طرفي وفرق لكل مشرف وما إلى ذلك. راجع المهندسون أيضا عدد إتصالات عميل CTI المتزامنة على CTISVR،
كما يمكن الإشارة إلى المعلومات ذات الصلة من أدلة التصميم الخاصة بالإصدار 10.5(x) والإصدار 11.
يبدأ أيضا أستكشاف أخطاء هذا النوع من المشاكل وإصلاحها على عوامل/المشرفين على التصميم المذكورين بعمليات التحقق من حدود التصميم. ومع ذلك، يمكن أن تتأثر برامج Finesse بالقيود الإضافية التي يتم العثور عليها بشكل حصري على خوادم Finesse.
أعراض المشكلة
توجد حالات قائمة الانتظار أو مجموعة المهارات التي لا تقوم بتحديث المشكلة بشكل نموذجي في السيناريوهات التالية:
- لا تنعكس حالات الوكيل الحالي في الأداة الذكية للمهارات/قوائم الانتظار الفردية على سطح المكتب لعامل Finesse. ومع ذلك، فإن التحقق من حالات الوكيل باستخدام opctest باستخدام أمر la على عبارة البرنامج الطرفي للوكيل (PG) يشير إلى أن حالات البرنامج صحيحة مع المجموعات الماهرة.
- يوجد عدد من البرامج في حالة التحدث لفترة من الوقت، ومع ذلك، لا تزال أجهزة الكمبيوتر المكتبية التي تعمل بوكيل Finesse أو المشرف تعرض 0 في قوائم انتظار المهارات لوقت المحادثة.
- من شأن إعادة تشغيل خادم Finesse أن تسمح للنظام بالعمل مؤقتا، ولكن عادة ما تظهر المشكلة نفسها في غضون دقائق أو ساعات.
مخزن مؤقت لشهادات قائمة انتظار Finesse لمراسلة CTI و Finesse
يتم تنفيذ تحديثات قوائم انتظار عامل عامل Finesse أو أحصائيات المهارات من خلال عمليات تبادل هذه الأزواج من رسائل CTI للطلب والاستجابة في خوادم Finesse.
GetQueryQueueStatisticsReq() طلب الرسالة بواسطة Finesse ورسالة QuerySkillGroupStatisticsConf كنتيجة لاستجابات CTISVR.
بشكل افتراضي، يمكن أن يقوم Finesse بمعالجة طلبات مجموعة المهارات 751 ضمن الفاصل الزمني المخصص لتحديث الحالات العشر الثانية. يتم تخزين الطلبات التي لم تتم معالجتها مؤقتا في قائمة انتظار الرسائل لمعالجتها في وقت لاحق. تتم تهيئة FindSe بشكل افتراضي باستخدام قائمة انتظار مخزن الرسائل المؤقت هذه لاحتجاز رسائل 5000 طلب.
ومع ذلك، إذا قام المخزن المؤقت بتعبئة رسائل الطلب الخاصة بحالة قائمة الانتظار هذه وتم تجاوزها، فإنه يتم انقضاء مهلة بعض رسائل الطلب وإسقاطها.
الأسباب المحتملة لتجاوز المخزن المؤقت لبيانات قائمة الانتظار المحددة
1. زيادة الاشتراك في التصميم/التكوين. مهارات eg لكل برنامج، وإجمالي مجموعات المهارات لكل أجهزة طرفية وفرق لكل مشرف، إلخ. ارجع إلى للحصول على حدود التكوين الموصى بها. يمكن أن يؤدي الإفراط في الاشتراك إلى مراسلة CTI مفرطة على تحديثات الإحصائيات، وبالتالي تجاوز المخزن المؤقت لطلب حالة قائمة انتظار Finesse.
2. تجاوز الحد الأقصى المسموح به لاتصال عميل CTI المتزامن الذي يتضمن جميع إتصالات الأحداث واتصالات الوضع المراقب. استنفاد موارد CTISVR الذي يؤدي إلى تباطؤ كبير في سرعة معالجة رسائل CTI.
3. مثال أداء PG. وحدات المعالجة المركزية (CPU) والذاكرة ووحدات الإدخال/الإخراج (I/O) بالأقراص..
4. لا يوجد عرض نطاق ترددي كاف للشبكة لدعم تأخيرات مراسلات CTI المسموح بها لتطبيق Finesse، أي 62ms.
توفر أداة حساب عرض النطاق الترددي Finesse في الارتباط هنا مع مواصفات التصميم الحالية لتخصيص عرض النطاق الترددي الموصى به للشبكة. http://www.cisco.com/c/en/us/support/customer-collaboration/finesse/products-technical-reference-list.html
تجاوز مخزن Finess Queue Stats المؤقت بسبب تأخير رسالة CTI
استنادا إلى تحديد Finesse هذا على سرعة معالجة رسالة الطلب والمخزن المؤقت للرسالة، تكون القيمة الافتراضية للحد الأقصى لتأخير الطلب/الاستجابة 62 مللي ثانية لعمليات نشر Finesse المتوسطة. إذا تجاوز متوسط حالات التأخير بشكل ملحوظ المعيار المرجعي الذي يبلغ 62 مللي ثانية، على سبيل المثال. تأخير رسالة CTI حوالي 100 مللي ثانية. بعد ذلك لا يمكن إرسال رسائل CTI GetQueryQueueStatisticsReq() المخزن مؤقتا إلى CTISVR ويتم الرد عليها باستخدام رسائل QuerySkillGroupStatisticsConf بسرعة كافية خلال فترة التحديث هذه التي تبلغ 10 ثانية. أما الرسائل التي تم إنهاؤها وتوقيتها المتبقية فيتم إسقاطها من المخزن المؤقت لنقاط قوائم الانتظار.
تتبع Finesse ذو الصلة
يمكن العثور على رسائل حالة قائمة الانتظار في سجل البحث لخدمات الويب. يتطلب مستوى تتبع تصحيح الأخطاء للكشف عن رسائل إحصائيات قائمة الانتظار التفصيلية.
للحصول على خطوات لتكوين مستوى تتبع أخطاء DEBUG لخدمات الويب، ارجع إلى إرتباط docwiki هذا.
http://docwiki.cisco.com/wiki/Logging:_Enable_debug_level_logging
تحليلات السجل
عندما يتبع تجاوز المخزن المؤقت لقائمة الانتظار ملاحظة أجزاء السجل الصغيرة من سجل خدمات الويب
ابحث عن بداية جولة من 751 تحديث طلب حالة قائمة انتظار، في بداية فترة التحديث البالغة 10 ثوان:
eg.
Sep 22 2014 14:34:59.878 -0700: %CCBU_pool-21-thread-1-6-QUEUE_STATISTICS_REQUEST: %[count=751]: Starting new round of querying active queue statistics
بين هذا والجولة التالية من 751 طلب التي تحدث بعد 10 ثوان، قم بالتصفية والتحقق باستخدام أداة نص على سبيل المثال. Notepad++، إذا كانت هناك رسائل QuerySkillGroupStatisticsConf المطابقة ل 751:
eg
Sep 22 2014 14:34:59.888 -0700: %CCBU_CTIMessageEventExecutor-0-6-DECODED_MESSAGE_FROM_CTI_SERVER: %[cti_message=CTIQuerySkillGroupStatisticsConf[peripheralID=5000, skillGroupNumber=28353, routerCallsQNow=0, longestRouterCallQNow=0, agentsNotReady=0, agentsReady=0, agentsTalkingIn=0, agentsTalkingOut=0, agentsTalkingOther=0, agentsWorkNotReady=0, agentsWorkReady=0]CTIMessageBean [invokeID=112223, msgID=115, timeTracker={"id":"QuerySkillGroupStatisticsConf","CTI_MSG_NOTIFIED":1411536082977,"CTI_MSG_RECEIVED":1411536082976}, msgName=QuerySkillGroupStatisticsConf, deploymentType=CCE]][cti_response_time=1]: Decoded Message to Finesse from backend cti server
على سبيل المثال، إذا كانت هناك 329 رسالة فقط من QuerySkillGroupStatisticsConf تمت معالجتها بواسطة Finesse لهذه الجولة، في كلمة أخرى، يجب أن تكون هناك 422 رسالة في قائمة الانتظار في المخزن المؤقت. من الواضح أنه إذا كان يجب وضع رسائل التقريب 400 في قائمة الانتظار كل 10 ثوان، فيمكن حينئذ أن يصل المخزن المؤقت إلى حده الأدنى من 5000 رسالة في غضون 3 دقائق.
البحث عن أول ظهور لخطأ الاقتراع الذي يحدث في غضون 3 دقائق، وهي علامة تجاوز المخزن المؤقت:
Sep 22 2014 14:37:29.883 -0700: %CCBU_pool-21-thread-1-3-QUEUE STATISTICS POLLING ERROR: %[ERROR_DESCRIPTION= maximum pool and queue capacity reached so discarding execution][error_message=Thread pool saturated, discarding execution ]: Error during queue statistics polling
مثال على تأخر معالجة CTISVR
- يرسل Finesse طلب getQueryQueueStatisticsReq() إلى CTISVR - تعقب invokeId=112223، queueId=28353:
Sep 23 2014 22:21:22.875 -0700: %CCBU_pool-19-thread-4-7-CTIWriter.getQueryQueueStatisticsReq(): {Thrd=pool-19-thread-4} params : invokeId=112223, queueId=28353
match InvokeID:0x1b65f with invoked=112223 in the Finesse request
and SkillGroupNumber:28353 with queueId in the Finesse request
22:21:22:921 cg1A-ctisvr SESSION 9: MsgType:QUERY_SKILL_GROUP_STATISTICS_REQ (InvokeID:0x1b65f PeripheralID:5000
22:21:22:921 cg1A-ctisvr SESSION 9: SkillGroupNumber:28353 SkillGroupID:N/A )
22:21:22:999 cg1A-ctisvr SESSION 9: MsgType:QUERY_SKILL_GROUP_STATISTICS_CONF (InvokeID:0x1b65f PeripheralID:5000
22:21:22:999 cg1A-ctisvr SESSION 9: SkillGroupNumber:28353 SkillGroupID:9431 AgentsLoggedOn:0 AgentsAvail:0 AgentsNotReady:0
22:21:22:999 cg1A-ctisvr SESSION 9: AgentsReady:0 AgentsTalkingIn:0 AgentsTalkingOut:0 AgentsTalkingOther:0
22:21:22:999 cg1A-ctisvr SESSION 9: AgentsWorkNotReady:0 AgentsWorkReady:0 AgentsBusyOther:0 AgentsReserved:0 AgentsHold:0
22:21:22:999 cg1A-ctisvr SESSION 9: AgentsICMAvailable:0 AgentsApplicationAvailable:0 AgentsTalkingAutoOut:0
22:21:22:999 cg1A-ctisvr SESSION 9: AgentsTalkingPreview:0 AgentsTalkingReservation:0 RouterCallsQNow:0
- تلقت Finesse إستجابة CTISVR، وشكلت رسالة QuerySkillGroupStatisticsConf:
Sep 23 2014 22:21:22.977 -0700: %CCBU_CTIMessageEventExecutor-0-6-DECODED_MESSAGE_FROM_CTI_SERVER: %[cti_message=CTIQuerySkillGroupStatisticsConf[peripheralID=5000, skillGroupNumber=28353, routerCallsQNow=0, longestRouterCallQNow=0, agentsNotReady=0, agentsReady=0, agentsTalkingIn=0, agentsTalkingOut=0, agentsTalkingOther=0, agentsWorkNotReady=0, agentsWorkReady=0]CTIMessageBean [invokeID=112223, msgID=115, timeTracker={"id":"QuerySkillGroupStatisticsConf","CTI_MSG_NOTIFIED":1411536082977,"CTI_MSG_RECEIVED":1411536082976}, msgName=QuerySkillGroupStatisticsConf, deploymentType=CCE]][cti_response_time=1]: Decoded Message to Finesse from backend cti server
لاحظ أن Finesse استغرق أكثر من 100 مللي ثانية لتلقي رسالة QuerySkillGroupStatisticsConf المطابقة، إذا كان هذا هو متوسط وقت الاستجابة. يمكن أن يعمل Finesse في مشكلة تجاوز قائمة انتظار التخزين المؤقت.
الحل
توجد خاصية في aws.properties تقوم بتعيين الفاصل الزمني للتحديث على جانب خادم Finesse. وهذا هو بشكل أساسي الفاصل الزمني بين جولتين من طلبات حالات قائمة الانتظار (حيث تمثل إحدى الجولتين 751 حالة قائمة انتظار طلبات في هذا النشر) من Finesse إلى CTISVR. يطلب البحث بشكل افتراضي كل 10 ثواني. ومن المحتمل أن تتغير هذه الخاصية إلى قيمة أعلى مما يعني أن Finesse سوف تحصل على وقت أطول قليلا (على سبيل المثال: 20 ثانية بدلا من 10 ثانية) لمعالجة أحد طلبات حالات قائمة الانتظار. كما أنها تعمل بشكل فعال على زيادة الوقت الضائع لطلب/إستجابة تقارير المهارة المرجعية من 62 إلى 124 مللي ثانية.
- تم الحصول على الوصول الجذر إلى النظام الأساسي لنظام التشغيل Finesses
- VI إلى ملف الخاصية /opt/cisco/desktop/conf/webservices/aws.properties
- تم تعديل قيمة هذه الخاصية من 10 إلى 20
com.cisco.cc.webservices.reporting.core.queue_statistics_refresh_interval
ملاحظة: تحديث الفاصل الزمني لإحصائيات قائمة الانتظار بالثواني.
- حفظ ملف aws.properties
- إعادة تشغيل خدمة Finesse Tomcat
- يتم تنفيذ الخطوات نفسها على جميع عقد Finesse داخل مجموعة Finesse