דרישות מוקדמות

לפני שתשלב Webex Contact Center עם מסוף ServiceNow CRM, ודא שברשותך הפריטים הבאים:


 

בצע אחת משתי השיטות הבאות:

עבור מופעים של מפתחים, מומלץ לבצע את השלבים תחת המדריך למופע מפתחים.

אם בבעלותך מופע ברשיון ארגוני, פעל בהתאם להנחיות עבור מופעים בעלי רשיון ארגוני.

איננו ממליצים לשלב את האפליקציה בעלת רשיון ארגוני עם מופעי ארגז חול של מפתחים.

הסעיפים הבאים מתארים את השלבים להתקנת מחבר ServiceNow עבור מופעי מפתחים.

1

היכנס לחשבון פורטל המפתחים של ServiceNow ופתח את מסוף הניהול .

2

באזור המופע שלי בתפריט חשבון , לחץ על התחל לבנות.

3

במופע המפתח שלך, מהשדה נווט סינון בפינה השמאלית העליונה של החלון, נווט אל תוספים.

4

חפש את תוסף Openframe בעל הכותרת Openframe. ייתכן שיהיה עליך לגלול ברשימה.

5

לחץ על התקן כדי להתקין את תוסף Openframe.

6

בתיבת הדו-שיח Activate Plugin , לחץ על Activate.

7

לאחר השלמת הפעלת התוסף, לחץ על סגור וטען מחדש טופס בתיבת הדו-שיח הפעלת התוסף .

8

כדי לוודא את הפעלת התוסף, מהשדה Filter navigator בפינה השמאלית העליונה של החלון, נווט אל OpenFrame.

9

לחץ על תצורות וודא שהתוסף OpenFrame מופיע ברשימה תצורות OpenFrame.

1

הורד את קובץ עדכון המערכת האחרון הגדר XML הזמין במאגר github במיקום זה : https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

שם קובץ: webexcc-servicenow-update-setV(X).xml

2

במופע ServiceNow שלך, מהשדה נווט סינון בפינה השמאלית העליונה של החלון, נווט אל ערכות עדכוני מערכת> ערכות עדכון כדי להתחייב.

3

לחץ על ייבוא ערכת עדכונים מהקישור XML .

4

לחץ על בחר קובץ, בחר את קובץ XML System Update Set ולאחר מכן לחץ על העלה.

ערכת העדכונים מופיעה ברשימה ערכות עדכון מאוחזרות ונמצאת במצב טעון .
5

מהרשימה ערכות עדכון מאוחזרות, לחץ על שם הקובץ Update Set (קישור) כדי לפתוח את Update Set.

6

בפינה השמאלית העליונה של החלון, לחץ על Preview Update Set כדי לבדוק אם קיימות בעיות בערכת העדכונים.

7

לחץ על סגור בתיבת הדו-שיח Update Set Preview לאחר השלמת התצוגה המקדימה.

8

לחץ על Commit Update Set.

9

לחץ על סגור בתיבת הדו-שיח Update Set Commit לאחר השלמת פעולת ה- Commit של Update Set.

1

בשדה נווט סינון בפינה השמאלית העליונה של החלון, הקלד sys_properties.list והקש Enter.

2

בדף מאפייני מערכת, מיין את המאפיינים לפי תאריך עדכון. ודא שאתה יכול לראות את המאפיינים הבאים Webex Contact Center:

3

לחץ על agentdesktop_url כדי לפתוח את הדף System Property agentdesktop_url .

4

בשדה ערך , הזן את כתובת ה- URL עבור שולחן העבודה של Webex Contact Center בהתאם לאזור הפעולה.

5

לחץ על עדכן כדי לשמור את השינויים.

6

(אופציונלי) כדי לשנות את שם טבלת הפעילות, ערוך את מאפייני webexccactivitytable כנדרש.

בדף מאפייני מערכת, לחץ על webexccactivitytable.

שנה את השדה ערך כנדרש.

7

(אופציונלי) הוסף קבוצות משתמשים בדרכים הבאות:

  1. בשדה נווט סינון בפינה הימנית העליונה של החלון, נווט אל קבוצות תחת אבטחת מערכת.

  2. צור קבוצת משתמשים חדשה או השתמש בקבוצת משתמשים קיימת.

  3. לחץ על ערוך.

  4. חפש sn_openframe_user תחת אוסף והעבר אותו לקבוצת המשתמשים שלך.

  5. לחץ על שמור.

  6. הוסף את המשתמש כחבר בקבוצה.

