Forutsetninger

For øyeblikket gjelder denne funksjonen bare for agenter.

Før du integrerer Webex Contact Center med ServiceNow CRM-konsollen, må du kontrollere at du har følgende:

Følg én av de to metodene nedenfor:

For utviklerforekomster anbefaler vi at du følger trinnene under veiledningen for utviklerforekomster.

Hvis du eier en bedriftslisensiert forekomst, følger du retningslinjene for bedriftslisensierte forekomster.

Vi anbefaler ikke å blande den bedriftslisensierte appen med utviklersandboksforekomster.

Følgende deler beskriver trinnene for å installere ServiceNow-koblingen for utviklerforekomster.

1

Logg på ServiceNow-utviklerportalkontoen din og åpne Administrasjon -konsollen.

2

Fra Min forekomst -området på Konto -menyen klikker du på Start bygning.

3

I utviklerforekomsten navigerer du til Plugin-moduler -feltet øverst til venstre i vinduet fra Filternavigator.

4

Søk etter Openframe-programtillegget som har tittelen Openframe. Du må kanskje bla gjennom listen.

5

Klikk på Installer for å installere Openframe-plugin-modulen.

6

Klikk på Aktiver i dialogboksen Aktiver plugin.

7

Når plugin-aktiveringen er fullført, klikker du på Lukk og last inn skjema på nytt i dialogboksen Plugin-aktivering .

8

Hvis du vil bekrefte aktiveringen av plugin-modulen, navigerer du til OpenFrame -feltet øverst til venstre i vinduet Filternavigator.

9

Klikk på Konfigurasjoner og kontroller at OpenFrame-programtillegget vises i listen OpenFrame-konfigurasjoner .

1

Last ned den nyeste XML-filen for systemoppdatering som er tilgjengelig på github repo på denne plasseringen: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Filnavn: webexcc-servicenow-update-setV(X).xml

2

I din ServiceNow-forekomst navigerer du fra feltet Filternavigator øverst til venstre i vinduet til Systemoppdateringssett > Oppdateringssett til å forplikte.

3

Klikk på koblingen Importer oppdateringssett fra XML .

4

Klikk på Velg fil, velg XML-filen for systemoppdateringssett, og klikk deretter på Last opp.

Oppdateringssettet vises i listen Hentet oppdateringssett og er i tilstanden Lastet .
5

Fra listen Hentet oppdateringssett klikker du på filnavnet (koblingen) for å åpne oppdateringssettet.

6

Klikk på Forhåndsvis oppdateringssett øverst til høyre i vinduet for å se etter problemer i oppdateringssettet.

7

Klikk på Lukk i dialogboksen Oppdater forhåndsvisning av innstilling når forhåndsvisningen er fullført.

8

Klikk på Utfør oppdateringssett.

9

Klikk på Lukk i dialogboksen Oppdateringssett når oppdateringssettet er fullført.

1

I feltet Filternavigator øverst til venstre i vinduet skriver du inn sys_properties.list og trykker på Enter.

2

På siden Systemegenskaper sorterer du egenskapene etter oppdatert dato. Sørg for at du kan se følgende egenskaper for Webex Contact Center:

3

Klikk agentdesktop_url for å åpne siden System Propertyagentdesktop_url .

4

I Verdi -feltet skriver du inn URL-adressen til Webex Contact Center Desktop i henhold til driftsområdet.

5

Klikk på Oppdater for å lagre endringene.

6

(Valgfritt) Hvis du vil endre navnet på aktivitetstabellen, redigerer du egenskapene for webexccactivitytable etter behov.

På siden Systemegenskaper klikker du på webexccactivitytable.

Endre Verdi -feltet etter behov.

7

(Valgfritt) Legg til brukergrupper på følgende måter:

  1. I feltet Filternavigator øverst til venstre i vinduet navigerer du til Grupper under Systemsikkerhet.

  2. Opprett en ny brukergruppe eller bruk en eksisterende.

  3. Klikk på Rediger.

  4. Søk etter sn_openframe_user under Samling og flytt den til brukergruppen din.

  5. Klikk på Lagre.

  6. Legg til brukeren som gruppemedlem.

