I den här artikeln
dropdown icon
Översikt
    Webex Contact Center för Salesforce Service Cloud Voice
    Förutsättningar och begränsningar
    Licenser
    Aktivera Flerkanal
    Begränsningar
dropdown icon
Krav
    Inaktiva koder
dropdown icon
INTEGRERA
    Installation
    Installera och konfigurera Webex Contact Center för Service Cloud Voice
    Tilldela närvarostatus(ar) till agenter
dropdown icon
Konfiguration
    Kontaktcenter
    Importera kontaktcentret
    Konfigurera kontaktcentret
dropdown icon
Anpassa
    Extern klientapp för Webex Contact Center integrering
    Webex Contact Center Konfiguration och skript för att skapa röstsamtalsposter
Salesforce-behörigheter krävs av användarfunktionen
dropdown icon
Service Cloud Voice API Wrapper
    Förutsättningar
    Använda Service Cloud Voice API Wrapper
    Hämta Access_Token
    Utför begäranden
    Skapa röstsamtal (avsnitt)
    Uppdatera röstsamtal
    Kör Omni-flow
    Tydlig dirigering
dropdown icon
Översättningar av telefonnummer
    Skapa översättningsregler
dropdown icon
Konfiguration av sidan VoiceCall
    Konfigurera inspelningssidan för VoiceCall
    Visa avslutningsorsakskomponenten
    Visa samtalsinspelningsspelaren
dropdown icon
Webex Administratörer
    Konfiguration av flöde
Integrera Webex Contact Center med Salesforce Service Cloud Voice
list-menuI den här artikeln
list-menuHar du feedback?

Webex Contact Center för Salesforce Service Cloud Voice integrerar Cisco:s robusta CCaaS (Contact Center as a Service) med Salesforces CRM, vilket gör det möjligt för företag att hantera kundinteraktioner i alla kanaler (röst, digital) inom Salesforce-gränssnittet, med hjälp av Webex AI för virtuella agenter, transkription och intelligent routing, omvandla agenter till superagenter med enhetliga data för bättre kundupplevelser.

Översikt

Webex Contact Center för Salesforce Service Cloud Voice

Webex Contact Center för Service Cloud Voice är en färdig integrationslösning som ger kraften i Webex Contact Center till Salesforce Service Cloud Voice Omni-channel agentkonsol.

Innan du fortsätter med installationen, se följande avsnitt:

För att lära dig mer om förutsättningar och begränsningar för Salesforce Service Cloud Voice och se till att din Salesforce-organisation är redo att aktivera och installera Webex Contact Center för Service Cloud Voice-paketet .

Förutsättningar och begränsningar

Förkunskaper (delämne)

Användargränssnitt: Service Cloud Voice är endast tillgängligt i Salesforce Lightning Experience.

Service Cloud Voice är tillgängligt i dessa utgåvor.

  • Företag
  • Obegränsad
  • Författare

Licenser

  • Kunder måste köpa den nya A-SF-VOICE-tilläggslicensen per inloggad agent utöver Flex 3 Standard- eller Premium-licenserna för Webex Contact Center. Mer information finns i beställningsguiden för Flex 3.

  • Salesforce Voice för partnertelefoni

Innan du TURN på Voice måste du konfigurera de nödvändiga tjänsterna i din organisation.

  • Navigera till Företagsinformation > Behörighetsgruppslicens
    • Sök efter Service Cloud-röstanvändare (partnertelefoni).

      Alla utvecklarutgåvor levereras nu med 5 partnertelefonilicenser tillgängliga för testning.

  • Alternativt kan du verifiera detta genom att gå till Salesforce Setup och söka efter "röst" i vänster sidofält.

    • Om "Partner Telephony Contact Centers" visas har du SCV-licensen.
    • Om alternativet "Kontaktcenter för partnertelefoni" inte visas kan du göra det "Aktivera Service Cloud Voice" genom att följa stegen nedan.
      • Gå till Salesforce Setup och sök och välj "Partner Telephony Setup" och växla knappen till "Enable Service Cloud Voice".

      • Aktivera Flerkanal så att dina agenter kan ringa och ta emot samtal.

Aktivera Flerkanal

Om Flerkanal redan har aktiverats i organisationen hoppar du över det här steget.

  1. Från Inställningar, ange Flerkanalsinställningar i rutan Snabbsökning och välj sedan Flerkanalsinställningar.

  2. Välj Aktivera flerkanal.
  3. Klicka på Spara.

Begränsningar

  • Röst är endast tillgängligt i Lightning Experience.
  • Voice stöds i Service Cloud och Sales Cloud som en tilläggslicens.
  • Voice stöds inte på Salesforce Mobile eller iPad Safari.
  • Röst stöds endast i webbläsarna Google Chrome, Microsoft Edge (Chromium) och Mozilla Firefox. Cookies måste vara aktiverade för att tillåta enkel inloggning (SSO).
  • Standardnavigering stöds inte.
  • Telefoni är starkt reglerat, så kontrollera med din Salesforce-representant om tillgängligheten av Voice i din region.

Krav

Inaktiva koder

Hitta inaktiva koder

Så här ställer du in inaktiva koder:
1

Logga in på hanteringsportalen.

2

Navigera till Contact Center > SKRIVBORDSMILJÖ >Inaktiva/avslutningskoder.

3

Se till att Inaktiva koder visas, annars klickar du på filterlistrutan och väljer Inaktiv kod högst upp på sidan.

4

Klicka på en inaktiv kod för att öppna detaljvyn. Där hittar du tomgångskoden ID.

ID:n kan kopieras och sedan användas för konfigurationen av mappning av närvarotillstånd. Ett av ID:na måste användas som standardorsak till Cisco Inte klar.

INTEGRERA

Installera och konfigurera Webex Contact Center för Service Cloud Voice

När en Service Cloud Voice för partnertelefonilicens erhålls, visas sidan Inställningar för partnertelefoni på menyn Inställningar.

Mer information finns i Salesforces officiella referens ( direktlänk).

1

I Inställningar anger du Konfiguration av partnertelefoni i rutan Snabbsökning och väljer sedan Inställningar för partnertelefoni.

2

Aktivera TURN på röst med partnertelefoni.

Sidan Kontaktcenter för partnertelefoni visas på inställningsmenyn.

Om du planerar att distribuera paketet i en Salesforce-sandlåda ersätter du login.salesforce.com-delen av installationslänken med test.salesforce.com. Observera att det här paketet tas bort från sandbox-organisationen när du skapar en ny sandlådekopia.

Installera paketet

Så här installerar du paketet:

1

Öppna den medföljande länken till paketet för att starta installationen.

2

Logga in på Salesforce-organisationen där paketet ska installeras.

3

I installationsguiden väljer du säkerhetsalternativet "Installera endast för administratörer" (1) och klickar på Installera (2).

Bestäm vilka användare som får viss behörighet till de objekt och komponenter som ingår i paketet Webex Contact Center för Service Cloud Voice. Ge dem dessutom dessa behörigheter. Behörighetsuppsättningarna som medföljer paketet Webex Contact Center för Service Cloud Voice underlättar den här processen.

Paketinstallationsguiden – välkomstskärmen visas:

4

Ge minst en användare följande behörighetsgrupper så att du kan skapa kontaktcentret:

Kontaktcenteradministratör (partnertelefoni).
5

Klicka på Inställningar | Användare | Användare.

6

Sök och en utvald användare.

7

Rulla ned till Behörighetsgruppstilldelningar.

8

Klicka på Redigera uppgifter

9

För kontaktcenteradministratörer: tilldela behörighetsgruppen Kontaktcenteradministratör (partnertelefoni).

10

För kontaktcenteragenter: tilldela behörighetsgruppen Kontaktcenteragent (partnertelefoni) och behörighetsgruppen Webex Contact Center SCV-agent.

Vi rekommenderar inte att du väljer alternativet Installera för alla användare , eftersom det ger alla behörigheter (läsa, skapa, redigera och ta bort) för paketkomponenterna och objekten till alla användare som använder en anpassad användarprofil.
11

Tilldela en paketlicens för användare att arbeta med Ansluter för Service Cloud Voice.

  • Klicka på Inställningar | Appar | Förpackning | Installerade paket.
  • Klicka på Hantera licenser bredvid den nyligen installerade Webex Contact Center för Service Cloud Voice.
  • Klicka på Lägg till användare.
  • Markera de användare som licensmusan ska tilldelas till och klicka på Lägg till.

12

Du kan också klicka på Inställningar | Användare | Användare..

13

Sök och välj användare.

14

Bläddra ned till Hanterade paket.

15

Klicka på Tilldela licenser.

16

Välj Webex Contact Center för Service Cloud Voice-paketet i listan.

17

Klicka på Lägg till.

18

Skapa närvarostatus för att definiera vilka servicekanaler som tilldelas olika statusar. Agenter kan logga in på Omnikanal med olika status beroende på vilken typ av arbete de har rätt att få.

19

I Konfigurera anger du närvarostatus i rutan Snabbsökning och väljer sedan Närvarostatus.

20

