Wymagania wstępne

Obecnie ta funkcja ma zastosowanie tylko do agentów.

Przed zintegrowaniem Webex Contact Center z konsolą programu CRM ServiceNow upewnij się, że masz następujące elementy:

Wykonaj jedną z dwóch poniższych metod:

W przypadku wystąpień deweloperskich zalecamy wykonanie kroków opisanych w przewodniku po wystąpieniach dla programistów.

Jeśli posiadasz instancję licencjonowaną dla przedsiębiorstwa, postępuj zgodnie ze wskazówkami dotyczącymi instancji licencjonowanych dla przedsiębiorstwa.

Nie zalecamy mieszania aplikacji licencjonowanej dla przedsiębiorstwa z wystąpieniami piaskownicy deweloperów.

W poniższych sekcjach opisano kroki, aby zainstalować łącznik ServiceNow dla wystąpień deweloperów.

1

Zaloguj się do konta portalu deweloperów ServiceNow i otwórz konsolę administracyjną .

2

W obszarze Moje wystąpienie menu Konto kliknij polecenie Rozpocznij budowanie.

Zrzut ekranu portalu deweloperów ServiceNow z wyróżnionym przyciskiem "Rozpocznij budowanie".

3

W wystąpieniu programisty w polu Nawigator filtrów w lewym górnym rogu okna przejdź do pozycji Wtyczki.

Instancja programisty ServiceNow wyświetlająca wyszukiwanie nawigatora filtrów "plugins".

4

Wyszukaj wtyczkę Openframe o nazwie Openframe. Może być konieczne przewinięcie listy.

Wystąpienie programisty ServiceNow na ekranie Aplikacje, pokazujące wyszukiwanie i wyniki dla "OpenFrame".

5

Kliknij przycisk Instaluj , aby zainstalować wtyczkę Openframe.

6

W oknie dialogowym Aktywuj wtyczkę kliknij przycisk Aktywuj.

Instancja programisty ServiceNow wyświetlająca wyskakujące okienko wtyczki OpenFrame z podświetlonym przyciskiem "Aktywuj".

7

Po zakończeniu aktywacji wtyczki kliknij przycisk Zamknij i odśwież formularz w oknie dialogowym Aktywacja wtyczki .

Instancja programisty ServiceNow pokazująca ładowanie aktywacji wtyczki OpenFrame.

Instancja programisty ServiceNow pokazująca okno sukcesu aktywacji wtyczki OpenFrame z podświetlonym przyciskiem "Zamknij i załaduj ponownie formularz".

8

Aby zweryfikować aktywację wtyczki, w polu Nawigator filtrów w lewym górnym rogu okna przejdź do OpenFrame.

9

Kliknij Konfiguracje i upewnij się, że wtyczka OpenFrame pojawia się na liście Konfiguracje OpenFrame.

Wystąpienie dewelopera ServiceNow pokazujące konfiguracje OpenFrame w wyszukiwaniu nawigatora filtrów.

1

Pobierz najnowszy plik System Update Set XML dostępny w repozytorium github w tej lokalizacji : https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Nazwa Pliku: webexcc-servicenow-update-setV(X).xml

Zrzut ekranu repozytorium Github dla integracji Webex Contact Center CRM - ServiceNow.

2

W wystąpieniu usługi ServiceNow w polu Nawigator filtrów w lewym górnym rogu okna przejdź do pozycji Zestawy aktualizacji systemu> zestawy aktualizacji do zatwierdzenia.

Instancja programisty ServiceNow wyświetlająca wyszukiwanie w nawigatorze filtrów na karcie "Wszystkie" dla opcji "Zestaw aktualizacji" i "Aktualizuj zestawy do zatwierdzenia".

3

Kliknij łącze Importuj zestaw aktualizacji z XML .

Wystąpienie dewelopera ServiceNow na stronie wyników aktualizacji zestawów z wyróżnioną pozycją "Powiązane łącza: Importuj zestaw aktualizacji z XML".

4

Kliknij przycisk Wybierz plik, wybierz plik zestawu aktualizacji systemu XML, a następnie kliknij przycisk Prześlij.

Instancja dewelopera ServiceNow importuje XML ekranie.

Portal deweloperów ServiceNow pobrał listę zestawów aktualizacji.

Zestaw aktualizacji pojawi się na liście Pobrane zestawy aktualizacji i będzie w stanie Załadowano .
5

Na liście Pobrane zestawy aktualizacji kliknij nazwę pliku zestawu aktualizacji (łącze), aby otworzyć zestaw aktualizacji.

Portal deweloperów ServiceNow pobrał listę zestawów aktualizacji dla zaktualizowanego pliku.

6

W prawym górnym rogu okna kliknij przycisk Podgląd zestawu aktualizacji, aby sprawdzić, czy zestaw aktualizacji nie występuje.

Portal deweloperów ServiceNow pobrał listę zestawów aktualizacji dla zaktualizowanego pliku z wyróżnionym przyciskiem "Podgląd zestawu aktualizacji".

7

Kliknij przycisk Zamknij w oknie dialogowym Podgląd zestawu aktualizacji po zakończeniu podglądu.

Portal deweloperów ServiceNow z powiadomieniem o powodzeniu zestawu aktualizacji.

8

Kliknij przycisk Zatwierdź zestaw aktualizacji.

Portal deweloperów ServiceNow pobrał listę zestawów aktualizacji dla zaktualizowanego pliku z wyróżnionym przyciskiem "Zatwierdź zestaw aktualizacji".

9

Kliknij przycisk Zamknij w oknie dialogowym Zatwierdzenie zestawu aktualizacji po zakończeniu zatwierdzania zestawu aktualizacji.

Portal deweloperów ServiceNow z powiadomieniem o potwierdzeniu zatwierdzenia zestawu aktualizacji.

1

W polu Nawigator filtrów w lewym górnym rogu okna wpisz sys_properties.list i naciśnij enter.

Instancja programisty ServiceNow wyświetlająca wyszukiwanie w nawigatorze filtrów na karcie "Wszystkie" dla "sys_properties.list"

2

Na stronie Właściwości systemu posortuj właściwości według daty aktualizacji. Upewnij się, że Webex właściwości Contact Center są widoczne:

Strona właściwości systemu wystąpienia dewelopera ServiceNow.

3

Kliknij przycisk agentdesktop_url , aby otworzyć stronę agentdesktop_url Właściwości systemu.

4

W polu Wartość wprowadź adres URL programu Webex Contact Center Desktop zgodnie z regionem działania.

Szczegóły właściwości systemowej instancji dewelopera ServiceNow dla agentdesktop_url.

5

