المتطلبات الأساسية

في الوقت الحالي، تنطبق هذه الميزة على الوكلاء فقط.

قبل دمج Webex Contact Center مع وحدة تحكم ServiceNow CRM، تأكد من أن لديك ما يلي:

  • الوصول إلى مركز اتصال Webex.

  • وصول المسؤول إلى مركز التحكم في https://admin.webex.com ومدخل إدارة Webex Contact Center. تعد عناوين URL لمدخل الإدارة خاصة بمنطقتك.

  • وكيل لديه حق الوصول إلى سطح المكتب. يعد عنوان URL لسطح المكتب خاصًا بمنطقتك.

  • وصول العامل إلى المجال التالي المضاف في القائمة المسموح بها لنهج أمان المحتوى:

    • *.service-now.com

    لمزيد من المعلومات حول كيفية تعريف القائمة المسموح بها، راجع المقالة إعدادات الأمان ل Webex Contact Center.

  • حساب مدخل مطور ServiceNow. لإنشاء حساب ، انتقل إلى بوابة مطوري ServiceNow على https://developer.servicenow.com/dev.do وانقر فوق تسجيل وابدأ البناء.

  • الوصول إلى الملفات التالية في https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow:

    • مجموعة تحديث ServiceNow (XML)

    • تخطيط سطح مكتب مركز الاتصال ServiceNow (JSON)

  • إصدارات ServiceNow التي يدعمها Webex Contact Center هي فانكوفر ويوتا وطوكيو وواشنطن وزانادو. لمزيد من المعلومات، راجع Webex Contact Center التكامل مع ServiceNow.

اتبع إحدى الطريقتين التاليتين:

بالنسبة لمثيلات المطور، نوصي باتباع الخطوات الواردة في دليل مثيل المطور.

إذا كنت تمتلك مثيلا مرخصا من المؤسسة، فاتبع الإرشادات الخاصة بالمثيلات المرخصة من قبل المؤسسة.

لا نوصي بمزج التطبيق المرخص من قبل المؤسسة مع مثيلات وضع الحماية للمطورين.

تصف الأقسام التالية خطوات تثبيت موصل ServiceNow لمثيلات المطور.

1

قم بتسجيل الدخول إلى حساب مدخل مطور ServiceNow الخاص بك وافتح وحدة تحكم الإدارة .

2

من منطقة المثيل الخاص بي في قائمة الحساب ، انقر فوق بدء البناء.

لقطة شاشة لبوابة مطور ServiceNow مع تمييز زر "بدء البناء".

3

في مثيل المطور الخاص بك، من حقل متصفح عامل التصفية في الجزء العلوي الأيسر من النافذة، انتقل إلى المكونات الإضافية.

يعرض مثيل مطور ServiceNow بحثا عن متصفح مرشح "المكونات الإضافية".

4

ابحث عن المكون الإضافي Openframe الذي يحمل العنوان Openframe. قد تحتاج إلى التمرير خلال القائمة.

مثيل مطور ServiceNow على شاشة التطبيقات، يعرض البحث والنتائج عن 'OpenFrame'.

5

انقر فوق تثبيت لتثبيت المكون الإضافي Openframe.

6

في مربع الحوار تنشيط المكون الإضافي ، انقر فوق تنشيط.

يعرض مثيل مطور ServiceNow نافذة منبثقة للمكون الإضافي OpenFrame مع تمييز الزر "تنشيط".

7

عند اكتمال تنشيط المكون الإضافي، انقر فوق إغلاق النموذج وإعادة تحميله في مربع الحوار تنشيط المكون الإضافي.

مثيل مطور ServiceNow يعرض تحميل تنشيط المكون الإضافي OpenFrame.

مثيل مطور ServiceNow يعرض نافذة نجاح تنشيط المكون الإضافي OpenFrame مع تمييز الزر "إغلاق وإعادة تحميل النموذج".

8

للتحقق من تنشيط المكون الإضافي ، من حقل متصفح التصفية في الجزء العلوي الأيسر من النافذة ، انتقل إلى OpenFrame.

9

انقر فوق التكوينات وتأكد من ظهور المكون الإضافي OpenFrame في قائمة تكوينات OpenFrame.

مثيل مطور ServiceNow يعرض تكوينات OpenFrame في بحث متصفح عامل التصفية.

1

قم بتنزيل أحدث ملف System Update Set XML المتاح على github repo في هذا الموقع: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

اسم الملف: webexcc-servicenow-update-setV(X).XML

لقطة شاشة Github repo لعمليات تكامل Webex Contact Center CRM - ServiceNow.

2

في مثيل ServiceNow الخاص بك، من حقل متصفح عامل التصفية في الجزء العلوي الأيسر من النافذة، انتقل إلى مجموعات تحديث النظام> مجموعات التحديث إلى الالتزام.

يعرض مثيل مطور ServiceNow بحثا في متصفح عامل التصفية على خيار "الكل" Tab لخيار "مجموعة التحديث" و "مجموعات التحديث للالتزام".

3

انقر فوق الارتباط استيراد مجموعة تحديث من XML .

مثيل مطور ServiceNow في صفحة نتائج مجموعات التحديث مع تمييز "روابط ذات صلة: استيراد مجموعة التحديث من XML".

4

انقر فوق اختيار ملف، وحدد ملف XML تعيين تحديث النظام، ثم انقر فوق تحميل.

استيراد مثيل مطور ServiceNow XML الشاشة.

بوابة مطور ServiceNow المستردة قائمة مجموعات التحديث.

تظهر مجموعة التحديث في قائمة مجموعات التحديث المستردة وهي في حالة التحميل .
5

من قائمة مجموعات التحديث المستردة، انقر فوق اسم ملف مجموعة التحديث (رابط) لفتح مجموعة التحديث.

قام مدخل مطور ServiceNow باسترداد قائمة مجموعات التحديث لملف محدث.

6

في الجزء العلوي الأيسر من النافذة، انقر فوق معاينة مجموعة التحديث للتحقق من مجموعة التحديث للمشكلات.

استرد مدخل مطور ServiceNow قائمة مجموعات التحديث لملف محدث مع تمييز زر "معاينة مجموعة التحديث".

7

انقر فوق إغلاق في مربع الحوار تحديث مجموعة المعاينة بمجرد اكتمال المعاينة.

مدخل مطور ServiceNow مع إعلام نجاح معاينة مجموعة التحديث.

8

انقر فوق الالتزام بمجموعة التحديثات.

استرد مدخل مطور ServiceNow قائمة مجموعات التحديث لملف محدث مع تمييز زر "الالتزام بمجموعة التحديث".

9

انقر فوق إغلاق في مربع الحوار تحديث مجموعة الالتزام بمجرد اكتمال تنفيذ مجموعة التحديث.

مدخل مطور ServiceNow مع تعيين التحديث إعلام نجاح الالتزام.

1

في حقل متصفح عامل التصفية في الجزء العلوي الأيسر من النافذة، اكتب sys_properties.list واضغط على مفتاح الإدخال Enter.

مثيل مطور ServiceNow يعرض بحثا في متصفح عامل التصفية على 'الكل' Tab عن 'sys_properties.list'

2

في صفحة خصائص النظام، قم بفرز الخصائص حسب تاريخ التحديث. تأكد من إمكانية رؤية خصائص Webex Contact Center التالية:

صفحة خصائص نظام مثيل مطور ServiceNow.

3

انقر فوق agentdesktop_url لفتح صفحة agentdesktop_url خاصية النظام.

4

في حقل القيمة ، أدخل عنوان URL لسطح المكتب Webex Contact Center وفقا لمنطقة التشغيل.

تفاصيل خصائص نظام مثيل المطور ServiceNow ل agentdesktop_url.

5

انقر فوق تحديث لحفظ التغييرات.

6

(اختياري) لتغيير اسم جدول النشاط، قم بتحرير خصائص webexccactivitytable كما هو مطلوب.

في صفحة خصائص النظام ، انقر فوق webexccactivitytable.

قم بتغيير حقل القيمة كما هو مطلوب.

تفاصيل خاصية نظام مثيل المطور ServiceNow ل webexactivitytable.

7

(اختياري) أضف مجموعات المستخدمين بالطرق التالية:

  1. في حقل متصفح عامل التصفية في الجزء العلوي الأيسر من النافذة، انتقل إلى المجموعات ضمن أمان النظام.

    ServiceNow developer instance filter navigator search for ‘Groups’ under ‘System Security’
  2. أنشئ مجموعة مستخدمين جديدة أو استخدم مجموعة حالية.

    صفحة مجموعة مثيل المطور ServiceNow ل WebexccAgentsGroup.

  3. انقر فوق تعديل.

  4. ابحث عن sn_openframe_user ضمن المجموعة وانقلها إلى مجموعة المستخدمين الخاصة بك.

    تعرض صفحة تحرير أعضاء مجموعة مثيلات المطور ServiceNow عملية بحث عن مجموعة.

    صفحة تحرير أعضاء مجموعة مثيلات المطور ServiceNow تعرض مجموعة تم نقلها إلى قائمة الأدوار.

  5. انقر فوق حفظ.

  6. أضف المستخدم كعضو في المجموعة.

    صفحة مجموعة مثيل مطور ServiceNow مع تعيين أدوار المستخدم.

1

من حقل متصفح التصفية، انتقل إلى OpenFrame > Configurations.

يقوم مثيل مطور ServiceNow بتصفية المتصفح مع "openframe" في حقل البحث و "التكوينات" ضمن "OpenFrame" المميزة في النتائج.

2

انقر فوق New (جديد).

مثيل مطور ServiceNow صفحة تكوينات OpenFrame مع تمييز "جديد".

3

أدخل الخصائص التالية لعنوان URL:

  • الاسم: Webex Contact Center سطح المكتب

  • العنوان: Webex Contact Center

  • العرض: 550 (مستحسن)

  • الارتفاع: 600 (مستحسن)

4

على يسار حقل عنوان URL ، انقر فوق الزر "تأمين " وأضف agentdesktop.do كعنوان URL. (قم بهذه الخطوة لتوجيه التكوين إلى صفحة واجهة المستخدم)

تكوينات OpenFrame لمثيل مطور ServiceNow - صفحة سجل جديد مع تمييز رمز القفل.

5

(اختياري) حدد مجموعات المستخدمين / الوكلاء لتعيين التهيئة.

تكوينات OpenFrame لمثيل مطور ServiceNow - تحديد مجموعة مستخدمين سجل جديد.

6

انقر فوق إرسال. يظهر عنوان URL كرابط.

مثيل مطور ServiceNow تكوينات OpenFrame - صفحة سجل جديد تعرض ارتباط URL الذي يظهر بعد إرسال تحديدات مجموعة المستخدمين.

7

قبل محاولة استخدام هاتف OpenFrame، تأكد من تحميل ملف JSON لتخطيط سطح المكتب المخصص ServiceNow إلى مدخل إدارة Webex Contact Center. لمزيد من المعلومات، راجع إعداد تخطيط سطح مكتب ServiceNow على Webex Contact Center.

1

قم بتنزيل تخطيط سطح المكتب ل ServiceNow من https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

شاشة جيثب لعمليات تكامل Webex Contact Center CRM - تخطيطات سطح المكتب - ServiceNow.

2

قم بتحديث الخصائص في ملف "تخطيط سطح المكتب"، إذا لزم الأمر.

3

انتقل إلى مدخل إدارة Webex Contact Center.

4

من شريط تنقل مدخل الإدارة، اختر توفير > تخطيط سطح المكتب.

Webex Contact Center صفحة توفير مدخل الإدارة مع تمييز تخطيط سطح المكتب في جزء التنقل الأيمن.

5

انقر فوق New Layout (تخطيط جديد) وأدخل تفاصيل تخطيط سطح المكتب.

6

قم بتحميل ملف JSON لتخطيط سطح المكتب ServiceNow.

7

انقر فوق حفظ لحفظ التهيئة.

يمكنك الآن بدء تشغيل Webex Contact Center Desktop داخل وحدة تحكم ServiceNow.

8

من حقل متصفح عامل التصفية، انتقل إلى مساحة عمل عمليات الخدمة.

صفحة ServiceNow Home مع دمج Webex Contact Center Agent Desktop مع ServiceNow.

تصف الأقسام التالية خطوات تثبيت موصل ServiceNow لمثيلات المؤسسة المرخصة.

1

قم بتسجيل الدخول إلى حساب مدخل مطور ServiceNow الخاص بك وافتح وحدة تحكم الإدارة .

2

من منطقة المثيل الخاص بي في قائمة الحساب ، انقر فوق بدء البناء.

لقطة شاشة لبوابة مطور ServiceNow مع تمييز زر "بدء البناء".

3

في مثيل المطور الخاص بك، من حقل متصفح عامل التصفية في الجزء العلوي الأيسر من النافذة، انتقل إلى المكونات الإضافية.

يعرض مثيل مطور ServiceNow بحثا عن متصفح مرشح "المكونات الإضافية".

4

ابحث عن المكون الإضافي Openframe الذي يحمل العنوان Openframe. قد تحتاج إلى التمرير خلال القائمة.

مثيل مطور ServiceNow على شاشة التطبيقات، يعرض البحث والنتائج عن 'OpenFrame'.

5

انقر فوق تثبيت لتثبيت المكون الإضافي Openframe.

6

في مربع الحوار تنشيط المكون الإضافي ، انقر فوق تنشيط.

يعرض مثيل مطور ServiceNow نافذة منبثقة للمكون الإضافي OpenFrame مع تمييز الزر "تنشيط".

7

عند اكتمال تنشيط البرنامج الإضافي، انقر فوق إغلاق النموذج وإعادة تحميله في مربع الحوار تنشيط البرنامج الإضافي .

تُظهر نسخة مطور ServiceNow تحميل تنشيط البرنامج الإضافي OpenFrame.

تظهر نسخة مطور ServiceNow نافذة نجاح تنشيط البرنامج الإضافي OpenFrame مع إبراز زر "إغلاق النموذج وإعادة تحميله".

8

للتحقق من تنشيط البرنامج المساعد، من حقل متصفح المرشحات في الجزء العلوي الأيسر من النافذة، انتقل إلى OpenFrame.

9

انقر فوق التكوينات وتأكد من ظهور مكون OpenFrame في القائمة تكوينات OpenFrame .

مثال مطور ServiceNow يظهر تكوينات OpenFrame في بحث مستعرض المرشح.

1

في حقل متصفح المرشحات في الجزء العلوي الأيسر من النافذة، أدخل sys_properties.list.

