Integrirajte Webex kontaktni center s storitvijo ServiceNow
Ko integrirate Webex središče za stike s konzolo ServiceNow CRM, lahko zaženete Webex namizja središča za stike v storitvi ServiceNow.
Predpogoji
Preden Webex središče za stike integrirate s konzolo ServiceNow CRM, se prepričajte, da imate naslednje:
-
Dostop do središča za stike Webex.
-
Skrbniški dostop do nadzornega središča na https://admin.webex.com in portala za upravljanje središča za stike Webex. URL-ji za portal za upravljanje so specifični za vašo regijo.
-
Severna Amerika: https://portal.wxcc-us1.cisco.com
-
Združeno kraljestvo: https://portal.wxcc-eu1.cisco.com
-
Japonska: https://portal-v2.wxcc-jp1.cisco.com
-
Singapur: https://portal-v2.wxcc-sg1.cisco.com
-
-
Posrednik z dostopom do namizja. URL za namizje je specifičen za vašo regijo.
-
Severna Amerika: https://desktop.wxcc-us1.cisco.com
-
Združeno kraljestvo: https://desktop.wxcc-eu1.cisco.com
-
Japonska: https://desktop.wxcc-jp1.cisco.com
-
Singapur: https://desktop.wxcc-sg1.cisco.com
-
-
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 središča za stike Webex.
-
-
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 kontaktni center, so Vancouver, Utah, Tokya, Washington in Xanadu. Če želite več informacij, glejte Webex Integracija središča za stike 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 nabora posodobitev sistema XML ki je na voljo v repo githubu 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 uvozi nabor posodobitev s povezave XML . |
4 |
Kliknite Izberi datoteko, izberite nabor posodobitev sistema XML datoteko in kliknite Prenesi.
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 te Webex lastnosti središča za stike: |
3 |
Kliknite agentdesktop_url , da odprete stran agentdesktop_url lastnosti sistema. |
4 |
V polje Vrednost vnesite URL za namizje Webex središča za stike 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, naložite datoteko JSON po meri ServiceNow Desktop Layout JSON na Webex portal za upravljanje središča za stike. Če želite več informacij, glejte Nastavitev postavitve namizja ServiceNow v središču za stike Webex. |
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 |
Obiščite portal za upravljanje središča za stike Webex. |
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 središča za stike 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 namestijo aplikacijo Webex Contact Center 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 te Webex lastnosti središča za stike: |
3 |
Kliknite agentdesktop_url , da odprete stran agentdesktop_url lastnosti sistema. |
4 |
V polje Vrednost vnesite URL za namizje Webex središča za stike 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 servisnih operacij. |
8 |
(Neobvezno) Na seznamu Uporabniška skupina premaknite uporabniške skupine, ki lahko dostopajo do namizja Webex središča za stike, iz Na voljo v Izbrano. |
9 |
Preden poskusite uporabiti telefon OpenFrame, naložite datoteko JSON po meri ServiceNow Desktop Layout JSON na Webex portal za upravljanje središča za stike. Če želite več informacij, glejte Nastavitev postavitve namizja ServiceNow v središču za stike Webex. |
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 |
Obiščite portal za upravljanje središča za stike Webex. |
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 središča za stike 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 središča za stike v konzoli ServiceNow. |
4 |
V polju Krmarec po filtrih se pomaknite do servisnih operacij. |
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štvo Cisco Webex Contact Center
V polju Krmarec po filtrih se pomaknite do
servisnih operacij.
Če želite več informacij o uporabi namizja, glejte zavihek Posrednik v pomoči za Webex središča za stike.
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 Webex programske opreme ali strokovnega znanja središča za stike.
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 središča za stike iz trgovine ServiceNow.
Če želite nastaviti pripomoček »Dejanja« za primerke razvijalcev, prenesite najnovejšo datoteko XML nabora posodobitev sistema, 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škega
vmesnika.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 podjetje (spremenljivke CAD), in dodate spremenljivke CAD znotraj dnevnika dejavnosti po klicu ServiceNow ter to ohranite v podatkih tabele dejavnosti po klicu.
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 za prilagajanje in razširitev povezovalnika.
Od tega članka je Ciscova ekipa potrdila podporo za dodajanje spremenljivk CAD v dnevnik dejavnosti in tabelo dejavnosti s spodaj opisano tehniko:
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.
Vzorčni skript
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 incidentaVpliv incidenta
Posodobitev skripta »Service Now«
Posodobitve skripta vključujejo
-
Pojdite v navigator filtrov in poiščite
skript vključuje
Izberite 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 Dodajanje novega stolpca – InteractionsNumber Dodajanje novega stolpca – IncidentNumber
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 telefon = sysparm_caller_phone; var taskID = sysparm_task_id; var fQuery = sysparm_query; if (fQuery == null) fQuery = ''; var pogled = 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", 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; } odgovor = url; povratni url; } funkcija UserGetSysId(polje, vrednost) { var uporabnik = nov GlideRecord("sys_user"); user.addQuery(polje, vrednost); uporabnik.poizvedba(); if (user.next()) vrni user.sys_id; sicer vrni nič; }
Vzorčna konfiguracija poslovnega pravila
Omogoči klicanje odjemalca
Integracija računalniške telefonije (CTI) Obdelava za incident je označena kot True.
Posodobite URL pojavnega zaslona s pravilom CTI po meri " cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="
The sysparm_cti_rule=name kjer je 'name' ime funkcije je treba poklicati za CTI Obdelava namesto uporabe privzetega skripta.
Definirajte funkcijo v sys_script vnosu, označenem kot client callable.
Če morate v funkcijo vstaviti, posodobiti ali izbrisati katere koli zapise GlideRecords, pokličite ločeno funkcijo, ki jo ne kliče odjemalec, da izvede posodobitve.
Če želite, da lahko skript kliče odjemalec, morate potrditi potrditveno polje, ki ga lahko kliče odjemalec, na obrazcu, ki se prikaže, ko je prikazan vnos sys_script.
Potrditveno polje, ki ga kliče odjemalec, se privzeto ne prikaže. Če si želite ogledati, morate spremeniti polja, ki so prikazana na obrazcu, z uporabo ikone zobnika in mehanizma žlice za brozgo.
Prilagajanje št. 2 – dodajte spremenljivko CAD v Webex tabelo dejavnosti kontaktnega centra
PregledTa članek podrobno opisuje postopek dodajanja dodatnega stolpca v tabelo ServiceNow - webexcc_activity, ki je ustvarjen po namestitvi Webex CC for ServiceNow CRM Connector.
Tabela privzeto vsebuje vnaprej pripravljena sistemska polja in vrednosti.
Potencialno lahko ustvarite več poslovno specifičnih spremenljivk (spremenljivk CAD) v oblikovalniku WebexCC Flow in dodate te spremenljivke CAD v dnevnik dejavnosti ServiceNow po klicu ter to obdržite v tabela dejavnosti po klicu podatki.
-
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 to objavi v ServiceNow.
-
Razvijalci storitve Partner+stranka ServiceNow bodo konfigurirali in upravljali to konfiguracijo, saj gre za prilagoditev obstoječega konektorja.
-
Cisco bo zagotovil samo tehnike, kako prilagoditi in razširiti priključek.
-
Od tega članka je skupina Cisco potrdila podporo za dodajanje spremenljivke CAD v dnevnik dejavnosti in tabelo dejavnosti z uporabo spodaj opisane tehnike.
Uredite tabelo v različici ServiceNow za razvijalce.
Pojdite v
.Izberite WebexCC Activity tabelo.
Na primer CustomerName.
Izberite postavitev seznama za WebexCC Activity.
Ta korak ni potreben, če uporabljate nabor posodobitev XML – Za dodajanje »webexcc.u_customername=actInfo.CustomerName« v propUtils je potrebna samo ena vrstica.
Vzorčni scenarij
Oglejte si vrstico z:webexcc.u_customername=actInfo.CustomerName; s podpornim komentarjem.
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 webexcc = novo GlideRecordSecure('x_caci_webexcc.webexccactivitytable')); webexcc.addQuery("callobject", actInfo.CallObject(); ; webexcc.dnis =actInfo.dnis; webexcc.queuename =actInfo.wrapuptime; webexcc.callduration =actInfo.ringingtime; webexcc.activitydate =actInfo.Calltype =actInfo.CallType; webexcc.calldisposition=actInfo.CallDisposition; // Ta vrstica je dodana – za zajem v dnevnik dejavnosti webexcc.u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); // Aktivnosti na evidenci incidentov; var actInfoString =this.getParameter('actInfo'); 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.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(); } } } vrni sys_id; }, vnesite: 'propUtils2' });
Uredite stran uporabniškega vmesnika z novim imenom skriptaUstvarite spremenljivko CAD v oblikovalcu Flow
Dodajte spremenljivko CAD v postavitev namizja
Demo posnetki zaslona
Oglejte si novo dodano spremenljivko CAD v tabeli dejavnosti WebexCC.