Предварительные условия

Перед интеграцией Webex контакт-центра с консолью ServiceNow ONLINE убедитесь, что в наличии следующего:


 

Выполните один из двух способов, приведенных ниже:

Для экземпляров разработчика рекомендуется следовать инструкциям, приведенным в руководстве по экземплярам для разработчика.

Если у вас есть экземпляр, имеющий лицензию предприятия, следуйте приведенным правилам для экземпляров, лицензируемых предприятием.

Мы не рекомендуем смешивать приложение, лицензирующееся на предприятии, с экземплярами песочницы разработчика.

В следующих разделах описываются действия по установке соединителя ServiceNow для экземпляров разработчика.

1

Войдите в учетную запись на портале разработчика ServiceNow и откройте консоль " Администрирование ".

2

В области "Мой экземпляр" меню " Учетная запись " щелкните "Начать создание".

3

На экземпляре разработчика в поле "Навигатор фильтров" в левом верхнем углу окна перейдите в раздел "Подключаемые модули".

4

Найдите подключаемый модуль Open рамки, имеющий название Open рамки. Возможно, вам придется прокрутить список.

5

Нажмите Кнопку "Установить" , чтобы установить подключаемый модуль Open раммейл.

6

В диалоговом окне «Активация подключаемого модуля » нажмите « Активировать».

7

По завершении активации плагина нажмите " Закрыть и перезагрузить форму " в диалоговом окне "Активация плагина".

8

Чтобы проверить активацию плагина, в поле "Навигатор фильтров" в левом верхнем углу окна перейдите к разделу OpenХехакер.

9

Щелкните « Конфигурации» и убедитесь, что подключаемый модуль Open Хефрейм отображается в списке конфигурацийOpenя.ов .

1

Загрузите последнюю версию набора обновлений системы XML файл, доступный на сайте github repo по адресу : https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Имя файла: webexcc-servicenow-update-setV(X).xml

2

В экземпляре ServiceNow в поле "Навигатор фильтров" в левом верхнем углу окна перейдите к "Наборы обновлений системы> Update Sets to Commit .

3

Щелкните набор обновления для импорта из XML link.

4

Щелкните "Выбрать файл", выберите XML файл набора обновлений системы и нажмите " Отправить".

Набор обновлений появляется в списке "Извлеченные наборы обновлений" и находится в состоянии " Загружено ".
5

В списке "Извлеченные наборы обновлений" щелкните имя файла набора обновлений (ссылку), чтобы открыть набор обновлений.

6

В правой верхней части окна щелкните "Предварительный просмотр набора обновлений" , чтобы проверить наличие неполадок в наборе обновлений.

7

Нажмите Кнопку " Закрыть " в диалоговом окне "Предварительный просмотр набора обновлений" по завершении предварительного просмотра.

8

Щелкните «Установить обновление»

9

Щелкните Закрыть диалоговое окно «Фиксация набора обновлений» по завершении фиксации набора обновлений.

1

В поле "Навигатор фильтров" в верхней левой части окна введите sys_properties.list и нажмите "Ввод".

2

На странице "Свойства системы" сортируйте свойства по дате обновления. Убедитесь, что Webex свойствах контакт-центра отображаются следующие свойства:

3

Щелкните agentdesktop_url , чтобы открыть страницу "Agentdesktop_url свойства системы".

4

В поле "Значение " введите URL для рабочего места Webex Contact Center Desktop в соответствии с регионом операции.

5

Нажмите Кнопку "Обновить" , чтобы сохранить изменения.

6

(Необязательно) Чтобы изменить имя таблицы действий, измените свойства Webexccactivitytable .

На странице "Свойства системы" щелкните Webexccactivitytable.

Измените поле " Значение " требуемым образом.

7

(Необязательно) Добавьте группы пользователей следующими способами:

  1. В поле "Навигатор фильтров" в верхней левой части окна перейдите к разделу "Группы" в разделе "Безопасность системы".

  2. Создайте новую группу пользователей или используйте существующую.

  3. Щелкните Изменить.

  4. Найдите sn_openframe_user в разделе "Коллекция" и перенесите его в группу пользователей.

  5. Нажмите Сохранить.

  6. Добавьте пользователя в качестве участника группы.

1

В поле "Навигатор фильтров" перейдите в раздел OpenХерик> Configurations.