Klicka på Ny. Skapa minst en status för "Online" och en för "Upptagen".

  • Skapa en dedikerad närvarostatus för RONA. Närvarokonfigurationen kan användas för att automatiskt ställa in Omni-Channel-statusen till en utsedd status när en RONA inträffar på CTI-sidan eller inom Salesforce.
  • Om du konfigurerar en RONA-status i närvarokonfigurationen ska du se till att inte använda standardnärvarokonfigurationen. För närvarande hämtar Webex Contact Center för Service Cloud Voice inte RONA-statusen som konfigurerats i standardkonfigurationen.

Tilldela närvarostatus(ar) till agenter

1

Från Inställningar, ange Behörighetsgrupper i rutan Snabbsökning och välj sedan Behörighetsgrupper.

2

Klicka här om du vill öppna behörighetsgruppen för partnertelefoni.

3

Klicka på Åtkomst för tjänstnärvarostatus.

4

Klicka på Redigera.

5

I listan Tillgängliga tjänstnärvaro väljer du de närvarostatus(ar) som skapats tidigare och klickar på Lägg till för att associera dem med behörighetsgruppen. Agenter som har tilldelats den här behörighetsgruppen kan logga in i Flerkanal med någon av de närvarostatusar som de har tillgång till.

6

Klicka på Spara.

7

Klicka på Hantera tilldelningar på samma sida. Klicka sedan på Lägg till tilldelning i det övre högra hörnet, välj önskad användare, klicka på Nästa, välj ett utgångsalternativ för de tilldelade användarna (valfritt) och klicka sedan på Tilldela.

Service Cloud Voice använder en extern domän för att arbeta med VoiceCall-posten. Följande webbadresser måste läggas till i "Inställningar för fjärrplats" i installationsprogrammet ( klicka här om du vill öppna den officiella dokumentationen):

  • https://webexapis.com
  • https://YOUR_INSTANCE_URL.my.salesforce-scrt.com
  • https://YOUR_INSTANCE_URL--cisco-wxcc-scv.my.salesforce-scrt.com

Exempel: Så här hittar du instans-URL.

8

Titta på webbadressen i webbläsarens adressfält efter inloggning. Instansens URL är delen före ".my.salesforce.com" eller ".salesforce.com" eller ." lightning.force.com". Om URL:en till exempel är https://orgfarm-54a38e30ad-dev-ed.develop.my.salesforce-setup.com/ är "orgfarm-54a38e30ad-dev-ed.develop" instans-URL:en.

Exempel:

URL för ursprungsorganisation: https://cisco.lightning.force.com

Exempel: URL:er att lägga till:

  • https://cisco.my.salesforce-scrt.com
  • https://cisco--cisco-wxcc-scv.my.salesforce-scrt.com

9

Verktygsobjektet Flerkanalsverktyg krävs i Lightning Service Console-appen för att agenten ska kunna använda Service Cloud Voice.

  • Från Setup anger du Apps i rutan Quick Find och väljer sedan App Manager.
  • Klicka på listrutan bredvid Service Console-appen eller appen som du vill använda och klicka sedan på Redigera.
  • Under Appinställningar klickar du på Verktygsobjekt (endast skrivbord).
  • Klicka på Lägg till verktygsobjekt.
  • I det modala fönstret söker du efter Omni-Channel.
  • Klicka på Flerkanal.
  • Klicka på Spara och avsluta apphanteraren.

Den officiella referensen från Salesforce kan hittas genom att klicka på knappen Let's Do This som öppnar sidan Konfigurera agentupplevelsen för Service Cloud Voice med partnertelefoni i Salesforce Help Portal ( direktlänk).

10

I Konfiguration anger du Konfiguration av partnertelefoni i rutan Snabbsökning och väljer sedan Inställningar för partnertelefoni.

11

Bläddra ner till avsnitt 5 Fler röstinställningar.

12

För att aktivera clickjack-skydd för Visualforce-sidor med rubriker inaktiverade när du arbetar med softphone i Lightning Experience måste du lägga till domänerna som softphone och anpassade verktygsfält laddas från som betrodda domäner, förutom Salesforce-instansens URL.

De här inställningarna och listan över betrodda domäner finns under Konfiguration | Säkerhet | Sessionsinställningar.

Om du vill hämta rätt Visualforce-domän går du till Inställningar | Anpassad kod | Visualforce Pages och klicka på knappen Förhandsgranska för CiscoScvMainWxCC. Salesforce kan automatiskt omdirigera till en annan URL, beroende på Salesforce ORG:s konfiguration. Kopiera URL:en och lägg till den i listan Betrodda domäner för infogade ramar genom att välja "Visualforce Pages" som IFrame-typ.

Exempel: MyDomainName--cisco_wxcc_scv.vf.force.com

Om du vill hämta Salesforce-instansdomänen kopierar du URL:en som visas i webbläsarens URL-fält och lägger till den i listan Betrodda domäner för infogade ramar genom att välja Visualforce-sidor som IFrame-typ.

Exempel: MyDomainName.lightning.force.com

Om du inte har distribuerat Min domän i din organisation är URL-formatet ett annat. Om du har distribuerat Min domän och förbättrade domäner inte är aktiverade i din organisation är URL-formatet ett annat. Om förbättrade domäner inte är aktiverade påverkar inställningen Stabilisera URL:er i Visualforce, Experience Builder, Site.com studio och innehållsfiler Min domän även det här formatet. Mer information finns i URL-format för min domän i hjälpen för Salesforce.

Inställningar för Clickjack Protection och Trusted Domains för Lightning Experience

13

För att kunna visa inspelningskontrollerna under samtal måste agenterna ha behörighet till appen Kontrollera samtalsinspelning .

Om du vill tilldela den lägger du till den i behörighetsgruppen som skapades i steget Närvarostatus.

  • Öppna behörighetsgruppen.
  • Klicka på länken Appbehörigheter .
  • Klicka på knappen Redigera .
  • Lägg till behörigheten Call Center Control Call Recording och spara.

Konfiguration

Kontaktcenter

En Contact Center-definitionsfil anger en uppsättning fält och värden som används för att definiera ett kontaktcenter i Salesforce för ett visst CTI-system. Salesforce använder Contact Center-definitionsfiler för att stödja integrationen med flera CTI-systemleverantörer.

Mer information finns i Salesforces officiella dokumentation ( direktlänk).

Importera kontaktcentret

Ladda ner den senaste versionen av kontaktcentret här.
1

I Konfigurera anger du Kontaktcenter för partnertelefoni i rutan Snabbsökning och väljer sedan Kontaktcenter för partnertelefoni.

Listan över befintliga (eventuella) kontaktcenter visas.
2

Klicka på Skapa kontaktcenter till höger på sidan.

3

Välj Webex Contact Center som telefonileverantör. Klicka sedan på Nästa.

En filbläddrare öppnas.
4

Välj filen .XML som innehåller kontaktcenterdefinitionen.

5

Klicka på Öppna.

Filen importeras.
6

Kontrollera om ditt kontaktcenter visas i listvyn för kontaktcenter.

Konfigurera kontaktcentret

1

I Konfigurera anger du Kontaktcenter för partnertelefoni i rutan Snabbsökning och väljer sedan Kontaktcenter för partnertelefoni.

2

Klicka på det kontaktcenter som importerades tidigare.

3

Klicka på Redigera.

Tabell 1. Information om kontaktcenter
FältBeskrivning
Visningsnamn Det här är namnet på kontaktcentret som visas i listan över tillgängliga kontaktcenter. Samma Contact Center-definitionsfil (.XML) kan importeras flera gånger och ges olika visningsnamn.
Offentlig nyckel

För att använda röstfunktioner krävs ett certifikat med offentlig och privat nyckel. För att få en privat nyckel är det möjligt att generera ett självsignerat certifikat , generera ett certifikat signerat av en Certificate Authority eller direkt importera Java keystore-filer (JKS) eller Bouncy castle fips keystore-filer (BCFKS) med knappen Importera från keystore .

När certifikatet har genererats:

  • Klicka på certifikatetiketten .
  • Klicka på Ladda ned certifikat.
  • Öppna det nedladdade certifikatet med en textredigerare.
  • Kopiera innehållet till fältet Offentlig nyckel i kontaktcentret.

Obligatoriskt: Ja

Unikt certifikatnamn

Det unika namnet på det självsignerade certifikatet som skapats för den offentliga nyckeln .

Obligatoriskt: Ja

Klar tillstånd ID
  • Öppna sidan Närvarostatus i installationsprogrammet.
  • Klicka på Onlinestatus och kopiera dess Salesforce ID från URL-fältet.
  • Klistra in ID i det här fältet.

Obligatoriskt: Ja

Inte klar, tillstånd ID
  • Öppna sidan Närvarostatus i installationsprogrammet.
  • Klicka på statusen Upptaget och kopiera dess Salesforce ID från URL-fältet.
  • Klistra in ID i det här fältet.

Obligatoriskt: Ja

Standard Cisco Orsak till Inte klar

Cisco inaktiv kod ID som används som standard inaktiv kod om ingen mappning tillhandahålls för ett visst närvarotillstånd.

Obligatoriskt: Ja

Information om hur du kontrollerar konfigurerade ID:n för inaktiv kod finns i avsnittet Inaktiva koder .
Mappning av närvarostatus