تُظهر نسخة مطور ServiceNow بحثًا في مستعرض الفلتر على "الكل" Tab لـ "sys_properties.list"

2

في صفحة خصائص النظام ، قم بفرز الخصائص حسب تاريخ التحديث. تأكد من أنك تستطيع رؤية خصائص Webex Contact Center التالية:

نتائج صفحة خصائص نظام مثيل مطور ServiceNow.

3

انقر فوق agentdesktop_url لفتح صفحة خصائص النظام agentdesktop_url .

4

في حقل القيمة ، أدخل عنوان URL لسطح المكتب Webex Contact Center وفقًا لمنطقة التشغيل.

صفحة تفاصيل خصائص نظام مثيل مطور ServiceNow لـ agentdesktop_url.

5

انقر فوق تحديث لحفظ التغييرات.

6

(اختياري) لتغيير اسم جدول النشاط، قم بتعديل خصائص x_caci_webexcc.webexccactivitytable كما هو مطلوب.

  1. في صفحة خصائص النظام ، انقر فوق x_caci_webexcc.webexccactivitytable.

    نتائج صفحة خصائص نظام مثيل مطور ServiceNow لـ x_caci_webexcc.webexccactivitytable.

  2. قم بتغيير حقل القيمة حسب الحاجة.

    صفحة خصائص نظام مثيل مطور ServiceNow لـ x_caci_webexcc.webexccactivitytable.

7

(اختياري) قم بإضافة مجموعات المستخدمين بالطرق التالية:

  1. في حقل متصفح التصفية في الجزء العلوي الأيسر من النافذة، انتقل إلى المجموعات ضمن أمان النظام.

    نتائج مستكشف مرشح مثيل مطور ServiceNow لـ 'المجموعات'.

    صفحة مجموعة مطوري SeviceNow لمجموعة webexccagents.

  2. انقر فوق تحرير وأضف الأدوار التالية:

    • sn_openframe_user

    • x_caci_webexcc.agent

    • مستخدم مساحة عمل الوكيل

    • x_caci_webexcc.webexcc_imp_activity_user

    • x_caci_webexcc.مركز اتصال ويبكس

    صفحة مجموعة مطوري SeviceNow لمجموعة webexccagents مع إضافة القوائم.

1

من حقل متصفح التصفية ، انتقل إلى OpenFrame > التكوينات.

تقوم مثيلات مطور ServiceNow بتصفية المتصفح باستخدام "openframe" في حقل البحث و"التكوينات" ضمن "OpenFrame" المميزة في النتائج.

2

انقر فوق New (جديد).

صفحة تكوينات OpenFrame الخاصة بمطور ServiceNow مع تمييز "جديد".

3

أدخل الخصائص التالية لعنوان URL:

  • الاسم: Webex Contact Center سطح المكتب

  • العنوان: Webex Contact Center

  • العرض: 550 (مستحسن)

  • الارتفاع: 600 (مستحسن)

4

على يمين حقل URL ، انقر فوق الزر Lock وأضف x_caci_webexcc_agentdesktop.do كعنوان URL. (قم بهذه الخطوة لتوجيه التكوين إلى صفحة واجهة المستخدم)

نسخة مطور ServiceNow تكوينات OpenFrame – صفحة سجل جديدة مع رمز القفل المميز.

5

(اختياري) حدد مجموعات المستخدمين/الوكلاء لتعيين التكوين.

تكوينات OpenFrame لنسخة مطور ServiceNow – اختيار مجموعة مستخدم السجل الجديد.

6

انقر فوق إرسال. يظهر عنوان URL كرابط.

تكوينات OpenFrame لنسخة مطور ServiceNow – سجل جديد مع إضافة عنوان URL.

7

من حقل متصفح التصفية ، انتقل إلى مساحة عمل عمليات الخدمة.

صفحة ServiceNow Home مع Webex Contact Center Agent Desktop متكاملة مع ServiceNow.

8

(اختياري) في قائمة مجموعة المستخدمين ، انقل مجموعات المستخدمين التي يمكنها الوصول إلى سطح المكتب Webex Contact Center من المتاح إلى المحدد.

9

قبل محاولة استخدام هاتف OpenFrame، تأكد من تحميل ملف JSON الخاص بتخطيط سطح المكتب المخصص لـ ServiceNow إلى بوابة إدارة Webex Contact Center. لمزيد من المعلومات، راجع إعداد تخطيط سطح مكتب ServiceNow على Webex Contact Center.

1

قم بتنزيل تخطيط سطح المكتب لـ ServiceNow من https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

شاشة Github لـ Webex Contact Center تكاملات CRM - تخطيطات سطح المكتب - ServiceNow.

2

قم بتحديث الخصائص في ملف تخطيط سطح المكتب، إذا لزم الأمر.

3

انتقل إلى بوابة إدارة Webex Contact Center.

4

من شريط التنقل الخاص ببوابة الإدارة، اختر التجهيز > تخطيط سطح المكتب.

صفحة توفير بوابة الإدارة Webex Contact Center مع تمييز تخطيط سطح المكتب في شريط التنقل الأيسر.

5

انقر فوق New Layout (تخطيط جديد) وأدخل تفاصيل تخطيط سطح المكتب.

6

قم بتحميل ملف JSON الخاص بتخطيط سطح مكتب ServiceNow.

7

انقر فوق حفظ لحفظ التكوين.

يمكنك الآن بدء تشغيل سطح المكتب Webex Contact Center داخل وحدة التحكم ServiceNow.

8

من حقل متصفح التصفية ، انتقل إلى مساحة عمل عمليات الخدمة.

صفحة ServiceNow Home مع Webex Contact Center Agent Desktop متكاملة مع ServiceNow.

1

من حقل متصفح التصفية ، انتقل إلى الحوادث > فتح الحادث.

2

انقر بزر الماوس الأيمن على حقل المتصل وانقر فوق تكوين القاموس.

نافذة حوادث مثيل مطور ServiceNow مع خيار تكوين الدليل المميز.

3

أضف سمات منفصلة بفاصلة "ref_contributions=show_phone,.

نافذة حادثة استدعاء مثيل مطور ServiceNow لإدخال الدليل.

بإمكانك الآن البدء في استخدام سطح المكتب Webex Contact Center داخل وحدة التحكم ServiceNow.

4

من حقل متصفح التصفية ، انتقل إلى مساحة عمل عمليات الخدمة.

صفحة ServiceNow Home مع Webex Contact Center Agent Desktop متكاملة مع ServiceNow.

نحن ندعم تسجيل الدخول إلى Agent Desktop باستخدام WebRTC لموصلات Salesforce (SFDC) و Microsoft Dynamics (MS Dynamics) فقط.

Agent Desktop في وحدة التحكم ServiceNow

قبل إجراء مكالمات صادرة، تأكد من القيام بما يلي:

  • إنشاء نقطة إدخال صادرة وقم بإعداد استراتيجية نقطة الإدخال الصادرة.

  • تمكين ANI صادر لملف تعريف الوكيل.

  • ضبط ANI صادر على تعيين رقم الطلب إلى نقطة الإدخال.

لمزيد من المعلومات، راجع فصل التزويد من دليل الإدارة وإعداد Cisco Webex Contact Center.

من حقل متصفح التصفية ، انتقل إلى مساحة عمل عمليات الخدمة.