2

Щелкните Создать.

3

Введите следующие свойства для URL::

  • Имя: Webex Contact Center Desktop

  • Название: контакт-центр Webex

  • Ширина: 550 (рекомендуется)

  • Высота: 600 (рекомендуется)

4

Справа от поля URL щелкните кнопку «Блокировать» и добавьте agentdesktop.do в качестве URL-адреса. (Чтобы указать страницу конфигурации на страницу пользовательского интерфейса, выполните этот шаг)

5

(Необязательно) Выберите группы пользователей и операторов для назначения конфигурации.

6

Нажмите Отправить. URL отображается как ссылка.

7

Перед тем, как использовать телефон с OpenКилтер, убедитесь в загрузке файла МАКЕТа пользовательского рабочего стола ServiceNow НА ПОРТАЛ управления Webex Contact Center Management Portal. Дополнительные сведения см. в разделе «Настройка макета ServiceNow Desktop» в Webex Contact Center.

1

Загрузите макет рабочего стола для ServiceNow от https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

2

При необходимости обновите свойства в файле макета рабочего стола.

3

Перейдите на Webex портал управления контакт-центром.

4

На панели навигации на портале управления выберите «Выделение ресурсов > Desktop Layout»

5

Щелкните Новый макет и введите сведения о макете рабочего стола.

6

Выгрузите файл макета рабочего стола ServiceNow НАстольного компьютера, а также файл СОуправляемым инструментом ;;

7

Щелкните " Сохранить" , чтобы сохранить конфигурацию.

Теперь вы можете запустить Webex Contact Center Desktop в консоли ServiceNow.

8

В поле "Навигатор фильтров" перейдите к рабочей области оператора> Agent Workspace Главная страница.

Щелкните левый нижний значок телефона.

В следующих разделах описываются действия по установке соединителя ServiceNow для лицензированных корпоративных экземпляров.

1

Войдите в учетную запись на портале разработчика ServiceNow и откройте консоль " Администрирование ".

2

В области "Мой экземпляр" меню " Учетная запись " щелкните "Начать создание".

3

На экземпляре разработчика в поле "Навигатор фильтров" в левом верхнем углу окна перейдите в раздел "Подключаемые модули".

4

Найдите подключаемый модуль Open рамки, имеющий название Open рамки. Возможно, вам придется прокрутить список.

5

Нажмите Кнопку "Установить" , чтобы установить подключаемый модуль Open раммейл.

6

В диалоговом окне «Активация подключаемого модуля » нажмите « Активировать».

7

По завершении активации плагина нажмите " Закрыть и перезагрузить форму " в диалоговом окне "Активация плагина".

8

Чтобы проверить активацию плагина, в поле "Навигатор фильтров" в левом верхнем углу окна перейдите к разделу OpenХехакер.

9

Щелкните « Конфигурации» и убедитесь, что подключаемый модуль Open Хефрейм отображается в списке конфигурацийOpenя.ов .

1

В поле "Навигатор фильтров" в верхней левой части окна введите sys_properties.list.

2

На странице "Свойства системы" сортируйте свойства по дате обновления. Убедитесь, что Webex свойствах контакт-центра отображаются следующие свойства:

3

Щелкните agentdesktop_url , чтобы открыть страницу "Agentdesktop_url свойства системы".

4

В поле "Значение " введите URL для рабочего места Webex Contact Center Desktop в соответствии с регионом операции.

5

Нажмите Кнопку "Обновить" , чтобы сохранить изменения.

6

(Необязательно) Чтобы изменить имя таблицы действий, измените свойства x_caci_webexcc.webexccactivitytable .

  1. На странице "Свойства системы" щелкните x_caci_webexcc.webexccactivitytable.

  2. Измените поле " Значение " требуемым образом.

7

(Необязательно) Добавьте группы пользователей следующими способами:

  1. В поле "Навигатор фильтров" в верхней левой части окна перейдите к разделу "Группы" в разделе "Безопасность системы".

  2. Щелкните " Изменить" и добавьте следующие роли:

    • sn_openframe_user

    • x_caci_webexcc.agent

    • agent_workspace_user

    • x_caci_webexcc.webexcc_imp_activity_user

    • x_caci_webexcc.webex_contact_center

1

В поле "Навигатор фильтров" перейдите в раздел OpenХерик> Configurations.

