Перейти к основному содержимому

Webim (Custom Channel API) как операторский канал

Webim — платформа онлайн-консультирования, которая позволяет общаться через различные каналы: чат на сайте, мессенджеры, социальные сети, чат-боты, мобильные приложения и другие. Платформа также интегрируется с системами CRM и HelpDesk.

Чтобы настроить Webim как операторский канал:

  1. Создайте канал в Webim.
  2. Создайте операторский канал в JAICP.
  3. Подключите операторский канал к входящему.
  4. Настройте перевод на оператора или группу операторов в сценарии

Создание канала в Webim

  1. Авторизуйтесь в личном кабинете платформы Webim как администратор аккаунта.

  2. Перейдите на страницу Настройки → Общие → Каналы общения.

  3. В секции Произвольный, нажмите Добавить канал.

  4. Заполните настройки произвольного канала:

    • Название — укажите название, которое будет отображаться в интерфейсе оператора.

    • Ваш секретный ключ — придумайте и введите секретный ключ. Он будет использоваться платформой Webim для отправки сообщения.

    • Адрес сервера — укажите адрес сервера, куда будут отправляться события о новых сообщениях в формате:

      https://{имя_хоста}/chatapi/webhook/webim/{идентификатор_канала}

      https://bot.jaicp.com/chatapi/webhook/webim/3899495ffd6f48e9aeaec — пример адреса сервера.

    • Выбор отдела — укажите параметры перевода диалога на операторский отдел:

      • Не нужен — при переводе на оператора отдел можно не указывать. В выпадающем списке ниже выберите отдел по умолчанию. Также можно выбрать вариант Без отдела — тогда диалоги будут по умолчанию переводиться в общую очередь.

      • Обязателен — отдел нужно указывать всегда. В выпадающем списке ниже выберите, на какие отделы разрешено переводить диалоги.

        предупреждение
        Если вы выберете Обязателен, но не зададите разрешенные отделы, бот не сможет переводить диалоги ни на какой отдел.
  5. Скопируйте значения полей Наш секретный ключ и Идентификатор канала. Они понадобятся для подключения канала в JAICP.

    • Наш секретный ключ используется, чтобы идентифицировать запросы к платформе Webim.
    • Идентификатор канала используется, чтобы идентифицировать канал, с которого пришло сообщение.
  6. Нажмите Сохранить.

Создание операторского канала

  1. Авторизуйтесь в платформе JAICP и перейдите в проект.
  2. Перейдите на вкладку Каналы.
  3. В разделе Операторы нажмите Подключить канал.
  4. Выберите Webim (Custom Channel API).
  5. Заполните поля:
    • Название — укажите название канала.
    • ID Канала — вставьте значение из поля Идентификатор канала.
    • Входящий ключ — вставьте ключ из поля Ваш секретный ключ.
    • Исходящий ключ — вставьте ключ из поля Наш секретный ключ.
    • Имя аккаунта Webim — укажите название аккаунта. Вы можете скопировать его из адресной строки — {имя_вашего_аккаунта}.webim.ru.

Подключение входящего канала

  1. Выберите уже подключенный входящий канал или подключите новый.
  2. Перейдите в окно редактирования канала.
  3. В поле Оператор выберите операторский канал Webim и нажмите Сохранить.

Особенности сценария

Перевести диалог на оператора можно с помощью ответа бота с типом switch. Webim также поддерживает перевод диалога на группу операторов, закрепленных за определенным отделом.

Перевод на оператора

state: TransferToAgent
intent!: /agent
a: Минуточку… Перевожу на оператора.
script:
$response.replies = $response.replies || [];
$response.replies.push({
"type": "switch",
"firstMessage": $jsapi.chatHistory(),
"closeChatPhrases": ["/closeLiveChat", "Закрыть диалог"]
});

Перевод на группу операторов

Чтобы перевести диалог на группу операторов:

  1. В Webim перейдите в раздел Команда → Сотрудники и назначьте нужным операторам отдел, указанный в поле Выбор отдела.
  2. Перейдите в Команда → Отделы → Редактировать отдел и скопируйте Буквенный идентификатор отдела.
  3. В сценарии JAICP вставьте идентификатор отдела в параметр destination в типе ответа switch.

Результат выполнения сценария зависит от настройки Выбор отдела для канала Webim.

Выбор отделаЗначение destinationРезультат
Не нуженПравильный идентификатор отделаПеревод на отдел, переданный в destination
Не нужен• Неправильный идентификатор отдела
• Идентификатор не передан
Перевод на отдел по умолчанию, указанный в настройках канала
ОбязателенИдентификатор отдела, который есть в списке разрешенныхПеревод на отдел, переданный в destination
Обязателен• Идентификатор отдела, которого нет в списке разрешенных
• Неправильный идентификатор отдела
• Идентификатор не передан
Перевод не произойдет
state: TransferToAgent
intent!: /agent
a: Минуточку… Перевожу на оператора.
script:
$response.replies = $response.replies || [];
$response.replies.push({
"type": "switch",
"destination": "main", // Буквенный идентификатор отдела в Webim.
"firstMessage": $jsapi.chatHistory(),
"closeChatPhrases": ["/closeLiveChat", "Закрыть диалог"]
});