صفحة ServiceNow Home مع Webex Contact Center Agent Desktop متكاملة مع ServiceNow.

للحصول على معلومات حول كيفية استخدام سطح المكتب، راجع Agent Tab في تعليمات Webex Contact Center.

نظرة عامة

تتناول هذه المقالة عدة طرق لتخصيص قواعد العمل الخاصة بك لموصل ServiceNow CRM. يوضح بالتفصيل كيفية تخصيص حالات الاستخدام استنادًا إلى قواعد العمل الخاصة بـ ServiceNow.

يجب على العميل إدارة حالات الاستخدام هذه بنفسه على ServiceNow. التكوين خاص بـ ServiceNow وليس ببرنامج أو خبرة Webex Contact Center.

هذه وثيقة مرجعية للمساعدة في تعديل قواعد العمل. سوف يقوم مطورو ServiceNow بإنشاء قواعد العمل وإدارتها، وتقديم الدعم.

Cisco يوفر فقط وثائق نموذجية.

توفر الأقسام التالية تفاصيل حول كيفية إعداد عنصر واجهة المستخدم الرسومية "الإجراءات" وتمكينه وإدارته للمطورين ونسخ المؤسسات.

قم بتثبيت مجموعة التحديثات لأداة الإجراءات

بالنسبة لحالات المؤسسة المرخصة، قم بتثبيت أحدث تطبيق Webex Contact Center من متجر ServiceNow.

لإعداد أداة الإجراءات لنسخ المطور، قم بتنزيل أحدث ملف مجموعة تحديث النظام XML المتوفر في مستودع github في هذا الموقع: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. اسم الملف هو webexcc-servicenow-update-setv7-1-ActionsWidget.XML. لتثبيت مجموعة التحديثات لعنصر واجهة المستخدم "الإجراءات"، راجع الخطوات من 2 إلى 9 في تثبيت مجموعة التحديثات.

تمكين أداة الإجراءات

استخدم الخاصية isWidgetDisplayEnabled لتمكين عنصر واجهة المستخدم Actions. لا يجوز لك تعديل قيمة هذه الخاصية في قسم بدون رأس في تخطيط سطح المكتب المخصص. يتم تعيين الخاصية دائمًا على false في قسم بدون رأس في تخطيط سطح المكتب المخصص. ينبغي عليك تحديث قيمة الخاصية فقط في قسم اللوحة في تخطيط سطح المكتب المخصص.

بمجرد تمكين عنصر واجهة المستخدم "الإجراءات" في تخطيط سطح المكتب المخصص، يمكنك تنفيذ الإجراءات التالية:

  • إدارة سجلات النشاط—انقر فوق عرض/تحرير سجل النشاط لعرض قائمة سجلات النشاط المرتبطة بالمتصل.
  • ربط كائنات CRM—انقر فوق ربط بسجلات النشاط لإضافة كائنات CRM مثل نوع المكالمة (واردة أو صادرة)، وكائن المكالمة، وملاحظات المكالمة، وما إلى ذلك إلى سجل النشاط.
  • إدارة الحوادث—انقر فوق إنشاء حادثة. يتم إنشاء حادثة جديدة مع تفاصيل المتصل المملوءة مسبقًا. يمكنك إجراء التحديثات المطلوبة للحادث. يمكنك اختيار تعديل نوع السجل من حادث إلى حالة، أو وحدة الموارد البشرية، وما إلى ذلك بناءً على متطلباتك. لتغيير نوع السجل، قم بتعديل قيمة الخاصية typeOfRecord في تكوين عنصر واجهة المستخدم الرسومية "الإجراءات". على سبيل المثال:
    { "comp": "md-tab-panel", "attributes": { "slot": "panel", "class": "widget-pane" }, "children": [ { "comp": "agentx-custom-desktop", "script": "https://cx-crmconnector.ciscoccservice.com/servicenow/v5/dist/index.js", "properties": { "isWidgetDisplayEnabled": true, "typeOfRecord": "إنشاء حادثة" }, "wrapper": { "title": "SNOW Actions!", "maximizeAreaName": "app-maximize-area" } } ] }
  • إضافة ملاحظات المكالمة المباشرة—يمكنك التقاط معلومات إضافية حول المكالمة في منطقة النص وإنهاء المكالمة. يمكنك رؤية هذه الملاحظات المضافة كملاحظات مكالمة في سجل النشاط.

تغيير الكود على ServiceNow

يتضمن البرنامج النصي التغييرات
  1. انتقل إلى متصفح التصفية وابحث عن يتضمن النص.

    حدد يتضمن البرنامج النصي ضمن واجهة المستخدم للنظام.

  2. قم بتصفية الاسم وابحث عن أدوات الدعم.

  3. تغيير الطريقة معرف المستخدمGetSysId في النص.

    الحالي:

    UserGetSysId: دالة () { var opened_for؛ var user = new GlideRecord("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if (user.next()) opened_for=user.sys_id؛ var grInt = new GlideRecord('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for؛ var sysid=grInt.Insert(); return sysid;

    رمز العينة الجديد للحادث:

    UserGetSysId: دالة () { var opened_for; //تغييرات متعلقة بالحادث var sysidlist = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if(user.next()) { opened_for=user.sys_id; //إرجاع user.sys_id; var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', opened_for); inc.addQuery('state','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { sysidlist.incsysid=inc.getUniqueValue(); }else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='phone'; inc.short_description='Call Received From'+ this.getParameter('value'); sysidlist.incsysid=inc.Insert(); } } var grInt = new GlideRecordSecure('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type='phone'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); sysidlist.sysid=sysid; return JSON.stringify(sysidlist); },

تغيير الطريقة في صفحات واجهة المستخدم
  1. انتقل إلى متصفح التصفية وابحث عن صفحة واجهة المستخدم.

    حدد صفحات واجهة المستخدم ضمن واجهة مستخدم النظام.

  2. تصفية الاسم والبحث عنه AgentDesktop.

  3. قم بتغيير الشاشة المنبثقة في البرنامج النصي للعميل.

    الوظيفة الحالية:

    وظيفة الشاشة المنبثقة screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entity: 'interaction', query: 'sys_id='+sysid });

    نموذج التعليمات البرمجية للحادث:

    وظيفة الشاشة المنبثقة screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); // For Incident-related change var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_ id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ الكيان: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid //'a2ba0ba62fd121106446cc96f699b6b8' }); } }

إذا كانت معلومات المتصل موجودة في CRM، وكان هناك بالفعل حادث جديد تم فتحه مع جهة الاتصال هذه، يفتح التطبيق الحادث غير الجاري

في حالة عدم وجود معلومات المتصل في CRM ، يفتح التطبيق حادثة جديدة

إذا كانت معلومات المتصل موجودة في CRM ، يفتح التطبيق حادثة جديدة بتفاصيل مملوءة مسبقا

نظرة عامة

توضح حالة الاستخدام هذه تفاصيل عملية إضافة عمود إضافي إلى جدول ServiceNow - webexcc_imp_activity وإنشاء sn_openframe_phone_log عند تثبيت Webex CC لموصل ServiceNow CRM.

بشكل افتراضي، يحتوي الجدول على بعض حقول وقيم النظام الجاهزة.