Kliknij przycisk Aktualizuj , aby zapisać zmiany.

6

(Opcjonalnie) Aby zmienić nazwę tabeli aktywności, edytuj właściwości webexccactivitytable zgodnie z wymaganiami.

Na stronie Właściwości systemu kliknij pozycję webexccactivitytable.

Zmień pole Wartość zgodnie z wymaganiami.

ServiceNow developer instance system property details for webexactivitytable.

7

(Opcjonalnie) Dodaj grupy użytkowników w następujący sposób:

  1. W polu Nawigator filtrów w lewym górnym rogu okna przejdź do pozycji Grupy w obszarze Zabezpieczenia systemu.

    ServiceNow developer instance filter navigator search for ‘Groups’ under ‘System Security’
  2. Utwórz nową grupę użytkowników lub użyj istniejącej.

    Strona grupy wystąpień dewelopera ServiceNow dla WebexccAgentsGroup.

  3. Kliknij przycisk Edycja.

  4. Wyszukaj sn_openframe_user w obszarze Kolekcja i przenieś je do swojej grupy użytkowników.

    Strona edycji grupy instancji dewelopera ServiceNow pokazująca wyszukiwanie kolekcji.

    Strona edycji grupy instancji dewelopera ServiceNow pokazująca kolekcję przeniesioną na listę ról.

  5. Kliknij przycisk Zapisz.

  6. Dodaj użytkownika jako członka grupy.

    Strona grupy wystąpień dewelopera ServiceNow z przypisanymi rolami użytkowników.

1

W polu Nawigator filtrów przejdź do OpenFrame > Configurations.

ServiceNow developer instance filters navigator with 'openframe' w polu wyszukiwania i 'Configurations' under 'OpenFrame' wyróżnione w wynikach.

2

Kliknij przycisk Nowy.

Strona konfiguracji OpenFrame instancji dewelopera ServiceNow z wyróżnioną opcją "Nowy".

3

Wprowadź następujące właściwości adresu URL:

  • Nazwa: Webex Contact Center Desktop

  • Tytuł: Webex Contact Center

  • Szerokość: 550 (zalecana)

  • Wysokość: 600 (zalecane)

4

Po prawej stronie pola Adres URL kliknij przycisk Zablokuj i dodaj agentdesktop.do jako adres URL. (Wykonaj ten krok, aby wskazać konfigurację strony interfejsu użytkownika)

Instancja programisty ServiceNow Konfiguracje OpenFrame — strona Nowy rekord z wyróżnioną ikoną kłódki.

5

(Opcjonalnie) Wybierz grupy użytkowników/agentów, do których ma zostać przypisana konfiguracja.

ServiceNow developer instance OpenFrame Configurations – wybór grupy użytkowników New Record.

6

Kliknij przycisk Wyślij. Adres URL zostanie wyświetlony jako łącze.

ServiceNow developer instance OpenFrame Configurations – New Record page shows the URL link that appears after submit the user group selections.

7

Przed próbą użycia telefonu OpenFrame upewnij się, że przesłałeś plik JSON niestandardowego układu pulpitu ServiceNow do portalu zarządzania centrum kontaktowego Webex. Aby uzyskać więcej informacji, zobacz Konfigurowanie układu pulpitu ServiceNow w Webex Contact Center.

1

Pobierz układ pulpitu dla ServiceNow z https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Ekran Github dla Webex Integracje CRM z centrum kontaktowym – układy pulpitu – ServiceNow.

2

W razie potrzeby zaktualizuj właściwości w pliku układu pulpitu.

3

Przejdź do portalu zarządzania centrum kontaktowego Webex.

4

Na pasku nawigacyjnym Management Portal wybierz pozycję Provisioning > Desktop Layout (Układ pulpitu).

Webex stronie obsługi administracyjnej Contact Center Management Portal z wyróżnionym układem pulpitu w lewym obszarze nawigacyjnym.

5

Kliknij przycisk Nowy układ i wprowadź szczegóły układu pulpitu.

6

Przekaż plik JSON układu pulpitu ServiceNow.

7

Kliknij przycisk Zapisz , aby zapisać konfigurację.

Teraz można uruchomić program Webex Contact Center Desktop w konsoli ServiceNow.

8

W polu Nawigator filtrów przejdź do obszaru roboczego Service Operations.

Strona główna ServiceNow z Webex Contact Center Agent Desktop zintegrowana z ServiceNow.

W poniższych sekcjach opisano kroki, aby zainstalować łącznik ServiceNow dla licencjonowanych wystąpień przedsiębiorstwa.

1

Zaloguj się do konta portalu deweloperów ServiceNow i otwórz konsolę administracyjną .

2

W obszarze Moje wystąpienie menu Konto kliknij polecenie Rozpocznij budowanie.

Zrzut ekranu portalu deweloperów ServiceNow z wyróżnionym przyciskiem "Rozpocznij budowanie".

3

W wystąpieniu programisty w polu Nawigator filtrów w lewym górnym rogu okna przejdź do pozycji Wtyczki.

Instancja programisty ServiceNow wyświetlająca wyszukiwanie nawigatora filtrów "plugins".

4

Wyszukaj wtyczkę Openframe o nazwie Openframe. Może być konieczne przewinięcie listy.

Wystąpienie programisty ServiceNow na ekranie Aplikacje, pokazujące wyszukiwanie i wyniki dla "OpenFrame".

5

Kliknij przycisk Instaluj , aby zainstalować wtyczkę Openframe.

6

W oknie dialogowym Aktywuj wtyczkę kliknij przycisk Aktywuj.

Instancja programisty ServiceNow wyświetlająca wyskakujące okienko wtyczki OpenFrame z podświetlonym przyciskiem "Aktywuj".

7

Po zakończeniu aktywacji wtyczki kliknij przycisk Zamknij i odśwież formularz w oknie dialogowym Aktywacja wtyczki .

Instancja programisty ServiceNow pokazująca ładowanie aktywacji wtyczki OpenFrame.

Instancja programisty ServiceNow pokazująca okno sukcesu aktywacji wtyczki OpenFrame z podświetlonym przyciskiem "Zamknij i załaduj ponownie formularz".

8

Aby zweryfikować aktywację wtyczki, w polu Nawigator filtrów w lewym górnym rogu okna przejdź do OpenFrame.

9

Kliknij Konfiguracje i upewnij się, że wtyczka OpenFrame pojawia się na liście Konfiguracje OpenFrame.

Wystąpienie dewelopera ServiceNow pokazujące konfiguracje OpenFrame w wyszukiwaniu nawigatora filtrów.

1

W polu Nawigator filtrów w lewym górnym rogu okna wpisz sys_properties.list.

