Integrirajte Webex kontakt centar sa servisom ServiceNow
Kada integrirate Webex kontakt centar s ServiceNow CRM konzolom, možete pokrenuti Webex radnoj površini kontaktnog centra iz ServiceNow-a.
Preduvjeti
Prije integracije Webex kontakt centra s Konzolom ServiceNow CRM, provjerite imate li sljedeće:
-
Pristup Webex kontakt centru.
-
Administratorski pristup kontrolnom središtu na https://admin.webex.com i Webex portalu za upravljanje kontaktnim centrom. URL-ovi portala za upravljanje specifični su za vašu regiju.
-
Sjeverna Amerika: https://portal.wxcc-us1.cisco.com
-
Velika Britanija: https://portal.wxcc-eu1.cisco.com
-
Singapur: https://portal-v2.wxcc-sg1.cisco.com
-
-
Agent s pristupom radnoj površini. URL radne površine specifičan je za vašu regiju.
-
Sjeverna Amerika: https://desktop.wxcc-us1.cisco.com
-
Singapur: https://desktop.wxcc-sg1.cisco.com
-
-
Pristup agenta sljedećoj domeni dodan na popis dopuštenih pravila o sigurnosti sadržaja:
-
*.service-now.com
Dodatne informacije o definiranju popisa dopuštenih potražite u članku Sigurnosne postavke za Webex kontakt centar.
-
-
Račun portala za razvojne inženjere ServiceNow. Da biste stvorili račun, idite na portal za razvojne inženjere ServiceNow na adresihttps://developer.servicenow.com/dev.do i kliknite Prijava i pokretanje izgradnje .
-
Pristup sljedećim datotekama na https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow:
-
Skup ažuriranja ServiceNow (XML)
-
Izgled radne površine kontaktnog centra ServiceNow (JSON)
-
- Izdanja ServiceNow koja Webex Contact Center podržavaju su Vancouver, Utah, Tokya, Washington i Xanadu. Dodatne informacije potražite u članku Webex Integracija kontaktnog centra sa servisom ServiceNow.
Slijedite jednu od dvije metode u nastavku:
Za instance za razvojne inženjere preporučujemo da slijedite korake u vodiču za instance razvojnog programera.
Ako ste vlasnik instance s licencom tvrtke, slijedite smjernice za instance s licencom tvrtke.
Ne preporučujemo miješanje aplikacije s poslovnim licencama s instancama memorije za razvojne inženjere.
U sljedećim se odjeljcima opisuju koraci za instalaciju poveznika ServiceNow za instance razvojnih inženjera.
1 |
Prijavite se na račun portala za razvojne inženjere servisa ServiceNow i otvorite konzolu administracije . |
2 |
U području Moja instanca na izborniku Račun kliknite Započni izgradnju. |
3 |
Na instanci razvojnog programera iz polja Navigator filtra u gornjem lijevom kutu prozora idite na Dodaci. |
4 |
Potražite dodatak Openframe s naslovom Openframe. Možda ćete se morati pomicati kroz popis. |
5 |
Kliknite Instaliraj da biste instalirali dodatak Openframe. |
6 |
U dijaloškom okviru Aktiviranje dodatka kliknite Aktiviraj. |
7 |
Kada se aktivacija dodatka dovrši, kliknite Zatvori i ponovno učitaj obrazac u dijaloškom okviru Aktivacija dodatka. |
8 |
Da biste provjerili aktivaciju dodatka, iz polja Navigator filtra u gornjem lijevom kutu prozora idite na OpenFrame . |
9 |
Kliknite Konfiguracije i provjerite pojavljuje li se dodatak OpenFrame na popisu OpenFrame Configurations . |
1 |
Preuzmite najnoviju XML datoteku skupa ažuriranja sustava dostupnu na github repo na ovom mjestu : https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow. Naziv datoteke: webexcc-servicenow-update-setV(X).xml |
2 |
Na instanci servisa ServiceNow, iz polja Navigator filtra u gornjem lijevom kutu prozora idite na . |
3 |
Kliknite vezu Uvezi skup ažuriranja iz XML . |
4 |
Kliknite Odaberi datoteku, odaberite XML datoteku Skup ažuriranja sustava, a zatim kliknite Prenesi.
Skup ažuriranja pojavljuje se na popisu Dohvaćeni skupovi ažuriranja i nalazi se u stanju Učitano .
|
5 |
Na popisu Dohvaćeni skupovi ažuriranja kliknite Naziv datoteke skupa ažuriranja (veza) da biste otvorili skup ažuriranja. |
6 |
U gornjem desnom kutu prozora kliknite Pretpregled skupa ažuriranja da biste provjerili ima li problema u skupu ažuriranja. |
7 |
Kliknite Zatvori u dijaloškom okviru Nadogradnja pretpregleda skupa nakon dovršetka pretpregleda. |
8 |
Kliknite Spremi skup ažuriranja. |
9 |
Kliknite Zatvori u dijaloškom okviru Predaja skupa ažuriranja nakon dovršetka predaje skupa ažuriranja. |
1 |
U polje Navigator filtra u gornjem lijevom kutu prozora upišite |
2 |
Na stranici Svojstva sustava sortirajte svojstva prema datumu ažuriranja. Provjerite možete li vidjeti sljedeća svojstva Webex kontaktnog centra: |
3 |
Kliknite agentdesktop_url da biste otvorili stranicu Svojstvo sustava agentdesktop_url . |
4 |
U polje Vrijednost unesite URL za radnu površinu kontaktnog centra Webex prema regiji operacije.
|
5 |
Kliknite Ažuriraj da biste spremili promjene. |
6 |
(Nije obavezno) Da biste promijenili naziv tablice aktivnosti, uredite svojstva webexccactivitytable prema potrebi. Na stranici Svojstva sustava kliknite na webexccactivitytable. Promijenite polje Vrijednost prema potrebi. |
7 |
(Nije obavezno) Grupe korisnika dodajte na sljedeće načine:
|
1 |
U polju Navigator filtra idite na . |
2 |
Kliknite na Novi. |
3 |
Unesite sljedeća svojstva za URL:
|
4 |
Desno od polja URL-a kliknite gumb Zaključaj i dodajte |
5 |
(Nije obavezno) Odaberite grupe korisnika / agenata da biste dodijelili konfiguraciju. |
6 |
Kliknite Pošalji. URL se prikazuje kao veza. |
7 |
Prije nego što pokušate koristiti telefon OpenFrame, provjerite jeste li prenijeli JSON datoteku prilagođenog izgleda radne površine ServiceNow na portal za upravljanje kontaktnim centrom Webex. Dodatne informacije potražite u odjeljku Postavljanje izgleda radne površine ServiceNow u Webex kontaktnom centru. |
1 |
Preuzmite izgled radne površine za ServiceNow s https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow. |
2 |
Ažurirajte svojstva u datoteci izgleda radne površine, ako je potrebno. |
3 |
Idite na portal za upravljanje kontaktnim centrom Webex. |
4 |
Na navigacijskoj traci portala za upravljanje odaberite radne površine. |
5 |
Kliknite Novi izgled i unesite pojedinosti o izgledu radne površine. |
6 |
Prenesite JSON datoteku ServiceNow Desktop Layout. |
7 |
Kliknite Spremi da biste spremili konfiguraciju. Sada možete pokrenuti radnu površinu Webex kontaktnog centra unutar konzole ServiceNow. |
8 |
U polju Navigator filtra idite na servisnih operacija. |
U sljedećim odjeljcima opisani su koraci za instalaciju ServiceNow poveznika za licencirane poslovne instance.
1 |
Prijavite se na svoj račun portala za razvojne programere ServiceNow i otvorite administracijsku konzolu . |
2 |
U području Moja instanca na izborniku Račun kliknite Pokreni izradu. |
3 |
Na instanci razvojnog inženjera u polju Navigator filtra u gornjem lijevom kutu prozora idite na Dodaci. |
4 |
Potražite dodatak Openframe koji ima naslov Openframe. Možda ćete se morati pomicati kroz popis. |
5 |
Kliknite Instaliraj da biste instalirali dodatak Openframe. |
6 |
U dijaloškom okviru Aktiviranje dodatka kliknite Aktiviraj. |
7 |
Kada se aktivacija dodatka dovrši, kliknite Zatvori i ponovno učitaj obrazac u dijaloškom okviru Aktivacija dodatka. |
8 |
Da biste provjerili aktivaciju dodatka, iz polja Navigator filtra u gornjem lijevom kutu prozora idite na OpenFrame. |
9 |
Kliknite Konfiguracije i provjerite pojavljuje li se dodatak OpenFrame na popisu OpenFrame Configurations . |
Instance koje imaju korporacijske licence mogu instalirati aplikaciju Webex Contact Center izravno iz trgovine ServiceNow.
Preuzmite i instalirajte paket Webex Contact Center iz trgovine ServiceNow: https://store.servicenow.com/sn_appstore_store.do#!/store/application/6c8e2a4edbc73410e1c75e25ca961947. |
1 |
U polje Navigator filtra u gornjem lijevom kutu prozora unesite sys_properties.list |
2 |
Na stranici Svojstva sustava sortirajte svojstva prema ažuriranom datumu. Provjerite možete li vidjeti sljedeća Webex svojstva centra za kontakt: |
3 |
Kliknite agentdesktop_url da biste otvorili stranicu agentdesktop_url svojstava sustava. |
4 |
U polje Vrijednost unesite URL radne površine Webex centra za kontakt u skladu s područjem rada.
|
5 |
Kliknite Ažuriraj da biste spremili promjene. |
6 |
(Neobavezno) Da biste promijenili naziv tablice Aktivnost, po potrebi uredite svojstva x_caci_webexcc.webexccactivitytable .
|
7 |
(Neobavezno) Dodajte grupe korisnika na sljedeće načine:
|
1 |
Iz polja Navigator filtra idite na . |
2 |
Kliknite na Novi. |
3 |
Unesite sljedeća svojstva za URL:
|
4 |
Desno od polja URL-a kliknite gumb Zaključaj i dodajte |
5 |
(Neobavezno) Odaberite grupe korisnika/agenata da biste dodijelili konfiguraciju. |
6 |
Kliknite Pošalji. URL se pojavljuje kao veza. |
7 |
Iz polja Navigator filtra dođite do radnog prostora . |
8 |
(Neobavezno) Na popisu Grupa korisnika premjestite grupe korisnika koje mogu pristupiti radnoj površini Webex kontaktnog centra s Dostupno na Odabrano. |
9 |
Prije nego što pokušate koristiti OpenFrame telefon, provjerite jeste li prenijeli JSON datoteku prilagođenog izgleda radne površine ServiceNow na Webex portal za upravljanje kontaktnim centrom. Dodatne informacije potražite u odjeljku Postavljanje izgleda radne površine ServiceNow u Webex Kontakt centru. |
1 |
Preuzmite izgled radne površine za ServiceNow s https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow. |
2 |
Po potrebi ažurirajte svojstva u datoteci izgleda radne površine. |
3 |
Otvorite Webex portal za upravljanje kontaktnim centrom. |
4 |
Na navigacijskoj traci portala za upravljanje odaberite . |
5 |
Kliknite Novi izgled i unesite detalje o izgledu radne površine. |
6 |
Prenesite JSON datoteku ServiceNow Desktop Layout. |
7 |
Kliknite Spremi da biste spremili konfiguraciju. Sada možete pokrenuti Webex radnu površinu kontaktnog centra unutar konzole ServiceNow. |
8 |
Iz polja Navigator filtra dođite do radnog prostora . |
1 |
U polju navigatora filtra pomaknite se do odjeljka Incidenti> Otvori incident. |
2 |
Desnom tipkom miša kliknite polje pozivatelja, a zatim kliknite Konfiguriraj rječnik. |
3 |
Dodajte atribute odvojene Sada možete početi koristiti Webex radnu površinu kontaktnog centra unutar konzole ServiceNow. |
4 |
Iz polja Navigator filtra dođite do radnog prostora operacija servisa . |
Agent Desktop u konzoli ServiceNow
Prije upućivanja poziva obavezno učinite sljedeće:
-
Stvorite ulaznu točku za outdial i postavite strategiju izlazne ulazne točke.
-
Omogućite outdial ANI za profil agenta.
-
Postavite ANI za outdial na mapiranje broja u ulaznu točku biranja.
Dodatne informacije potražite u poglavlju Dodjela resursa u Vodiču za postavljanje i administraciju Cisco Webex Contact Center.
Iz polja Navigator filtra dođite do radnog prostora .
Informacije o korištenju radne površine potražite na kartici Agent u pomoći Webex centra za kontakt.
Pregled
Ovaj članak pokriva nekoliko načina prilagodbe pravila poslovanja za poveznik ServiceNow CRM. Detaljno opisuje kako možete prilagoditi slučajeve upotrebe na temelju poslovnih pravila koja su specifična za ServiceNow.
Kupac mora samostalno upravljati tim slučajevima upotrebe na ServiceNowu. Konfiguracija je specifična za ServiceNow, a ne Webex softver ili stručnost kontaktnog centra.
Ovo je referentna dokumentacija koja pomaže u izmjeni poslovnih pravila. Razvojni programeri ServiceNow-a stvorit će i upravljati poslovnim pravilima i pružiti podršku.
Cisco nudi samo oglednu dokumentaciju.
Sljedeći odjeljci sadrže detalje o postavljanju, omogućavanju i upravljanju widgetom akcija za instance razvojne inženjere i tvrtke.
Izvršavanje widgeta Skup ažuriranja za akcije
Za licencirane poslovne instance instalirajte najnoviju aplikaciju Webex Contact Center iz trgovine ServiceNow.
Da biste postavili widget Akcije za instance razvojnog programera, preuzmite najnoviju XML datoteku skupa ažuriranja sustava dostupnu na github repo ugovoru na ovom mjestu: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. Naziv datoteke je webexcc-servicenow-update-setv7-1-ActionsWidget.xml. Upute za postavljanje skupa ažuriranja za widget Akcije potražite u članku Koraci od 2 do 9 u članku Izvršavanje skupa ažuriranja.
Omogući widget za akcije
Za omogućavanje widgeta DisplayEnabled koristite svojstvo isWidgetDisplayEndenden . Vrijednost ovog svojstva ne smijete mijenjati u odjeljku bez glave prilagođenog izgleda radne površine. Svojstvo je uvijek postavljeno na false u odjeljku bez glave prilagođenog izgleda radne površine. Vrijednost svojstva trebali biste ažurirati samo u odjeljku ploče prilagođenog izgleda radne površine.
Kada omogućite widget Akcije u prilagođenom izgledu radne površine, možete izvršiti sljedeće radnje:
- Upravljanje zapisima o aktivnostima – kliknite Prikaz/uređivanje zapisa aktivnosti da biste prikazali popis zapisa aktivnosti pridruženih pozivatelju.
- Pridruživanje CRM objekata – kliknite Pridruži zapisima aktivnosti da biste u zapis aktivnosti dodali CRM objekte kao što su vrsta poziva (dolazni ili izlazni), objekt poziva, bilješke o pozivima itd.
- Upravljanje incidentima – kliknite Stvori incident. Stvara se novi incident s unaprijed popunjenim detaljima pozivatelja. Možete izvršiti potrebna ažuriranja incidenta. Možete odabrati izmjenu vrste zapisa iz incidenta u slučaj, HR modula i tako dalje na temelju vaših zahtjeva. Da biste promijenili vrstu zapisa, izmijenite vrijednost svojstva typeOfRecord u konfiguraciji widgeta Akcije. Na primjer:
{ "comp": "md-tab-panel", "atributi": { "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" } } } }
- Dodavanje bilješki o pozivima uživo – dodatne informacije o pozivu možete snimiti u tekstno područje i završiti poziv. Te bilješke možete vidjeti dodane kao bilješke o pozivima u zapisu aktivnosti.
Promjena koda na ServiceNow
Skripta uključuje promjene-
Idite na navigator filtriranja i potražite
Skripta uključuje
.U odjeljku Korisničko sučelje sustava odaberite Sastavna skripta.
-
Filtriranje naziva i traženje
propUtils
. -
Promjena metode
UserGetSysId
U scenariju .Curent:
UserGetSysId: funkcija () { var opened_for; var user = novi GlideRecord("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if (user.next()) opened_for=user.sys_id; var grInt = novi GlideRecord('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); return sysid; },
Novi uzorak šifre za incident:
UserGetSysId: funkcija () { var opened_for; //Promjene povezane s incidentom var sysidlist = {}; var user = novi 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 = novi 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='Poziv primljen od '+ this.getParameter('value'); sysidlist.incsysid=inc.insert(); } } var grInt = novi GlideRecordSecure('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; vrati JSON.stringify(sysidlist); },
-
Idite na navigator filtriranja i potražite stranicu
korisničkog
sučelja.U odjeljku Korisničko sučelje sustava odaberite stranicekorisničkog sučelja.
-
Filtriranje naziva i traženje
AgentDesktop
. -
Promijenite
zaslon
Funkcija u skripti klijenta.Trenutna funkcija:
funkcija screenpop (callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = novi GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('value', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entitet: 'interakcija', upit: 'sys_id='+sysid });
Uzorak šifre za incident:
funkcija pop zaslona screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = novi GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('value', callerani); gaout.getXMLWait(); // For Incident-related change var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entitet: 'incident', upit: 'sys_ id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entitet: 'incident', upit: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid //'a2ba0ba62fd121106446cc96f699b6b8' }); }
Ako informacije o pozivatelju postoje u sustavu CRM, a s tim je kontaktom već otvoren novi incident, aplikacija otvara incident inprogress
Ako informacije o pozivatelju ne postoje u sustavu CRM, aplikacija otvara novi incident
Ako informacije o pozivatelju postoje u sustavu CRM, aplikacija otvara novi incident s unaprijed ispunjenim detaljima
Pregled
Ovaj slučaj upotrebe detaljno opisuje postupak dodavanja dodatnog stupca u tablicu ServiceNow - webexcc_imp_activity i stvorite sn_openframe_phone_log nakon instalacije Webex CC za ServiceNow CRM poveznik.
Prema zadanim postavkama tablica sadrži određena polja i vrijednosti sustava izvan okvira.
Možete stvoriti više varijabli specifičnih za poslovanje (CAD varijable) unutar dizajnera tijeka WebexCC-a i dodati CAD varijable unutar zapisnika aktivnosti nakon poziva ServiceNow, kao i zadržati ih na podacima tablice aktivnosti nakon poziva.
Ovo je samo referentna dokumentacija - i pokazuje kako to učiniti za uzorak CAD varijable pod nazivom Ime kupca koja pohranjuje ime kupca unutar IVR i to objavljuje na ServiceNow.
Očekuje se da će partner+ klijent ServiceNow programeri konfigurirati i upravljati ovom konfiguracijom jer je to prilagodba postojećeg poveznika.
Cisco nudi samo tehnike prilagodbe i proširenja priključka.
Od ovog članka, Cisco tim je potvrdio podršku za dodavanje CAD varijable u Dnevnik aktivnosti i tablicu aktivnosti koristeći tehniku opisanu u nastavku:
Dodaj stupac u WebexCC IMP aktivnost
-
Uredite tablicu u verziji serviceNow za razvojne inženjere.
-
Idite na navigator filtriranja i potražite studio.
Odaberi
Webex Contact Center
ili
-
Izaberite stavku
WebexCC IMP aktivnost
stol -
Dodajte novi stupac, na primjer,
Ime klijenta
Dodaj stupac u telefonski zapisnik
-
Uredite tablicu telefonskog zapisnika.
-
Dodajte novi stupac, na primjer,
Ime klijenta
.
Mapa transformacije aktivnosti WebexCC-a
Dodajte novi stupac, na primjer, Ime klijenta
Mapiranje polja.
Personalizacija stupaca popisa
Kao što Service Now preporučuje, promijenite akciju Odabir iz stvori u zanemari.
Konfiguriranje popisa telefonskih zapisnika
Idi na skriptu Uključi
Dodavanje samo jednog retka webexcc.u_customername=actInfo.CustomerName
U propUtils.
Ogledna skripta
Pogledajte redak: webexcc.u_customername=actInfo.CustomerName; s popratnim komentarom.
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'); povratak JSON.stringify(webexccprop); }, UserGetSysId: funkcija () { var opened_for; var korisnik = novi GlideRecord("sys_user"); user.addQuery(this.getParameter('polje'),this.getParameter('value')); user.query(); ako (user.next()) opened_for=user.sys_id;//return user.sys_id; inače // povrat null; var grInt = novi GlideRecord ('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.insert(); Vrati Sysid; }, setWebexcctable: funkcija () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = novi 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; Ova linija je Dodana - da biste je snimili u Evidenciju aktivnosti webexcc.u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); Aktivnosti na zapisu o incidentima; var actInfoString =this.getParameter('actInfo'); var suser = novi GlideRecordSecure("sys_user"); suser.addQuery("telefon", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = novi 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(); } } povratna sys_id; }, vrsta: 'propUtils' });
Stvaranje CAD varijable u dizajneru toka
Dodavanje CAD varijable izgledu radne površine
Primjer
"CadName1:SnowField1,CadName2:SnowField2" CadName1 je CustomerName SnowField1 se također koristi kao CustomerName koji je dio uzorka scirpt prikazan iznad "actInfo.CustomerName".
Pokazni snimke zaslona
Pogledajte novododanu CAD varijablu u tablici WebexCC aktivnost.
Izrada CAD varijable za Dizajner toka
Hitnost incidentaUtjecaj incidenta
Ažuriranje skripte Service Now
Ažuriranja skripte obuhvaćaju
-
Idite na navigator filtriranja i potražite skriptu uključuje
U odjeljku Korisničko sučelje sustava odaberite mogućnost Uključuje skriptu.
-
Filtrirajte naziv pomoću
propUtils
. -
Promjena metode
UserGetSysId
U polju Skripta .Trenutna skripta:
UserGetSysId: funkcija () { var opened_for; var user = novi GlideRecord("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if (user.next()) opened_for=user.sys_id; var grInt = novi GlideRecord('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); return sysid; },
Novi uzorak šifre za incident:
UserGetSysId: funkcija () { var opened_for; var sysidlist = {}; var user = novi 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 = novi 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='Poziv primljen od '+ this.getParameter('value'); sysidlist.incsysid=inc.insert(); } } var grInt = novi GlideRecordSecure('interakcija'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; vrati JSON.stringify(sysidlist);//sysid; },
-
Idite na navigator filtriranja i potražite
stranice korisničkog sučelja
.U odjeljku Korisničko sučelje sustava odaberite mogućnost Stranice korisničkog sučelja .
-
Filtrirajte stranice korisničkog sučelja s nazivom i potražite
agentdesktop
. -
Promijenite
zaslon
U polju skripte.Trenutna funkcija:
funkcija pop zaslona screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = novi GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('value', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entitet: 'interakcija', upit: 'sys_id='+sysid }); }
Uzorak šifre za incident:
funkcija screenpop (callerani,callSessionInfo) { var Impact=3; if(callSessionInfo.callAssociatedData.Impact != null &&& callSessionInfo.callAssociatedData.Impact != nedefinirano) { 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 = novi GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('vrijednost', callerani); gaout.addParam('IncUrgency', IncUrgency); gaout.addParam('Utjecaj', Utjecaj); gaout.getXMLWait(); var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entitet: 'incident', upit: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); } else{ openFrameAPI.openServiceNowForm({ entitet: 'incident', upit: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); }
Ako podaci o pozivatelju postoje u sustavu CRM, a nema novog incidenta ili incidenta s inprogressom, aplikacija otvara novi incident
Promjena koda na ServiceNow
Dodavanje novih stupaca u WebexCC IMP aktivnost
stol
Otvorite prozor WebexCC IMP aktivnoststol Dodavanje novog stupca - Broj interakcijaNumber Dodavanje novog stupca - IncidentNumber
Kliknite na Ažuriraj.
Dodavanje novih stupaca u Telefonski zapisnik
stol
Otvorite prozor Telefonski zapisnik
stol
Mapa transformacije aktivnosti WebexCC-a
Otvori Transformiraj kartu
Iz navigatora filtra
Kliknite na TransformMap aktivnosti WebexCC-a
Kliknite Ažuriraj.
Promjene skripte uključuju
-
Idite na navigator filtriranja i u okvir za pretraživanje unesite "script includes".
U odjeljku Korisničko sučelje sustava odaberite Sastavna skripta.
-
Filtriranje naziva pomoću
propUtils
. -
Promjena metode
setWebexcctable
.Novi ogledni kod za incident:
setWebexcctable: funkcija () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = novi GlideRecordSecure(gs.getProperty('webexccactivitytable')); webexcc.addQuery("u_callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { //Aktivnosti na zapisu incidenta; //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']; izbrišite actInfo['incident_sys_id']; if( interactionsysid!= null && interactionsysid != nedefinirano){ var inte = novi GlideRecordSecure('interakcija'); //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 = novi 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 = novi GlideRecordSecure("sys_user"); suser.addQuery("telefon", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = novi GlideRecordSecure('incident'); inc.addQuery('caller_id', suser.sys_id); inc.addQuery('state','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(actInfo,null,2); inc.comments =jsonPretty; inc.update(); } } } webexcc.u_ani = actInfo.ani; webexcc.u_dnis =actInfo.dnis; webexcc.u_queuename =actInfo.queuename; webexcc.u_wrapuptime =actInfo.wrapuptime; webexcc.u_callduration =actInfo.CallDurationInSeconds; webexcc.u_ringingtime =actInfo.ringingtime; webexcc.u_activitydate =actInfo.ActivityDate; webexcc.u_callobject =actInfo.CallObject; webexcc.u_calltype =actInfo.CallType; webexcc.u_calldisposition=actInfo.CallDisposition; webexcc.u_incidentnumber=incnum; webexcc.u_interactionsnumber=intenum; sys_id=webexcc.insert(); } vrati sys_id; },
Promjene načina na stranicama korisničkog sučelja
-
Idite na navigator filtriranja i potražite
Stranice korisničkog sučelja
U odjeljku Korisničko sučelje sustava odaberite mogućnost Stranice korisničkog sučelja.
-
Filtrirajte stranice korisničkog sučelja s nazivom i potražite agentdesktop
.
-
Promijenite
nowActivities i screenpop
U skripti.Trenutna funkcija:
funkcija nowActivities(actInfo, ani) { var gaout = novi GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'setWebexcctable'); gaout.addParam('actInfo', JSON.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML(SetCCsysId); }
Uzorak šifre za incident:
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 = novi 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 = novi GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('polje', 'telefon'); gaout.addParam('value', callerani); gaout.getXMLWait(); // var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entitet: 'incident', upit: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entitet: 'incident', upit: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); }
Rezultati nakon ažuriranja
Sljedeće prilagodbe primjenjuju se na verzije 1.0.5 i novije. Za prilagodbe za novije verzije 1.0.7 i novije slijedite gore navedene korake.
Prilagodba # 1 – dodavanje prilagođenih poslovnih pravila za slučajeve korištenja tijeka poziva
Stvaranje novog zapisa incidenata za svaki pozivZa svaki novi poziv u WebexCC CRM poveznik u ServiceNow, stvorite novi zapis incidenta.
Traženje poslovnih pravila na navigatoru filtriranja
Kliknite na Novi.
Uzorak šifre za referencu:
funkcija customCTI() { var URL = null; naziv var = 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 = ''; prikaz vara = 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("ime", ime); } ako (userID == null && telefon != null && telefon != '') { 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; povratni URL; } (opis funkcije) UserGetSysId(polje, vrijednost) { var user = novi GlideRecord("sys_user"); user.addQuery(polje, vrijednost); user.query(); ako (user.next()) vrati user.sys_id; inače vrati null; }
Ogledna konfiguracija poslovnog pravila
Omogući klijentski poziv
Integracija računalne telefonije (CTI) Obrada za incident označena je kao Istinita.
Ažurirajte URL screenpopa prilagođenim pravilom CTI" cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="
Poziva se sysparm_cti_rule =name u kojem je 'naziv' naziv funkcije CTI Obrada umjesto korištenja zadane skripte.
Definirajte funkciju u unosu sys_script označenom za klijenta koji se može nazvati.
Ako morate umetnuti, ažurirati ili izbrisati bilo koji GlideRecords u funkciji, pozovite zasebnu funkciju koja se ne može klijentirati za izvođenje ažuriranja.
Da bi skripta bila omogućena za klijentski poziv, morate potvrditi okvir koji se može pozvati klijent na obrascu koji se prikazuje kada se prikaže sys_script unos.
Potvrdni okvir koji je moguće pozvati klijenta ne prikazuje se prema zadanim postavkama. Za pregled morate izmijeniti polja koja se prikazuju na obrascu pomoću ikone zupčanika i mehanizma kante za bljuzgavicu.
Prilagodba # 2 - Dodavanje CAD varijable u Webex tablicu aktivnosti Kontaktnog centra
PregledOvaj članak detaljno opisuje postupak dodavanja dodatnog stupca u tablicu ServiceNow - webexcc_activity koji se stvara nakon instalacije Webex CC za ServiceNow CRM poveznik.
Prema zadanim postavkama tablica sadrži gotova sistemska polja i vrijednosti.
Potencijalno možete stvoriti više varijabli specifičnih za poslovanje (CAD varijable) unutar dizajnera tijeka WebexCC-a i dodati te CAD varijable unutar zapisnika aktivnosti nakon poziva ServiceNowi zadržati ih na podacima tablice aktivnosti nakon poziva.
-
Ovo je samo referentna dokumentacija - i pokazuje kako to učiniti za uzorak CAD varijable pod nazivom Ime kupca koja pohranjuje ime kupca unutar IVR i to objavljuje na ServiceNow.
-
Partner+ klijent ServiceNow programeri konfigurirat će i upravljati ovom konfiguracijom jer je to prilagodba postojećeg poveznika.
-
Cisco će pružiti samo tehnike kako prilagoditi i proširiti priključak.
-
Od ovog članka, Cisco tim je potvrdio podršku za dodavanje CAD varijable u dnevnik aktivnosti i tablicu aktivnosti koristeći tehniku opisanu u nastavku.
Uredite tablicu u verziji serviceNow za razvojne inženjere.
Idite u
.Odaberite tablicu Aktivnost WebexCC-a.
Na primjer,CustomerName .
Odaberite izgled popisa za WebexCC aktivnost.
Ovaj korak nije potreban ako koristite XML Update Set - potrebno je dodati samo jedan redak "webexcc.u_customername=actInfo.CustomerName" u propUtils.
Ogledna skripta
Pogledajte redak s:webexcc.u_customername=actInfo.CustomerName; s popratnim komentarom.
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'); povratak JSON.stringify(webexccprop); }, setWebexcctable: funkcija () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = novi 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; // Ova linija je dodana - da biste je snimili u webexcc-u Dnevnika aktivnosti. u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); Aktivnosti na zapisu o incidentima; var actInfoString =this.getParameter('actInfo'); var suser = novi GlideRecordSecure("sys_user"); suser.addQuery("telefon", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = novi 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(glumački niz),null,2); inc.comments =jsonPretty; inc.update(); } } } povratna sys_id; }, vrsta: 'propUtils2' });
Uređivanje stranice korisničkog sučelja s novim nazivom skripteStvaranje CAD varijable u dizajneru toka
Dodavanje CAD varijable izgledu radne površine
Pokazni snimke zaslona
Pogledajte novododanu CAD varijablu u tablici WebexCC aktivnost.