1

משדה Filter navigator , נווט אל OpenFrame > Configurations.

2

נְקִישָׁה חָדָשׁ.

3

הזן את המאפיינים הבאים עבור כתובת ה-URL:

  • שם: Webex Contact Center Desktop

  • כותרת: Webex Contact Center

  • רוחב: 550 (מומלץ)

  • גובה: 600 (מומלץ)

4

משמאל לשדה כתובת האתר , לחץ על לחצן נעל והוסף agentdesktop.do ככתובת ה- URL. (בצע שלב זה כדי להפנות תצורה לדף ממשק המשתמש)

5

(אופציונלי) בחר את קבוצות המשתמשים / סוכנים כדי להקצות את התצורה.

6

לחץ על שלח. כתובת ה-URL מופיעה כקישור.

7

לפני שתנסה להשתמש בטלפון OpenFrame, הקפד להעלות את קובץ ה- JSON של פריסת שולחן העבודה המותאמת אישית של ServiceNow לפורטל הניהול של Webex Contact Center. לקבלת מידע נוסף, ראה הגדרת פריסת שולחן העבודה של ServiceNow במרכז הקשר Webex.

1

הורד את פריסת שולחן העבודה עבור ServiceNow מ - https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

2

עדכן את המאפיינים בקובץ פריסת שולחן העבודה, במידת הצורך.

3

עבור אל פורטל ניהול Webex Contact Center.

4

בסרגל הניווט של פורטל הניהול, בחר הקצאת משאבים> פריסת שולחן עבודה.

5

נְקִישָׁה פריסה חדשה והזן את הפרטים עבור פריסת שולחן העבודה.

6

העלה את קובץ JSON של פריסת שולחן העבודה של ServiceNow.

7

לחץ על שמור כדי לשמור את התצורה.

כעת באפשרותך להפעיל את שולחן העבודה של Webex Contact Center בתוך מסוף ServiceNow.

8

משדה נווט המסננים, נווט אל דף הבית של סביבת העבודה של הסוכן> Agent Workspace .

לחץ על סמל הטלפון התחתון השמאלי.

הסעיפים הבאים מתארים את השלבים להתקנת מחבר ServiceNow עבור מופעים ארגוניים מורשים.

1

היכנס לחשבון פורטל המפתחים של ServiceNow ופתח את מסוף הניהול .

2

באזור המופע שלי בתפריט חשבון , לחץ על התחל לבנות.

3

במופע המפתח שלך, מהשדה נווט סינון בפינה השמאלית העליונה של החלון, נווט אל תוספים.

4

חפש את תוסף Openframe בעל הכותרת Openframe. ייתכן שיהיה עליך לגלול ברשימה.

5

לחץ על התקן כדי להתקין את תוסף Openframe.

6

בתיבת הדו-שיח Activate Plugin , לחץ על Activate.

7

לאחר השלמת הפעלת התוסף, לחץ על סגור וטען מחדש טופס בתיבת הדו-שיח הפעלת התוסף .

8

כדי לוודא את הפעלת התוסף, מהשדה Filter navigator בפינה השמאלית העליונה של החלון, נווט אל OpenFrame.

9

לחץ על תצורות וודא שהתוסף OpenFrame מופיע ברשימה תצורות OpenFrame.

1

בשדה Filter navigator בפינה השמאלית העליונה של החלון, הזן sys_properties.list.

2

בדף מאפייני מערכת, מיין את המאפיינים לפי תאריך עדכון. ודא שאתה יכול לראות את המאפיינים הבאים Webex Contact Center:

3

לחץ על agentdesktop_url כדי לפתוח את הדף System Property agentdesktop_url .

4

בשדה ערך , הזן את כתובת ה- URL עבור שולחן העבודה של Webex Contact Center בהתאם לאזור הפעולה.

5

לחץ על עדכן כדי לשמור את השינויים.

6