Används för att mappa Salesforce Omni-närvarostatus till orsakskoderna Cisco klar och Inte klar.

Statusen för Inaktiv kod måste läggas till:

  • Öppna sidan Närvarostatus i installationsprogrammet.
  • Klicka på en av statusarna Upptaget och kopiera dess Salesforce ID från URL-fältet. ID:n för närvarostatus börjar med 0N5. till exempel 0N51X0000000AUT.
  • Klistra in ID i det här fältet, följt av ett kommatecken och Cisco inaktiv kod ID.
  • En eller flera upptagenmappningar kan läggas till med kommaseparation.

För att undvika synkroniseringsproblem måste standardinställningen Inte klar ID konfigureras i mappningen också.

Om du har konfigurerat status för Avvisa och Push-timeout i närvarokonfigurationen lägger du även till dem i mappningen med motsvarande tillstånd Cisco Inte klar.

Format: busyPresenceID1,ciscoAuxCodeID1; defaultNotReadyPresenceID,ciscoDefaultNotReadyAuxCodeID; onlinePresenceId,0

Obligatoriskt: Ja

Här är ett exempel på ifyllda tomgångskoder för lunch, möte, rast.

Samtalsvariabel för röstsamtal ID

Samtalsvariabeln som används för att lagra ID för det aktuella röstsamtalet. Den används för att uppdatera samtalstillståndet korrekt.

Format: Variabelnamn som konfigurerats i Webex Contact Center Flow. Till exempel SCV_VoiceCallRecordId

Obligatoriskt: Ja

Standardvärde:SCV_VoiceCallRecordId

Om du har kombinerat posten för röstsamtal ID och leverantörssamtalsnyckeln till en flödesvariabel kan du konfigurera dess namn i det här fältet. Se även Flödesvariabel för Röstsamtalspost ID och Leverantörssamtalsnyckel.

Samtalsvariabel för leverantörens samtalsnyckel

Samtalsvariabeln som används för att lagra leverantörens samtalsnyckel för det aktuella röstsamtalet. Den används för att öppna rätt röstsamtalspost.

Format: Variabelnamn som konfigurerats i Webex Contact Center Flow. Till exempel SCV_VendorCallKey

Obligatoriskt: Ja

Standardvärde: SCV_VendorCallKey

Om du har kombinerat posten för röstsamtal ID och leverantörssamtalsnyckeln till en flödesvariabel kan du lämna fältet tomt och konfigurera namnet på flödesvariabeln med posten för röstsamtal ID och leverantörssamtalsnyckeln i fältet "Samtalsvariabel för röstsamtal ID". Se även flödesvariabeln för röstsamtalspost ID och leverantörssamtalsnyckel.

Översättning av telefonnummer

Översättningsregler för telefonnummer som tillämpas på numret innan det rings upp.

Se Översättningar av telefonnummer

Obligatoriskt: Nej
Webexx kontaktcenterregion

Klientorganisationen används för att fastställa regionen Webex Contact Center. Den finns i webbadressen till Webex Contact Center portalen, Dev Portal eller Desktop. Se det här exemplet:

https://devportal.wxcc-eu2.cisco.com/

Format: eu2

Obligatoriskt: Ja

Här är tabellen med Webex Contact Center regioner och motsvarande strängar:

  • USA: us1
  • Kanada: ca1
  • Storbritannien: eu1
  • Tyskland: eu2
  • Australien: anz1
  • Singapore: sg1
  • Japan: jp1

Webex Contact Center WebRTC Domän

Domänen används för att upprätta rätt WebRTC-anslutning. Använd platsen för din Webex Contact Center-klientorganisation:

  • USA: rtw.prod-us1.rtmsprod.net
  • ANZ: rtw.prod-as1.rtmsprod.net
  • CA: rtw.prod-ca1.rtmsprod.net
  • JP: rtw.prod-ja1.rtmsprod.net
  • EU1: rtw.prod-uk1.rtmsprod.net
  • EU2: rtw.prod-gm1.rtmsprod.net

Obligatoriskt: Ja för WebRTC

Aktivera WCCAI-transkription

Används för att aktivera eller inaktivera WCCAI-transkription.

Format:Sant eller Falskt

Obligatoriskt: Nej

Standardvärde:Falskt

Spara inspelningslänk

Används för att spara länken Webex samtalsinspelning i röstsamtalsposten.

Format:Sant eller Falskt

Obligatoriskt: Nej

Standardvärde:Sant

4

Längst ned på sidan Kontaktcenter klickar du på knappen Lägg till under avsnittet Användare i kontaktcenter.

5

Klicka på + bredvid de användare som har åtkomst till det öppna kontaktcentret.

Endast användare med behörigheten Contact Center-agent (partnertelefoni) och som inte redan har tilldelats andra kontaktcenter visas i den här listan.

Anpassa

Extern klientapp för Webex Contact Center-integrering

Konfigurera den externa klientappen för Webex Contact Center Salesforce Connector

För att Service Cloud Voice ska kunna användas fullt ut kan Contact Center-samtalsflödet anpassas för att skapa röstsamtalsposten och för att köra ett Salesforce-flerkanalsflöde medan samtalet är på IVR.

Skapa certifikat

Kontrollera att du redan har skapat ett digitalt certifikat enligt organisationens säkerhetsprincip.

Information om hur du genererar ett digitalt certifikat finns i Salesforce-dokumentationen på https://developer.salesforce.com/docs/atlas.en-us.voice_pt_developer_guide.meta/voice_pt_developer_guide/voice_pt_generate_certificate.htm.

Exempel

openssl genrsa -des3 -passout pass:<lösenord> -out server.pass.key 2048 openssl RSA -passin pass:<lösenord> -in server.pass.key -out server.key rm server.pass.key openssl req -new -key server.key -out server.CSR Landsnamn (2 bokstäver kod) [AU]:CH State or Province Name (fullständigt namn) [Some-State]: Locality Name (t.ex. stad) []: Organisationsnamn (t.ex. företag) [Internet Widgits Pty Ltd]: Organisationsenhetens namn (t.ex. avsnitt) []: Vanligt namn (t.ex. server FQDN eller DITT namn) []: E-postadress []: my-api-user@my-example-org.com Ange följande "extra"-attribut som ska skickas med din certifikatbegäran Ett utmaningslösenord []:<lösenord> Ett valfritt företagsnamn []: openssl x509 -req -sha256 -days 365 -in server.CSR -signkey server.key -out server.crt 

server.crt => Certifikat för den externa Salesforce-klientappen

server.key => Privat nyckel för Salesforce Connector i Webex Control Hub

Behörighetsgrupp för SCV-integreringsanvändaren

Följande behörighetsgrupp ger åtkomst till Apex-klasser som används av Connects for SCV för integrering med Contact Center IVR flöden och Webex Contact Center för Salesforce for SCV.

Följande är en exempelkonfiguration och beskriver de minsta behörigheter som krävs för att integrationen Contact Center/IVR ska fungera.

  • Från Setup navigerar du till Användare | Behörighetsgrupper.
  • Klicka på knappen Ny .
    • Ange en etikett, till exempel: IVR Åtkomst till SCV Apex-klasser
    • API Namnet fylls i automatiskt
    • Licens: Ingen
    • Klicka på knappen Spara .
  • Den nya behörighetsgruppen öppnas.
  • Navigera till Apex Class Access.
  • Klicka på knappen Redigera och lägg till följande Apex-klasser:
    • cisco_wxcc_scv. Serviceroutning
  • Navigera till Systembehörigheter.
  • Klicka på knappen Redigera och aktivera följande behörigheter:
    • Apex REST-tjänster
    • API Aktiverad

Minsta åtkomst - API Endast integrationsprofil

Den här profilen används för att integrera med Webex Contact Center för Salesforce for SCV för att skapa röstsamtalsposter och köra Omni-Flow från IVR flödet.

Följande är en exempelkonfiguration och beskriver de minsta behörigheter som krävs för att Contact Center/IVR-integreringen ska fungera.

Detta är en klon från profilen Minsta åtkomst - API Endast integrationer.

  • Från Setup navigerar du till Användare | Profiler.
  • I profillistan söker du efter Profile Minimum Access - API Only Integrations.
  • Klicka på profilnamnet för att öppna profilen Minsta åtkomst - API Endast integrationer .
  • I profilen Minsta åtkomst – Endast API integrationer klickar du på knappen Klona .
  • Ange ett nytt profilnamn, till exempel: SCV Integration.
  • Klicka på knappen Spara .
  • Den nya profilen öppnas.
  • Kontrollera att din profil Minsta åtkomst – Endast API Integrationer har alla behörigheter borttagna från själva profilen.
  • Navigera till Systembehörigheter.
  • Kontrollera att följande behörigheter är aktiverade:
    • API Aktiverad
    • API Endast användare

SCV-integreringsanvändare