Instancja programisty ServiceNow wyświetlająca wyszukiwanie w nawigatorze filtrów na karcie "Wszystkie" dla "sys_properties.list"

2

Na stronie Właściwości systemu posortuj właściwości według daty aktualizacji. Upewnij się, że Webex właściwości Contact Center są widoczne:

Wyniki strony właściwości systemu instancji dewelopera ServiceNow.

3

Kliknij przycisk agentdesktop_url , aby otworzyć stronę agentdesktop_url Właściwości systemu.

4

W polu Wartość wprowadź adres URL programu Webex Contact Center Desktop zgodnie z regionem działania.

Strona szczegółów właściwości systemowych instancji dewelopera ServiceNow dla agentdesktop_url.

5

Kliknij przycisk Aktualizuj , aby zapisać zmiany.

6

(Opcjonalnie) Aby zmienić nazwę tabeli aktywności, edytuj właściwości tabeli x_caci_webexcc.webexccactivitytable zgodnie z wymaganiami.

  1. Na stronie Właściwości systemu kliknij pozycję x_caci_webexcc.webexccactivitytable.

    Wyniki strony właściwości systemu wystąpienia dewelopera ServiceNow dla tabeli x_caci_webexcc.webexccactivitytable.

  2. Zmień pole Wartość zgodnie z wymaganiami.

    Strona właściwości systemowej instancji dewelopera ServiceNow dla x_caci_webexcc.webexccactivitytable.

7

(Opcjonalnie) Dodaj grupy użytkowników w następujący sposób:

  1. W polu Nawigator filtrów w lewym górnym rogu okna przejdź do pozycji Grupy w obszarze Zabezpieczenia systemu.

    Wyniki filtrowania instancji dewelopera ServiceNow dla "Grup".

    Strona grupy instancji dewelopera SeviceNow dla webexccagentsgroup.

  2. Kliknij przycisk Edytuj i dodaj następujące role:

    • sn_openframe_user

    • x_caci_webexcc.agent

    • agent_workspace_user

    • x_caci_webexcc.webexcc_imp_activity_user

    • x_caci_webexcc.webex_contact_center

    Strona grupy instancji dewelopera SeviceNow dla webexccagentsgroup z dodanymi rolkami.

1

W polu Nawigator filtrów przejdź do OpenFrame > Configurations.

ServiceNow developer instance filters navigator with 'openframe' w polu wyszukiwania i 'Configurations' under 'OpenFrame' wyróżnione w wynikach.

2

Kliknij przycisk Nowy.

Strona konfiguracji OpenFrame instancji dewelopera ServiceNow z wyróżnioną opcją "Nowy".

3

Wprowadź następujące właściwości adresu URL:

  • Nazwa: Webex Contact Center Desktop

  • Tytuł: Webex Contact Center

  • Szerokość: 550 (zalecana)

  • Wysokość: 600 (zalecane)

4

Po prawej stronie pola adresu URL kliknij przycisk Zablokuj i dodaj jako adres URL x_caci_webexcc_agentdesktop.do . (Wykonaj ten krok, aby wskazać konfigurację strony interfejsu użytkownika)

Instancja programisty ServiceNow Konfiguracje OpenFrame — strona Nowy rekord z wyróżnioną ikoną kłódki.

5

(Opcjonalnie) Wybierz grupy użytkowników/agentów, do których ma zostać przypisana konfiguracja.

ServiceNow developer instance OpenFrame Configurations – wybór grupy użytkowników New Record.

6

Kliknij przycisk Wyślij. Adres URL zostanie wyświetlony jako łącze.

ServiceNow developer instance OpenFrame Configurations – New Record with URL added.

7

W polu Nawigator filtrów przejdź do obszaru roboczego Service Operations.

Strona główna ServiceNow z Webex Contact Center Agent Desktop zintegrowana z ServiceNow.

8

(Opcjonalnie) Na liście Grupa użytkowników przenieś grupy użytkowników, które mogą uzyskiwać dostęp do programu Webex Contact Center Desktop, z pozycji Dostępne na Wybrane.

9

Przed próbą użycia telefonu OpenFrame upewnij się, że przesłałeś plik JSON niestandardowego układu pulpitu ServiceNow do portalu zarządzania centrum kontaktowego Webex. Aby uzyskać więcej informacji, zobacz Konfigurowanie układu pulpitu ServiceNow w Webex Contact Center.

1

Pobierz układ pulpitu dla ServiceNow z https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Ekran Github dla Webex Integracje CRM z centrum kontaktowym – układy pulpitu – ServiceNow.

2

W razie potrzeby zaktualizuj właściwości w pliku układu pulpitu.

3

Przejdź do portalu zarządzania centrum kontaktowego Webex.

4

Na pasku nawigacyjnym portalu zarządzania wybierz pozycję Provisioning > Desktop Layout.

Webex stronie obsługi administracyjnej Contact Center Management Portal z wyróżnionym układem pulpitu w lewym obszarze nawigacyjnym.

5

Kliknij przycisk Nowy układ i wprowadź szczegóły układu pulpitu.

6

Przekaż plik JSON układu pulpitu ServiceNow.

7

Kliknij przycisk Zapisz , aby zapisać konfigurację.

Teraz można uruchomić program Webex Contact Center Desktop w konsoli ServiceNow.

8

W polu Nawigator filtrów przejdź do obszaru roboczego Service Operations.

Strona główna ServiceNow z Webex Contact Center Agent Desktop zintegrowana z ServiceNow.

1

W polu Nawigator filtrów przejdź do pozycji Zdarzenia> Otwórz zdarzenie.

2

Kliknij prawym przyciskiem myszy pole dzwoniącego i kliknij Konfiguruj słownik.

Okno Zdarzenia wystąpienia dewelopera ServiceNow z wyróżnioną opcją Konfiguruj katalog.

3

Dodaj atrybuty oddzielone przecinkami"ref_contributions=show_phone,.

Okno zdarzenia wywołania wystąpienia dewelopera ServiceNow dla wpisu katalogu.

Teraz można rozpocząć korzystanie z programu Webex Contact Center Desktop w konsoli ServiceNow.

4

W polu Nawigator filtrów przejdź do obszaru roboczego Service Operations.

Strona główna ServiceNow z Webex Contact Center Agent Desktop zintegrowana z ServiceNow.

Obsługujemy logowanie do Agent Desktop za pomocą łączników WebRTC for Salesforce (SFDC) i Microsoft Dynamics (MS Dynamics).

Agent Desktop w konsoli ServiceNow