2

Щелкните Создать.

3

Введите следующие свойства для URL::

  • Имя: Webex Contact Center Desktop

  • Название: контакт-центр Webex

  • Ширина: 550 (рекомендуется)

  • Высота: 600 (рекомендуется)

4

Справа от поля «URL» нажмите кнопку «Блокировать» и добавьте x_caci_webexcc_agentdesktop.do в качестве URL-адреса. (Чтобы указать страницу конфигурации на страницу пользовательского интерфейса, выполните этот шаг)

5

(Необязательно) Выберите группы пользователей и операторов для назначения конфигурации.

6

Нажмите Отправить. URL отображается как ссылка.

7

В поле "Навигатор фильтров" перейдите к рабочей области оператора> Agent Workspace Главная страница.

Щелкните левый нижний значок телефона.

8

(Необязательно) В списке "Группы пользователей" переместите группы пользователей, которые могут получить доступ к рабочей станции Webex Contact Center Desktop, из "Доступно" для выбранной .

9

Перед тем, как использовать телефон с OpenКилтер, убедитесь в загрузке файла МАКЕТа пользовательского рабочего стола ServiceNow НА ПОРТАЛ управления Webex Contact Center Management Portal. Дополнительные сведения см. в разделе «Настройка макета ServiceNow Desktop» в Webex Contact Center.

1

Загрузите макет рабочего стола для ServiceNow от https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

2

При необходимости обновите свойства в файле макета рабочего стола.

3

Перейдите на Webex портал управления контакт-центром.

4

На панели навигации на портале управления выберите «Выделение ресурсов > Desktop Layout»

5

Щелкните Новый макет и введите сведения о макете рабочего стола.

6

Выгрузите файл макета рабочего стола ServiceNow НАстольного компьютера, а также файл СОуправляемым инструментом ;;

7

Щелкните " Сохранить" , чтобы сохранить конфигурацию.

Теперь вы можете запустить Webex Contact Center Desktop в консоли ServiceNow.

8

В поле "Навигатор фильтров" перейдите к рабочей области оператора> Agent Workspace Главная страница.

Щелкните левый нижний значок телефона.

1

В поле "Навигатор фильтров" перейдите в раздел "Инциденты> Открыть инциденты .

2

Щелкните поле вызывающего абонента правой кнопкой мыши и выберите « Настроить словарь».

3

Добавьте атрибуты , разделенные запятыми"ref_contributions=show_phone,.

Теперь вы можете приступить к использованию Webex Contact Center Desktop в консоли ServiceNow.

4

В поле "Навигатор фильтров" перейдите к рабочей области оператора> Agent Workspace Главная страница.

Щелкните левый нижний значок телефона.

Agent Desktop в консоли ServiceNow

Перед выполнением исходящих вызовов убедитесь в следующем:

  • Создайте начальную точку входа и создайте стратегию выходной точки входа.

  • Включите outdial ANI для профиля оператора.

  • Задайте для выходного набора ANI сопоставление номера и точки входа.

Дополнительные сведения см. в главе « Выделение ресурсов » Cisco Webex Contact Center руководстве по настройке и администрированию.

В поле "Навигатор фильтров" перейдите к рабочей области оператора> Agent Workspace Главная страница.

Щелкните левый нижний значок телефона.

Сведения об использовании рабочего стола см. в Cisco Webex Contact Center Agent Desktop руководстве пользователя.

Раздел хранилища сторонних разработчиков

Возможная проблема с недавним обновлением Google Chrome и Edge 116 или выше может помешать входу в СИСТЕМУ через соединители SMTP в контакт-центре Webex контакт-центра. Эта проблема влияет на вход на рабочий стол на консоли ServiceNow ONLINE.

Для решения этой проблемы в браузере Google Chrome выполните следующие действия

  1. Откройте браузер Google Chrome и введите chrome://flags/#third-party-storage-partitioning в адресной строке.

  2. Деактивируйте флаг раздела экспериментального стороннего хранилища.

  3. Закройте и перезапустите Chrome.

  4. снова выполните вход на рабочий стол внутри консоли ServiceNow ONLINE.