يمكنك إنشاء المزيد من المتغيرات الخاصة بالأعمال (متغيرات CAD) داخل مصمم WebexCC Flow وإضافة متغيرات CAD داخل سجل نشاط مكالمة ServiceNow POST، بالإضافة إلى الاستمرار في ذلك إلى بيانات جدول نشاط المكالمة POST.

هذه وثائق مرجعية فقط - وتوضح كيفية القيام بذلك لمتغير CAD نموذجي يسمى اسم العميل الذي يخزن اسم العميل داخل IVR وينشره في ServiceNow.

من المتوقع أن يقوم مطورو Partner + Customer ServiceNow بتكوين هذا التكوين وإدارته لأنه تخصيص للموصل الحالي.

Cisco يوفر فقط التقنيات الخاصة بكيفية تخصيص الموصل وتوسيعه.

اعتبارا من هذه المقالة ، تحقق فريق Cisco من صحة الدعم لإضافة متغير CAD إلى سجل النشاط وجدول النشاط باستخدام التقنية الموضحة أدناه:

إضافة عمود إلى نشاط WebexCC IMP

  1. قم بتحرير الجدول في إصدار المطور من ServiceNow.

    مثيل مطور ServiceNow WebexCC جدول نشاط IMP.

  2. انتقل إلى متصفح المرشح وابحث عن الاستوديو.

    متصفح مرشح مثيل مطور ServiceNow على الكل Tab مع إدخال "استوديو" في عامل التصفية.

    تحديد Webex Contact Center

    تطبيق Studio ل ServiceNow مع فتح نافذة تحديد التطبيق.

    أو

    تطبيق Studio ل ServiceNow مع فتح نافذة تحديد التطبيق وتحديد "تحديد تطبيق المتجر للتخصيص".

    تطبيق Studio ل ServiceNow مع فتح نافذة "تحديد تطبيق المتجر للتخصيص" وتحديد "Webex Contact Center".

    تطبيق Studio ل ServiceNow مع تفاصيل ملف تطبيق Webex Contact Center.

  3. حدد نشاط WebexCC IMP جدول

    تطبيق الاستوديو لجدول نشاط ServiceNow WebexCC IMP.

  4. إضافة عمود جديد، على سبيل المثال، اسم العميل

    تطبيق الاستوديو لجدول نشاط ServiceNow WebexCC IMP مثال عمود جديد.

    تطبيق الاستوديو لجدول نشاط ServiceNow WebexCC IMP مثال عمود جديد مع إضافة عمود جديد.

إضافة عمود إلى سجل الهاتف

  1. قم بتحرير جدول سجل الهاتف.

    يبحث مثيل مطور ServiceNow عن جدول سجل هاتف.

    جدول سجل هاتف مثيل مطور ServiceNow.

  2. إضافة عمود جديد، على سبيل المثال، اسم العميل.

    أمثلة على جدول سجل هاتف مثيل المطور ServiceNow.

    مثال عمود جديد لجدول سجل هاتف مثيل المطور ServiceNow مع إضافة عمود جديد.

خريطة تحويل نشاط WebexCC

تطبيق الاستوديو لخريطة تحويل نشاط ServiceNow WebexCC.

إضافة عمود جديد، على سبيل المثال، اسم العميل رسم الخرائط الميدانية.

تطبيق الاستوديو لتعيين تحويل نشاط ServiceNow WebexCC مثال عمود جديد لتعيين حقل CustomerName.

تطبيق الاستوديو ل ServiceNow WebexCC تحويل النشاط تعيين مثال عمود جديد مع تحديد CustomeName في الحقل الهدف.

تخصيص أعمدة القائمة

تطبيق الاستوديو ل ServiceNow WebexCC تحويل خريطة النشاط مع نافذة منبثقة إلى أعمدة قائمة مخصصة. يتم تمييز خيار إجراء الاختيار في العمود المحدد.

كما توصي Service Now ، قم بتغيير إجراء الاختيار من إنشاء إلى تجاهل.

تطبيق الاستوديو ل ServiceNow WebexCC Activity قم بتحويل الخريطة باستخدام عمود إجراء الاختيار ، مع عرض القائمة المنسدلة لاختيار "تجاهل" أو "إنشاء".

تطبيق الاستوديو ل ServiceNow WebexCC تحويل خريطة النشاط مع تمييز عمود إجراء الاختيار و "تجاهل" لحقل مصدر اسم العميل.

تكوين قائمة سجلات الهاتف

تطبيق Studio ل ServiceNow تكوين قائمة سجل الهاتف مع تمييز CustomerName في العمود المحدد.

انتقل إلى تضمين البرنامج النصي

إضافة سطر واحد فقط webexcc.u_customername=actInfo.CustomerName إلى propUtils.

يبحث متصفح عامل تصفية مثيل مطور ServiceNow عن "يتضمن البرنامج النصي".

مثيل مطور ServiceNow يتضمن صفحة البرنامج النصي.

نموذج البرنامج النصي

انظر السطر: webexcc.u_customername=actInfo.CustomerName; مع تعليق داعم.