1

Fra feltet Filternavigator navigerer du til OpenFrame > Konfigurasjoner.

2

Klikk på Ny.

3

Angi følgende egenskaper for URL-adressen:

  • Navn: Webex Contact Center-skrivebord

  • Tittel: Webex kontaktsenter

  • Bredde: 550 (Anbefalt)

  • Høyde: 600 (Anbefalt)

4

Til høyre for URL -feltet klikker du på Lås -knappen og legger til agentdesktop.do som URL-adresse. (Gjør dette trinnet for å peke konfigurasjonen til brukergrensesnittsiden)

5

(Valgfritt) Velg bruker-/agentgruppen(e) for å tilordne konfigurasjonen.

6

Klikk på Send inn. URL-adressen vises som en kobling.

7

Før du prøver å bruke OpenFrame-telefonen, må du sørge for at du laster opp JSON-filen for ServiceNow-egendefinert skrivebordsoppsett til Webex Contact Center Management Portal. Hvis du vil ha mer informasjon, kan du se Konfigurere ServiceNow-skrivebordsoppsettet på Webex Contact Center.

1

Last ned skrivebordsoppsettet for ServiceNow fra https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

2

Oppdater om nødvendig egenskapene i filen Skrivebordsoppsett.

3

Gå til administrasjonsportalen for Webex Contact Center.

4

Velg Klargjøring > Skrivebordsoppsett i navigasjonsfeltet i Management Portal.

5

Klikk på Nytt oppsett og skriv inn detaljene for skrivebordsoppsettet.

6

Last opp JSON-filen for ServiceNow Desktop Layout.

7

Klikk på Lagre for å lagre konfigurasjonen.

Du kan nå starte Webex Contact Center Desktop i ServiceNow-konsollen.

8

Fra feltet Filternavigator navigerer du til Arbeidsområde for tjenesteoperasjoner.

ServiceNow-hjemmesiden med Webex Contact Center Agent Desktop integrert med ServiceNow.

Følgende deler beskriver trinnene for å installere ServiceNow-koblingen for lisensierte bedriftsforekomster.

1

Logg på ServiceNow-utviklerportalkontoen din og åpne Administrasjon -konsollen.

2

Fra Min forekomst -området på Konto -menyen klikker du på Start bygning.

3

I utviklerforekomsten navigerer du til Plugin-moduler -feltet øverst til venstre i vinduet fra Filternavigator.

4

Søk etter Openframe-programtillegget som har tittelen Openframe. Du må kanskje bla gjennom listen.

5

Klikk på Installer for å installere Openframe-plugin-modulen.

6

Klikk på Aktiver i dialogboksen Aktiver plugin.

7

Når plugin-aktiveringen er fullført, klikker du på Lukk og last inn skjema på nytt i dialogboksen Plugin-aktivering .

8

Hvis du vil bekrefte aktiveringen av plugin-modulen, navigerer du til OpenFrame -feltet øverst til venstre i vinduet Filternavigator.

9

Klikk på Konfigurasjoner og kontroller at OpenFrame-programtillegget vises i listen OpenFrame-konfigurasjoner .

1

I feltet Filternavigator øverst til venstre i vinduet skriver du inn sys_properties.list.

2

På siden Systemegenskaper sorterer du egenskapene etter oppdatert dato. Sørg for at du kan se følgende egenskaper for Webex Contact Center:

3

Klikk agentdesktop_url for å åpne siden System Propertyagentdesktop_url .

4

I Verdi -feltet skriver du inn URL-adressen til Webex Contact Center Desktop i henhold til driftsområdet.

5

Klikk på Oppdater for å lagre endringene.

6

(Valgfritt) Hvis du vil endre navnet på aktivitetstabellen, redigerer du egenskapene x_caci_webexcc.webexccactivitytable etter behov.

  1. På siden Systemegenskaper klikker du på x_caci_webexcc.webexccactivitytable.

  2. Endre Verdi -feltet etter behov.

7