Följande är en exempelkonfiguration och beskriver de minsta behörigheter som krävs för att integrationen Contact Center/IVR ska fungera. Ingen Salesforce Service Cloud Voice-licens eller Webex Contact Center för Salesforce for SCV-licens krävs för SCV-integrationsanvändaren.

  • Från Setup navigerar du till Användare | Användare.
  • Klicka på knappen Ny användare .
    • Ange Förnamn, Efternamn och alla andra obligatoriska fält.
    • Användarlicens: Salesforce-integrering
    • Profil: välj den profil som skapades i föregående steg ("SCV-integrationsprofil", klon av Minsta åtkomst – API Endast integrationsprofil)
  • Klicka på knappen Spara .
  • Öppna den nya användarposten.
  • Tilldela behörighetsgruppen som skapades tidigare ("IVR Åtkomst till SCV Apex-klasser").
  • Tilldela behörighetsgruppslicensen Salesforce API Integration.
Skapa extern Salesforce-klientapp
Skapa en ny extern klientapp

Det finns två alternativ för att ansluta dina Salesforce-data till tredjepartsapplikationer. Både anslutna appar och externa klientappar är ramverk för att integrera data. Externa klientappar är nästa generations anslutna appar.

Så här konfigurerar du den externa Salesforce-klientappen som används av Cisco Webex Contact Center:

  1. Från Konfiguration navigerar du tillAppar  | Externa klientappar | Extern klientapphanterare.
  2. Klicka på Ny extern klientapp.
  3. Extern klientapp – grundläggande information
    • Namn på extern klientapp: WxCC – SCV
    • API Namn: WxCC_SCV
    • E-postadress: < din e-postadress >
    • Distributionsstatus: välj Lokal

    Grundläggande information

    Extern klientapp – API (Aktivera OAuth-inställningar)

    • Välj: Aktivera OAuth
    • App-inställningar
    • Motringnings-URL: http://localhost:1717/OauthRedirect som exempel på motringnings-URL
    • OAuth-scope
    • Välj OAuth-omfattningar:
    • Hantera användardata via API:er (API)
    • Utföra förfrågningar när som helst (refresh_token, offline_access)

    API (Aktivera oAuth-inställningar)

    Flödesaktivering

    • Välj: Aktivera JWT Bearer Flow
    • Klicka på Ladda upp filer och överför filen server.crt som innehåller det digitala certifikatet.

    Floe-aktivering

    Säkerhet

    Avmarkera alternativet Kräv hemlighet för webbserverflödet .

    Säkerhet

  4. Klicka på knappen Skapa .
  5. Ändra till Tab Policies och klicka sedan på knappen Redigera .
  6. Policyer – OAuth-principer
    • Policyer för insticksprogram
      • Tillåtna användare: välj Administratörsgodkända användare är förauktoriserade
      • Bekräfta ändringen
    • Appauktorisering
      • Princip för uppdateringstoken: välj Token för uppdatering upphör att gälla omedelbart
      • IP Avkoppling: välj Framtvinga IP begränsningar

    OAuth-principer

  7. Principer – Apppolicyer
    • Startsida – ingen
    • Välj behörighetsgrupper – tilldela behörighetsgruppen som skapades tidigare ("IVR Access to SCV Apex Classes") 

    Appprinciper

  8. Klicka på Spara.
  9. Ändra till Tab Inställningar.
    • Avsnitt OAuth-inställningar, klicka på Konsumentnyckel och hemlig knapp; vänta på e-post och verifiera din identitet. En ny webbläsare Tab öppnar en skärm med konsumentinformation.

      OAuth-inställningar

    • Klicka på Kopiera och spara konsumentnyckeln. Konsumentnyckeln används senare för att skapa Salesforce Connector på Webex Contact Center Control Hub. 

      Extern klient Appnamn

Webex Contact Center Konfiguration och skript för att skapa röstsamtalsposter

För att få ut det fulla värdet av Salesforce Service Cloud Voice måste samtalsflödet i Webex Contact Center ändras så att röstsamtalsposten skapas i Service Cloud Voice så snart samtalet anländer till kontaktcentret.

Ett valfritt Omni-Flow kan köras för routingbeslut och automatisering i Salesforce.

Mer information om de API:er som används finns i Service Cloud Voice API Wrapper.

Förutsättningar

För att kunna använda Service Cloud Voice API Wrapper måste en extern Salesforce-klientapp för IVR-integrering konfigureras.

Konfigurera Salesforce Connector i Webex Control Hub

Konfigurera Salesforce Integration Connectors för Webex Contact Center enligt beskrivningen i artikeln på https://help.webex.com/en-us/article/7fuy63/SetUp-Integration-Connectors-for-Webex-Contact-Center#id_133211.

1

Logga in på din kundorganisation på https://admin.webex.com och navigera till Tjänster > Contact Center > Tenant Settings > Integrations>Connectors.

2

På Salesforce-kortet klickar du på Konfigurera eller Lägg till koppling.

  • Klient ID: Konsumentnyckel för extern klientapp
  • Salesforce-e-post ID: Salesforce-användarnamn för "SCV-integrationen" (se SCV-integreringsanvändare)
  • URL: för produktionsanvändning https://login.salesforce.com eller om du konfigurerar en dev/sandbox-användning https://test.salesforce.com
  • privat nyckel:filens innehåll server.key

VIKTIGT!: UPPRÄTTHÅLL SÄKERHETEN GENOM ATT REGELBUNDET ROTERA HEMLIGHETER

Se till att du regelbundet roterar din privata nyckel och certifikat för att hålla dina integrationer säkra.

Uppdatera den privata nyckeln i  kontaktcenteranslutningsappen i Webex hubben och certifikatet i den  externa klientappen i Salesforce.

Tips för felsökning

När du har klickat på Klar och kopplingen inte sparas:

  • Kontrollera om du har några mellanslag före/efter dina poster.
  • Kontrollera att din privata nyckel (server.key) matchar din server.crt. Om du konfigurerar flera organisationer och byter certifikat fungerar de inte.
  • Se till att din Server.key börjar med. ----- Begin RSA Private Key -----

Webex Contact Center Huvudflöde

Tabell 2. Flöde variale
FlödesvariabelBeskrivning
Flödesvariabel för röstsamtalspost ID Unik ID för att identifiera samtalet. Krävs för att skapa röstsamtalsposten.

Format: wxcc_<Interaktion ID>

Exempel: wxcc_fc4ec7d8-4c91-49aa-b764-081fbba344a8

  • Namn: SCV_VendorCallKey
  • Typ: Sträng
  • Gör agenten synlig: Aktiverad
Lokal variabel för samtalets starttid

Används för att skapa röstsamtalsposten och vid uppdatering av röstsamtalet.

  • Namn: SCV_CallStartTime
  • Typ: Sträng
  • Gör agenten synlig: nej
Lokal variabel för Könamn/ID

Returneras av Execute Omni Flow, som används för samtalsroutning.

Den här variabeln krävs endast när du använder Kör Omni Flow

  • Namn: SCV_OmniFlowQueue
  • Typ: Sträng
  • Gör agenten synlig: nej
Lokal variabel för Agentnamn/ID

Returneras av Execute Omni Flow, som används för samtalsroutning.

Den här variabeln krävs endast när du använder Kör Omni Flow

  • Namn: SCV_OmniFlowAgent
  • Typ: Sträng
  • Gör agenten synlig: nej

Översikt över huvudflöde

  1. Generera leverantörssamtalsnyckel
  2. Ange starttid för samtal
  3. HTTP-begäran: Skapa röstsamtalspost
  4. Utvärdera HTTP-svar för att skapa röstsamtalspost
  5. Felhantering för Skapa röstsamtalspost
  6. HTTP-begäran: Kör omniflöde
  7. Utvärdera HTTP-svar för körning av omniflöde
  8. Felhantering för Execute Omni Flow
  9. Fortsätt med samtalsdirigering
Tabell 3. Huvudflöde
FlödeBeskrivning
Generera leverantörssamtalsnyckel

Varje samtal som hanteras i Service Cloud Voice skapar en röstsamtalspost i Salesforce och kräver en unik ID som kallas leverantörssamtalsnyckel. För röstsamtalsposter som skapas i Webex Contact Center måste leverantörens samtalsnyckel definieras i WxCC-flödet och sedan skickas tillsammans med samtalet till agenten med hjälp av en flödesvariabel.

Värdet vendorCallKey måste följa följande regler:

  • Värdet måste vara <= 255 tecken långt.
  • Värdet får innehålla alfanumeriska tecken plus understreck (_), bindestreck (-) och punkt (.).
  • Värdet måste börja med en bokstav, inte innehålla blanksteg, inte sluta med ett understreck och får inte innehålla två understreck i följd.

  • Aktivitetsetikett: Generate_VendorCallKey
  • Variabelnamn: SCV_VendorCallKey
  • Variabeltyp: Sträng
  • Variabelvärde - Ange värde: wxcc_{{NewPhoneContact.InteractionId}}

Ange starttid för samtal

UTC-tidsstämpel för samtalets starttid. Den här tidsstämpeln används för att skapa posten för röstsamtal och för att uppdatera posten för röstsamtal om uppringaren lägger på innan den dirigeras till agenten.

  • Aktivitetsetikett: SetCallStartTime
  • Variabel: SCV_CallStartTime
  • Variabelvärde - Ange värde: {{now() | replace({'[UTC]': ''})}}
HTTP-begäran: Skapa röstsamtalspost