Przed nawiązaniem połączenia wychodzącego upewnij się, że zostały wykonane następujące czynności:

  • Utwórz punkt wejścia wybierania wychodzącego i skonfiguruj strategię punktu wejścia wybierania wychodzącego.

  • Włącz funkcję ANI wybierania wychodzącego dla profilu agenta.

  • Ustaw ANI wybierania na mapowanie numeru wybierania do punktu wejścia.

Więcej informacji można znaleźć w rozdziale Inicjowanie obsługi administracyjnej Cisco Webex Contact Center Podręczniku konfiguracji i administracji.

W polu Nawigator filtrów przejdź do obszaru roboczego Service Operations.

Strona główna ServiceNow z Webex Contact Center Agent Desktop zintegrowana z ServiceNow.

Informacje na temat korzystania z pulpitu można znaleźć na karcie Agent w pomocy Webex Contact Center.

Omówienie

W tym artykule omówiono kilka sposobów dostosowywania reguł biznesowych dla łącznika programu CRM ServiceNow.This article covers several ways to customize your business rules for the ServiceNow CRM connector. Zawiera szczegółowe informacje, w jaki sposób można dostosować przypadki użycia na podstawie reguł biznesowych, które są specyficzne dla ServiceNow.

Klient musi samodzielnie zarządzać tymi przypadkami użycia w usłudze ServiceNow.The customer must self manage these use cases on ServiceNow. Konfiguracja jest specyficzna dla ServiceNow, a nie Webex oprogramowania lub wiedzy Contact Center.

Jest to dokumentacja referencyjna ułatwiająca modyfikację reguł biznesowych. Programiści ServiceNow będą tworzyć reguły biznesowe i zarządzać nimi oraz zapewniać wsparcie.

Firma Cisco udostępnia jedynie przykładową dokumentację.

Poniższe sekcje zawierają szczegółowe informacje na temat konfigurowania, włączania i zarządzania widżetem Akcje dla wystąpień deweloperskich i korporacyjnych.

Zatwierdź widżet Aktualizacja zestawu czynności

W przypadku licencjonowanych wystąpień przedsiębiorstwa zainstaluj najnowszą aplikację Webex Contact Center ze sklepu ServiceNow.

Aby skonfigurować widżet Akcje dla wystąpień deweloperów, pobierz najnowszy plik XML Zestaw aktualizacji systemu dostępny w repozytorium github pod tą lokalizacją: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. Nazwa pliku to webexcc-servicenow-update-setv7-1-ActionsWidget.xml. Aby zatwierdzić zestaw aktualizacji dla widżetu Akcje, zobacz kroki od 2 do 9 w temacie Zatwierdź zestaw aktualizacji.

Włącz widżet Czynności

Użyj właściwości isWidgetDisplayEnabled , aby włączyć widżet Akcje. Nie wolno modyfikować wartości tej właściwości w sekcji bez głowy niestandardowego układu pulpitu. Właściwość jest zawsze ustawiona na false w sekcji bez głowy niestandardowego układu pulpitu. Wartość właściwości należy aktualizować tylko w sekcji panelu niestandardowego układu pulpitu.

Po włączeniu widżetu Czynności w niestandardowym układzie pulpitu można wykonać następujące czynności:

  • Zarządzanie rekordami aktywności — kliknij opcję Wyświetl/edytuj rekord aktywności, aby wyświetlić listę rekordów aktywności powiązanych z dzwoniącym.
  • Skojarz obiekty CRM — kliknij opcję Skojarz z rekordami działań, aby dodać do rekordu działania obiekty CRM, takie jak typ połączenia (przychodzące lub wychodzące), obiekt połączenia, notatki dotyczące połączeń itp.
  • Zarządzaj zdarzeniami — kliknij Utwórz zdarzenie. Zostanie utworzone nowe zdarzenie ze wstępnie wypełnionymi szczegółami osoby dzwoniącej. Możesz wprowadzić wymagane aktualizacje zdarzenia. Typ rekordu można modyfikować z incydentu na przypadek, moduł HR itd. zgodnie z własnymi wymaganiami. Aby zmienić typ rekordu, zmodyfikuj wartość właściwości typeOfRecord w konfiguracji widżetu Akcje. Na przykład:
    { "comp": "md-tab-panel", "attributes": { "slot": "panel", "class": "widget-pane" }, "children": [ { "comp": "agentx-custom-desktop", "script": "https://cx-crmconnector.ciscoccservice.com/servicenow/v5/dist/index.js", "properties": { "isWidgetDisplayEnabled": true, "typeOfRecord" : "Create Incident" }, "wrapper": { "title": "SNOW Actions !", "maximizeAreaName": "app-maximize-area" } } ] }
  • Dodaj notatki z połączenia na żywo — możesz przechwycić dodatkowe informacje o połączeniu w obszarze tekstowym i podsumować połączenie. Te notatki można zobaczyć jako notatki połączenia w rekordzie aktywności.

Zmiana kodu w ServiceNow

Skrypt zawiera zmiany
  1. Przejdź do nawigatora filtrów i wyszukaj Skrypt zawiera.

    Wybierz dołączone skrypty w obszarze Interfejs użytkownika systemu.

  2. Przefiltruj nazwę i wyszukaj propUtils.

  3. Zmień metodę UserGetSysId w Skrypcie.

    Aktualne:

    UserGetSysId: function () { 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; },

    Nowy przykładowy kod zdarzenia:

    UserGetSysId: function () { var opened_for; //Zmiany związane z incydentami var sysidlist = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if(user.next()) { opened_for=user.sys_id;//return user.sys_id; var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', opened_for); inc.addQuery('state','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { sysidlist.incsysid=inc.getUniqueValue(); }else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='telefon'; inc.short_description='Połączenie odebrane z '+ this.getParameter('value'); sysidlist.incsysid=inc.insert(); } } var grInt = new GlideRecordSecure('interakcja'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; return JSON.stringify(sysidlist); },

Zmiana metody na stronach interfejsu użytkownika
  1. Przejdź do nawigatora filtrów i wyszukaj stronę interfejsu użytkownika.

    Wybierz strony interfejsu użytkownika w obszarze Interfejs użytkownika systemu.

  2. Przefiltruj nazwę i wyszukaj AgentDesktop.

  3. Zmień Screenpop w skrypcie klienta.

    Aktualna funkcja:

    screen pop function 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: 'interaction', query: 'sys_id='+sysid });

    Przykładowy kod zdarzenia:

    screen pop function 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 Incident-related change var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_ id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid //'a2ba0ba62fd121106446cc96f699b6b8' }); } }

Jeśli informacje o dzwoniącym znajdują się w programie CRM i z tym kontaktem otwarto już nowe zdarzenie, aplikacja otworzy zdarzenie w toku