(Valgfritt) Legg til brukergrupper på følgende måter:

  1. I feltet Filternavigator øverst til venstre i vinduet navigerer du til Grupper under Systemsikkerhet.

  2. Klikk på Rediger og legg til følgende roller:

    • sn_openframe_user

    • x_caci_webexcc.agent

    • agent_workspace_user

    • x_caci_webexcc.webexcc_imp_activity_user

    • x_caci_webexcc.webex_contact_center

1

Fra feltet Filternavigator navigerer du til OpenFrame > Konfigurasjoner.

2

Klikk på Ny.

3

Angi følgende egenskaper for URL-adressen:

  • Navn: Webex Contact Center-skrivebord

  • Tittel: Webex kontaktsenter

  • Bredde: 550 (Anbefalt)

  • Høyde: 600 (Anbefalt)

4

Til høyre for URL -feltet klikker du på Lås -knappen og legger til x_caci_webexcc_agentdesktop.do som URL-adresse. (Gjør dette trinnet for å peke konfigurasjonen til brukergrensesnittsiden)

5

(Valgfritt) Velg bruker-/agentgruppen(e) for å tilordne konfigurasjonen.

6

Klikk på Send inn. URL-adressen vises som en kobling.

7

Fra feltet Filternavigator navigerer du til Arbeidsområde for tjenesteoperasjoner.

ServiceNow-hjemmesiden med Webex Contact Center Agent Desktop integrert med ServiceNow.

8

(Valgfritt) I Brukergruppe liste, flytt brukergruppene som har tilgang til Webex Contact Center Desktop, fra Tilgjengelig til Valgt.

9

Før du prøver å bruke OpenFrame-telefonen, må du sørge for at du laster opp JSON-filen for ServiceNow-egendefinert skrivebordsoppsett til Webex Contact Center Management Portal. Hvis du vil ha mer informasjon, kan du se Konfigurere ServiceNow-skrivebordsoppsettet på Webex Contact Center.

1

Last ned skrivebordsoppsettet for ServiceNow fra https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

2

Oppdater om nødvendig egenskapene i filen Skrivebordsoppsett.

3

Gå til administrasjonsportalen for Webex Contact Center.

4

Velg Klargjøring > Skrivebordsoppsett i navigasjonsfeltet i Management Portal.

5

Klikk på Nytt oppsett og skriv inn detaljene for skrivebordsoppsettet.

6

Last opp JSON-filen for ServiceNow Desktop Layout.

7

Klikk på Lagre for å lagre konfigurasjonen.

Du kan nå starte Webex Contact Center Desktop i ServiceNow-konsollen.

8

Fra feltet Filternavigator navigerer du til Arbeidsområde for tjenesteoperasjoner.

ServiceNow-hjemmesiden med Webex Contact Center Agent Desktop integrert med ServiceNow.

1

Fra feltet Filternavigator går du til Hendelser > Åpne hendelse.

2

Høyreklikk på anropsfeltet, og klikk på Konfigurer ordbok.

3

Legg til kommadelte attributter «ref_contributions=show_phone,.

Du kan nå begynne å bruke Webex Contact Center Desktop i ServiceNow-konsollen.

4

Fra feltet Filternavigator navigerer du til Arbeidsområde for tjenesteoperasjoner.

ServiceNow-hjemmesiden med Webex Contact Center Agent Desktop integrert med ServiceNow.

Vi støtter for øyeblikket ikke pålogging til Agent Desktop ved hjelp av alternativet Desktop (WebRTC).

Agent Desktop i ServiceNow-konsollen

Før du foretar utgående anrop, må du sørge for at du gjør følgende:

  • Opprett inngangspunktet for oppringing og sett opp en strategi for oppringing.

  • Aktiver ANI for å ringe ut for agentprofilen.

  • Angi oppringings-ANI til en oppringingsnummer-til-inngangspunkt-tilordning.

Hvis du vil ha mer informasjon, kan du se kapitlet Klargjøring i Oppsett og administrasjonsguide for Cisco Webex Contact Center.

Fra feltet Filternavigator navigerer du til Arbeidsområde for tjenesteoperasjoner.