Det här steget krävs för varje samtal. När posten för röstsamtal har skapats måste posten för röstsamtal ID skickas tillsammans med samtalet till agenten i en variabel, tillsammans med leverantörens samtalsnyckel. Konfigurera den använda variabeln i Contact Center-konfigurationen i Service Cloud Voice.

Inställningar för HTTP-begäran
  • Aktivitetsetikett: CreateVoiceCall
  • Använd autentiserad slutpunkt: Aktiverad
  • Anslutningsprogram: Salesforce Connector som skapades i föregående steg
  • Sökväg för begäran: /services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall
  • Metod: POST
  • Begär innehållstyp: Program/JSON

HTTP-begäran: Skapa röstsamtalspost

Det här steget krävs för varje samtal. När posten för röstsamtal har skapats måste posten för röstsamtal ID skickas tillsammans med samtalet till agenten i en variabel, tillsammans med leverantörens samtalsnyckel. Konfigurera den använda variabeln i Contact Center-konfigurationen i Service Cloud Voice.

Inställningar för HTTP-begäran

  • Aktivitetsetikett: CreateVoiceCall
  • Använd autentiserad slutpunkt: Aktiverad
  • Anslutningsprogram: Salesforce Connector som skapades i föregående steg
  • Sökväg för begäran: /services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall
  • Metod: POST
  • Begär innehållstyp: Program/JSON

Begär organ

När du skapar posten för röstsamtal kan du även uppdatera anpassade fält i röstsamtalsposten med samtalsdata. Nedan visas två exempel på begärandetexten, ett med alla obligatoriska fält men utan att uppdatera anpassade fält och ett med anpassade fält.

Utan att uppdatera anpassade fält på röstsamtalsinspelningen:

{ "callCenterDevName": "<Contact Center API name>", "certDevName": "<cert dev name>", "vendorCallKey": "{{SCV_VendorCallKey}}", "to": "{{NewPhoneContact.DNIS}}", "from": "{{NewPhoneContact.ANI}}", "initiationMethod": "Inbound", "startTime": "{{SCV_CallStartTime}}", "participants": [ { "participantKey": "{{NewPhoneContact.ANI}}", "type" : "END_USER" } ] }

Exempel med uppdatering av anpassade fält i röstsamtalsposten:

{ "callCenterDevName": "<Contact Center API name>", "certDevName": "<cert dev name>", "vendorCallKey": "{{SCV_VendorCallKey}}", "to": "{{NewPhoneContact.DNIS}}", "from": "{{NewPhoneContact.ANI}}", "initiationMethod": "Inbound", "startTime": "{{SCV_CallStartTime}}", "participants": [ { "participantKey": "{{NewPhoneContact.ANI}}", "type" : "END_USER" } ], "callAttributes": "{\"custfield1__c\": \"<value1>\",\"custfield2__c\": \"<value2>\",\" custfield3__c\": \"<value3>\"}" }

Parametrar
Egenskapens namn Värde
callCenterDevName Utvecklarnamn för kontaktcenter
certDevName API Namn på certifikat (som konfigurerats i Contact Center)
vendorCallKey Unikt samtal ID: {{SCV_VendorCallKey}}
till UppringtNummer/DNIS: {{NewPhoneContact.DNIS}}
från CallingNumber/ANI: {{NewPhoneContact.ANI}}
starttid UTC-tidsstämpel {{SCV_CallStartTime}}( ställs in direkt efter att samtalet har accepterats i skriptet)
callAttributes

Representerar ytterligare standardfält och anpassade fält i röstsamtalsposten, där varje nyckel/värde-par motsvarar ett standardfält eller anpassat fält och dess värden.

Exempel:

custfield1__c,custfield2__c,custfield3__c : API namn på anpassat fält på röstsamtalsobjekt

value1,value2,value3 : Värde för det anpassade fältet

Parsa inställningar
  • Innehållstyp: JSON
  • Utdatavariabel: SCV_VoiceCallRecordId
  • Sökvägsuttryck: $.data.voiceCallId

Röstsamtalspost ID, som skickas till agenten.

Utvärdera HTTP-svar för att skapa röstsamtalspost

Kontrollera HTTP-statusen för HTTP-begäran Skapa röstsamtal:

  • Etikett: statusCodeCreateVoiceCall
  • Variabel: CreateVoiceCall.httpStatusCode

Om statuskod == 200 => lyckades annars => begäran misslyckades, felhantering

Felhantering för Skapa röstsamtalspost

Endast för demo / felsökning, spela upp meddelande beroende på http-statuskod.

Om Skapa röstsamtal lyckades fortsätter du med Kör Omni Flow. Annars fortsätter du med samtalsdirigeringen.

HTTP-begäran: Kör omniflöde (valfritt steg)

Använd Kör Omni-Flow när du vill:

  • Köra automatiserade uppgifter, till exempel söka efter eller skapa poster, och länka posterna till posten för röstsamtal
  • Sök efter skivor och gör screen-pop
  • Synkronisera Salesforce- och Cisco köer
  • Låta Service Cloud Voice fatta routningsbeslutet

Denna begäran returnerar alltid "kön" eller "agenten" dit samtalet ska dirigeras.

När du har utfört denna begäran måste du skicka Rensa dirigering om den som ringer lägger på innan den besvaras av en agent. Se Webex Contact Center händelseflöde.

Inställningar för HTTP-begäran

  • Aktivitetsetikett: ExecuteOmniFlow
  • Använd autentiserad slutpunkt: Aktiverad
  • Anslutningsprogram: Salesforce Connector som skapades i föregående steg
  • Sökväg för begäran: /services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow
  • Metod: POST
  • Begär innehållstyp: Program/JSON

Begär organ

Förutom de obligatoriska fälten kan du skicka ytterligare data som indatavariabler till Omni-Flow. Nedan följer två exempel på begärandetexten. Först utan ytterligare flödesparametrar, endast obligatoriska fält, den andra med två indatavariabler.

Exempel med Omni-Flow-parametrar:

{ "callCenterDevName": "<Contact Center API name>", "certDevName": "<cert dev name>", "voiceCallId": "{{SCV_VoiceCallRecordId}}", "dialedNumber": "{{NewPhoneContact.DNIS}}", "flowDevName": "<flow API name>", "fallbackQueue": "<reservkönamn>" }

Exempel med uppdatering av de anpassade fälten på röstsamtalsposten:

{ "callCenterDevName": "<Contact Center API name>", "certDevName": "<cert dev name>", "voiceCallId": "{{SCV_VoiceCallRecordId}}", "dialedNumber": "{{NewPhoneContact.DNIS}}", "flowDevName": "<flow API name>", "fallbackQueue": "<fallback queue name>", "flowInputParameters": { "param1": "value1", "param2": "value2" } }

Parametrar
Egenskapens namn Värde
callCenterDevName Utvecklarnamn för kontaktcenter
certDevName API Certifikatets namn (som konfigurerats i Contact Center)
voiceCallId ID i röstsamtalsposten som skapades i föregående steg: {{SCV_VoiceCallRecordId}}
Uppringt nummer UppringtNummer/DNIS: {{NewPhoneContact.DNIS}}
flowDevName Utvecklarnamn på det Omni-Flow som ska köras
reservKö Kö ID eller kö API namnet på Salesforce-reservkön
flowInputParameters

Ytterligare indata till Omni-Channel-flödet (nyckel/värde-par).

Exempel:

param1,param2 : Namn på indataparametern för Omni-Flow

value1,value2 : Parameterns värde

Parsa inställningar

  • Innehållstyp: JSON
  • Utdatavariabel: SCV_OmniFlowQueue
  • Sökvägsuttryck: $.data.queue

"Kö" som returneras från Execute Omni-Flow kan användas för routning.

Agent
  • Innehållstyp: JSON
  • Utdatavariabel: SCV_OmniFlowAgent
  • Sökvägsuttryck: $.data.agent

"Agent" som returneras från Execute Omni-Flow, kan användas för routning.

Utvärdera HTTP-svar för körning av omniflöde

Kontrollera HTTP-status för Execute Omni Flow http-begäran:

  • Etikett: statusCodeExecuteOmniFlow
  • Variabel: ExecuteOmniFlow.httpStatusCode

Om statuskod == 200 => lyckades annars => begäran misslyckades, felhantering.

Felhantering för Execute Omni Flow

Endast för demo / felsökning, spela upp meddelande beroende på http-statuskod.

Om Kör omniflöde lyckades anges inte variablerna SCV_OmniFlowQueue och SCV_OmniFlowAgent. Routningsbeslut i samtalsflödet.

Fortsätt med samtalsdirigering

Fortsätt i samtalsflödet, dirigera samtalet till agenten. Valfritt, använd SCV_OmniFlowQueue och SCV_OmniFlowAgent för att välja kö och agent.

Webex Contact Center händelseflöde

Om uppringaren lägger på samtalet innan det har besvarats av en agent måste vi uppdatera Service Cloud Voice och avsluta samtalet.

  • Om Kör omniflöde användes skickar du Rensa routning för att ta bort väntande tjänstroutning (PSR)
  • Skicka Uppdatera röstsamtal om du vill uppdatera start- och sluttiderna för röstsamtalsposten och ändra status från Ny till Slutförd

  1. PhoneContactEnded – Den här händelsen utlöses när ett livesamtal kopplas bort och alla deltagare tas bort.
  2. HTTP-begäran: Rensa routning
  3. HTTP-begäran: Uppdatera röstsamtal