Jeśli informacje o dzwoniącym nie istnieją w programie CRM, aplikacja otworzy nowe zdarzenie

Jeśli informacje o dzwoniącym istnieją w programie CRM, aplikacja otworzy nowe zdarzenie ze wstępnie wypełnionymi szczegółami

Omówienie

Ten przypadek użycia opisuje szczegółowo proces dodawania dodatkowej kolumny do tabeli ServiceNow — webexcc_imp_activity i tworzenia sn_openframe_phone_log po zainstalowaniu łącznika programu CRM Webex CC for ServiceNow.

Domyślnie tabela zawiera pewne gotowe pola i wartości systemowe.

Można utworzyć więcej zmiennych specyficznych dla biznesu (zmiennych CAD) wewnątrz projektanta WebexCC Flow i dodać zmienne CAD w dzienniku aktywności po połączeniu ServiceNow, a także utrwalić to w danych tabeli aktywności po połączeniu.

Jest to tylko dokumentacja referencyjna - i pokazuje, jak to zrobić dla przykładowej zmiennej CAD o nazwie Nazwa klienta, która przechowuje nazwę klienta w IVR i publikuje ją w ServiceNow.

Oczekuje się, że deweloperzy partner + klient ServiceNow skonfigurują tę konfigurację i będą nią zarządzać, ponieważ jest to dostosowanie do istniejącego łącznika.

Firma Cisco udostępnia jedynie techniki dostosowywania i rozszerzania złącza.

W tym artykule zespół firmy Cisco potwierdził obsługę dodawania zmiennych CAD do dziennika aktywności i tabeli aktywności przy użyciu techniki opisanej poniżej:

Dodaj kolumnę do aktywności WebexCC IMP

  1. Edytuj tabelę w wersji deweloperskiej ServiceNow.

    Instancja dewelopera ServiceNow Tabela aktywności WebexCC IMP.

  2. Przejdź do nawigatora filtrów i wyszukaj studio.

    Nawigator filtru instancji programisty ServiceNow na karcie Wszystkie z "studio" wpisanym w filtrze.

    Wybierz Webex Contact Center

    Aplikacja Studio dla ServiceNow z otwartym oknem Wybierz aplikację.

    lub

    Aplikacja Studio dla ServiceNow z otwartym oknem Wybierz aplikację i zaznaczoną opcją "Wybierz aplikację Store do dostosowania".

    Aplikacja Studio dla ServiceNow z otwartym oknem "Wybierz aplikację Store do dostosowania" i wybraną opcją "Webex Contact Center".

    Aplikacja Studio dla ServiceNow ze szczegółami Webex pliku aplikacji Contact Center.

  3. Wybierz ikonę Aktywność WebexCC IMP stół

    Aplikacja Studio dla ServiceNow WebexCC Tabela aktywności IMP.

  4. Dodaj nową kolumnę, na przykład nazwa_klienta

    Aplikacja Studio dla ServiceNow WebexCC Tabela aktywności IMP przykład nowej kolumny.

    Aplikacja Studio dla ServiceNow WebexCC Tabela aktywności IMP przykład nowej kolumny z dodaną nową kolumną.

Dodaj kolumnę do dziennika telefonu

  1. Edytuj tabelę dziennika telefonu.

    Wystąpienie programisty ServiceNow wyszukaj tabelę dziennika telefonu.

    Tabela dziennika dziennika telefonu instancji programisty ServiceNow.

  2. Dodaj nową kolumnę, na przykład nazwa_klienta.

    Instancja programisty ServiceNow, tabela dziennika telefonu, przykłady nowych kolumn.

    ServiceNow developer instance phone log table new column example with new column added.

Mapa przekształcania aktywności WebexCC

Aplikacja Studio dla ServiceNow WebexCC Activity Transform Map.

Dodaj nową kolumnę, na przykład nazwa_klienta Mapowanie pól.

Aplikacja Studio dla ServiceNow WebexCC Activity Transform Map przykład nowej kolumny dla mapowania pól CustomerName.

Aplikacja Studio dla ServiceNow WebexCC Activity Transform Map przykład nowej kolumny z CustomeName wybraną w polu Target.

Personalizowanie kolumn listy

Aplikacja Studio dla ServiceNow WebexCC Activity Transform Map z wyskakującym oknem do spersonalizowanych kolumn listy. Opcja Akcja wyboru jest wyróżniona w kolumnie Wybrane.

Zgodnie z zaleceniami usługi zmień akcję Wybór z utwórz na ignoruj.

Aplikacja Studio dla ServiceNow WebexCC Activity Transform Map z kolumną akcji Wybór z menu rozwijanym do wyboru "ignoruj" lub "utwórz".

Aplikacja Studio dla ServiceNow WebexCC Activity Transform Map z kolumną akcji Wybór i wyróżnioną opcją "ignoruj" w polu źródła nazwy klienta.

Konfigurowanie listy dzienników telefonu

Aplikacja Studio dla ServiceNow konfiguruje listę dzienników telefonu z wyróżnioną nazwą klienta w kolumnie Selected.

Przejdź do Dołącz skrypt

Dodawanie tylko jednego wiersza webexcc.u_customername=actInfo.CustomerName Do propUtils.

ServiceNow developer instance filter navigator search for "script includes".

ServiceNow developer instance Script Includes page.

Przykładowy skrypt

Zobacz linię: webexcc.u_customername=actInfo.CustomerName; z komentarzem wspierającym.