ServiceNow-hjemmesiden med Webex Contact Center Agent Desktop integrert med ServiceNow.

Hvis du vil ha informasjon om hvordan du bruker skrivebordet, kan du se fanen Agent i hjelp til Webex Contact Center.

Oversikt

Denne artikkelen dekker flere måter å tilpasse forretningsreglene dine for ServiceNow CRM-kontakten på. Den beskriver hvordan du kan tilpasse brukstilfellene basert på forretningsregler som er spesifikke for ServiceNow.

Kunden må selv administrere disse brukstilfellene på ServiceNow. Konfigurasjonen er spesifikk for ServiceNow og ikke Webex Contact Center-programvare eller -ekspertise.

Dette er en referansedokumentasjon som hjelper med å endre forretningsreglene. ServiceNow-utviklerne vil opprette og administrere forretningsreglene og gi støtte.

Cisco gir bare eksempeldokumentasjon.

Avsnittene nedenfor gir detaljer om hvordan du konfigurerer, aktiverer og administrerer miniprogram for handlinger for utviklere og bedriftsforekomster.

Fullfør oppdateringssettet for handlinger-widget

For de lisensierte bedriftsforekomstene installerer du den nyeste Webex Contact Center-appen fra ServiceNow-butikken.

Hvis du vil konfigurere handlingsminiprogrammet for utviklerforekomster, laster du ned den nyeste XML-filen for systemoppdatering som er tilgjengelig på github repo på dette stedet: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. Filnavnet er webexcc-servicenow-update-setv7-1-ActionsWidget.xml. Hvis du vil utføre oppdateringssettet for Handlinger-widgeten, kan du se trinn 2 til 9 i Utføre oppdateringssettet.

Aktiver widget for handlinger

Bruk egenskapen isWidgetDisplayEnabled for å aktivere Handlinger-widget. Du må ikke endre denne egenskapens verdi i delen av det egendefinerte skrivebordsoppsettet. Egenskapen er alltid satt til false i delen av det egendefinerte skrivebordsoppsettet. Du bør bare oppdatere egenskapets verdi i paneldelen av det egendefinerte skrivebordsoppsettet.

Når du aktiverer handlingswidgeten i det egendefinerte skrivebordsoppsettet, kan du utføre følgende handlinger:

  • Administrer aktivitetsoppføringer – Klikk på Vis/rediger aktivitetsoppføring for å vise listen over aktivitetsoppføringer som er knyttet til innringeren.
  • Knytt CRM-objekter – Klikk på Knytt til aktivitetsoppføringer for å legge til CRM-objekter som anropstype (innkommende eller utgående), anropsobjekt, anropsmerknader og så videre til aktivitetsoppføringen.
  • Administrer hendelser – Klikk på Opprett hendelse. En ny hendelse opprettes med innringerdetaljene forhåndsutfylt. Du kan gjøre de nødvendige oppdateringene av hendelsen. Du kan velge å endre registreringstypen fra hendelse til sak, HR-modul osv. basert på dine krav. Hvis du vil endre oppføringstypen, endrer du verdien til egenskapen typeOfRecord i konfigurasjonen av Handlinger-kontrollprogrammet. For eksempel:
    { "comp": "md-tab-panel", "attributter": { "slot": "panel", "class": "widget-panel" }, "children": [ { "comp": "agentx-custom-desktop", "script": "https://cx-crmconnector.ciscoccservice.com/servicenow/v5/dist/index.js", "properties": { "isWidgetDisplayEnabled": sann, "typeOfRecord": "Create Incident" }, "wrapper": { "title": "SNOW Actions !", "maximizeAreaName": "app-maximize-area" } } ] }
  • Legg til anropsnotater i sanntid – Du kan fange opp tilleggsinformasjon om samtalen i tekstområdet og fullføre samtalen. Du kan se disse notatene lagt til som anropsnotater i aktivitetsoppføringen.

Kodeendring på ServiceNow

