Integracija Webex Contact Center s storitvijo ServiceNow (različica 1 – podedovana)
Predpogoji
Priključek CRM deluje na podlagi različice pripomočka, določene v postavitvi namizja JSON. Zelo pomembno je, da zagotovite, da je različica pripomočka v postavitvi namizja posodobljena. Od novembra 2025 je najnovejša različica pripomočka 5.0.0 (V5).
Skrbniki naj bi zagotovili, da bodo vse postavitve namizja za ta priključek CRM uporabljale to različico pripomočka. Če postavitev ni posodobljena tako, da bi uporabljala najnovejšo različico, funkcionalnost ne bo več podprta in bo morda prenehala pravilno delovati.
Preden integrirate Webex Contact Center s konzolo ServiceNow CRM, se prepričajte, da imate naslednje:
-
Dostop do Webex Contact Center.
-
Skrbniški dostop do nadzornega središča na https://admin.webex.com in portala za upravljanje Webex Contact Center. URL-ji za portal za upravljanje so specifični za vašo regijo.
-
Posrednik z dostopom do namizja. URL za namizje je specifičen za vašo regijo.
-
Posrednik ima dostop do te domene, ki je dodana na seznam dovoljenih pravilnikov o varnosti vsebine:
-
*.service-now.com
Če želite več informacij o določanju seznama dovoljenih stikov, glejte članek Varnostne nastavitve za Webex Contact Center.
-
-
Račun portala za razvijalce ServiceNow. Če želite ustvariti račun, pojdite na portal za razvijalce ServiceNow na # https://developer.servicenow.com/dev.do in kliknite Prijavite se in začnite graditi .
-
Dostop do naslednjih datotek na https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow:
-
Nabor posodobitev ServiceNow (XML)
-
Postavitev namizja središča za stike ServiceNow (JSON)
-
- Izdaje ServiceNow, ki jih podpira Webex Contact Center, so Vancouver, Utah, Tokya, Washington in Xanadu. Za več informacij glejte Webex Contact Center Integracija s storitvijo ServiceNow.
Upoštevajte enega od spodnjih dveh načinov:
Za primerke razvijalcev priporočamo, da upoštevate navodila v vodniku za primerke za razvijalce.
Če ste lastnik primerka z licenco podjetja, upoštevajte smernice za primerke z licenco podjetja.
Priporočamo, da aplikacije, licencirane za podjetja, ne mešate s primerki preskusnega okolja za razvijalce.
V spodnjih razdelkih so opisani koraki za namestitev povezovalnika ServiceNow za primerke razvijalcev.
| 1 |
Prijavite se v račun portala za razvijalce ServiceNow in odprite skrbniško konzolo . |
| 2 |
V območju »Moj primerek « v meniju »Račun « kliknite Začni gradnjo.
|
| 3 |
V primerku razvijalca se v polju Filter navigator v zgornjem levem kotu okna pomaknite do možnosti Vtičniki.
|
| 4 |
Poiščite vtičnik Openframe z naslovom Openframe. Morda se boste morali pomikati po seznamu.
|
| 5 |
Kliknite Namesti, da namestite vtičnik Openframe. |
| 6 |
V pogovornem oknu Aktiviraj vtičnik kliknite Aktiviraj.
|
| 7 |
Ko je aktiviranje vtičnika končano, kliknite Zapri & Ponovno naloži obrazec v pogovornem oknu Aktiviranje vtičnika.
|
| 8 |
Če želite preveriti aktiviranje vtičnika, se v polju Filter navigator v zgornjem levem kotu okna pomaknite do možnosti OpenFrame . |
| 9 |
Kliknite Konfiguracije in se prepričajte, da je vtičnik OpenFrame prikazan na seznamu konfiguracij OpenFrame.
|
| 1 |
Prenesite najnovejšo datoteko System Update Set XML, ki je na voljo v repo github na tej lokaciji : https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow. Ime datoteke: webexcc-servicenow-update-setV(X).XML
|
| 2 |
V primerku storitve Now se v polju Krmarjenje po filtru v zgornjem levem kotu okna pomaknite do možnosti Nabori
|
| 3 |
Kliknite povezavo Uvozi nabor posodobitev iz povezave XML .
|
| 4 |
Kliknite Izberi datoteko, izberite datoteko System Update Set XML in kliknite Upload.
Nabor posodobitev je prikazan na seznamu Pridobljeni nabori posodobitev in je v stanju Naloženo .
|
| 5 |
Na seznamu Pridobljeni nabori posodobitev kliknite povezavo Ime datoteke nabora posodobitev (povezava), da odprete nabor posodobitev.
|
| 6 |
V zgornjem desnem kotu okna kliknite Predogled nabora posodobitev, da preverite, ali je v naboru posodobitev prišlo do težav.
|
| 7 |
Ko je predogled končan, v pogovornem oknu Update Set Preview kliknite Zapri .
|
| 8 |
Kliknite Uveljavi nabor posodobitev.
|
| 9 |
Ko je nastavitev nabora posodobitev dokončana, kliknite Zapri v pogovornem oknu Update Set Commit (Potrditev nabora posodobitev).
|
| 1 |
V polje Filter navigator v zgornjem levem kotu okna vnesite
|
| 2 |
Na strani Sistemske lastnosti razvrstite lastnosti po posodobljenem datumu. Prepričajte se, da lahko vidite naslednje lastnosti Webex Contact Center:
|
| 3 |
Kliknite agentdesktop_url , da odprete stran agentdesktop_url lastnosti sistema. |
| 4 |
V polje Vrednost vnesite URL namizja Webex Contact Center glede na regijo delovanja.
|
| 5 |
Kliknite Posodobi , da shranite spremembe. |
| 6 |
(Neobvezno) Če želite spremeniti ime tabele dejavnosti, po potrebi uredite lastnosti tabele webexccactivitytable . Na strani Sistemske lastnosti kliknite webexccactivitytable. Po potrebi spremenite polje Vrednost .
|
| 7 |
(Neobvezno) Uporabniške skupine lahko dodate na naslednje načine:
|
| 1 |
V polju Filter navigator se pomaknite do .
|
| 2 |
Kliknite Nov.
|
| 3 |
Vnesite naslednje lastnosti URL-ja:
|
| 4 |
Desno od polja URL kliknite gumb Zakleni in kot URL dodajte
|
| 5 |
(Neobvezno) Izberite skupine uporabnikov/posrednikov, ki jim želite dodeliti konfiguracijo.
|
| 6 |
Kliknite Submit (Pošlji). URL je prikazan kot povezava.
|
| 7 |
Preden poskusite uporabiti telefon OpenFrame, se prepričajte, da ste datoteko JSON po meri ServiceNow Desktop Layout naložili na portal za upravljanje Webex Contact Center. Če želite več informacij, glejte Nastavitev postavitve namizja ServiceNow na Webex Contact Center. |
| 1 |
Prenesite postavitev namizja za ServiceNow iz https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.
|
| 2 |
Po potrebi posodobite lastnosti v datoteki postavitve namizja. |
| 3 |
Pojdite na portal za upravljanje Webex Contact Center. |
| 4 |
V vrstici za krmarjenje portala za upravljanje izberite namizja.
|
| 5 |
Kliknite Nova postavitev in vnesite podrobnosti postavitve namizja. |
| 6 |
Prenesite datoteko JSON postavitve namizja ServiceNow Desktop. |
| 7 |
Kliknite Shrani , da shranite konfiguracijo. Zdaj lahko zaženete namizje Webex Contact Center v konzoli ServiceNow. |
| 8 |
V polju Krmarec po filtrih se pomaknite do servisnih operacij.
|
V spodnjih razdelkih so opisani koraki za namestitev povezovalnika ServiceNow za licenčne primerke podjetja.
| 1 |
Prijavite se v račun portala za razvijalce ServiceNow in odprite skrbniško konzolo . |
| 2 |
V območju »Moj primerek « v meniju »Račun « kliknite Začni gradnjo.
|
| 3 |
V primerku razvijalca se v polju Filter navigator v zgornjem levem kotu okna pomaknite do možnosti Vtičniki.
|
| 4 |
Poiščite vtičnik Openframe z naslovom Openframe. Morda se boste morali pomikati po seznamu.
|
| 5 |
Kliknite Namesti, da namestite vtičnik Openframe. |
| 6 |
V pogovornem oknu Aktiviraj vtičnik kliknite Aktiviraj.
|
| 7 |
Ko je aktiviranje vtičnika končano, kliknite Zapri & Ponovno naloži obrazec v pogovornem oknu Aktiviranje vtičnika.
|
| 8 |
Če želite preveriti aktiviranje vtičnika, se v polju Filter navigator v zgornjem levem kotu okna pomaknite do možnosti OpenFrame . |
| 9 |
Kliknite Konfiguracije in se prepričajte, da je vtičnik OpenFrame prikazan na seznamu konfiguracij OpenFrame.
|
Primerki z licencami podjetja lahko aplikacijo Webex Contact Center namestijo neposredno iz trgovine ServiceNow Store.
|
Prenesite in namestite paket Webex Contact Center iz trgovine ServiceNow: https://store.servicenow.com/sn_appstore_store.do#!/store/application/6c8e2a4edbc73410e1c75e25ca961947.
|
| 1 |
V polje Krmarec filtrov v zgornjem levem kotu okna vnesite
|
| 2 |
Na strani Sistemske lastnosti razvrstite lastnosti po posodobljenem datumu. Prepričajte se, da lahko vidite naslednje lastnosti Webex Contact Center:
|
| 3 |
Kliknite agentdesktop_url , da odprete stran agentdesktop_url lastnosti sistema. |
| 4 |
V polje Vrednost vnesite URL namizja Webex Contact Center glede na regijo delovanja.
|
| 5 |
Kliknite Posodobi , da shranite spremembe. |
| 6 |
(Neobvezno) Če želite spremeniti ime tabele dejavnosti, po potrebi uredite lastnosti x_caci_webexcc.webexccactivitytable .
|
| 7 |
(Neobvezno) Uporabniške skupine lahko dodate na naslednje načine:
|
| 1 |
V polju Filter navigator se pomaknite do .
|
| 2 |
Kliknite Nov.
|
| 3 |
Vnesite naslednje lastnosti URL-ja:
|
| 4 |
Desno od polja URL kliknite gumb Zakleni in kot URL dodajte
|
| 5 |
(Neobvezno) Izberite skupine uporabnikov/posrednikov, ki jim želite dodeliti konfiguracijo.
|
| 6 |
Kliknite Submit (Pošlji). URL je prikazan kot povezava.
|
| 7 |
V polju Krmarec po filtrih se pomaknite do .
|
| 8 |
(Neobvezno) Na seznamu Skupina uporabnikov premaknite uporabniške skupine, ki lahko dostopajo do namizja Webex Contact Center, iz Na voljo v Izbrano. |
| 9 |
Preden poskusite uporabiti telefon OpenFrame, se prepričajte, da naložite datoteko JSON po meri ServiceNow Desktop Layout JSON na portal za upravljanje Webex Contact Center. Če želite več informacij, glejte Nastavitev postavitve namizja ServiceNow na Webex Contact Center. |
| 1 |
Prenesite postavitev namizja za ServiceNow iz https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.
|
| 2 |
Po potrebi posodobite lastnosti v datoteki postavitve namizja. |
| 3 |
Pojdite na portal za upravljanje Webex Contact Center. |
| 4 |
V vrstici za krmarjenje portala za upravljanje izberite namizja.
|
| 5 |
Kliknite Nova postavitev in vnesite podrobnosti postavitve namizja. |
| 6 |
Prenesite datoteko JSON postavitve namizja ServiceNow Desktop. |
| 7 |
Kliknite Shrani , da shranite konfiguracijo. Zdaj lahko zaženete namizje Webex Contact Center v konzoli ServiceNow. |
| 8 |
V polju Krmarec po filtrih se pomaknite do servisnih operacij.
|
| 1 |
V polju Krmarjenje filtra se pomaknite do razdelka Dogodki > Odpri dogodek. |
| 2 |
Z desno miškino tipko kliknite polje klicatelja in kliknite Konfiguriraj slovar.
|
| 3 |
Dodajte atribute
Zdaj lahko začnete uporabljati namizje Webex Contact Center v konzoli ServiceNow. |
| 4 |
V polju Krmarec po filtrih se pomaknite do servisnih operacij.
|
- Podpiramo prijavo v Agent Desktop samo s priključki WebRTC za Salesforce (SFDC) in Microsoft Dynamics (MS Dynamics).
- Trenutno ta funkcija velja samo za posrednike.
Agent Desktop v konzoli ServiceNow
Preden opravite zunanje klice, se prepričajte, da naredite naslednje:
-
Ustvarite zunanjo vstopno točko in nastavite strategijo izhodne vstopne točke.
-
Omogočite klicanje ANI za profil posrednika.
-
Nastavite klicni ANI na preslikavo klicne številke do vstopne točke.
Če želite več informacij, glejte poglavje Omogočanje uporabe v vodniku za nastavitev in skrbništvoCisco Webex Contact Center.
V polju Krmarec po filtrih se pomaknite do servisnih operacij.
Če želite več informacij o uporabi namizja, glejte Agent # Tab v pomoči Webex Contact Center.
Pregled
V tem članku je opisanih več načinov za prilagajanje poslovnih pravil za priključek ServiceNow CRM. Podrobno opisuje, kako lahko prilagodite primere uporabe na podlagi poslovnih pravil, ki so specifična za ServiceNow.
Stranka mora sama upravljati te primere uporabe na ServiceNow. Konfiguracija je specifična za ServiceNow in ne za programsko opremo ali strokovno znanje Webex Contact Center.
To je referenčna dokumentacija za pomoč pri spreminjanju poslovnih pravil. Razvijalci storitve ServiceNow bodo ustvarili in upravljali pravila poslovanja ter nudili podporo.
Cisco zagotavlja samo vzorčno dokumentacijo.
V spodnjih razdelkih so podrobnosti o nastavitvi, omogočanju in upravljanju pripomočka »Dejanja« za primerke razvijalcev in podjetij.
Uveljavite pripomoček za nabor posodobitev za dejanja
Za licenčne primerke podjetja namestite najnovejšo aplikacijo Webex Contact Center iz trgovine ServiceNow.
Če želite nastaviti pripomoček Dejanja za primerke razvijalcev, prenesite najnovejšo datoteko System Update Set XML, ki je na voljo v repo strežniku github na tej lokaciji: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. Ime datoteke je webexcc-servicenow-update-setv7-1-ActionsWidget.XML. Če želite uveljaviti komplet posodobitev za pripomoček »Dejanja«, glejte korake od 2 do 9 v razdelku Uveljavitev nabora posodobitev.
Omogoči pripomoček za dejanja
Z lastnostjo isWidgetDisplayEnabled omogočite pripomoček Dejanja. Vrednosti te lastnosti ne smete spreminjati v brezglavem razdelku postavitve namizja po meri. Lastnost je v brezglavem razdelku postavitve namizja po meri vedno nastavljena na false. Vrednost lastnosti posodobite le v razdelku plošče postavitve namizja po meri.
Ko omogočite pripomoček »Dejanja« v postavitvi namizja po meri, lahko izvedete ta dejanja:
- Upravljanje zapisov dejavnosti – kliknite Ogled/urejanje zapisa dejavnosti, če si želite ogledati seznam zapisov dejavnosti, povezanih s klicateljem.
- Povezovanje predmetov CRM – kliknite Poveži z zapisi dejavnosti, če želite v zapis dejavnosti dodati predmete CRM, kot so vrsta klica (dohodni ali odhodni), predmet klica, opombe o klicu in tako naprej.
- Upravljanje incidentov – kliknite Ustvari dogodek. Ustvari se nov dogodek z vnaprej izpolnjenimi podatki klicatelja. Dogodek lahko ustrezno posodobite. Vrsto zapisa lahko spremenite iz dogodka v primer, modul HR itd. glede na vaše zahteve. Če želite spremeniti vrsto zapisa, spremenite vrednost lastnosti typeOfRecord v konfiguraciji pripomočka Dejanja. Na primer:
{ "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" : "Create Incident" }, "wrapper": { "title": "SNOW Actions !", "maximizeAreaName": "app-maximize-area" } } ] } - Dodajanje opomb o klicih v živo – v območju z besedilom lahko zajamete dodatne informacije o klicu in zaključite klic. Te opombe lahko vidite dodane kot opombe o klicih v zapisu dejavnosti.
Sprememba kode na ServiceNow
Skript vključuje spremembe-
Pojdite na navigator filtrov in poiščite
Skript vključuje
.Izberite skript, ki ga vključi v razdelek Uporabniški vmesnik sistema.
-
Filtriranje imena in iskanje
propUtils
. -
Spreminjanje načina
UserGetSysId
V scenariju .Trenutno:
UserGetSysId: funkcija () { 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 ('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); return sysid; },Nova vzorčna koda za dogodek:
UserGetSysId: funkcija () { var opened_for; //Incident related changes 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 = 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='Prejeti klic iz '+ this.getParameter('vrednost'); sysidlist.incsysid=inc.Insert(); } } } var grInt = new GlideRecordSecure("interakcija"); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); sysidlist.sysid=sysid; vrni JSON.stringify(sysidlist); },
-
Pojdite na navigator filtrov in poiščite stran
uporabniškegavmesnika.Izberite strani uporabniškega vmesnika v razdelku Sistemski uporabniški vmesnik.
-
Filtriranje imena in iskanje
Agentdesktop
. -
Spremenite
Screenpop
Funkcija v skriptu odjemalca.Trenutna funkcija:
zaslonska pop funkcija screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('vrednost', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entity: 'interaction', poizvedba: 'sys_id='+sysid });Vzorčna koda dogodka:
zaslonska pop funkcija screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('vrednost', callerani); gaout.getXMLWait(); // For Incident-related change var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: 'incident', poizvedba: 'sys_ id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: 'incident', poizvedba: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid //'a2ba0ba62fd121106446cc96f699b6b8' }); } }
Če informacije o klicatelju obstajajo v programu CRM in se je s tem stikom že odprl nov dogodek, aplikacija odpre dogodek v teku
Če podatki o klicatelju ne obstajajo v programu CRM, aplikacija odpre nov dogodek
Če informacije o klicatelju obstajajo v programu CRM, aplikacija odpre nov dogodek z vnaprej izpolnjenimi podrobnostmi
Pregled
Ta primer uporabe podrobno opisuje postopek dodajanja dodatnega stolpca v tabelo ServiceNow - webexcc_imp_activity in ustvarjanje sn_openframe_phone_log ob namestitvi priključka Webex CC za ServiceNow CRM.
Privzeto tabela vsebuje določena vnaprej pripravljena sistemska polja in vrednosti.
V oblikovalniku WebexCC Flow lahko ustvarite več spremenljivk, specifičnih za posamezno podjetje (spremenljivke CAD), in dodate spremenljivke CAD znotraj dnevnika dejavnosti klicev ServiceNow POST ter to ohranite pri podatkih tabele dejavnosti klica POST.
To je samo referenčna dokumentacija - in prikazuje, kako to storiti za vzorčno spremenljivko CAD, imenovano Ime stranke, ki shrani ime stranke znotraj IVR in ga objavi na ServiceNow.
Pričakuje se, da bodo razvijalci partner+customer ServiceNow konfigurirali in upravljali to konfiguracijo, saj gre za prilagoditev obstoječemu povezovalniku.
Cisco ponuja samo tehnike, kako prilagoditi in razširiti priključek.
Od tega članka je ekipa Cisco potrdila podporo za dodajanje spremenljivk CAD v dnevnik dejavnosti in tabelo dejavnosti z uporabo spodaj opisane tehnike:
Dodajanje stolpca v dejavnost WebexCC IMP
-
Uredite tabelo v različici storitve ServiceNow za razvijalce.

-
Pojdite v navigator filtrov in poiščite studio.

Izberi
Webex Contact Center

ali



-
Izberite
Dejavnost WebexCC IMP
miza
-
Dodajte nov stolpec, na primer,
Ime stranke


Dodajanje stolpca v dnevnik telefona
-
Uredite tabelo dnevnika telefonov.


-
Dodajte nov stolpec, na primer,
Ime stranke
.

Zemljevid preoblikovanja dejavnosti WebexCC

Dodajte nov stolpec, na primer, Ime stranke
Preslikava polja.


Prilagajanje stolpcev seznama

Kot priporoča storitev zdaj, spremenite dejanje Izbira iz Ustvari v Prezri.


Konfiguracija seznama dnevnikov klicev

Pojdi na Vključi skript
Dodajanje samo ene vrstice webexcc.u_customername=actInfo.CustomerName
Za propUtils.



Glej vrstico: webexcc.u_customername=actInfo.CustomerName; s podpornim komentarjem.
var propUtils = Class.create(); propUtils.prototype = Object.extendsObject(globalno. AbstractAjaxProcessor,{ getWebexccProp: funkcija () { 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: funkcija () { 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; sicer // vrnitev nična; var grInt = new GlideRecord ('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); vrnitev sysid; }, setWebexcctable: funkcija () { 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; Ta vrstica je dodana - če jo želite zajeti v dnevniku dejavnosti webexcc.u_customername=actInfo.CustomerName; sys_id=webexcc.Insert(); dejavnosti v evidenci incidentov; var actInfoString =this.getParameter('actInfo'); var suser = nov GlideRecordSecure ("sys_user"); suser.addQuery("telefon", 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(); } } } } vrnitev sys_id; }, vrsta: 'propUtils' });
Ustvarjanje spremenljivke CAD v načrtovalniku poteka

Dodajanje spremenljivke CAD postavitvi namizja
Primer
"CadName1:SnowField1,CadName2:SnowField2" CadName1 je CustomerName SnowField1 se uporablja tudi kot ime stranke, ki je del vzorčnega cirpta, prikazanega nad "actInfo.CustomerName".

Predstavitveni posnetki zaslona
Oglejte si novo dodano spremenljivko CAD v tabeli dejavnosti WebexCC.



Ustvarjanje spremenljivke CAD za Flow Designer
Nujnost incidenta
Vpliv incidenta

Posodobitev skripta »Service Now«
Posodobitve skripta vključujejo
-
Pojdite v navigator filtrov in poiščite
skript vključujeIzberite možnost Skript vključuje v razdelku Uporabniški vmesnik sistema.

-
Filtrirajte ime s
propUtils.
-
Spreminjanje načina
UserGetSysId
V polju Skript .
Trenutni scenarij:
UserGetSysId: funkcija () { 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 ('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); return sysid; },Nova vzorčna koda za dogodek:
UserGetSysId: function () { 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 = 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.urgency=this.getParameter('IncUrgency'); inc.impact=this.getParameter('Impact'); inc.short_description='Prejeti klic iz '+ this.getParameter('vrednost'); sysidlist.incsysid=inc.Insert(); } } } var grInt = new GlideRecordSecure("interakcija"); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.Insert(); sysidlist.sysid=sysid; vrni JSON.stringify(sysidlist);//sysid; },
-
Pojdite v navigator filtrov in poiščite
strani uporabniškega vmesnika.Izberite možnost Strani uporabniškega vmesnika v razdelku Sistemski uporabniški vmesnik.

-
Filtrirajte strani uporabniškega vmesnika z imenom in poiščite
agentdesktop.
-
Spremenite
Screenpop
Funkcija v polju skripta.
Trenutna funkcija:
zaslonska pop funkcija screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('vrednost', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entity: 'interaction', poizvedba: 'sys_id='+sysid }); }Vzorčna koda dogodka:
funkcija zaslona pop 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.Urgency.value; } if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam("sysparm_name", "UserGetSysId"); gaout.addParam("polje", "telefon"); gaout.addParam('vrednost', callerani); gaout.addParam("IncUrgency", IncUrgency); gaout.addParam('Vpliv', Vpliv); 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', poizvedba: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); }
Če informacije o klicatelju obstajajo v CRM in ni novega incidenta ali incidenta v teku, aplikacija odpre nov incident


Spremenite kodo na ServiceNow
Dodajanje novih stolpcev v Dejavnost WebexCC IMP
miza
Odprite Dejavnost WebexCC IMPmiza





Kliknite Posodobi.


Dodajanje novih stolpcev v Dnevnik telefona
miza
Odprite Dnevnik telefona
miza





Zemljevid preoblikovanja dejavnosti WebexCC
Odpri Preoblikuj zemljevid
Iz navigatorja filtrov


Kliknite na Dejavnost WebexCC TransformMap




Kliknite Posodobi.

Spremembe skripta vključujejo
-
Pojdite v navigator filtrov in poiščite »skript vključuje«.
Izberite skript, ki ga vključi v razdelek Uporabniški vmesnik sistema.

-
Filtrirajte ime z
propUtils
.
-
Spreminjanje načina
setWebexcctable
.
Nova vzorčna koda za dogodek:
setWebexcctable: funkcija () { 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()) { //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="; izbriši actInfo['interaction_sys_id']; izbrisati 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='Update State to closed.'; inte.update(); } } if( incsysid!= null && incsysid != undefined){ var inci = new 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 = new GlideRecordSecure("sys_user"); suser.addQuery("telefon", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', suser.sys_id); inc.addQuery('stanje','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(); } vrnitev sys_id; },
Spremembe načina na straneh uporabniškega vmesnika
-
Pojdite na navigator filtrov in poiščite
Strani uporabniškega vmesnika
Izberite možnost Strani uporabniškega vmesnika v razdelku Sistemski uporabniški vmesnik.

-
Filtrirajte strani uporabniškega vmesnika z imenom in poiščite agentdesktop
.
-
Spremenite
zdajDejavnosti in screenpop
Funkcija v skriptu.
Trenutna funkcija:
funkcija 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); }Vzorčna koda dogodka:
funkcija 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); } funkcija 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', poizvedba: '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)); }
Rezultati po posodobitvi