var propUtils = Class.create(); propUtils.prototype = Object.extendsObject(global. AbstractAjaxProcessor,{ getWebexccProp: function () { var webexccprop = {}; webexccprop.instanceurl= 'https://'+gs.getProperty('instance_name')+'.service-now.com/'; webexccprop.url=gs.getProperty('x_caci_webexcc.agentdesktop_url'); // webexccprop.popupurl=gs.getProperty('x_caci_webexcc.screenpop_url'); return JSON.stringify(webexccprop); }, UserGetSysId: function () { 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('interakcja'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.insert(); powrót sysid; }, setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('x_caci_webexcc.webexccactivitytable')); webexcc.addQuery("callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { webexcc.ani = actInfo.ani; webexcc.dnis =actInfo.dnis; webexcc.queuename =actInfo.queuename; webexcc.wrapuptime =actInfo.wrapuptime; webexcc.callduration =actInfo.CallDurationInSeconds; webexcc.ringingtime =actInfo.ringingtime; webexcc.activitydate =actInfo.ActivityDate; webexcc.callobject =actInfo.CallObject; webexcc.calltype =actInfo.CallType; webexcc.calldisposition=actInfo.CallDisposition; Ten wiersz jest dodawany, aby przechwycić go w dzienniku aktywności webexcc.u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); Działania w rejestrze incydentów; 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); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(actInfoString),null,2); inc.comments =jsonPretty; inc.update(); } } } powrót sys_id; }, wpisz: 'propUtils' });

Tworzenie zmiennej CAD w projektancie Flow

Webex projektant zmiennego przepływu w programie Contact Center CAD z wyskakującym okienkiem Dodaj zmienną przepływu dla CustomerName.

Dodawanie zmiennej CAD do układu pulpitu

Przykład.

"CadName1:SnowField1,CadName2:SnowField2" CadName1 to CustomerName SnowField1 jest również używany jako CustomerName, który jest częścią przykładowego scirpt pokazanego powyżej "actInfo.CustomerName".

Przykładowy kod źródłowy służący do dodawania zmiennej CAD do układu pulpitu.

Zrzuty ekranu demonstracyjne

Wyświetl nowo dodaną zmienną CAD w tabeli Aktywność WebexCC.

ServiceNow przykład nowo dodanej zmiennej CAD w tabeli Aktywność WebexCC, pokazujący "Customer Name" w wyskakującym okienku Cisco WebexCC.

ServiceNow przykład nowo dodanej zmiennej CAD w tabeli Aktywność WebexCC, pokazujący "CustomerName" w sekcji komentarzy w sekcji "Aktywność" i "Administrator systemu".

Przykład instancji programisty ServiceNow nowo dodanej zmiennej CAD w tabeli Aktywność WebexCC, pokazujący kolumnę "CustomerName".

Tworzenie zmiennej CAD dla programu Flow Designer

Pilność incydentu

Webex Projektant przepływu Contact Center tworzy ekran zmiennych CAD pokazujący okno podręczne Edytuj zmienną przepływu dla zmiennej przepływu pilności incydentu.

Wpływ incydentu

Webex Projektant przepływu Contact Center tworzy ekran zmiennych CAD pokazujący okno podręczne Edytuj zmienną przepływu dla zmiennej przepływu pilności incydentu.

Aktualizacja skryptu usługi Teraz

Aktualizacje skryptu obejmują:

  1. Przejdź do nawigatora filtrów i wyszukaj dołączenia skryptu

    Wybierz opcję Dołącza skrypt w obszarze Interfejs użytkownika systemu.

    ServiceNow developer instance filter navigator search for 'script includes'

  2. Przefiltruj nazwę za pomocą propUtils.

    ServiceNow developer instance Script Zawiera filtr nazw według 'propUtils'

  3. Zmień metodę UserGetSysId W polu Skrypt .

    ServiceNow developer instance Script Includes – strona szczegółów propUtils.

    Aktualny skrypt:

    UserGetSysId: function () { 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; },

    Nowy przykładowy kod zdarzenia:

    UserGetSysId: function () { var opened_for; var sysidlist = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if(user.next()) { opened_for=user.sys_id;//return user.sys_id; var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', opened_for); inc.addQuery('state','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { sysidlist.incsysid=inc.getUniqueValue(); }else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='telefon'; inc.urgency=this.getParameter('IncUrgency'); inc.impact=this.getParameter('Impact'); inc.short_description='Połączenie odebrane z '+ this.getParameter('value'); sysidlist.incsysid=inc.insert(); } } var grInt = new GlideRecordSecure('interakcja'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefon'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; return JSON.stringify(sysidlist);//sysid; },

Zmiana metody na stronach interfejsu użytkownika
  1. Przejdź do nawigatora filtrów i wyszukaj strony interfejsu użytkownika.

    Wybierz opcję Strony interfejsu użytkownika w obszarze Interfejs użytkownika systemu.

    Wyszukiwanie nawigatora instancji dewelopera ServiceNow dla "strony interfejsu użytkownika"

  2. Przefiltruj strony interfejsu użytkownika za pomocą nazwy i wyszukaj agentdesktop .

    ServiceNow developer instance UI page filter nazwy, aby wyszukać 'agentdesktop'

  3. Zmień Screenpop W polu skryptu.

    ServiceNow developer instance UI Page – strona szczegółów pulpitu agenta.

    Aktualna funkcja:

    screen pop function 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: 'interaction', query: 'sys_id='+sysid }); }

    Przykładowy kod zdarzenia:

    screen pop function screenpop(callerani,callSessionInfo) { var Impact=3; if(callSessionInfo.callAssociatedData.Impact != null && callSessionInfo.callAssociatedData.Impact != undefined) { Impact=callSessionInfo.callAssociatedData.Impact.value; } var IncUrgency=3; if(callSessionInfo.callAssociatedData.Urgency != null && callSessionInfo.callAssociatedData.Urgency != undefined) { IncUrgency=callSessionInfo.callAssociatedData.Urgency.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: 'incident', query: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); }

Jeśli informacje o dzwoniącym istnieją w programie CRM i nie ma nowego ani nietrwającego zdarzenia, aplikacja otworzy nowe zdarzenie

ServiceNow przykład incydentu.

ServiceNow przykład interakcji.

Zmień kod na ServiceNow

Dodaj nowe kolumny do Aktywność WebexCC IMP stół

Otwórz okno Aktywność WebexCC IMP stół

Instancja programisty ServiceNow WebexCC Activity TransformMap.

Strona szczegółów WebexCC Activity TransformMap instancji programisty ServiceNow.

Dodawanie nowej kolumny — InteractionsNumber

Instancja programisty ServiceNow WebexCC Activity TransformMap nowa kolumna, InteractionNumber.

ServiceNow developer instance WebexCC Activity TransformMap details page z dodaną nową kolumną 'interactionnumber'.

Dodawanie nowej kolumny — IncidentNumber

Strona szczegółów WebexCC Activity TransformMap instancji programisty ServiceNow pokazująca dodanie nowej kolumny "incidentnumber".

Kliknij Aktualizuj .

Strona szczegółów WebexCC Activity TransformMap instancji dewelopera ServiceNow pokazująca edycję maksymalnej długości kolumny IncidentNumber.

ServiceNow developer instance WebexCC Activity TransformMap details page z dodaną nową kolumną 'incidentnumber'.

Dodaj nowe kolumny do Dziennik telefonu stół

Otwórz okno Dziennik telefonu stół

Instancja programisty ServiceNow Tabela dziennika telefonu.

Dodawanie nowej kolumny — InteractionsNumber

ServiceNow developer instance Directory Entry — New Record page shows a new column for InteractionsNumber.

ServiceNow Developer instance Phone Log table z dodaną kolumną InteractionsNumber (Numer_interakcji).

Dodawanie nowej kolumny — IncidentNumber

ServiceNow developer instance Directory Entry — strona New Record zawierająca nową kolumnę dla IncidentNumber.

Wystąpienie programisty ServiceNow Tabela dziennika telefonu z dodaną kolumną IncidentNumber.

Mapa przekształcania aktywności WebexCC

Otwórz Przekształć mapę Z nawigatora filtrów

ServiceNow developer instance filter navigator search for 'transform map'

Instancja programisty ServiceNow Tabela przekształcania map pokazująca aktywność WebexCC TransformMap w wynikach.

Kliknij na WebexCC Activity TransformMap

Instancja programisty ServiceNow WebexCC Activity TransformMap.

Dodaj nowy — dla mapy numerów interakcji

Instancja programisty ServiceNow WebexCC Activity TransformMap z 'InteractionNumber' wprowadzonym w 'Target field'

Instancja programisty ServiceNow WebexCC Activity TransformMap z dodanym 'InteractionNumber'.

Dodaj nowy — dla mapy numerów zdarzeń

Instancja programisty ServiceNow WebexCC Activity TransformMap z 'IncidentNumber' wprowadzonym w 'Target field'

Kliknij przycisk Aktualizuj.

Instancja programisty ServiceNow WebexCC Activity TransformMap z dodanym 'IncidentNumber'.

Zmiany w skrypcie obejmują:

  1. Przejdź do nawigatora filtrów i wyszukaj "skrypt zawiera".

    Wybierz dołączone skrypty w obszarze Interfejs użytkownika systemu.

    Nawigator filtru instancji programisty ServiceNow z wyszukiwaniem "skrypt zawiera"

  2. Filtruj nazwę za pomocą propUtils.

    Instancja programisty ServiceNow Script Includes z filtrem Nazwa zastosowanym do wyszukiwania i 'propUtils' wpisanym w polu wyszukiwania.

  3. Zmień metodę setWebexcctable.

    ServiceNow developer instance Script includes - strona propUtils

    Nowy przykładowy kod dla zdarzenia:

    setWebexcctable: function () { 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']; usuń actInfo['incident_sys_id']; if( interactionsysid!= null && interactionsysid != undefined){ var inte = new GlideRecordSecure('interaction'); //inte.get('sys_id', interactionsysid ); inte.addQuery('sys_id', interactionsysid ); inte.query(); if (inte.next()) { intenum=inte.number; // inte.setValue('state','Closed Complete'); inte.work_notes='Update State to closed.'; inte.update(); } } if( incsysid!= null && incsysid != undefined){ var inci = new GlideRecordSecure('incident'); inci.addQuery('sys_id', incsysid ); inci.query(); if (inci.next()) { incnum=inci.number; var jsonPretty = JSON.stringify(actInfo,null,2); //JSON.stringify(JSON.parse(actInfoString),null,2); inci.comments =jsonPretty; inci.update(); } }else{ var suser = new GlideRecordSecure("sys_user"); suser.addQuery("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.ringingtime; webexcc.u_activitydate =actInfo.ActivityDate; webexcc.u_callobject =actInfo.CallObject; webexcc.u_calltype =actInfo.CallType; webexcc.u_calldisposition=actInfo.CallDisposition; webexcc.u_incidentnumber=incnum; webexcc.u_interactionsnumber=intenum; sys_id=webexcc.insert(); } powrót sys_id; },

Zmiany metod na stronach interfejsu użytkownika

  1. Przejdź do nawigatora filtrów i wyszukaj Strony interfejsu użytkownika

    Wybierz opcję Strony interfejsu użytkownika w obszarze Interfejs użytkownika systemu.

    Nawigator filtru instancji dewelopera ServiceNow z wyszukiwaniem "Strona interfejsu użytkownika"

  2. Przefiltruj strony interfejsu użytkownika za pomocą nazwy i wyszukaj agentdesktop .

    Strony interfejsu użytkownika instancji dewelopera ServiceNow z filtrem Nazwa zastosowanym do wyszukiwania.

  3. Zmień nowDziałania i screenpop W skrypcie.

    Strona interfejsu użytkownika instancji programisty ServiceNow – agentdesktop.

    Aktualna funkcja:

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

    Przykładowy kod zdarzenia:

    function nowActivities(actInfo, ani) { var sysObjstr = window.localStorage.getItem("screenpopinteraction"); if(sysObjstr != null && sysObjstr != undefined) { var sysObjjson=JSON.parse(sysObjstr); actInfo.interaction_sys_id=sysObjjson.sysid; actInfo.incident_sys_id=sysObjjson.incsysid; } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'setWebexcctable'); gaout.addParam('actInfo', JSON.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML(SetCCsysId); } function screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); // var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); } 

Wyniki po aktualizacji

Strona dzienników telefonu instancji dewelopera ServiceNow.

Poniższe dostosowania dotyczą wersji 1.0.5 i starszych. Aby uzyskać informacje na temat dostosowań dla nowszych wersji 1.0.7 i nowszych, wykonaj powyższe kroki.

Dostosowywanie # 1 - Dodawanie niestandardowych reguł biznesowych dla przypadków użycia przepływu połączeń

Tworzenie nowego rekordu zdarzenia dla każdego połączenia

Dla każdego nowego połączenia do łącznika WebexCC CRM w ServiceNow utwórz nowy rekord zdarzenia.

  1. Wyszukiwanie reguł biznesowych w nawigatorze filtrów

    ServiceNow developer instance Business Rules page header.
  2. Kliknij przycisk Nowy.

    ServiceNow developer instance Business Rule – New Record.

    Przykładowy kod w celach informacyjnych:

    function 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; if (view == null || view == '') view = "itil"; var userID = null; if (eid != null & eid != '') { userID = UserGetSysId("employee_number",eid); } if (userID == null && name != null && name != '') { userID = UserGetSysId("name", imię i nazwisko); } if (userID == null && phone != null && phone != '') { userID = UserGetSysId("phone", phone); } if (userID != null) { if (fQuery.length > 0) fQuery += "ˆ"; fQuery += "caller_id=" + userID; } if (url == null) { url = "incident.do?sys_id=-1"; if (fQuery != null) url += "&sysparm_query=" + fQuery; } answer = url; zwrotny adres URL; } function UserGetSysId(field, value) { var user = new GlideRecord("sys_user"); user.addQuery(field, value); user.query(); if (user.next()) return user.sys_id; else return null; }

    Przykładowa konfiguracja reguły biznesowej

    ServiceNow developer instance Business Rule – CTI Processing For Incident page as a sample configuration of the business rule.
  3. Włącz wywoływanie klienta

    ServiceNow developer instance Business Rules page with the Personalized List Columns popup screen showing ‘Client callable’ in the ‘Selected’ column.

    Przetwarzanie CTI Computer Telephony Integration (Computer Telephony Integration) dla zdarzenia jest oznaczone jako Prawda.

    ServiceNow developer instance Business Rules page showing the Client callable column with options to select ‘true’ or ‘false’
  4. Zaktualizuj adres URL ekranu przy użyciu niestandardowej reguły CTI"cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

    System Property page for screenpop_url showing update to the custom CTI rule in the ‘Value’ field.
Przykład.

sysparm_cti_rule =nazwa , gdzie 'name' jest nazwą funkcji , ma być wywoływana dla CTI Przetwarzanie , a nie używanie skryptu domyślnego.

Zdefiniuj funkcję w sys_script wpisie oznaczonym jako wywoływany przezklienta.

Jeśli musisz wstawić, zaktualizować lub usunąć jakiekolwiek GlideRecords w funkcji, wywołaj oddzielną niekliencką funkcję wywoływania, aby wykonać aktualizacje.

Aby umożliwić wywoływanie skryptu przez klienta, należy zaznaczyć pole wyboru client-callable w formularzu wyświetlanym po wyświetleniu wpisu sys_script.

Pole wyboru klient-callable nie jest domyślnie wyświetlane. Aby wyświetlić, należy zmodyfikować pola wyświetlane w formularzu za pomocą ikony koła zębatego i mechanizmu wiadra błota pośniegowego.

Odwołania

Dostosowywanie # 2 - Dodawanie zmiennej CAD w tabeli aktywności centrum kontaktowego Webex

Omówienie

Ten artykuł zawiera szczegółowe informacje na temat procesu dodawania dodatkowej kolumny do tabeli ServiceNow — webexcc_activity, która jest tworzona po zainstalowaniu łącznika programu CRM Webex CC for ServiceNow.

Domyślnie tabela zawiera gotowe pola systemowe i wartości.

Można potencjalnie utworzyć więcej zmiennych specyficznych dla biznesu (zmiennych CAD) wewnątrz projektanta WebexCC Flow i dodać te zmienne CAD w dzienniku aktywności po wywołaniu ServiceNowi utrwalić to w danych tabeli aktywności po połączeniu.

  • Jest to tylko dokumentacja referencyjna - i pokazuje, jak to zrobić dla przykładowej zmiennej CAD o nazwie Nazwa klienta, która przechowuje nazwę klienta w IVR i publikuje ją w ServiceNow.

  • Programiści partner + klient ServiceNow skonfigurują tę konfigurację i będą nią zarządzać, ponieważ jest to dostosowanie do istniejącego łącznika.

  • Firma Cisco dostarczy jedynie techniki dostosowywania i rozszerzania łącznika.

  • W tym artykule zespół firmy Cisco potwierdził obsługę dodawania zmiennych CAD do dziennika aktywności i tabeli aktywności przy użyciu techniki opisanej poniżej.

Dodawanie kolumny do aktywności WebexCC
  1. Edytuj tabelę w wersji deweloperskiej ServiceNow.

    ServiceNow developer instance Table – WebexCC Activity page.
  2. Przejdź do Centrum kontaktowego Studio >Webex.

    ServiceNow developer instance filter navigator search for ‘studio’  highlighting the cross launch search result for ‘App Engine Studio’

    App Engine Studio Select Application screen showing Webex Contact Center in the search results.

    App Engine Studio Webex Contact Center screen.

  3. Wybierz tabelę aktywności WebexCC.

    App Engine Studio WebexCC Activity table.
  4. Na przykład CustomerName.

    App Engine Studio WebexCC Activity table column edit example for ‘CustomerName’ column.

    App Engine Studio WebexCC Activity table screen.

  5. Wybierz Układ listy dla aktywności WebexCC.

    App Engine Studio WebexCC Activity table list layout showing ‘CustomerName’ highlighted in the ‘Selected’ column.
Tworzenie nowego skryptu zawiera

Ten krok nie jest wymagany w przypadku korzystania z zestawu aktualizacji XML — do propUtils należy dodać tylko jeden wiersz "webexcc.u_customername=actInfo.CustomerName".

ServiceNow developer instance filter navigator search for ‘script includes’

ServiceNow developer instance Script Includes page with ‘Application’ in the filter.

ServiceNow developer instance Script Includes – New Record page.

Przykładowy skrypt

Zobacz wiersz z:webexcc.u_customername=actInfo.CustomerName; z komentarzem wspierającym.

var propUtils2 = Class.create(); propUtils2.prototype = Object.extendsObject(global. AbstractAjaxProcessor,{ getWebexccProp: function () { var webexccprop = {}; webexccprop.instanceurl= 'https://'+gs.getProperty('instance_name')+'.service-now.com/'; webexccprop.url=gs.getProperty('x_caci_webexcc.agentdesktop_url'); webexccprop.popupurl=gs.getProperty('x_caci_webexcc.screenpop_url'); return JSON.stringify(webexccprop); }, setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('x_caci_ webexcc.webexccactivitytable')); webexcc.addQuery("callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { webexcc.ani = actInfo.ani; webexcc.dnis =actInfo.dnis; webexcc.queuename =actInfo.queuename; webexcc.wrapuptime =actInfo.wrapuptime; webexcc.callduration =actInfo.CallDurationInSeconds; webexcc.ringingtime =actInfo.ringingtime; webexcc.activitydate =actInfo.ActivityDate; webexcc.callobject =actInfo.CallObject; webexcc.calltype =actInfo.CallType; webexcc.calldisposition=actInfo.CallDisposition; // Ten wiersz jest dodawany - aby przechwycić go w dzienniku aktywności webexcc. u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); Działania w rejestrze incydentów; 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); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(acting string),null,2); inc.comments =jsonPretty; inc.update(); } } } powrót sys_id; }, wpisz: 'propUtils2' });
Edytowanie strony interfejsu użytkownika przy użyciu nowej nazwy skryptuApp Engine Studio agentdesktop UI page with new script name.

Tworzenie zmiennej CAD w projektancie FlowWebex Contact Center flow designer with Add Flow Variable popup showing adding a CustomerName variable.

Dodawanie zmiennej CAD do układu pulpituWebex Contact Center CAD variable to the desktop layout script with ‘CustomerName:CustomerName’ highlighted.

Zrzuty ekranu demonstracyjne

Wyświetl nowo dodaną zmienną CAD w tabeli Aktywność WebexCC.

ServiceNow developer instance showing newly added CAD variable in the WebexCC Activity table.

ServiceNow developer instance WebexCC Activities screen.