Для решения этой проблемы в браузере Edge выполните следующие действия

  1. Откройте браузер и введите edge://flags/#third-party-storage-partitioning в адресной строке.

  2. Деактивируйте флаг раздела экспериментального стороннего хранилища.

  3. Сохраните изменения и перезапустите браузер.

  4. снова выполните вход на рабочий стол внутри консоли ServiceNow ONLINE.

Для решения этой проблемы в браузере Firefox выполните следующие действия

  1. Откройте браузер и введите about:config в адресной строке.

    Может появиться страница с предупреждением. Щелкните " Принять риск" и перейдите на страницу About:config .

  2. Введите сетевой файл.файлибюбюро в поле "Имя предпочтительности поиска" в верхней части страницы about:config , чтобы найти предпочтительнее значение.

  3. Дважды щелкните предпочтительные параметры или значок "Изменить" , чтобы изменить настройки.

  4. Измените значение на 0.

  5. Сохраните изменения и перезапустите браузер.

  6. снова выполните вход на рабочий стол внутри консоли ServiceNow ONLINE.

Обзор

В этой статье рассматривается несколько способов настройки бизнес-правил для соединителя ServiceNow ONLINE. В нем подробно описывается, как можно настраивать случаи использования на основе бизнес-правил, связанных с ServiceNow.

Заказчик должен самостоятельно управлять этими вариантами использования в ServiceNow. Конфигурация используется только для ServiceNow, и не Webex программного обеспечения или экспертного опыта Контакт-центра.


 

Это справочная документация для помощи в изменении бизнес-правил. Разработчики ServiceNow будут создавать бизнес-правила и управлять ими, а также оказывать поддержку.

Cisco предоставляет только примеры документации.

В следующих разделах приводится информация о настройке и включении виджета действий для экземпляров разработчика и предприятия, а также управление ими.

Фиксация набора обновлений для виджета действий

Для лицензированных экземпляров предприятия установите из магазина ServiceNow виджет «Действия разъема ServiceNow» версии 1.9.

Чтобы настроить виджет «Действия» для экземпляров разработчика, загрузите последний набор обновлений системы XML файл, доступный в github repo по адресу: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. Имя файла будет webexcc-servicenow-update-setv7-1-ActionsWidget.xml. Сведения о фиксации набора обновлений для виджета "Действия", см. в шагах 2–9 в разделе "Фиксация набора обновления".

Включить виджет «Действия»

Используйте свойство isWidgetDisplayEnabled для включения виджета «Действия». Не следует изменять значение этого свойства в разделе «Без головы» макета пользовательского рабочего стола. В разделе без головы макета пользовательского рабочего стола для свойства всегда задано значение false. Значение объекта следует обновлять только в разделе панели пользовательского макета рабочего стола.