Naslednje prilagoditve veljajo za različice 1.0.5 in starejše. Prilagoditve za novejše različice 1.0.7 in novejše upoštevajte zgornja navodila.
Prilagajanje # 1 - Dodajanje poslovnih pravil po meri za primere uporabe toka klicev
Ustvarjanje novega zapisa o dogodku za vsak klicZa vsak nov klic v priključek WebexCC CRM v storitvi ServiceNow ustvarite nov zapis o dogodku.
Iskanje pravil poslovanja v navigatorju filtrov

Kliknite Nov.

Vzorčna koda za referenco:
funkcija 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 (pogled == null || pogled == '') view = "itil"; var userID = null; if (eid != null && eid != '') { userID = UserGetSysId("employee_number",eid); } if (userID == null && name != null && name != '') { userID = UserGetSysId("name", ime); } if (userID == null && phone != null && phone != '') { userID = UserGetSysId("telefon", telefon); } 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 za vrnitev; } funkcija UserGetSysId(polje, vrednost) { var user = new GlideRecord("sys_user"); user.addQuery(polje, vrednost); user.query(); if (user.next()) return user.sys_id; else return null; }Vzorčna konfiguracija pravila poslovanja

Omogoči klicanje odjemalca

Obdelava integracije z računalniško telefonijo (CTI) za incident je označena kot »True«.