Skriptet Inkluderer endringer
  1. Gå til filternavigator og søk etter skript inkluderer.

    Velg Skriptet inkluderer under System-brukergrensesnitt.

  2. Filtrer Navn og søk etter propUtils.

  3. Endre metoden UserGetSysId i skriptet.

    Strømming:

    UserGetSysId: funksjon () { 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('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); return sysid; },

    Ny eksempelkode for hendelsen:

    UserGetSysId: funksjon () { var opened_for; //Hendelsesrelaterte endringer var sideliste = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if(user.next()) { opened_for= bruker.sys_id;//returner bruker.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; inkl.contact_type='telefon'; inkl.short_description='Anrop mottatt fra '+ this.getParameter('value'); sysidlist.incsysid=inc.insert(); } } var grInt = new GlideRecordSecure('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; return JSON.stringify(sysidlist); },

Metodeendring på brukergrensesnittsider
  1. Gå til filternavigatoren og søk etter UI-siden.

    Velg brukergrensesnitt under System-brukergrensesnitt.

  2. Filtrer Navn og søk etter agentskrivebord.

  3. Endre skjermpopup -funksjonen i klientskript.

    Gjeldende funksjon:

    // screen pop-funksjon 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(); openFrameAPI.openServiceNowForm({ entity: 'samhandling', spørring: 'sys_id='+sysid });

    Eksempelkode for hendelsen:

    // screen pop-funksjon 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(); // For hendelsesrelatert endring var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: «hendelse», spørring: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: «hendelse», spørring: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid //'a2ba0ba62fd121106446cc96f699b6b8' }); } }

Hvis anropsinformasjonen finnes i CRM, og det allerede er åpnet en ny hendelse med denne kontakten, åpner programmet oppstartshendelsen

Hvis anropsinformasjonen ikke finnes i CRM, åpner programmet en ny hendelse

Hvis anropsinformasjonen finnes i CRM, åpner programmet en ny hendelse med forhåndsfylte detaljer

Oversikt

Denne brukstilfellen beskriver prosessen med å legge til en ekstra kolonne i ServiceNow-tabellen – webexcc_imp_activity og opprette sn_openframe_phone_log Webex CC for ServiceNow CRM Connector ved installasjon.

Som standard inneholder tabellen visse systemfelt og verdier utenfor boksene.

Du kan opprette mer forretningsspesifikke variabler (CAD-variabler) i WebexCC Flow-designeren og legge til CAD-variablene i ServiceNow-aktivitetsloggen etter anrop, i tillegg til å beholde dette i tabelldataene etter anrop.

Dette er bare en referansedokumentasjon – og viser hvordan du gjør dette for en prøve CAD-variabel kalt Kundenavn som lagrer kundenavnet i IVR og legger dette inn på ServiceNow.

Det forventes at utviklerne av partner og kunde ServiceNow vil konfigurere og administrere denne konfigurasjonen, da det er en tilpasning til den eksisterende kontakten.

Cisco gir bare teknikkene for hvordan du kan tilpasse og utvide kontakten.

Fra og med denne artikkelen har Cisco-teamet validert støtte for å legge til CAD-variabel i aktivitetsloggen og aktivitetstabellen ved hjelp av teknikken som er beskrevet nedenfor:

Legg til kolonne i WebexCC IMP-aktivitet

  1. Rediger tabellen i utviklerversjonen av ServiceNow.

  2. Gå til filternavigatoren og søk etter studio.

    Velg Webex Contact Center

    eller

  3. Velg tabellen for WebexCC IMP-aktivitet

  4. Legg til en ny kolonne, for eksempel CustomerName

Legg til kolonne i telefonlogg

  1. Rediger telefonloggtabellen.

  2. Legg til en ny kolonne, for eksempel CustomerName.

Kart for transformering av WebexCC-aktivitet

Legg til en ny kolonne, for eksempel felttilordning av CustomerName .

Tilpass listekolonner

Som Service Now anbefaler, endrer du Choice-handlingen fra oppretting til ignorering.

Konfigurer telefonloggliste

Gå til skript Inkluder

Legg bare til én linje webexcc.u_customername=actInfo.CustomerName til propUtils.

Eksempelskript

Se linjen: webexcc.u_customername=actInfo.CustomerName; med en støttekommentar.

var propUtils = Class.create(); propUtils.prototype = Object.extendsObject(global.AbstractAjaxProcessor,{ getWebexccProp : funksjon () { 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'); returnere JSON.stringify(webexccprop); }, UserGetSysId : funksjon () { 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; // else // return null; var grInt = new GlideRecord('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); return sysid; }, setWebexcctable : funksjon () { 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.dnis; webexcc.queuename =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; // Denne linjen er lagt til – for å registrere den i aktivitetsloggen webexcc.u_customername=actInfo.Kundenavn; sys_id=webexcc.insert(); //Activities on Incident record; var actInfoString =this.getParameter('actInfo'); var suser = new GlideRecordSecure("sys_user"); suser.addQuery("phone", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id", suser.sys_id); inkl.orderByDesc ('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(actInfoString),null,2); inc.comments =jsonPretty; inc.update(); } } } return sys_id; }, type: 'propUtils' });

Opprett en CAD-variabel i flytdesigner

Legg til CAD-variabelen i skrivebordsoppsettet

Eksempel

"CadName1:SnowField1,CadName2:SnowField2" CadName1 er CustomerName SnowField1 brukes også som CustomerName som er en del av eksempelshowet ovenfor "actInfo.CustomerName".

Demonstrasjonsskjermbilder

Vis den nylig tillagte CAD-variabelen i WebexCC-aktivitetstabellen.

Opprett CAD-variabel for flytdesigner

Hastesituasjon

Påvirkning av hendelse

Skriptoppdatering for tjeneste nå

Oppdateringer av skriptet inkluderer

  1. Gå til filternavigatoren og søk etter skript inkluderer

    Velg alternativet Skript inkluderer under System-brukergrensesnitt.

  2. Filtrer Navnet med propUtils.

  3. Endre metoden UserGetSysId i Script -feltet.

    Gjeldende skript:

    UserGetSysId: funksjon () { 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('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); return sysid; },

    Ny eksempelkode for hendelsen:

    UserGetSysId: funksjon () { var opened_for; var sideliste = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if(user.next()) { opened_for= bruker.sys_id;//returner bruker.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; inkl.contact_type='phone'; inc.urgency=this.getParameter('IncUrgency'); inc.impact=this.getParameter('Impact'); inc.short_description='Anrop mottatt fra '+ this.getParameter('value'); sysidlist.incsysid=inc.insert(); } } var grInt = new GlideRecordSecure('interaction'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; return JSON.stringify(sysidlist);//sysid; },

En metodeendring på brukergrensesnittsider
  1. Gå til filternavigatoren og søk etter brukergrensesnittsider.

    Velg alternativet Brukergrensesnitt under System-brukergrensesnitt.

  2. Filtrer brukergrensesnittsidene etter Navn og søk etter agentskrivebord .

  3. Endre skjermpopup -funksjonen i skriptfeltet.

    Gjeldende funksjon:

    // screen pop-funksjon 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(); openFrameAPI.openServiceNowForm({ entity: 'samhandling', spørring: 'sys_id='+sysid }); }

    Eksempelkode for hendelsen:

    // screen pop-funksjon screenpop(callerani,callSessionInfo) { var Impact=3; if(callSessionInfo.callAssociatedData.Impact != null && callSessionInfo.callAssociatedData.Impact != udefinert) { Impact=callSessionInfo.callAssociatedData.Impact != udefinert) { IncUrgency=3; if(callSessionInfo.callAssociatedData.Urgency != udefinert) { IncUrgency=callSessionInfo.callAssociatedData.Urgency.value; } 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.addParam('IncUrgency', IncUrgency); gaout.addParam('Impact', Impact); gaout.getXMLWait(); // var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: «hendelse», spørring: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: «hendelse», spørring: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("skjermpopinteraction", JSON.stringify(sysObj)); }

Hvis anropsinformasjonen finnes i CRM, og det ikke er noen ny hendelse eller oppstart, åpner programmet en ny hendelse

Endre koden på ServiceNow

Legg til nye kolonner i tabellen for WebexCC IMP-aktivitet

Åpne tabellen for WebexCC IMP-aktivitet

Legg til en ny kolonne - Interaksjonsnummer

Legg til en ny kolonne – Hendelsesnummer

Klikk på Oppdater.

Legg til nye kolonner i tabellen Telefonlogg

Åpne tabellen Telefonlogg

Legg til en ny kolonne - Interaksjonsnummer

Legg til en ny kolonne – Hendelsesnummer

Kart for transformering av WebexCC-aktivitet

Åpne transformeringskart fra filternavigatoren

Klikk på WebexCC Activity TransformMap

Legg til nytt – for samhandlingsnummerkart

Legg til ny – for kart over hendelsesnummer

Klikk på Oppdater.

Endringer i skript inkluderer

  1. Gå til filternavigator og søk etter "skript inkluderer".

    Velg Skriptet inkluderer under System-brukergrensesnitt.

  2. Filtrer Navnet med propUtils.

  3. Endre metoden setWebexcctable.

    Ny eksempelkode for hendelse:

    settWebexcctable: funksjon () { 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=""; delete actInfo['interaction_sys_id']; slett actInfo['incident_sys_id']; if( interactionsysid!= null && interactionsysid != undefined){ var ikke = new GlideRecordSecure('interaction'); //inte.get('sys_id', interactionside ); ikke.addQuery('sys_id', interactionside ); ikke.query(); if (ikke.next()) { intenum=ikke.number; // ikke.setValue('state','Closed Complete'); ikke.work_notes='Oppdater tilstand til lukket.'; 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("phone", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new 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.ringetid; 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(); } retur sys_id; },

Metodeendringer på brukergrensesnittsider

  1. Gå til filternavigator og søk etter brukergrensesnittsider

    Velg alternativet Brukergrensesnitt under System-brukergrensesnitt.

  2. Filtrer brukergrensesnittsidene etter Navn og søk etter agentskrivebord.

  3. Endre funksjonen nowActivities og skjermpop i skriptet.

    Gjeldende funksjon:

    funksjon 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); }

    Eksempelkode for hendelsen:

    function nowActivities(actInfo, ani) { var sysObjstr = window.localStorage.getItem("screenpopinteraction"); if(sysObjstr != null && sysObjstr != undefinert) { 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); } funksjonsskjermpop(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: «hendelse», spørring: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: «hendelse», spørring: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("skjermpopinteraction", JSON.stringify(sysObj)); } 

Resultater etter oppdatering

Følgende tilpasninger gjelder for versjon 1.0.5 og nedenfor. For tilpasningene til de nyere versjonene 1.0.7 og nyere, følg trinnene ovenfor.

Tilpasning # 1 - Legg til egendefinerte forretningsregler for brukstilfeller for samtaleflyt

Opprett en ny hendelsesoppføring for hver samtale

Opprett en ny hendelsesoppføring for hvert nytt anrop til WebexCC CRM-kontakten i ServiceNow.

  1. Søke etter forretningsregler i filternavigatoren

  2. Klikk på Ny.

    Eksempelkode for referanse:

    funksjon customcti() { var url = null; var name = sysparm_caller_name; eid = sysparm_caller_id; var phone = sysparm_caller_phone; var taskID = sysparm_task_id; var fQuery = sysparm_query; if (fQuery == null) fQuery = ''; var view = sysparm_view; hvis (vis == 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", navn); } if (userID == null && phone != null && phone != '') { userID = UserGetSysId("phone", 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; } svar = url; return url; } funksjon UserGetSysId(felt, verdi) { var user = new GlideRecord("sys_user"); user.addQuery(felt, verdi); user.query(); hvis (user.next()) returnerer brukeren.sys_id; ellers returnerer null; }

    Eksempelkonfigurasjon av forretningsregelen

  3. Aktiver oppringbar klient

    Behandling av datamaskintelefoniintegrering (CTI) for hendelse er merket som Sann.

  4. Oppdater URL-adressen for skjermbildet med den egendefinerte CTI-regelen " cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

Eksempel

sysparm_cti_rule=navnet der «navn» er navnet på en funksjon skal brukes for CTI-behandling i stedet for å bruke standardskriptet.

Definer funksjonen i en sys_script oppføringsmerket klient som kan ringes opp.

Hvis du må sette inn, oppdatere eller slette noen GlideRecord(er) i funksjonen, må du ringe en separat funksjon som ikke kan ringes opp av klienten for å utføre oppdateringene.

Hvis du vil gjøre et skript klientoppringbar, må du merke av i avkrysningsboksen klientoppringbar på skjemaet som vises når sys_script oppføringen vises.

Avmerkingsboksen for klientoppringing vises ikke som standard. For å vise må du endre feltene som vises på skjemaet ved hjelp av tannhjulikonet og slush bucket-mekanismen.

Referanser

Tilpasning # 2 - Legg til CAD-variabel i aktivitetstabell for Webex Contact Center

Oversikt

Denne artikkelen beskriver prosessen for å legge til en ekstra kolonne i ServiceNow-tabellen – webexcc_activity som opprettes ved installasjonen av Webex CC for ServiceNow CRM Connector.

Som standard inneholder tabellen systemfelt og verdier utenfor boksen.

Du kan potensielt opprette mer bedriftsspesifikke variabler (CAD-variabler) i WebexCC Flow-designeren og legge til disse CAD-variablene i ServiceNow aktivitetsloggen etter anrop, og holde dette til dataene i aktivitetstabellen etter anrop .

  • Dette er bare referansedokumentasjon – og viser hvordan du gjør dette for en eksempel CAD-variabel kalt Kundenavn som lagrer kundenavnet i IVR og legger dette inn på ServiceNow.

  • Utviklerne av partner og kunde ServiceNow vil konfigurere og administrere denne konfigurasjonen, da det er en tilpasning til den eksisterende kontakten.

  • Cisco vil bare gi deg teknikkene for hvordan du kan tilpasse og utvide kontakten.

  • Fra og med denne artikkelen har Cisco-teamet validert støtte for å legge til CAD-variabel i aktivitetsloggen og aktivitetstabellen ved hjelp av teknikken som er beskrevet nedenfor.

Legg til kolonne i WebexCC-aktivitet
  1. Rediger tabellen i utviklerversjonen av ServiceNow.

  2. Gå til Studio > Webex Contact Center.

  3. Velg tabellen WebexCC-aktivitet .

  4. For eksempel CustomerName.

  5. Velg listeoppsett for WebexCC-aktivitet.

Opprett et nytt skript inkluderer

Dette trinnet er ikke nødvendig hvis du bruker oppdateringssett XML – bare én linje må legges til «webexcc.u_customername=actInfo.CustomerName» til propUtils.

Eksempelskript

Se linjen med:webexcc.u_customername=actInfo.CustomerName; med en støttekommentar.

var propUtils2 = Class.create(); propUtils2.prototype = Object.extendsObject(global.AbstractAjaxProcessor,{ getWebexccProp : funksjon () { 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'); returner JSON.stringify(webexccprop); }, setWebexcctable : funksjon () { 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.dnis; webexcc.queuename =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; // Denne linjen er lagt til – for å registrere den i aktivitetsloggen webexcc.u_customername=actInfo.Kundenavn; sys_id=webexcc.insert(); // Activities on Incident record; var actInfoString =this.getParameter('actInfo'); var suser = new GlideRecordSecure("sys_user"); suser.addQuery("phone", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id", suser.sys_id); inkl.orderByDesc ('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(acting string),null,2); inc.comments =jsonPretty; inc.update(); } } } return sys_id; }, type: 'propUtils2' });
Rediger brukergrensesnittsiden med et nytt skriptnavn

Opprett en CAD-variabel i flytdesigner

Legg til CAD-variabelen i skrivebordsoppsettet

Demonstrasjonsskjermbilder

Vis den nylig tillagte CAD-variabelen i WebexCC-aktivitetstabellen.