var propUtils = Class.create(); propUtils.prototype = Object.extendsObject(global. AbstractAjaxProcessor,{ getWebexccProp: function () { var webexccprop = {}; webexccprop.instanceurl= 'https://'+gs.getProperty('instance_name')+'.service-now.com/'; webexccprop.url=gs.getProperty('x_caci_webexcc.agentdesktop_url'); // webexccprop.popupurl=gs.getProperty('x_caci_webexcc.screenpop_url'); return JSON.stringify(webexccprop); }, UserGetSysId: function () { var opened_for; var user = new GlideRecord("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if (user.next()) opened_for=user.sys_id;//return user.sys_id; آخر // إرجاع فارغ ؛ var grInt = سجل انزلاقي جديد ("تفاعل") ؛ grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'الهاتف'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); إرجاع sysid }, setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('x_caci_webexcc.webexccactivitytable')); webexcc.addQuery("callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { webexcc.ani = actInfo.ani; webexcc.dnis =actInfo.dnis; webexcc.queuename =actInfo.queuename; webexcc.wrapuptime =actInfo.wrapuptime; webexcc.callduration =actInfo.CallDurationInSeconds; webexcc.ringingtime = actInfo.ringingtime ؛ webexcc.activitydate = actInfo.ActivityDate; webexcc.callobject = actInfo.CallObject; webexcc.calltype = actInfo.CallType; webexcc.calldisposition=actInfo.CallDisposition; تمت إضافة هذا السطر - لالتقاطه في سجل النشاط webexcc.u_customername=actInfo.CustomerName ؛ sys_id=webexcc.Insert(); الأنشطة في سجل الحوادث؛ var actInfoString =this.getParameter('actInfo'); var suser = جديد GlideRecordSecure ("sys_user") ؛ suser.addQuery ("الهاتف" ، this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', suser.sys_id); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(actInfoString),null,2); inc.comments =jsonPretty; inc.update(); } } } عودة sys_id } ، اكتب: 'propUtils' }) ؛

إنشاء متغير CAD في مصمم التدفق

Webex Contact Center مصمم التدفق المتغير CAD مع إضافة نافذة منبثقة متغيرة التدفق ل CustomerName.

إضافة متغير CAD إلى تخطيط سطح المكتب

مثال

"CadName1: SnowField1، CadName2: SnowField2" CadName1 هو اسم العميل يستخدم SnowField1 أيضا باسم العميل وهو جزء من نموذج scirpt الموضح أعلاه "actInfo.CustomerName".

مثال على التعليمات البرمجية المصدر لإضافة متغير CAD إلى تخطيط سطح المكتب.

لقطات الشاشة التجريبية

عرض متغير CAD المضاف حديثا في جدول نشاط WebexCC.

مثال ServiceNow لمتغير CAD المضاف حديثا في جدول نشاط WebexCC ، والذي يعرض "اسم العميل" في النافذة المنبثقة Cisco WebexCC.

مثال ServiceNow لمتغير CAD المضاف حديثا في جدول نشاط WebexCC ، والذي يعرض "اسم العميل" في قسم التعليقات ضمن "النشاط" و "مسؤول النظام".

مثال مثيل مطور ServiceNow لمتغير CAD المضاف حديثا في جدول نشاط WebexCC، والذي يعرض العمود "اسم العميل".

إنشاء متغير CAD لمصمم التدفق

إلحاح الحادث

Webex Contact Center مصمم التدفق إنشاء شاشة متغير CAD تعرض النافذة المنبثقة لمتغير تدفق التحرير لمتغير تدفق إلحاح الحادث.

تأثير الحادث

Webex Contact Center مصمم التدفق إنشاء شاشة متغير CAD تعرض النافذة المنبثقة لمتغير تدفق التحرير لمتغير تدفق إلحاح الحادث.

تحديث البرنامج النصي للخدمة الآن

تتضمن تحديثات البرنامج النصي

  1. انتقل إلى متصفح التصفية وابحث عن البرنامج النصي يتضمن

    حدد خيار يتضمن البرنامج النصي ضمن واجهة مستخدم النظام.

    البحث عن متصفح مرشح مثيل مطور ServiceNow عن "يتضمن البرنامج النصي"

  2. تصفية الاسم باستخدام propUtils.

    مثيل مطور ServiceNow يتضمن البرنامج النصي عامل تصفية الاسم بواسطة "propUtils"

  3. تغيير الطريقة UserGetSysId في حقل البرنامج النصي .

    مثيل مطور ServiceNow يتضمن البرنامج النصي - صفحة تفاصيل propUtils.

    السيناريو الحالي:

    UserGetSysId: الدالة () { var opened_for; var user = new GlideRecord ("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if (user.next()) opened_for=user.sys_id; var grInt = new GlideRecord('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); إرجاع sysid; },

    نموذج جديد للكود للحادث:

    UserGetSysId: الدالة () { var opened_for; var sysidlist = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if(user.next()) { opened_for=user.sys_id;//return user.sys_id; var inc = جديد GlideRecordSecure('incident'); inc.addQuery('caller_id', opened_for); inc.addQuery('state','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { sysidlist.incsysid=inc.getUniqueValue(); }else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='phone'; inc.urgency=this.getParameter('IncUrgency'); inc.impact=this.getParameter('Impact'); inc.short_description='مكالمة مستلمة من '+ this.getParameter('value'); sysidlist.incsysid=inc.Insert(); } } var grInt = جديد GlideRecordSecure ("التفاعل") ؛ grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'الهاتف'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); sysidlist.sysid=sysid; إرجاع JSON.stringify(sysidlist);//sysid; },

تغيير الأسلوب في صفحات واجهة المستخدم
  1. انتقل إلى متصفح عامل التصفية وابحث عن صفحات واجهة المستخدم.

    حدد خيار صفحات واجهة المستخدم ضمن واجهة مستخدم النظام.

    يبحث متصفح مرشح مثيل مطور ServiceNow عن "صفحة واجهة المستخدم"

  2. قم بتصفية صفحات واجهة المستخدم بالاسم وابحث عن agentdesktop.

    ServiceNow مثيل المطور صفحات واجهة المستخدم تصفية اسم للبحث 'agentdesktop'

  3. قم بتغيير الشاشة المنبثقة في حقل البرنامج النصي.

    صفحة واجهة مستخدم مثيل مطور ServiceNow - صفحة تفاصيل مكتب الوكيل.

    الوظيفة الحالية:

    وظيفة الشاشة المنبثقة screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entity: 'interaction', query: 'sys_id='+sysid }); }

    نموذج التعليمات البرمجية للحادث:

    وظيفة الشاشة المنبثقة screenpop(callerani,callSessionInfo) { var Impact=3; if(callSessionInfo.callAssociatedData.Impact != null && callSessionInfo.callAssociatedData.Impact != undefined) { Impact=callSessionInfo.callAssociatedData.Impact.value; } var IncUrgency=3; if(callSessionInfo.callAssociatedData.Urgency != null && callSessionInfo.callAssociatedData.Urgency != undefined) { IncUrgency=callSessionInfo.callAssociatedData.Urgency.value; } if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam ("الحقل" ، "الهاتف") ؛ gaout.addParam('value', callerani); gaout.addParam('IncUrgency', IncUrgency); gaout.addParam ("التأثير" ، التأثير) ؛ gaout.getXMLWait(); var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ الكيان: 'incident', query: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ الكيان: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); }

إذا كانت معلومات المتصل موجودة في CRM ، ولا يوجد حادث جديد أو قيد التقدم ، فإن التطبيق يفتح حادثا جديدا

ServiceNow مثال على حادث.

ServiceNow مثال على التفاعل.

قم بتغيير الرمز على ServiceNow

إضافة أعمدة جديدة إلى نشاط WebexCC IMP جدول

افتح الزر نشاط WebexCC IMP جدول

مثيل مطور ServiceNow WebexCC Activity TransformMap.

مثيل مطور ServiceNow صفحة تفاصيل WebexCC Activity TransformMap.

إضافة عمود جديد - رقم التفاعلات

مثيل مطور ServiceNow WebexCC Activity TransformMap عمود جديد، InteractionNumber.

مثيل مطور ServiceNow صفحة تفاصيل WebexCC Activity TransformMap التي تعرض عمود "رقم التفاعل" الجديد الذي تمت إضافته.

إضافة عمود جديد - رقم الحادث

مثيل مطور ServiceNow تعرض صفحة تفاصيل WebexCC Activity TransformMap إضافة عمود "رقم حادث" جديد.

انقر فوق تحديث.

مثيل مطور ServiceNow صفحة تفاصيل WebexCC Activity TransformMap تعرض تحرير الحد الأقصى لطول العمود IncidentNumber.

مثيل مطور ServiceNow صفحة تفاصيل WebexCC Activity TransformMap التي تعرض عمود "رقم الحادث" الجديد الذي تمت إضافته.

إضافة أعمدة جديدة إلى سجل الهاتف جدول

افتح الزر سجل الهاتف جدول

مثيل مطور ServiceNow جدول سجل الهاتف.

إضافة عمود جديد - رقم التفاعلات

مثيل مطور ServiceNow إدخال الدليل - صفحة سجل جديد تعرض عمودا جديدا ل InteractionsNumber.

مثيل مطور ServiceNow جدول سجل الهاتف مع إضافة العمود InteractionsNumber.

إضافة عمود جديد - رقم الحادث

مثيل مطور ServiceNow إدخال الدليل - صفحة سجل جديد تعرض عمودا جديدا لرقم الحادث.

جدول سجل هاتف مثيل مطور ServiceNow مع إضافة العمود IncidentNumber.

خريطة تحويل نشاط WebexCC

فتح تحويل الخريطة من متصفح عامل التصفية

يبحث متصفح مرشح مثيل المطور ServiceNow عن "خريطة التحويل"

مثيل مطور ServiceNow خرائط تحويل الجدول تعرض WebexCC ActivityTransformMap في النتائج.

انقر فوق خريطة تحويل نشاط WebexCC

مثيل مطور ServiceNow WebexCC Activity TransformMap.

إضافة جديد - لخريطة أرقام التفاعل

مثيل مطور ServiceNow WebexCC Activity TransformMap مع إدخال "InteractionNumber" في "الحقل الهدف"

مثيل مطور ServiceNow WebexCC Activity TransformMap مع إضافة "InteractionNumber".

إضافة جديد - لخريطة رقم الحادث

مثيل مطور ServiceNow WebexCC Activity TransformMap مع إدخال "رقم الحادث" في "الحقل الهدف"

انقر فوق تحديث.

مثيل مطور ServiceNow WebexCC Activity TransformMap مع إضافة "رقم الحادث".

تتضمن التغييرات التي تم إجراؤها على البرنامج النصي

  1. انتقل إلى متصفح التصفية وابحث عن "يتضمن البرنامج النصي".

    حدد البرنامج النصي المتضمن ضمن واجهة مستخدم النظام.

    متصفح مرشح مثيل مطور ServiceNow مع البحث عن "يتضمن البرنامج النصي"

  2. تصفية الاسم باستخدام بروب وتيلز.

    مثيل مطور ServiceNow يتضمن البرنامج النصي مع تطبيق عامل تصفية الاسم للبحث وإدخال "propUtils" في حقل البحث.

  3. تغيير الطريقة مجموعةويب قابل للإزالة.

    مثيل مطور ServiceNow يتضمن البرنامج النصي - صفحة propUtils

    نموذج جديد لرمز الحادث:

    setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('webexccactivitytable')); webexcc.addQuery("u_callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { //الأنشطة في سجل الحوادث; //var actInfoString =this.getParameter('actInfo'); var incsysid=actInfo.incident_sys_id; var interactionsysid=actInfo.interaction_sys_id; var incnum=""; var intenum=""; delete أكت إنفو['interaction_sys_id']; حذف actInfo['incident_sys_id']؛ if( interactionsysid!= null && interactionsysid != undefined){ var inte = new GlideRecordSecure('interaction'); //inte.get('sys_id', interactionsysid); inte.addQuery('sys_id', interactionsysid); inte.query(); if (inte.next()) { intenum=inte.number; // inte.setValue('state','Closed Complete'); inte.work_notes='تحديث الحالة إلى مغلق.'; inte.update(); } } if( incsysid!= null && incsysid != undefined){ var inci = new GlideRecordSecure('incident'); inci.addQuery('sys_id', إنسيسيد ); inci.query(); if (inci.next()) { incnum=inci.number; var jsonPretty = JSON.stringify(actInfo,null,2); //JSON.stringify(JSON.parse(actInfoString),null,2); inci.comments =jsonPretty; inci.update(); } }else{ var suser = new GlideRecordSecure("sys_user"); suser.addQuery("phone", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', suser.sys_id); inc.addQuery('state','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(actInfo,null,2); inc.comments =jsonPretty; inc.update(); } } } webexcc.u_ani = actInfo.ani; webexcc.u_dnis = actInfo.dnis; webexcc.u_queuename = actInfo.queuename; webexcc.u_wrapuptime = actInfo.wrapuptime; webexcc.u_callduration =actInfo.CallDurationInSeconds; webexcc.u_ringingtime = actInfo.ringingtime ؛ webexcc.u_activitydate = actInfo.ActivityDate; webexcc.u_callobject = actInfo.CallObject; webexcc.u_calltype = actInfo.CallType; webexcc.u_calldisposition=actInfo.CallDisposition; webexcc.u_incidentnumber=incnum; webexcc.u_interactionsnumber = intenum ؛ sys_id=webexcc.Insert(); } إرجاع sys_id ؛ },

تغييرات الأسلوب على صفحات واجهة المستخدم

  1. انتقل إلى متصفح التصفية وابحث عن صفحات واجهة المستخدم

    حدد خيار صفحات واجهة المستخدم ضمن واجهة مستخدم النظام.

    متصفح مرشح مثيل مطور ServiceNow مع البحث عن "صفحة واجهة المستخدم"

  2. قم بتصفية صفحات واجهة المستخدم بالاسم وابحث عن agentdesktop.

    صفحات واجهة مستخدم مثيل المطور ServiceNow مع تطبيق عامل تصفية الاسم على البحث.

  3. قم بتغيير الآنالأنشطة والشاشة المنبثقة وظيفة في البرنامج النصي.

    ServiceNow developer instance UI Page – agentdesktop.

    الوظيفة الحالية:

    function nowActivities(actInfo, ani) { var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'setWebexcctable'); gaout.addParam('actInfo', JSON.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML(SetCCsysId); }

    نموذج التعليمات البرمجية للحادث:

    function nowActivities(actInfo, ani) { var sysObjstr = window.localStorage.getItem("screenpopinteraction"); if(sysObjstr != null && sysObjstr != undefined) { var sysObjjson=JSON.parse(sysObjstr); actInfo.interaction_sys_id=sysObjjson.sysid; actInfo.incident_sys_id=sysObjjson.incsysid; } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'setWebexcctable'); gaout.addParam('actInfo', JSON.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML(SetCCsysId); } وظيفة screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); // var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ الكيان: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); } 

النتائج بعد التحديث

مثيل مطور ServiceNow صفحة سجلات الهاتف.

تنطبق التخصيصات التالية على الإصدارات 1.0.5 والإصدارات الأقدم. بالنسبة إلى تخصيصات الإصدارات الأحدث 1.0.7 والإصدارات الأحدث، اتبع الخطوات المذكورة أعلاه.

التخصيص # 1 - إضافة قواعد عمل مخصصة لحالات استخدام تدفق المكالمات

إنشاء سجل حادث جديد لكل مكالمة

لكل مكالمة جديدة في موصل WebexCC CRM في ServiceNow، قم بإنشاء سجل حادث جديد.

  1. البحث عن قواعد العمل على متصفح عامل التصفية

    ServiceNow developer instance Business Rules page header.
  2. انقر فوق New (جديد).

    ServiceNow developer instance Business Rule – New Record.

    نموذج التعليمات البرمجية كمرجع:

    الدالة customcti() { var url = null; var name = sysparm_caller_name; eid = sysparm_caller_id; var phone = sysparm_caller_phone; var taskID = sysparm_task_id; var fQuery = sysparm_query; if (fQuery == null) fQuery = ''; var view = sysparm_view; if (view == null || view == '') view = "itil"; var userID = null; if (eid != null && eid != '') { userID = UserGetSysId("employee_number",eid); } if (userID == null && name != null && name != '') { userID = UserGetSysId("name", الاسم)؛ } if (userID == null && phone != null && phone != '') { userID = UserGetSysId("phone", phone); } if (userID != null) { if (fQuery.length > 0) fQuery += "^"; fQuery += "caller_id=" + userID; } if (url == null) { url = "incident.do?sys_id=-1"; if (fQuery != null) url += "&sysparm_query=" + fQuery; } answer = url; إرجاع عنوان URL ؛ } الدالة UserGetSysId(field, value) { var user = new GlideRecord("sys_user"); user.addQuery(field, value); user.query(); if (user.next()) return user.sys_id; else return null; }

    تكوين نموذجي لقاعدة العمل

    ServiceNow developer instance Business Rule – CTI Processing For Incident page as a sample configuration of the business rule.
  3. تمكين العميل القابل للاستدعاء

    ServiceNow developer instance Business Rules page with the Personalized List Columns popup screen showing ‘Client callable’ in the ‘Selected’ column.

    تم وضع علامة على معالجة تكامل هاتفية الكمبيوتر (CTI) للحادث على أنها True.

    ServiceNow developer instance Business Rules page showing the Client callable column with options to select ‘true’ or ‘false’
  4. قم بتحديث عنوان url للشاشة المنبثقة باستخدام CTI القاعدة المخصصة" cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

    System Property page for screenpop_url showing update to the custom CTI rule in the ‘Value’ field.
مثال

يجب استدعاء sysparm_cti_rule=name حيث 'name' هو اسم الدالة من أجل CTI المعالجة بدلا من استخدام البرنامج النصي الافتراضي.

حدد الوظيفة في إدخال sys_script يحمل علامة العميل قابل للاستدعاء.

إذا كان يجب عليك Insert أو تحديث أو حذف أي GlideRecords في الدالة، فاتصل بوظيفة منفصلة غير قابلة للاستدعاء لإجراء التحديثات.

لجعل البرنامج النصي قابلا للاستدعاء من قبل العميل، يجب تحديد خانة الاختيار "العميل قابل للاستدعاء" في النموذج الذي يتم عرضه عند عرض إدخال sys_script.

لا تظهر خانة الاختيار القابلة للاتصال من قبل العميل بشكل افتراضي. للعرض، يجب عليك تعديل الحقول التي تظهر في النموذج باستخدام رمز الترس وآلية دلو طين.

مراجع

التخصيص # 2 - إضافة متغير CAD في جدول النشاط Webex Contact Center

نظرة عامة

توضح هذه المقالة تفاصيل عملية إضافة عمود إضافي إلى جدول ServiceNow - webexcc_activity التي تم إنشاؤها عند تثبيت Webex CC لموصل ServiceNow CRM.

بشكل افتراضي، يحتوي الجدول على حقول وقيم نظام مبتكرة.

من المحتمل أن تقوم بإنشاء المزيد من المتغيرات الخاصة بالأعمال (متغيرات CAD) داخل مصمم WebexCC Flow وإضافة متغيرات CAD هذه داخل سجل نشاط مكالمة ServiceNowPOST، واستمرار ذلك إلى بيانات جدول نشاط المكالمة POST.

  • هذه وثائق مرجعية فقط - وتوضح كيفية القيام بذلك لمتغير CAD نموذجي يسمى اسم العميل الذي يخزن اسم العميل داخل IVR وينشره على ServiceNow.

  • سيقوم مطورو Partner + Customer ServiceNow بتكوين هذا التكوين وإدارته لأنه تخصيص للموصل الحالي.

  • Cisco سيوفر فقط التقنيات الخاصة بكيفية تخصيص الموصل وتوسيعه.

  • اعتبارا من هذه المقالة ، تحقق فريق Cisco من صحة الدعم لإضافة متغير CAD إلى سجل النشاط وجدول النشاط باستخدام التقنية الموضحة أدناه.

إضافة عمود إلى نشاط WebexCC
  1. قم بتحرير الجدول في إصدار المطور من ServiceNow.

    ServiceNow developer instance Table – WebexCC Activity page.
  2. اذهب إلى الاستوديو > Webex Contact Center.

    ServiceNow developer instance filter navigator search for ‘studio’  highlighting the cross launch search result for ‘App Engine Studio’

    App Engine Studio Select Application screen showing Webex Contact Center in the search results.

    App Engine Studio Webex Contact Center screen.

  3. حدد جدول نشاط WebexCC.

    App Engine Studio WebexCC Activity table.
  4. على سبيل المثال، اسم العميل.

    App Engine Studio WebexCC Activity table column edit example for ‘CustomerName’ column.

    App Engine Studio WebexCC Activity table screen.

  5. حدد تخطيط قائمة لنشاط WebexCC.

    App Engine Studio WebexCC Activity table list layout showing ‘CustomerName’ highlighted in the ‘Selected’ column.
إنشاء برنامج نصي جديد يتضمن

هذه الخطوة غير مطلوبة إذا كنت تستخدم مجموعة التحديث XML - مطلوب سطر واحد فقط لإضافته "webexcc.u_customername=actInfo.CustomerName" إلى propUtils.

ServiceNow developer instance filter navigator search for ‘script includes’

ServiceNow developer instance Script Includes page with ‘Application’ in the filter.

ServiceNow developer instance Script Includes – New Record page.

نموذج البرنامج النصي

انظر السطر مع:webexcc.u_customername=actInfo.CustomerName; مع تعليق داعم.

var propUtils2 = Class.create(); propUtils2.prototype = Object.extendsObject(global. AbstractAjaxProcessor,{ getWebexccProp: function () { var webexccprop = {}; webexccprop.instanceurl= 'https://'+gs.getProperty('instance_name')+'.service-now.com/'; webexccprop.url=gs.getProperty('x_caci_webexcc.agentdesktop_url'); webexccprop.popupurl=gs.getProperty('x_caci_webexcc.screenpop_url'); return JSON.stringify(webexccprop); }, setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('x_caci_ webexcc.webexccactivitytable'))؛ webexcc.addQuery ("callobject" ، actInfo.CallObject) ؛ webexcc.query(); if(!webexcc.next()) { webexcc.ani = actInfo.ani; webexcc.dnis =actInfo.dnis; webexcc.queuename =actInfo.queuename; webexcc.wrapuptime =actInfo.wrapuptime; webexcc.callduration =actInfo.CallDurationInSeconds; webexcc.ringingtime =actInfo.ringingtime; webexcc.activitydate =actInfo.ActivityDate; webexcc.callobject =actInfo.CallObject; webexcc.calltype =actInfo.CallType; webexcc.calldisposition=actInfo.CallDisposition; // تمت إضافة هذا السطر - لالتقاطه في سجل النشاط webexcc. u_customername=actInfo.CustomerName; sys_id=webexcc.Insert(); الأنشطة في سجل الحوادث؛ var actInfoString =this.getParameter('actInfo'); var suser = جديد GlideRecordSecure ("sys_user") ؛ suser.addQuery ("الهاتف" ، this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', suser.sys_id); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(سلسلة التمثيل),null,2); inc.comments =jsonPretty; inc.update(); } } } عودة sys_id } ، اكتب: 'propUtils2' }) ؛
تحرير صفحة واجهة المستخدم باسم برنامج نصي جديدApp Engine Studio agentdesktop UI page with new script name.

إنشاء متغير CAD في مصمم التدفقWebex Contact Center flow designer with Add Flow Variable popup showing adding a CustomerName variable.

إضافة متغير CAD إلى تخطيط سطح المكتبWebex Contact Center CAD variable to the desktop layout script with ‘CustomerName:CustomerName’ highlighted.

لقطات الشاشة التجريبية

عرض متغير CAD المضاف حديثا في جدول نشاط WebexCC.

ServiceNow developer instance showing newly added CAD variable in the WebexCC Activity table.

ServiceNow developer instance WebexCC Activities screen.