(אופציונלי) כדי לשנות את שם טבלת הפעילות, ערוך את המאפיינים x_caci_webexcc.webexccactivitytable כנדרש.

  1. בדף מאפייני מערכת, לחץ על x_caci_webexcc.webexccactivitytable.

  2. שנה את השדה ערך כנדרש.

7

(אופציונלי) הוסף קבוצות משתמשים בדרכים הבאות:

  1. בשדה נווט סינון בפינה הימנית העליונה של החלון, נווט אל קבוצות תחת אבטחת מערכת.

  2. לחץ על ערוך והוסף את התפקידים הבאים:

    • sn_openframe_user

    • x_caci_webexcc.agent

    • agent_workspace_user

    • x_caci_webexcc.webexcc_imp_activity_user

    • x_caci_webexcc.webex_contact_center

1

משדה Filter navigator , נווט אל OpenFrame > Configurations.

2

נְקִישָׁה חָדָשׁ.

3

הזן את המאפיינים הבאים עבור כתובת ה-URL:

  • שם: Webex Contact Center Desktop

  • כותרת: Webex Contact Center

  • רוחב: 550 (מומלץ)

  • גובה: 600 (מומלץ)

4

משמאל לשדה כתובת האתר , לחץ על לחצן נעל והוסף את x_caci_webexcc_agentdesktop.do ככתובת ה-URL. (בצע שלב זה כדי להפנות תצורה לדף ממשק המשתמש)

5

(אופציונלי) בחר את קבוצות המשתמשים / סוכנים כדי להקצות את התצורה.

6

לחץ על שלח. כתובת ה-URL מופיעה כקישור.

7

משדה נווט המסננים, נווט אל דף הבית של סביבת העבודה של הסוכן> Agent Workspace .

לחץ על סמל הטלפון התחתון השמאלי.

8

(אופציונלי) ברשימה קבוצת משתמשים, העבר את קבוצות המשתמשים שיכולות לגשת לשולחן העבודה של מרכז הקשר Webex מזמין לנבחר.

9

לפני שתנסה להשתמש בטלפון OpenFrame, הקפד להעלות את קובץ ה- JSON של פריסת שולחן העבודה המותאמת אישית של ServiceNow לפורטל הניהול של Webex Contact Center. לקבלת מידע נוסף, ראה הגדרת פריסת שולחן העבודה של ServiceNow במרכז הקשר Webex.

1

הורד את פריסת שולחן העבודה עבור ServiceNow מ - https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

2

עדכן את המאפיינים בקובץ פריסת שולחן העבודה, במידת הצורך.

3

עבור אל פורטל ניהול Webex Contact Center.

4

בסרגל הניווט של פורטל הניהול, בחר הקצאת משאבים> פריסת שולחן עבודה.

5

נְקִישָׁה פריסה חדשה והזן את הפרטים עבור פריסת שולחן העבודה.

6

העלה את קובץ JSON של פריסת שולחן העבודה של ServiceNow.

7

לחץ על שמור כדי לשמור את התצורה.

כעת באפשרותך להפעיל את שולחן העבודה של Webex Contact Center בתוך מסוף ServiceNow.

8

משדה נווט המסננים, נווט אל דף הבית של סביבת העבודה של הסוכן> Agent Workspace .

לחץ על סמל הטלפון התחתון השמאלי.

1

משדה נווט המסננים, נווט אל אירועים> תקרית פתוחה .

2

לחץ לחיצה ימנית על שדה המתקשר ולחץ על הגדר מילון.

3

הוסף תכונות המופרדות באמצעות פסיקים "ref_contributions=show_phone,.

כעת באפשרותך להתחיל להשתמש בשולחן העבודה של Webex Contact Center בתוך מסוף ServiceNow.

4

משדה נווט המסננים, נווט אל דף הבית של סביבת העבודה של הסוכן> Agent Workspace .

לחץ על סמל הטלפון התחתון השמאלי.

Agent Desktop במסוף ServiceNow

לפני שאתה מבצע שיחות חיוג, ודא שאתה עושה את הפעולות הבאות:

  • צור את נקודת הכניסה החיצונית והגדר אסטרטגיית נקודת כניסה לחיוג.

  • אפשר ANI חיוג עבור פרופיל הסוכן.

  • הגדר את ה-ANI החיוג למיפוי מספר חיוג לנקודת כניסה.

