Preduvjeti

Prije integracije Webex kontakt centra s Konzolom ServiceNow CRM, provjerite imate li sljedeće:

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 Skupovi skupova ažuriranja sustava> Postavke ažuriranja da biste se obvezali.

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 sys_properties.list i pritisnite enter.

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 u gornjem lijevom kutu prozora idite na Grupe u odjeljku Sigurnost sustava.

  2. Stvorite novu korisničku grupu ili upotrijebite postojeću.

  3. Kliknite Uredi.

  4. Potražite sn_openframe_user u odjeljku Zbirka i premjestite je u svoju korisničku grupu.

  5. Kliknite Spremi.

  6. Dodajte korisnika kao člana grupe.

1

U polju Navigator filtra idite na OpenFrame > Configurations.

2

Kliknite na Novi.

3

Unesite sljedeća svojstva za URL:

  • Naziv: Webex kontaktni centar za radnu površinu

  • Naziv: Webex kontaktni centar

  • Širina: 550 (preporučeno)

  • Visina: 600 (preporučeno)

4

Desno od polja URL-a kliknite gumb Zaključaj i dodajte agentdesktop.do kao URL. (Učinite ovaj korak kako biste konfiguraciju usmjerili na stranicu korisničkog sučelja)

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 Dodjela resursa > izgled 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 Radni prostor servisnih operacija.

ServiceNow početna stranica s Webex Contact Center Agent Desktop integriranom s ServiceNow.

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 .

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 .

  1. Na stranici System Properties (Svojstva sustava) kliknite na x_caci_webexcc.webexccactivitytable.

  2. Prema potrebi promijenite polje Vrijednost .

7

(Neobavezno) Dodajte grupe korisnika na sljedeće načine:

  1. U polju Navigator filtra u gornjem lijevom kutu prozora idite na Grupe u odjeljku Sigurnost sustava.

  2. Kliknite Uređivanje i dodajte sljedeće uloge:

    • sn_openframe_user

    • x_caci_webexcc.agent

    • agent_workspace_user

    • x_caci_webexcc.webexcc_imp_activity_user

    • x_caci_webexcc.webex_contact_center

1

Iz polja Navigator filtra idite na OpenFrame > Configurations.

2

Kliknite na Novi.

3

Unesite sljedeća svojstva za URL:

  • Naziv: Webex radnoj površini kontaktnog centra

  • Naslov: Webex Kontakt centar

  • Širina: 550 (preporučeno)

  • Visina: 600 (preporučeno)

4

Desno od polja URL-a kliknite gumb Zaključaj i dodajte x_caci_webexcc_agentdesktop.do kao URL. (Učinite ovaj korak do točke konfiguracije na stranici korisničkog sučelja)

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 operacija servisa.

Početna stranica ServiceNowa s Agent Desktop Webex kontakt centra integrirana sa servisom ServiceNow.

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 Raspored radne površine dodjele resursa >.

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 operacija servisa.

Početna stranica ServiceNowa s Agent Desktop Webex kontakt centra integrirana sa servisom ServiceNow.

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 zarezom"ref_contributions=show_phone,.

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 .

Početna stranica ServiceNowa s Agent Desktop Webex kontakt centra integrirana sa servisom ServiceNow.

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 operacija servisa.

Početna stranica ServiceNowa s Agent Desktop Webex kontakt centra integrirana sa servisom ServiceNow.

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
  1. Idite na navigator filtriranja i potražite Skripta uključuje.

    U odjeljku Korisničko sučelje sustava odaberite Sastavna skripta.

  2. Filtriranje naziva i traženje propUtils.

  3. 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); },

Promjena metode na stranicama korisničkog sučelja
  1. Idite na navigator filtriranja i potražite stranicu korisničkogsučelja.

    U odjeljku Korisničko sučelje sustava odaberite stranicekorisničkog sučelja.

  2. Filtriranje naziva i traženje AgentDesktop.

  3. 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

  1. Uredite tablicu u verziji serviceNow za razvojne inženjere.

  2. Idite na navigator filtriranja i potražite studio.

    Odaberi Webex Contact Center

    ili

  3. Izaberite stavku WebexCC IMP aktivnost stol

  4. Dodajte novi stupac, na primjer, Ime klijenta

Dodaj stupac u telefonski zapisnik

  1. Uredite tablicu telefonskog zapisnika.

  2. 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 incidenta

Utjecaj incidenta

Ažuriranje skripte Service Now

Ažuriranja skripte obuhvaćaju

  1. Idite na navigator filtriranja i potražite skriptu uključuje

    U odjeljku Korisničko sučelje sustava odaberite mogućnost Uključuje skriptu.

  2. Filtrirajte naziv pomoću propUtils.

  3. 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; },

Promjena metode na stranicama korisničkog sučelja
  1. 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 .

  2. Filtrirajte stranice korisničkog sučelja s nazivom i potražite agentdesktop.

  3. 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 aktivnost stol

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

Dodavanje novog stupca - Broj interakcijaNumber

Dodavanje novog stupca - IncidentNumber

Mapa transformacije aktivnosti WebexCC-a

Otvori Transformiraj kartu Iz navigatora filtra

Kliknite na TransformMap aktivnosti WebexCC-a

Dodaj novo – za kartu brojeva interakcije

Dodaj novo - za kartu broja incidenta

Kliknite Ažuriraj.

Promjene skripte uključuju

  1. Idite na navigator filtriranja i u okvir za pretraživanje unesite "script includes".

    U odjeljku Korisničko sučelje sustava odaberite Sastavna skripta.

  2. Filtriranje naziva pomoću propUtils.

  3. 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

  1. 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.

  2. Filtrirajte stranice korisničkog sučelja s nazivom i potražite agentdesktop .

  3. 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 poziv

Za svaki novi poziv u WebexCC CRM poveznik u ServiceNow, stvorite novi zapis incidenta.

  1. Traženje poslovnih pravila na navigatoru filtriranja

  2. 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

  3. Omogući klijentski poziv

    Integracija računalne telefonije (CTI) Obrada za incident označena je kao Istinita.

  4. Ažurirajte URL screenpopa prilagođenim pravilom CTI" cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

Primjer

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.

Reference

Prilagodba # 2 - Dodavanje CAD varijable u Webex tablicu aktivnosti Kontaktnog centra

Pregled

Ovaj č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.

Dodaj stupac aktivnosti WebexCC-a
  1. Uredite tablicu u verziji serviceNow za razvojne inženjere.

  2. Idite u Studio > Webex Kontakt centar.

  3. Odaberite tablicu Aktivnost WebexCC-a.

  4. Na primjer,CustomerName .

  5. Odaberite izgled popisa za WebexCC aktivnost.

Stvaranje nove skripte uključuje

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 skripte

Stvaranje CAD varijable u dizajneru toka

Dodavanje CAD varijable izgledu radne površine

Pokazni snimke zaslona

Pogledajte novododanu CAD varijablu u tablici WebexCC aktivnost.