HTTP-begäran: Rensa routning

  • Etikett: ClearRouting
  • Använd autentiserad slutpunkt: Aktiverad
  • Anslutningsprogram: Salesforce Connector som skapades i föregående steg
  • Sökväg för begäran: /services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting
  • Metod: POST

Begär innehållstyp: Program/JSON

Begär organ

{ "callCenterDevName": "<Contact Center API name>", "certDevName": "<cert dev name>", "voiceCallId": "{{SCV_VoiceCallRecordId}}" }

Parametrar

Egenskapens namnVärde
callCenterDevName Utvecklarnamn för kontaktcenter
certDevName API Certifikatets namn (som konfigurerats i Contact Center)
voiceCallId ID av röstsamtalsposten, skapad i föregående steg: SCV_VoiceCallRecordId

Parsa inställningar

Ingen.

HTTP-begäran: Uppdatera röstsamtal

  • Etikett: UpdateVoiceCall
  • Använd autentiserad slutpunkt: Aktiverad
  • Anslutningsprogram: Salesforce Connector som skapades i föregående steg
  • Sökväg för begäran: /tjänster/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall
  • Metod: POST
  • Begär innehållstyp: Program/JSON

Begär organ

{ "callCenterDevName": "<Contact Center API name>", "certDevName": "<cert dev name>", "voiceCallId": "{{SCV_VoiceCallRecordId}}", "startTime": "{{SCV_CallStartTime}}", "endTime": "{{now() | replace({'[UTC]': ''})}}", "disconnectReason": { "value": "Övergiven i kön", "isError": true } }

Parametrar

Egenskapens namnVärde
callCenterDevName Utvecklarnamn för kontaktcenter
certDevName API Namn på certifikat (som konfigurerats i Contact Center)
voiceCallId ID i röstsamtalsposten, som skapades i föregående steg: SCV_VoiceCallRecordId
starttid UTC-tidsstämpel för samtalsstart {{SCV_CallStartTime}}( som används för att skapa röstsamtalsposten)
sluttid Aktuell UTC-tidsstämpel '{{now()
frånkopplingOrsak Anledning till att koppla från samtalet. Egenskapen isError måste anges till true för att den ska visas korrekt.

Parsa inställningar

Ingen.

Referenser

Språköversättning

(Valfritt) Aktivera Translation Workbench

Den här inställningen gäller endast om du använder inställningarna för översättningsspråk.

1

Gå till Konfigurera → Translation Workbench → Translation Language Settings.

2

Klicka på Aktivera för att välja översättningsspråk.

(Valfritt) Aktivera endast plattformsspråk

Den här inställningen gäller endast för andra språk än EN-US.

1

Gå till Ställ in → Företagsinställningar → Språkinställningar.

2

Välj önskade språk.

3

Markera följande kryssrutor:

  • Aktivera slutanvändarspråk – Hjälp och konfiguration översätts inte till slutanvändarspråk
  • Aktivera endast plattformsspråk – inga standardöversättningar tillhandahålls för plattformsspecifika språk
4

Spara ändringarna.

Aktivera språket och välj användaren (uppgift)
1

Gå till Konfigurera → Translation Workbench → Translation Language Settings.

2

Välj språk och välj den användare som ska översätta det.

3

Spara ändringarna.

Inställningar för flera språk
Översätt anpassade etiketter
1

Gå till Konfigurera → anpassade etiketter.

2

Markera namnet på den anpassade etiketten som du vill öppna.

3

Klicka på Ny i den relaterade listan Översättningar om du vill ange en ny översättning eller Redigera (bredvid språket) om du vill redigera en översättning.

4

Välj det språk du ska översätta till.

5

Ange det översatta värdet i fältet Översättningstext. Den här texten åsidosätter värdet som anges i etikettens värdefält när användarens standardspråk är översättningsspråket.

6

Spara ändringarna.

Salesforce-behörigheter krävs av användarfunktionen

Behörighetsgruppen Webex Contact Center SCV-agent innehåller alla behörigheter som krävs för att arbeta med gadgeten Webex Contact Center och integreringar som utvecklats för agenter.

Apex Class Access (avsnitt)

  • cisco_wxcc_scv. CiscoScvWxcc
  • cisco_wxcc_scv. ServiceResponseHandler
  • cisco_wxcc_scv. Serviceroutning
  • cisco_wxcc_scv. TelephonyIntegrationHandler

Åtkomst av anpassad metadatatyp (avsnitt)

  • cisco_wxcc_scv. WxCC-anslutning

Visualforce sidåtkomst (avsnitt)

  • cisco_wxcc_scv. CiscoScvLoginWxCC
  • cisco_wxcc_scv. CiscoScvMainWxCC
  • cisco_wxcc_scv. CiscoScvOAuthRedirect
  • cisco_wxcc_scv. CiscoScvSwLoader

Service Cloud Voice API Wrapper

Förutsättningar

För att kunna använda Service Cloud Voice API Wrapper måste en extern Salesforce-klientapp för IVR-integrering konfigureras.

Använd Service Cloud Voice API Wrapper

Service Cloud Voice (SCV) for Salesforce använder Telephony Integration REST API för att skapa och uppdatera VoiceCalls, köra flerkanalsflöden och ta bort PendingServiceRouting-poster som är kopplade till ett VoiceCall. Den här tjänsten kräver JWT-auktorisering och användning av PATCH HTTP-metoden, som för närvarande inte stöds av Cisco IP Interactive Voice Response (IVR).

För att förenkla användningen av Telephony Integration REST API för SCV i (inte bara) ett IVR-system har en ny uppsättning API:er gjorts tillgängliga, som omsluter den befintliga Salesforce API och är tillgängliga direkt från Salesforce-organisationen där Webex Contact Center för Service Cloud Voice-paketet är installerat.

Service Cloud Voice API Wrapper tar bort behovet av att autentisera en JWT-token, implementerar ytterligare kontroller av de data som krävs av Salesforce API och förbättrar svarsobjekten.

Hämta Access_Token

Kör en POST-begäran till https://<your-domain-name>.my.salesforce.com/services/oauth2/token

Skicka följande parametrar i brödtexten:

{ "grant_type": "client_credentials", "client_id": "<konsumentnyckel för den anslutna appen>", "client_secret": "<konsumenthemlighet för den anslutna appen>" } Om begäran lyckas returneras följande JSON-svar: { "access_token": "<your-access-token>", "instance_url": "<your-org-base-url>", "ID": "https://login.salesforce.com/id/<id>/<id>", "token_type": "Bearer", "issued_at": "<timestamp>", "signature": "<unique-signature-code>" }

Utför begäranden

Instansens URL måste innehålla my.salesforce.com.

Exempel på en korrekt instans-url: https://abc-123.my.salesforce.com