למידע נוסף, ראה את אספקה פרק של Cisco Webex Contact Center מדריך התקנה וניהול.

משדה נווט המסננים, נווט אל דף הבית של סביבת העבודה של הסוכן> Agent Workspace .

לחץ על סמל הטלפון התחתון השמאלי.

לקבלת מידע אודות אופן השימוש בשולחן העבודה, עיין במדריך למשתמש Cisco Webex Contact Center Agent Desktop.

חלוקת אחסון למחיצות של צד שלישי

בעיה אפשרית בעדכון האחרון ל- Google Chrome ול- Edge 116 ואילך עלולה לשבש את חוויית הכניסה שלך למחברי CRM במרכז הקשר Webex. בעיה זו משפיעה על כניסה לשולחן העבודה במסוף ServiceNow CRM.

כדי לפתור בעיה זו בדפדפן Google Chrome:

  1. פתח את דפדפן Google Chrome והזן chrome://flags/#third-party-storage-partitioning בשורת הכתובת.

  2. השבת את דגל חלוקת האחסון הניסיוני של צד שלישי.

  3. סגור והפעל מחדש את Chrome.

  4. היכנס שוב לשולחן העבודה בתוך מסוף ה- CRM של ServiceNow.

כדי לפתור בעיה זו בדפדפן Edge:

  1. פתח את הדפדפן והזן edge://flags/#third-party-storage-partitioning בשורת הכתובת.

  2. השבת את דגל חלוקת האחסון הניסיוני של צד שלישי.

  3. שמור את השינויים והפעל מחדש את הדפדפן.

  4. היכנס שוב לשולחן העבודה בתוך מסוף ה- CRM של ServiceNow.

כדי לפתור בעיה זו בדפדפן Firefox:

  1. פתח את הדפדפן והזן about:config בשורת הכתובת.

    דף אזהרה עשוי להופיע. לחץ על קבל את הסיכון והמשך כדי לעבור לדף אודות:config .

  2. הזן network.cookie.cookieBehavior בתיבה שם העדפות חיפוש בחלק העליון של הדף about:config כדי למצוא את ההעדפה.

  3. לחץ פעמיים על ההעדפה או לחץ על ערוך סמל כדי לערוך את ההעדפה.

  4. שנה את הערך ל- 0.

  5. שמור את השינויים והפעל מחדש את הדפדפן.

  6. היכנס שוב לשולחן העבודה בתוך מסוף ה- CRM של ServiceNow.

סקירה כללית

מאמר זה מכסה מספר דרכים להתאמה אישית של הכללים העסקיים שלך עבור מחבר ServiceNow CRM. הוא מפרט כיצד באפשרותך להתאים אישית את מקרי השימוש בהתבסס על כללים עסקיים ספציפיים ל- ServiceNow.

הלקוח חייב לנהל באופן עצמאי מקרי שימוש אלה ב- ServiceNow. התצורה ספציפית ל- ServiceNow ולא Webex תוכנה או מומחיות של Contact Center.


 

זהו תיעוד התייחסות כדי לסייע בשינוי כללים עסקיים. מפתחי ServiceNow ייצרו וינהלו את הכללים העסקיים ויספקו תמיכה.

Cisco מספקת תיעוד לדוגמה בלבד.

הסעיפים הבאים מספקים פרטים אודות אופן ההגדרה, ההפעלה והניהול של רכיב widget מסוג פעולות עבור מופעים של מפתחים וארגונים.

Commit the Update Set for Actions Widget

עבור מופעי הארגון המורשים, התקן את רכיב widget מסוג פעולות מחבר ServiceNow, גירסה 1.9 מחנות ServiceNow.

כדי להגדיר את הווידג'ט פעולות עבור מופעי המפתחים, הורד את הקובץ האחרון של System Update Set XML הזמין במאגר github במיקום זה: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. שם הקובץ webexcc-servicenow-update-setv7-1-ActionsWidget.xml. כדי לבצע פעולת Commit לערכת העדכונים עבור רכיב widget מסוג פעולות, ראה שלבים 2 עד 9 ב-Commit the Update Set.

הפעל רכיב widget מסוג פעולות