Posodobite URL zaslona s pravilom CTI po meri" cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

sysparm_cti_rule =ime , kjer je 'ime' ime funkcije , se je treba priklicati zaCTI obdelavo in ne za uporabo privzetega skripta.
Določite funkcijo v odjemalcu, ki je označen z sys_script vnosom.
Če morate Insert, posodobiti ali izbrisati katero koli funkcijo GlideRecords v funkciji, za izvedbo posodobitev pokličite ločeno funkcijo, ki ni odjemalska klicateljica.
Če želite, da bo odjemalec skript lahko klical, potrdite potrditveno polje odjemalca, ki ga je mogoče poklicati na obrazcu, ki se prikaže, ko se prikaže vnos sys_script.
Potrditveno polje, ki ga je mogoče poklicati odjemalca, privzeto ni prikazano. Če si želite ogledati, morate polja, ki so prikazana na obrazcu, spremeniti z ikono zobnika in mehanizmom žlice blata.
Prilagajanje # 2 - Dodajte spremenljivko CAD v tabelo aktivnosti Webex Contact Center
PregledV tem članku je podrobno opisan postopek dodajanja dodatnega stolpca v tabelo ServiceNow - webexcc_activity, ki je ustvarjen ob namestitvi priključka Webex CC za ServiceNow CRM.
Privzeto tabela vsebuje vnaprej pripravljena sistemska polja in vrednosti.
V oblikovalniku toka WebexCC lahko ustvarite več spremenljivk, specifičnih za posamezno podjetje (spremenljivke CAD), in te spremenljivke CAD dodate v dnevnik dejavnosti klicev ServiceNowPOST in to ohranite pri podatkih tabele dejavnosti klica POST.
-
To je samo referenčna dokumentacija - in prikazuje, kako to storiti za vzorčno spremenljivko CAD, imenovano Ime stranke, ki shrani ime stranke znotraj IVR in jo objavi na ServiceNow.
-
Partner+razvijalci storitve za stranke bodo konfigurirali in upravljali to konfiguracijo, saj gre za prilagoditev obstoječemu povezovalniku.
-
Cisco bo zagotovil samo tehnike za prilagajanje in razširitev priključka.
-
Od tega članka je ekipa Cisco potrdila podporo za dodajanje spremenljivke CAD v dnevnik dejavnosti in tabelo dejavnosti z uporabo spodaj opisane tehnike.
Uredite tabelo v različici storitve ServiceNow za razvijalce.