Om du använder någon annan domän som instans-URL (dvs . https://abc-123.lightning.force.com ) resulterar det i statusen 401 Unauthorized med en INVALID_SESSION_ID errorCode returnerad.

Skapa röstsamtal (avsnitt)

Skapar en VoiceCall-post som innehåller deltagarna (d.v.s. uppringaren och mottagaren) för VoiceCall-posten. När du skapar en VoiceCall-post skapas en konversation i Salesforce. Använd endast denna API i en realtidskontext, vilket innebär att du endast ska anropa denna API när ett samtal initieras. Den här API kan också användas för att skapa VoiceCall-poster för överförings- och konferenssamtal genom att inkludera parametern parentVoiceCallId i nyttolasten request.

Slutpunkt URI

<instance_url>/tjänster/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall

HTTP-metod

PUBLICERA

Headers

Behörighet: Bärare <access_token>

Innehållstyp: program/json

Parametrar

{ "callCenterDevName": "contactCenterDevName123", "certDevName": "certDevName123", "vendorCallKey": "5324881f-1e84-4367-8930-f69a74b30ca6", "to": "8002345678", "from": "4081456688", "initiationMethod": "Inbound", "startTime": "2019-07-02T17:32:28Z", "participants": [ { "participantKey": "4081456688", "type" : "END_USER" } ], "callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}", "parentVoiceCallId": "fsdfzuhsdfsa-43556fgef3-56g44gv4ew", "callOrigin": "Förhandsgranskning", "kö": "queue123" }

En detaljerad beskrivning av de parametrar som accepteras av denna begäran finns i Salesforces officiella dokumentation under avsnittet "Parametrar".

Svar (lyckades)

{ "data": { "voiceCallId": "00X000012345abc" }, "errors": null, "success": true } 

Svar (med fel)

 { "data": null, "errors": ["Error message 1", "Error message 2"], "success": false }

Uppdatera röstsamtal

Uppdaterar röstsamtalet när samtalet har avslutats. Använd den här API för att uppdatera samtalsrelaterade parametrar som inte är tillgängliga när röstsamtalet skapas. Uppdatera VoiceCall API är en asynkron åtgärd. Du kan inte fråga efter status för API-samtalet.

Den här slutpunkten kan också användas för att skapa ett röstsamtal även efter att samtalet har avslutats. Det här beteendet är användbart i scenarier där du vill logga en post i Salesforce för övergivna eller missade samtal, eller för andra scenarier där ett röstsamtal inte redan har skapats.

Slutpunkt URI

<instance_url>/tjänster/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall

HTTP-metod

PUBLICERA

Headers

Behörighet: Bärare <access_token>

Innehållstyp: program/json

Parametrar

{ "callCenterDevName": "contactCenterDevName123", "certDevName": "certDevName123", "voiceCallId": "00X000012345abc", "startTime": "2020-08-26T21:21:14Z", "endTime": "2019-08-26T21:21:34Z", "isActiveCall": true, "fromNumber": "1234", "callOrigin": "Preview", "enqueueTime": "2019-08-26T21:21:34Z", "acceptTime": "2019-08-26T21:21:24Z", "numberOfHolds": 20, "queue": "queue123", "agent": "agent123", "agentInteractionDuration": 12, "longestHoldDuration" : 10, "totalHoldDuration": 21, "recordingLocation": "Bern", "totalRecordingDuration": 55, "callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}", "disconnectReason": { "value": "TELECOM_PROBLEM", "isError": true } }

En detaljerad beskrivning av de parametrar som accepteras av denna begäran finns i Salesforces officiella dokumentation under avsnittet "Parametrar".

Svar (lyckades)

{ "data": { "status": "väntar" }, "fel": null, "lyckades": sant }

Uppdatera VoiceCall API är en asynkron åtgärd. Du kan inte fråga efter status för API-samtalet.

Svar (med fel)

{ "data": null, "errors": ["Error message 1", "Error message 2"], "success": false }

Kör Omni-flow

Kör flerkanalsflödet för att dirigera samtal. Den skickar samtalet ID (Salesforce VoiceCallId eller telefonileverantörens kontakt-ID) som parametrar till flödet och returnerar agentens eller köens routningsinstruktioner till kontaktflödet. Som standard använder Service Cloud Voice det flerkanalsflöde (eller reservkö) som angetts för den telefonkanal som matchar det uppringda numret. Om det uppringda numret inte matchar en befintlig telefonkanal kan du välja att ange ett nytt uppringt nummer, flerkanalsflöde och reservkö som indataparametrar för det här API samtalet.

Service Cloud Voice använder den här prioritetsordningen för att dirigera samtal:

  1. Använder inställningarna Flerkanalsflöde och Återgångskö för den telefonkanal som matchar det uppringda numret. Flödet har företräde. Om flödet misslyckas används reservkön.
  2. Använder parametrarna flowDevName och fallbackQueue som anges i anropet Execute Omniflow API.

Slutpunkt URI

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow

HTTP-metod

PUBLICERA

Headers

Behörighet: Bärare <access_token>

Innehållstyp: program/json

Parametrar

{ "callCenterDevName": "contactCenterDevName123", "certDevName": "certDevName123", "voiceCallId": "00X000012345abc", "dialedNumber": "+18445791189", "flowDevName": "Route_VoiceCall", "fallbackQueue": "00G111222333444", "flowInputParameters": { "Input1": "one", "Input2": "two" } }

  • Parametern voiceCallId är Salesforce voiceCallId eller telefonileverantörens kontakt ID.
  • En detaljerad beskrivning av de parametrar som accepteras av denna begäran finns i Salesforces officiella dokumentation under avsnittet "Parametrar".

Svar (lyckades)

{ "data": { "queue": "queue info", "agent": "agent info" }, "errors": null, "success": true }

AGENT_INFO och QUEUE_INFO motsvarar fältet ExternalId i CallCenterRoutingMap

Svar (med fel)

{ "data": null, "errors": ["Error message 1", "Error message 2"], "success": false }

Tydlig dirigering

Tar bort PSR-posten (PendingServiceRouting) för ett röstsamtal. Den här API behöver inte anropas för de flesta scenarier. PSR-posten raderas automatiskt när samtalet inte längre dirigeras. Det finns dock vissa scenarier, till exempel för missade eller övergivna samtal när du använder partnertelefonisystem där du uttryckligen måste ringa detta API för att rensa PSR-posten.

Slutpunkt URI

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting

HTTP-metod

PUBLICERA

Headers

Behörighet: Bärare <access_token>

Innehållstyp: program/json

Parametrar

{ "callCenterDevName": "contactCenterDevName123", "certDevName": "certDevName123", "voiceCallId": "00X000012345abc" }

  • Parametern voiceCallId är Salesforce voiceCallId eller telefonileverantörens kontakt ID.
  • En detaljerad beskrivning av de parametrar som accepteras av denna begäran finns i Salesforces officiella dokumentation under avsnittet "Parametrar".

Svar (lyckades)

{ "data": { "status": "Lyckades" }, "fel": null, "lyckades": sant }

Svar (med fel)

{ "data": null, "errors": ["Error message 1", "Error message 2"], "success": false }

Översättningar av telefonnummer

Olika interaktioner mellan Service Cloud Voice och Webex Contact Center beror på översättningar av telefonnummer. På grund av internationella skillnader och kundspecifika applikationer behövs ett anpassningsbart verktyg för att överföra telefonnummer från format A till format B.

Lösningen Webex Contact Center för Service Cloud Voice tar automatiskt bort alla tecken utom siffror, hashtaggar (#), asterisker (*), kommatecken (,) och inledande plustecken (+). Den första förekomsten av (0) tas också bort. Detta kommer att göras INNAN dina telefonnummeröversättningar tillämpas.

I den här handboken beskrivs hur du konfigurerar översättningar av telefonnummer.

Fält

Översättningar av telefonnummer lagras i fälten Namn/Värde. Detta gör att du kan konfigurera ett obegränsat antal regler per funktion.

Konfigurationen lagras som en JSON-sträng.

Observera att omvända snedstreck måste escapes, t.ex. \d+ blir \\d+.

{"Ta bort alla tecken utom siffror":"[1,17]->[^\\d]+","Till internt nummer":"[7,17]->(\\d{7})(\\d{4})->$2"}

Fältet Namn används inte tekniskt. Det är där för att lägga till en läsbar sträng för att snabbt identifiera syftet med denna regel. Bra namn är till exempel: Ta bort alla inledande nollor,Lägg till inledande plus etc.

Skapa översättningsregler

Regler tillhandahålls som reguljära uttryck. För att vara mer exakt: JavaScript-implementeringen av reguljära uttryck.

Ett bra sätt att börja är att läsa RegExp-dokumentet från MDN-webbdokumenten.

Ändå är det ofta besvärligt att skapa komplexa reguljära uttryck. Därför har vi lagt till extra syntax för att göra konfigurationen så enkel som möjligt.

Bilden nedan visar den allmänna syntaxen för en övergångsregel för telefonnummer:

Predikat

Predikatet används för att ange ett intervall som definierar längden på numret som ska matchas.

Predikatet ovan anger att alla tal med en längd mellan 7 och 11 tecken (inklusive kanter + mellanslag) matchar.

Predikat matchar alltid numrets ursprungliga längd. Detta hjälper till att förenkla konfigurationen genom att minska risken för kolliderande regler för interna / externa nummer.

Mönster

Mönstret anger formatet på numret som ska matchas.

Mönstret ovan anger att numret endast får bestå av siffror och markerar dem.

Selector

Väljare definierar det slutliga formatet för numret. Om tecken / siffror måste läggas till som inte ursprungligen var närvarande, är det här platsen att göra det.

Väljaren är det sista steget i att bygga numret. Baserat på mönsterutdata bygger väljaren upp det nya numret.

Exempel 1

I följande exempel visas hur du överför ett nummer som tagits emot från kontaktcentret i formatet 0319175200 till det schweiziska E164-formatet +41 31 917 52 00.

I det här exemplet används två översättningsregler (1. och 2).

Den första regeln i det här exemplet ändrar faktiskt inte numret. För siffror mellan 1 och 17 tecken skulle allt annat än siffror tas bort. Eftersom det inte finns någon icke-siffra närvarande ändras ingenting.

Den andra regeln gäller siffror som är exakt 10 tecken långa (ursprungligen). 0319175200 matchar och därför tillämpas regeln. Mönstret anger att numret måste börja med en grupp med en siffra (\d{1}), följt av en grupp med två siffror (\d{2}), följt av en grupp med tre siffror (\d{3}) och så vidare.

Väljaren får sedan åtkomst till mönstergrupperna för att definiera den nya nummersträngen. Det betyder att $2 refererar till den första (\d{2}) och därför innehåller 31.

Exempel 2

I följande exempel visas hur du överför ett nummer som tagits emot från kontaktcentret i formatet +14693150217 till det amerikanska E164-formatet +1 469 315 0217.

I det här exemplet används två översättningsregler (1. och 2).

  1. Detta nummer är exakt 12 tecken långt, så regeln "Lägg till mellanslag i amerikanska nummer" tillämpas.
  2. (\+1) säger att numret måste börja med +1. Om siffran är 12 tecken lång, men inte börjar med +1, avbryts regeln och ingenting ändras.
  3. (\d{3}) säger att +1 måste följas av 3 siffror.
  4. (\d{3}) säger att de sista 3 siffrorna måste följas av ytterligare 3 siffror.
  5. (\d{4}) säger att de 3 sista siffrorna måste följas av 4 siffror.

Om något av detta inte matchar kommer numret inte att ändras.

Så alla regler gäller för "+14693150217". Därför ändras numret med "$ 1 $2 $3 $4":

  1. $1 refererar till gruppen (\+1), numret som ska skickas till Service Cloud Voice ser ut som +1.
  2. $2 refererar till den första av de två (\d{3}) ser numret som ska skickas till Service Cloud Voice ut som +1 469.
  3. $3 refererar till den andra av de två (\d{3}), numret som ska skickas till Service Cloud Voice ser ut så här: +1 469 315.
  4. $4 refererar till den sista gruppen (\d{4}), numret som ska skickas till Service Cloud Voice ser ut så här: +1 469 315 0217.

Mellanslagen i ersättningsdelen av regeln "$1 $2 $3 $4" används direkt. Så om du använder "$ 1- $ 2- $ 3- $ 4" skulle numret översättas till: +1-469-315-0217

Och du får också ta bort grupper: [12, 12]->(\+1)(\d{3})(\d{3})(\d{4})->$2 $3 $4 kommer att översättas till: 469 315 0217. [12, 12]->(\+1)(\d{3})(\d{3})(\d{4})-> $3 $4 kommer att översättas till: 315 0217.

Det är också möjligt att konvertera ett internationellt amerikanskt nummer till ett lokalt som: [12, 12]->(\+1)(\d{3})(\d{3})(\d{4})->($2) $3-$4.

Då kommer det inkommande numret "+14693150217" att översättas till: (469) 315-0217.

Exempel 3

I följande exempel visas hur du överför ett nummer som tagits emot från kontaktcentret i formatet +491515555531 till det tyska E164-formatet +49 151 5555 531.

I det här exemplet används två översättningsregler (1. och 2).

  1. Detta nummer är exakt 13 tecken långt, så regeln "Lägg till mellanslag till tyska nummer" tillämpas.
  2. (\+49) anger att numret måste börja med +49. Om siffran är 13 tecken lång, men inte börjar med +49, avbryts regeln och ingenting ändras.
  3. (\d{3}) säger att +49 måste följas av 3 siffror.
  4. (\d{4}) säger att de 3 sista siffrorna måste följas av 4 siffror.
  5. (\d{3}) säger att de sista 4 siffrorna måste följas av 3 siffror.

Om något av detta inte matchar kommer numret inte att ändras.

Så alla regler gäller för "+491515555531". Därför ändras numret med "$ 1 $2 $3 $4":

  1. $1 refererar till gruppen (\+49) ser numret som ska skickas till Service Cloud Voice ut som +49.
  2. $2 refererar till den första av de två (\d{3}) ser numret som ska skickas till Service Cloud Voice ut som +49 151.
  3. $3 refererar till den andra av de två (\d{4}), numret som ska skickas till Service Cloud Voice ser ut så här: +49 151 5555.
  4. $4 refererar till den sista gruppen (\d{3}), numret som ska skickas till Service Cloud Voice ser ut så här: +49 151 5555 531.

Detsamma gäller regel ett. Du kan använda ersättningsdelen $1 $2 $3 $4 för att välja vad du vill använda från numret.

Fler Regex-exempel för översättning

Beskrivning Översättning Regex
Ta bort alla tecken utom siffror [1,17]->[^\d]+
Ta bort alla tecken utom siffror & + [1,17]->[^+\d]+
Beskrivning Översättning Regex
Ta bort +1 [12,12]->(.{ 1})(\d{1})(\d{10})->$3
Ta bort +1 [10,12]->(^\+1+)(\d+)->$2
Ta bort +49 [10,15]->(^\+49+)(\d+)->$2
Ta bort +49 [10,15]->(.{ 1})(\d{2})(\d{9})->$3
Ta bort +41 [10,13]->(^\+41+)(\d+)->$2
Ta bort +41 [10,13]->(.{ 1})(\d{2})(\d{9})->$3
Ta bort +XX [10,14]->(^\++)(\d{2})(\d+)->$3
Beskrivning Översättning Regex
Ta bort + och ersätt den med nollor US E164 [10,12]->(.{ 1})(\d{1})(\d{10})-> 001 $3
Ta bort +1 och ersätt den med nollor US E164 [10,12]->(^\+1+)(\d+)-> 001$2
Ta bort + och ersätt den med nollor DE E164 [12,15]->(.{ 1})(\d{2})(\d{10})-> 0049 $3
Ta bort +49 och ersätt den med nollor DE E164 [10,12]->(^\+49+)(\d+)-> 0049$2
Ta bort + och ersätt den med nollor CH E164 [10,13]->(.{ 1})(\d{2})(\d{9})-> 0041 $3
Ta bort +41 och ersätt den med nollor CH E164 [10,12]->(^\+41+)(\d+)-> 0041$2
Beskrivning Översättning Regex
Amerikanskt nummer med mellanslag [12,17]->(\d{1})(\d{3})(\d{3})(\d{4})->+1 $2 $3 $4
Amerikanskt nummer med mellanslag [12,17]->(\+1)(\d{3})(\d{3})(\d{4})->$1 $2 $3 $4
DE-nummer med mellanslag [12,17]->(\d{2})(\d{3})(\d{4})(\d{3})->+49 $2 $3 $4
DE-nummer med mellanslag [12,17]->(\+49)(\d{3})(\d{4})(\d{3})->$1 $2 $3 $4
CH-nummer med mellanslag [12,17]->(\d{2})(\d{2})(\d{3})(\d{2})(\d{2})->+41 $2 $3 $4
CH-nummer med mellanslag [12,17]->(\+41)(\d{2})(\d{3})(\d{2})(\d{2})->$1 $2 $3 $4

Konfiguration av sidan VoiceCall

Konfigurera inspelningssidan för VoiceCall

Inspelningssidan för VoiceCall är förkonfigurerad som standard med en layout med tre kolumner och följande komponenter:

  • Åtgärder & rekommendationer
  • Anteckningar om samtal
  • Information om samtalet
  • Inspelningar

Komponenter kan fritt tas bort eller läggas till på sidan, beroende på affärsbehov. Olika sidlayouter kan också användas, men vissa komponenter, till exempel Call Recording Player och Conversation Body, får bara plats på medelstora och stora områden i mallen.

Visa avslutningsorsakskomponenten

Avslutningsorsakskomponenten måste visas under samtalet och under avslutningen.

Lägg till komponenten Cisco Avslutningsorsak på inspelningssidan för VoiceCall:

  1. Dra webbkomponenten Cisco Avslutningsorsak till blixtnedslag från området Anpassad i listan Lightning-komponenter till inspelningssidan för VoiceCall.
  2. Klicka på Spara.
  3. Klicka på Aktivera.
  4. Klicka på Tilldela som standardorganisation.
  5. Klicka på Spara.
  6. Klicka på Spara igen och klicka sedan på Bakåtpil för att återgå till sidan.

Komponenten Cisco Avslutningsorsak visas automatiskt under samtalet och under avslutningen:

Om komponenten Cisco avslutningsorsak läggs till på sidan visas den för varje samtal, även om ingen avslutning har konfigurerats i Cisco Contact Center.

Visa samtalsinspelningsspelaren

Call Recording Player visas om en inspelningslänk har sparats för motsvarande röstsamtal.

Följ dessa steg för att lägga till komponenten Call Recording Player på sidan VoiceCall Record Page:

  1. Dra webbkomponenten Call Recording Player Lightning till sidan VoiceCall Record
  2. Klicka på Spara.
  3. Klicka på Aktivera.
  4. Klicka på Tilldela som standardorganisation.
  5. Klicka på Spara.
  6. Klicka på Spara igen och klicka sedan på Bakåtpil för att återgå till sidan.

Webex Administratörer

Konfiguration av flöde

Popup-fönster

En "Screen Pop"-nod är tillgänglig i Webex Contact Center-flödet. Den kan användas för att utlösa en skärmpop inuti Service Cloud Voice eller i ett separat fönster.

Mer information om den här funktionen finns i dokumentationen till Flow Designer .

Screen Pop i ett separat fönster

För att öppna skärmpopen i ett separat fönster måste en absolut URL anges i noden "Screen Pop". queryParameters läggs till som sökparametrar i URL:en.

Följande lägen stöds:

  • Ny webbläsare Tab - Öppnar alltid en ny webbläsare Tab.
  • Befintlig webbläsare Tab - På den första skärmen Befintlig webbläsare Tab öppnas en ny webbläsare Tab. Den Tab kommer att vara den dedikerade Tab för efterföljande Befintlig webbläsare Tab skärmen dyker upp och webbadressen uppdateras inom den specifika webbläsaren Tab.
  • Inside Desktop - Hanteras på samma sätt som Ny webbläsare Tab.

Den sida som öppnas för tillfället kan förhindra omdirigering. I så fall öppnas en befintlig webbläsare Tab i en ny webbläsare Tab.

Var den här artikeln användbar?
Var den här artikeln användbar?