השתמש במאפיין isWidgetDisplayEnabled כדי להפעיל את רכיב widget מסוג פעולות. אין לשנות את הערך של מאפיין זה במקטע חסר הראש של פריסת שולחן העבודה המותאמת אישית. המאפיין מוגדר תמיד כ- false במקטע חסר הראש של פריסת שולחן העבודה המותאמת אישית. יש לעדכן את ערך המאפיין רק באזור החלונית של פריסת שולחן העבודה המותאמת אישית.

לאחר שתפעיל את רכיב widget מסוג פעולות בפריסת שולחן העבודה המותאמת אישית, תוכל לבצע את הפעולות הבאות:

  • ניהול רשומות פעילות - לחץ על הצג/ערוך רשומת פעילות כדי להציג את רשימת רשומות הפעילות המשויכות למתקשר.
  • שיוך אובייקטי CRM - לחץ על שייך לרשומות פעילות כדי להוסיף אובייקטי CRM כגון סוג שיחה (נכנסת או יוצאת), אובייקט שיחה, הערות שיחה וכן הלאה לרשומת הפעילות.
  • ניהול אירועים – לחץ על צור אירוע. אירוע חדש נוצר כאשר פרטי המתקשר מאוכלסים מראש. באפשרותך לבצע את העדכונים הדרושים לאירוע. באפשרותך לבחור לשנות את סוג הרשומה מאירוע לאירוע, מודול משאבי אנוש וכן הלאה בהתאם לדרישות שלך. לשינוי סוג הרשומה, שנה את הערך של המאפיין typeOfRecord בתצורת רכיב widget מסוג פעולות. לדוגמה:
    { "comp": "md-tab-panel", "תכונות": { "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" : "Create Incident" }, "wrapper": { "title": "SNOW Actions !", "maximizeAreaName": "app-maximize-area" } } ] }
  • הוספת הערות לשיחה חיה – באפשרותך ללכוד מידע נוסף אודות השיחה באזור הטקסט ולסיים את השיחה. באפשרותך לראות הערות אלה שנוספו כהערות שיחה ברשומת הפעילות.

שינוי קוד ב- ServiceNow