После включения виджета «Действия» в пользовательском макете рабочего стола можно выполнить следующие действия:

  • Управление записями об активности — просмотр /изменение записи об активности для просмотра списка записей об активности, связанных с вызывающим абонентом.
  • Связать объекты ONLINE — щелкните «Связать с записями активности», чтобы добавить в запись об активности такие объекты СИСТЕМЫ, как типы вызовов (входящие или исходящие), объект вызова, примечания к вызовам и т. д.
  • Управление инцидентами — щелкните " Создать инцидент". Создается новый инцидент с заранее заселенной информацией о вызывающем абоненте. Вы можете внести необходимые обновления в инцидент. В соответствии со своими требованиями можно изменить тип записи от инцидента к регистру, модуля управления персоналом и т. д. Для изменения типа записи измените значение свойства typeOfRecord в конфигурации виджета «Действия». Пример:
    { "comp": "md-tab-панель", "атрибуты": { "гнездо": "панель", "класс": "виджет-панель" }, "дети": [ { comp: "agentx-custom-desktop", "сценарий": "https://cx-crmconnector.ciscoccservice.com/servicenow/v5/dist/index.js", "свойства": { "isWidgetDisplayEnabled": true, "typeOfRecord": "Создать инцидент" }, "обертка": { "название:: "Действия снега!", "maximizeAreaName": "приложение развернуть область" }
  • Добавлять заметки о вызове в режиме live — можно захватить дополнительную информацию о вызове в текстовой области и завершить вызов. Эти заметки отображаются в записи об активности как заметки о вызовах.

Изменение кода в ServiceNow

Сценарий содержит изменения
  1. Перейдите к фильтру навигатора и выполните поиск сценарий включает в себя.

    Выберите сценарий включает в разделе "Системный интерфейс"

  2. Отфильтруйте имя и выполните поиск Реквизиты.

  3. Измените метод Идентификатор пользователяGetSysId в сценарии .

    Курантный:

    UserGetSysId: функция () { 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; },

    Новый пример кода для инцидента:

    UserGetSysId: функция () { 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=инк.getUniqueСеле(); }else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='phone'; inc.short_description='Call Received From '+ this.getParameter('value'); sysidlist.incsysid=inc.insert(); } var grInt = new GlideRecordSecure ('взаимодействие'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for = opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; возврат 12.stringify(sysidlist); },

Изменение метода на страницах интерфейса
  1. Перейдите в навигатор фильтров и выполните поиск по странице интерфейса.

    Выберите страницы интерфейса в разделе "Системный интерфейс".

  2. Отфильтруйте имя и выполните поиск оператору;.

  3. Измените значение экранная попка функция в клиентском сценарии.

    Текущая функция:

    экран всплывающей функции screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = новый GlideAjax('propUmbers'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openRam.openServiceNowForm({объект: взаимодействие,запрос: "sys_id='+sysid });

    Пример кода происшествия:

    функция экрана всплывающего окна screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = новый GlideAjax('propUmbers'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'телефон'); gaout.addParam('value', callerani); gaout.getXMLWait(); // Для изменений, связанных с инцидентами var SysObj = ФАЙЛ.parse(gaout.getAnswer()); if(sysObj.incsysid){ openХеричAPI.openServiceNowForm({ объект: «инцидент», запрос: «sys_ id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openМAPI.openServiceNowForm({ объект: инцидент, запрос: "sys_id=-1", "interaction_sys_id": sysObj.sysid ///'a2ba0ba62fd121106446cc96f699b6b8' }); }

Если информация о вызывающем абоненте содержится в ИНСТРУМЕНТ-коде(м) и с этим контактом уже открыт новый инцидент, приложение открывает инцидент inprogress

Если информация о вызывающем абоненте не существует в ИНСТРУМЕНТе РЕАЛЬНОго пользователя, приложение открывает новый инцидент

Если информация о вызывающем абоненте содержится в КОДЕУР, приложение открывает новый инцидент с заполненной информацией

Обзор

В этом случае использования подробно описан процесс добавления дополнительного столбца в таблицу ServiceNow . webexcc_imp_activity и создать sn_openframe_phone_log при установке Webex CC для разъема ServiceNow ONLINE.

По умолчанию в таблице содержатся определенные системные поля и значения.

Можно создать более специфичные для бизнеса переменные (переменные САПР) в конструкторе потока WebexCC и добавить переменные CAD в журнал активности пост-вызовов ServiceNow, а также сохранить их в таблице активности вызовов.


 

Это только справочная документация, где показано, как это сделать для примера переменной CAD с именем клиента, которая хранит имя пользователя внутри IVR и размещает его в ServiceNow.

Ожидается, что эта конфигурация будет выполняться от партнера и пользователя разработчиков ServiceNow, так как она выполняется по настройке существующего соединителя.

В Cisco приводится только методы настройки и расширения соединителя.

На основании этой статьи команда Cisco подтвердила поддержку добавления переменной CAD в журнал активности и таблицу активностей, используя приведенный ниже метод:

Добавление столбца в активность WebexCC IMP

  1. Измените таблицу в версии ServiceNow для разработчика.

  2. Перейдите в навигатор фильтров и найдите студию.

    Выбрать Webex Contact Center

    или

  3. Выберите Активность WebexCC IMP Таблице

  4. Добавьте новый столбец, например: CustomerName

Добавление столбца в журнал телефона

  1. Измените таблицу журналов телефона.

  2. Добавьте новый столбец, например: CustomerName.

Карта преобразования активности WebexCC

Добавьте новый столбец, например: CustomerName сопоставление полей.

Персонализация столбцов списка

Как рекомендует Service Now, измените действие «Выбор» на «создать» на игнорирование.

Настройка списка журналов телефона

Перейти к включению сценария


 

Добавьте только одну линию webexcc.u_customername=actInfo.CustomerName на реквизиты.

Пример сценария

См. строку: webexcc.u_customername=actInfo.CustomerName; с подтверждающим комментарием.

var propОвред = Class.create(); prop00.prototype = Object.extendsObject(глобальный. АннотацияAjaxProcessor,{ getХеexccProp: функция () { 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'); возвратБУ.stringify(webexccprop); }, UserGetSysId: функция () { 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 ('взаимодействие'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for = opened_for; var sysid=grInt.insert(); sysid возврата; }, setInfoexccable: функция () { var sys_id=0; var actInfo = 1.parse(this.getParameter('actInfo')); var webexcc = новый 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; Добавляется линия для ее записи в журнал действий webexcc.u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); деятельность по учету инцидентов; var actInfoString =this.getParameter('actInfo'); var suser = new GlideRecordSecure ("sys_user"); suser.addQuery («телефон», этот.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('инцидент'); inc.addQuery('caller_id', suser.sys_id); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next(()) { varinfoPretty =ВОРк.stringify(STRING.parse(actInfoString),null,2); inc.comments =display; inc.update(); } } sys_id возврата; }, введите: "propХутилс' });

Создайте переменную CAD в конструкторе потока

Добавьте переменную CAD к макету рабочего стола

Пример

"CadName1:SnowField1,CadName2:Снежный поле2" cadName1 является CustomerName SnowField1 также используется в качестве CustomerName, который является частью примера отображения над "actInfo.CustomerName".

Демонстрационные скриншоты

Просмотрите недавно добавленную переменную CAD в таблице Активности WebexCC.

Создание переменной CAD для конструктора потока

Срочность инцидентов

Последствия инцидента

Обновление сценария Service Now

Обновления сценария включает

  1. Перейдите в навигатор фильтров и выполните поиск по сценарию

    Выберите параметр «Сценарий включает» в разделе «Системный интерфейс пользователя»

  2. Отфильтруйте имя с помощью функции propScreen.

  3. Измените метод Идентификатор пользователяGetSysId в поле "Сценарий ".

    Текущий сценарий:

    UserGetSysId: функция () { 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; },

    Новый пример кода для инцидента:

    UserGetSysId: функция () { 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.getUniqueПеле(); } else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='phoney;inc.срочность=this.getParameter('Value'); inc.impact=this.getParameter('Impact'); inc.short_description='Call Received From '+ this.getParameter('value'); sysidlist.incsysid=inc.insert();} } var grInt = new GlideRecordSecure ('взаимодействие'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'phone'; grInt.opened_for = opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; возврат 12.stringify(sysidlist);//sysid; },

Изменение метода на страницах интерфейса
  1. Перейдите в навигатор фильтров и найдите страницы интерфейса.

    Выберите параметр « Страницы интерфейса пользователя» в разделе «Системный интерфейс пользователя»

  2. Отфильтруйте страницы пользовательского интерфейса по имени и поиску операторов

  3. Измените значение экранная попка функционировать в поле сценария.

    Текущая функция:

    экран всплывающей функции screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = новый GlideAjax('propХукс'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openRam.openServiceNowForm({объект: взаимодействие,запрос: "sys_id='+sysid });

    Пример кода происшествия:

    экран всплывающей функции 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.Срочность != null &&callSessionInfo.callAssociatedData.callAssociatedData.Срочность != не определено) { IncUrgency=callSessionInfo.callAssociatedData.Срочность.значение; } if(callerani=== = = = = = =callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax ('propТакт.); gaout.addParam («sysparm_name», «UserGetSysId»); gaout.addParam ('поле', 'телефон'); gaout.addParam («значение», callerani); gaout.addParam ('IncUrgency', IncUrgency); gaout.addParam («Воздействие», «Воздействие» ); gaout.getXMLWait(); var sysid = gaout.getAnswer(); var sysObj = EXCEL.parse(gaout.getAnswer()); if(sysObj.incsysid){ openХеридAPI.openServiceNowForm({ объект: 'инцидент', запрос: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); } else{ openХ.openServiceNowForm({объект: 'инцидент', запрос: 'sys_id=-1', 'interaction_sys_id:sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",STRINGify(sysObj)); }

Если информация о вызывающем абоненте содержится в ИНСТРУМЕНТ-сервере (ГДЕ-либо нет нового или непрогрессного инцидента), то приложение открывает новый инцидент

Измените код в ServiceNow

Добавьте новые столбцы в Активность WebexCC IMP Таблице

Откройте окно Активность WebexCC IMP Таблице

Добавьте новый столбец - InteractionsNumber

Добавьте новый столбец — IncidentNumber

Нажмите « Обновить».

Добавьте новые столбцы в Журнал телефона Таблице

Откройте окно Журнал телефона Таблице

Добавьте новый столбец - InteractionsNumber

Добавьте новый столбец — IncidentNumber

Карта преобразования активности WebexCC

Открыть карта преобразования из навигатора фильтров

Нажмите кнопку Карта преобразования активности WebexCC

Добавить новый — для карты номеров взаимодействия

Добавить новый — для карты номеров инцидентов

Нажмите Обновить.

Включает изменения в сценарии

  1. Перейдите в фильтр навигатора и найдите "сценарий включает".

    Выберите сценарий включает в разделе "Системный интерфейс"

  2. Отфильтровать имя по Реквизиты.

  3. Измените метод setХвысекубь.

    Новый пример кода для инцидента:

    setХ.excctable: функция () { var sys_id=0; var actInfo = EXCEL.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('webexccactivitytable')); webexcc.addQuery("u_callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { //Активности по записи об инциденте; //var actInfoString =this.getParameter('actInfo'); var incsysid=actInfo.incident_sys_id; var interactionsysid=actInfo.interaction_sys_id; var incnum="; var intenum="; удалить actInfo[interaction_sys_id']; удалить 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.setLv ('state','Завершено завершено'); 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 infoPretty = STRINGify(actInfo,null,2); //ВОР.stringify(АДРЕС.parse(actInfoString,null,2); inci.comments =венесуэльскийpretty; inci.update(); } else{ var suser = new GlideRecordSecure("sys_user"); suser.addQuery("телефон", 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())) { varinfo.pretty =STRINGify(actInfo,null,2); inc.comments=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(); } возврат sys_id; },

Изменения методов на страницах интерфейса

  1. Перейдите к фильтру навигатора и выполните поиск Страницы интерфейса

    Выберите параметр « Страницы интерфейса пользователя» в разделе «Системный интерфейс пользователя»

  2. Отфильтруйте страницы пользовательского интерфейса по имени и поиску операторов

  3. Измените значение nowActivities и screenpop функции в сценарии.

    Текущая функция:

    функция теперь Активности(actInfo, ani) { var gaout = new GlideAjax('prop000'); gaout.addParam('sysparm_name', 'setInfoexcctable'); gaout.addParam('actInfo', ИНТЕРФЕЙС.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML(SetCCsysId); }

    Пример кода происшествия:

    функция nowActivities(actInfo, ani) { var sysObjstr = window.localStorage.getItem("screenpopinteraction"); if(sysObjstr != null &&sysObjstr != undefined) { var sysObjson=ФАЙЛ.parse(sysObjstr); actInfo.interaction_sys_id=sysObjson.sysid; actInfo.incident_sys_id=sysObjson.incsysid; } var gaout = new GlideAjax('prop00'); gaout.addParam('sysparm_name', 'setExcctable'); gaout.addParam('actInfo', ИНТЕРФЕЙС.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML (SetCCsysId); } функция screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = новый GlideAjax('propХукс'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'телефон'); gaout.addParam('value', callerani); gaout.getXMLWait(); //var sysid = gaout.getAnswer(); var sysObj = USB.parse(gaout.getAnswer()); if(sysObj.incsysid){ openХерид.openServiceNowForm({ объект: «инцидент», запрос: «sys_id=»sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openХ.openServiceNowForm({ объект: инцидент, запрос: "sys_id=-1", "interaction_sys_id:sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",XML.stringify(sysObj)); } 

Результаты после обновления


 

Следующие настройки применяются к версии 1.0.5 и ниже. Для настройки более новых версий 1.0.7 и выше следуйте приведенным выше инструкциям.

Настройка No 1 — добавьте пользовательские бизнес-правила для случаев использования потока вызовов

Создайте новую запись об инцидентах для каждого вызова

Для каждого нового вызова в соединитель WebexCC SMTP в ServiceNow создавайте запись о новых инцидентах.

  1. Поиск бизнес-правил в навигаторе фильтров

  2. Щелкните Создать.

    Пример справочного кода:

    функция 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", "name", имя); } if (userID == null &&phone != null &&phone != null &&phone != '') { userID = UserGetSysId("телефон", 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; url возврата; } функция UserGetSysId(поле, значение) { var user = new GlideRecord("sys_user"); user.addQuery(поле, значение); user.query(); if (user.next()) возвращает user.sys_id; else возвращает null; }

    Пример конфигурации бизнес-правила

  3. Включение функции вызова с помощью клиента

    При интеграции с компьютерной телефонией (CTI): при обработке инцидентов помечается значение True.

  4. Обновите URL-адрес screenpop с помощью пользовательского правила CTI " cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

Пример

sysparm_cti_rule =name , где 'name' — имя функции , которую следует вызывать для CTI Обработки вместо сценария по умолчанию.

Определите функцию в sys_script записи, помеченной «можно вызывать у клиента».

Если необходимо вставить, обновить или удалить какие-либо записи GlideRecords в эту функцию, вызовите отдельную неклайентную функцию для выполнения обновлений.


 

Чтобы сценарий был клиентским, необходимо установить флажок «клиент-вызов» на бланке, который отображается при отображении записи sys_script.

Флажок «Клиент-вызов» не установлен по умолчанию. Для просмотра необходимо изменить поля, которые отображаются на форме, используя значок шестеренки и механизм ведра slush.

Ссылки

Настройка No 2 — добавьте переменную САПР в таблицу действий Webex contact Center

Обзор

В этой статье описывается процесс добавления дополнительного столбца в таблицу ServiceNow — webexcc_activity, созданного при установке разъема Webex CC для ServiceNow ONLINE.

По умолчанию в таблице содержатся стандартные системные поля и значения.

Возможно, можно создать больше бизнес-переменных (переменных CAD) в конструкторе Потока WebexCC и добавить такие переменные в журнал активности пост-вызовов ServiceNow и сохранить этов таблице активности вызовов.


 
  • Это только справочная документация, где показано, как это сделать для примера переменной САПР с именем клиента, в которую имя пользователя хранится в IVR и отправляет его в ServiceNow.

  • Эту конфигурацию будут настраивать и управлять разработчики ServiceNow от партнера и пользователя, так как она выполняется по настройке существующего соединителя.

  • Cisco предоставит только методы настройки и расширения соединителя.

  • На основании этой статьи команда Cisco подтвердила поддержку добавления переменной CAD в журнал активности и таблицу активностей, используя метод, описанный ниже.

Добавьте столбец в действие WebexCC
  1. Измените таблицу в версии ServiceNow для разработчика.

  2. Перейдите в студию > Webex контакт-центр.

  3. Выберите таблицу активности WebexCC.

  4. Например, CustomerName.

  5. Выбор макета списков для деятельности WebexCC.

Создание нового сценария включает

 

Этот шаг не требуется, если вы используете обновленный набор XML . В список prop Самообмена требуется добавить только одну линию "webexcc.u_customername=actInfo.CustomerName".

Пример сценария

См. линию со:webexcc.u_customername=actInfo.CustomerName; с подтверждающим комментарием.

varя22 = Class.create(); propУкр. 2.prototype = Object.extendsObject(глобальный. АннотацияAjaxProcessor,{ getХеexccProp: функция () { 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'); возврат INSTANCE.stringify(webexccprop); }, setExcctable: функция () { var sys_id=0; var actInfo = 2.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('x_caci_ webexcc.webexccactivitytable')); webexcc.addQuery («объект вызова», 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; // Добавлена линия для записи ее в журнал активности webexcc. u_customername= actInfo.CustomerName; sys_id=webexcc.insert(); деятельность по учету инцидентов; var actInfoString =this.getParameter('actInfo'); var suser = new GlideRecordSecure ("sys_user"); suser.addQuery («телефон», этот.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('инцидент'); inc.addQuery('caller_id', suser.sys_id); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next(())) { varpretty =ВОРн.stringify(STRING.parse(действующий строку),null,2); inc.comments =американопреттий; inc.update(); } } sys_id возврата; }, тип: "propХурез2' });
Измените страницу пользовательского интерфейса, указав новое имя сценария

Создайте переменную CAD в конструкторе потока

Добавьте переменную CAD к макету рабочего стола

Демонстрационные скриншоты

Просмотрите недавно добавленную переменную CAD в таблице Активности WebexCC.