Pojdite v .



Izberite tabelo dejavnosti WebexCC.

Na primer,CustomerName .


Izberite postavitev seznama za dejavnost WebexCC.

Ta korak ni potreben, če uporabljate nabor posodobitev XML - V propUtils je treba dodati samo eno vrstico "webexcc.u_customername=actInfo.CustomerName".



Vzorčni skript
Glej vrstico z:webexcc.u_customername=actInfo.CustomerName; s podpornim komentarjem.
var propUtils2 = Class.create(); propUtils2.prototype = Object.extendsObject(globalno. 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; // Ta vrstica je dodana - da jo zajamete v dnevniku dejavnosti webexcc. u_customername=actInfo.CustomerName; sys_id=webexcc.Insert(); dejavnosti v evidenci incidentov; var actInfoString =this.getParameter('actInfo'); var suser = nov GlideRecordSecure ("sys_user"); suser.addQuery("telefon", 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(delujoči niz),null,2); inc.comments =jsonPretty; inc.update(); } } } } vrnitev sys_id; }, vrsta: 'propUtils2' });
Urejanje strani uporabniškega vmesnika z novim imenom skripta
Ustvarjanje spremenljivke CAD v načrtovalniku poteka
Dodajanje spremenljivke CAD postavitvi namizja
Predstavitveni posnetki zaslona
Oglejte si novo dodano spremenljivko CAD v tabeli dejavnosti WebexCC.












