קובץ ה-script כולל שינויים
  1. עבור אל מסנן נווט וחפש הסקריפט כולל.

    בחר את קובץ ה - Script הנכלל תחת ממשק המשתמש של המערכת.

  2. סנן את השם וחפש propUtils.

  3. שנה את השיטה משתמשGetSysId בתסריט.

    קורנט:

    UserGetSysId: פונקציה () { var opened_for; var user = חדש GlideRecord("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if (user.next()) opened_for=user.sys_id; var grInt = חדש GlideRecord('אינטראקציה'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'טלפון'; grInt.opened_for= opened_for; var sysid=grInt.insert(); להחזיר sysid; },

    קוד לדוגמה חדש לאירוע:

    UserGetSysId: פונקציה () { var opened_for; //שינויים הקשורים לאירוע var sysidlist = {}; var user = חדש 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.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); },

שינוי שיטה בדפי ממשק משתמש
  1. עבור אל מסנן נווט וחפש דף ממשק משתמש.

    בחר דפי ממשק משתמש תחת ממשק משתמש מערכת.

  2. סנן את השם וחפש AgentDesktop.

  3. שנה את Screenpop פונקציה בסקריפט לקוח.

    פונקציה נוכחית:

    פונקציית פופ מסך screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = חדש GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('שדה', 'טלפון'); gaout.addParam('ערך', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ ישות: 'אינטראקציה', שאילתה: 'sys_id='+sysid });

    קוד לדוגמה לאירוע:

    פונקציית פופ מסך screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = חדש GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('שדה', 'טלפון'); gaout.addParam('ערך', callerani); gaout.getXMLWait(); // עבור שינוי הקשור לאירוע var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ ישות: 'incident', שאילתה: 'sys_ id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid //'a2ba0ba62fd121106446cc96f699b6b8' }); } }

אם פרטי המתקשר קיימים ב- CRM, וכבר נפתח אירוע חדש עם איש קשר זה, היישום פותח את אירוע ההתקדמות

אם פרטי המתקשר אינם קיימים ב- CRM, היישום פותח אירוע חדש

אם פרטי המתקשר קיימים ב- CRM, היישום פותח אירוע חדש עם פרטים שמולאו מראש

סקירה כללית

מקרה שימוש זה מפרט את התהליך להוספת עמודה נוספת לטבלת ServiceNow - webexcc_imp_activity ויצירת sn_openframe_phone_log עם התקנת Webex CC עבור מחבר ה- CRM של ServiceNow.

כברירת מחדל, הטבלה מכילה שדות מערכת וערכים מסוימים מוכנים לשימוש.

באפשרותך ליצור משתנים ספציפיים יותר לעסק (משתני CAD) בתוך מעצב WebexCC Flow ולהוסיף את משתני CAD בתוך יומן הפעילות של ServiceNow לאחר שיחה, וכן להתמיד בכך בנתוני טבלת הפעילות לאחר השיחה.


 

זהו תיעוד עזר בלבד - ומראה כיצד לעשות זאת עבור משתנה CAD לדוגמה בשם שם לקוח המאחסן את שם הלקוח בתוך IVR ומפרסם אותו ב- ServiceNow.

צפוי שמפתחי Partner+customer ServiceNow יגדירו וינהלו תצורה זו מכיוון שהיא התאמה אישית למחבר הקיים.

Cisco מספקת רק את הטכניקות להתאמה אישית ולהרחבה של המחבר.

החל ממאמר זה, צוות Cisco אימת תמיכה בהוספת משתנה CAD ליומן הפעילות ולטבלת הפעילות באמצעות הטכניקה המתוארת להלן:

הוספת עמודה לפעילות WebexCC IMP

  1. ערוך את הטבלה בגירסת המפתחים של ServiceNow.

  2. עבור אל נווט המסנן וחפש סטודיו.

    בחר Webex Contact Center

    או

  3. בחר בלחצן פעילות WebexCC IMP הטבלה

  4. הוסף עמודה חדשה, לדוגמה, שם לקוח

הוספת עמודה ליומן הטלפון

  1. ערוך את טבלת יומן הרישום של הטלפון.

  2. הוסף עמודה חדשה, לדוגמה, שם לקוח.

מפת המרת פעילות WebexCC

הוסף עמודה חדשה, לדוגמה, שם לקוח מיפוי שדות.

התאמה אישית של עמודות רשימה

כפי שהשירות כעת ממליץ, שנה את פעולת הבחירה מיצירה להתעלמות.

קביעת תצורה של רשימת יומני רישום של טלפונים

עבור אל קובץ Script כלול


 

הוספת שורה אחת בלבד webexcc.u_customername=actInfo.CustomerName כדי propUtils.

סקריפט לדוגמה

ראה את השורה: 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; אחרת // להחזיר null; var grInt = חדש GlideRecord ('אינטראקציה'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'טלפון'; grInt.opened_for= opened_for; var sysid=grInt.insert(); להחזיר סיסיד; }, setWebexcctable: פונקציה () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = חדש 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 = חדש 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 במעצב Flow

הוספת משתנה CAD לפריסת שולחן העבודה

דוגמה

"CadName1:SnowField1,CadName2:SnowField2" CadName1 הוא CustomerName SnowField1 משמש גם כ- CustomerName שהוא חלק מ- scirpt לדוגמה המוצג לעיל "actInfo.CustomerName".

צילומי מסך של הדגמה

הצג את משתנה ה- CAD החדש שנוסף בטבלה WebexCC Activity.

יצירת משתנה CAD עבור Flow Designer

דחיפות האירוע

השפעת האירוע

עדכון סקריפט של Service Now

עדכונים לסקריפט כוללים:

  1. עבור אל נווט הסינון וחפש קבצי Script כלולים

    בחר באפשרות Script כולל תחת ממשק משתמש מערכת.

  2. סנן את השם באמצעות propUtils.

  3. שנה את השיטה משתמשGetSysId בשדה Script .

    תסריט נוכחי:

    UserGetSysId: פונקציה () { var opened_for; var user = חדש GlideRecord("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if (user.next()) opened_for=user.sys_id; var grInt = חדש GlideRecord('אינטראקציה'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'טלפון'; grInt.opened_for= opened_for; var sysid=grInt.insert(); להחזיר sysid; },

    קוד לדוגמה חדש לאירוע:

    UserGetSysId: פונקציה () { var opened_for; var sysidlist = {}; var user = חדש 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. עבור אל נווט הסינון וחפש דפי ממשק משתמש.

    בחר באפשרות דפי ממשק משתמש תחת ממשק משתמש מערכת.

  2. סנן את דפי ממשק המשתמש עם שם וחפש את agentdesktop.

  3. שנה את Screenpop פונקציה בשדה סקריפט.

    פונקציה נוכחית:

    פונקציית פופ מסך screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = חדש GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('שדה', 'טלפון'); gaout.addParam('ערך', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ ישות: 'אינטראקציה', שאילתה: '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 = חדש GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam ('שדה', 'טלפון'); gaout.addParam('ערך', callerani); gaout.addParam('דחיפות', IncUrgency); gaout.addParam ('השפעה', השפעה); 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({ entity: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); }

אם פרטי המתקשר קיימים ב- CRM, ואין אירוע חדש או לא מתקדם, היישום פותח אירוע חדש

שינוי הקוד ב- ServiceNow

הוספת עמודות חדשות ללחצן פעילות WebexCC IMP הטבלה

פתח את הלחצן פעילות WebexCC IMP הטבלה

הוספת עמודה חדשה - InteractionsNumber

הוספת עמודה חדשה - IncidentNumber

לחץ על עדכן.

הוספת עמודות חדשות ללחצן יומן טלפונים הטבלה

פתח את הלחצן יומן טלפונים הטבלה

הוספת עמודה חדשה - InteractionsNumber

הוספת עמודה חדשה - IncidentNumber

מפת המרת פעילות WebexCC

לפתוח שינוי מפה מנווט המסננים

לחץ על WebexCC Activity TransformMap

הוסף חדש - עבור מפת מספרי אינטראקציה

הוסף חדש - עבור מפת מספרי אירוע

לחץ על עדכן .

שינויים בסקריפט כוללים

  1. עבור אל נווט מסנן וחפש "סקריפט כולל".

    בחר את קובץ ה - Script הנכלל תחת ממשק המשתמש של המערכת.

  2. סינון השם באמצעות propUtils.

  3. שנה את השיטה setWebexcctable.

    קוד לדוגמה חדש עבור אירוע:

    setWebexcctable: פונקציה () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = חדש GlideRecordSecure(gs.getProperty('webexccactivitytable')); webexcc.addQuery("u_callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { //Activities on Incident record; //var actInfoString =this.getParameter('actInfo'); var incsysid=actInfo.incident_sys_id; var interactionsysid=actInfo.interaction_sys_id; var incnum=""; var intenum=""; delete actInfo['interaction_sys_id']; מחק את actInfo['incident_sys_id']; if( interactionsysid!= null &&; interactionsysid != undefined){ var inte = חדש 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 = חדש GlideRecordSecure('incident'); inci.addQuery('sys_id', incsysid ); 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 = חדש GlideRecordSecure("sys_user"); suser.addQuery("phone", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = חדש 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=אינטנום; sys_id=webexcc.insert(); } להחזיר sys_id; },

שינויי שיטה בדפי ממשק משתמש

  1. עבור אל מסנן נווט וחפש דפי ממשק משתמש

    בחר באפשרות דפי ממשק משתמש תחת ממשק משתמש מערכת.

  2. סנן את דפי ממשק המשתמש עם שם וחפש את agentdesktop .

  3. שנה את nowפעילויות ו screenpop פונקציה בסקריפט.

    פונקציה נוכחית:

    הפונקציה nowActivities(actInfo, ani) { var gaout = חדש 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 = חדש 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 = חדש GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('שדה', 'טלפון'); gaout.addParam('ערך', 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({ entity: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); } 

תוצאות לאחר העדכון


 

ההתאמות האישיות הבאות חלות על גרסאות 1.0.5 ומטה. לקבלת ההתאמות האישיות עבור הגרסאות החדשות יותר 1.0.7 ומעלה, בצע את השלבים לעיל.

התאמה אישית # 1 - הוספת כללים עסקיים מותאמים אישית עבור מקרי שימוש של זרימת שיחות

יצירת רשומת אירוע חדשה עבור כל שיחה

עבור כל שיחה חדשה לתוך מחבר WebexCC CRM ב- ServiceNow, צור רשומת אירוע חדשה.

  1. חיפוש כללים עסקיים בנווט הסינון

  2. נְקִישָׁה חָדָשׁ.

    קוד לדוגמה לעיון:

    פונקציה 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; } תשובה = כתובת 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; }

    תצורה לדוגמה של הכלל העסקי

  3. הפיכת לקוח לזמין ניתן לקריאה

    שילוב טלפוניה ממוחשבת (CTI) עיבוד עבור אירוע מסומן כ - True.

  4. עדכן את כתובת ה- URL של ה- screenpop עם כלל CTI המותאם אישית" cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

דוגמה

יש להפעיל את sysparm_cti_rule=name כאשר 'name' הוא שם הפונקציה עבור CTI עיבוד במקום שימוש בסקריפט ברירת המחדל.

הגדר את הפונקציה בערך sys_script המסומן כניתן לקריאה של לקוח.

אם עליך להוסיף, לעדכן או למחוק רשומות GlideRecords כלשהן בפונקציה, התקשר לפונקציה נפרדת שאינה ניתנת לקריאה של לקוח כדי לבצע את העדכונים.


 

כדי להפוך קובץ script לניתן לקריאה באמצעות לקוח, עליך לסמן את תיבת הסימון לקוח-ניתן לקריאה בטופס המוצגת כאשר הערך sys_script מוצג.

תיבת הסימון הניתנת להתקשרות ללקוח אינה מופיעה כברירת מחדל. כדי להציג, עליך לשנות את השדות המופיעים בטופס באמצעות סמל גלגל השיניים ומנגנון דלי הברד.

הפניות

התאמה אישית # 2 - הוספת משתנה CAD בטבלת הפעילות Webex Contact Center

סקירה כללית

מאמר זה מפרט את התהליך להוספת עמודה נוספת לטבלת ServiceNow - webexcc_activity שנוצר עם התקנת Webex CC עבור מחבר ה- CRM של ServiceNow.

כברירת מחדל, הטבלה מכילה שדות מערכת וערכים מוכנים לשימוש.

באפשרותך ליצור משתנים ספציפיים יותר לעסקים (משתני CAD) בתוך מעצב WebexCC Flow ולהוסיף משתני CAD אלה בתוך יומן הפעילות של ServiceNowלאחר שיחה, ולהתמיד זאת בנתוני טבלת הפעילות לאחר השיחה .


 
  • זהו תיעוד עזר בלבד - ומראה כיצד לעשות זאת עבור משתנה CAD לדוגמה בשם שם לקוח המאחסן את שם הלקוח בתוך IVR ומפרסם אותו ב- ServiceNow.

  • מפתחי שותפים+לקוחות ServiceNow יגדירו וינהלו תצורה זו מכיוון שהיא התאמה אישית למחבר הקיים.

  • Cisco תספק רק את הטכניקות להתאמה אישית ולהרחבה של המחבר.

  • נכון למאמר זה, צוות Cisco אימת תמיכה בהוספת משתנה CAD ליומן הפעילות ולטבלת הפעילות באמצעות הטכניקה המתוארת להלן.

הוספת עמודה לפעילות WebexCC
  1. ערוך את הטבלה בגירסת המפתחים של ServiceNow.

  2. עבור אל מרכז הקשר > הסטודיו Webex.

  3. בחר טבלת פעילות WebexCC.

  4. לדוגמה, CustomerName.

  5. בחר פריסת רשימה עבור פעילות WebexCC.

יצירת קובץ Script חדש כולל

 

שלב זה אינו נדרש אם אתה משתמש ב- Update Set XML - יש להוסיף שורה אחת בלבד "webexcc.u_customername=actInfo.CustomerName" ל- propUtils.

סקריפט לדוגמה

ראה את השורה עם: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 = חדש 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 = חדש 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(acting string),null,2); inc.comments =jsonPretty; inc.update(); } } } להחזיר sys_id; }, הקלד: 'propUtils2' });
עריכת דף ממשק המשתמש עם שם קובץ Script חדש

יצירת משתנה CAD במעצב Flow

הוספת משתנה CAD לפריסת שולחן העבודה

צילומי מסך של הדגמה

הצג את משתנה ה- CAD החדש שנוסף בטבלה WebexCC Activity.