05 марта 2022 Время чтения: 5 минут

Запросы от клиентов BILLmanager можно обрабатывать в Омнидеске

ISPSystem

Мы добавили в BILLmanager интеграцию c Омнидеском — сервисом для общения с клиентами и обработки тикетов.

После настройки интеграции пользователи BILLmanager могут, как и раньше, отправлять запросы провайдеру через Личный кабинет. Служба поддержки сможет обрабатывать их в единой системе Омнидеск или в BILLmanager. Запросы в техподдержку синхронизируются между BILLmanager и Омнидеск.

Обработка запросов при интеграции с BILLmanager c Омнидеск
Обработка запросов при интеграции с BILLmanager c Омнидеск

Настройка интеграции BILLmanager c Омнидеск

Настройка на стороне Омнидеска

  • 1. Зарегистрируйте новую учетную запись в Омнидеск.
  • 2. Создайте API-ключ. Он будет использоваться BILLmanager для взаимодействия с Омнидеск.
Создание в Омнидеcк ключа для взаимодействия с BILLmanager
Создание в Омнидеcк ключа для взаимодействия с BILLmanager
  • 3. Добавьте кастомный канал для обращений, поступающих из BILLmanager.
Добавление кастомного канала для обращений, поступающих из BILLmanager
Добавление кастомного канала для обращений, поступающих из BILLmanager

В качестве Webhook укажите URL в формате:

https://URL/mancgi/omnidesk_webhook?{secret_key}

Здесь secret_key — значение, совпадающее с соответствующим полем в настройках BILLmanager.

  • 4. При необходимости создайте пользователя, от имени которого будет происходить взаимодействие между системами BILLmanager и Омнидеск.

Обратите внимание: сотрудник интеграции должен обладать полными правами для работы с кастомным и email каналами.

Добавление сотрудника в Омнидеск
Добавление сотрудника в Омнидеск
  • 5. Добавьте поля, которые будут заполняться на основании информации из BILLmanager. Для этого перейдите в раздел Каналы → Управление обращениями → Поля данных.
Добавление поля в Омнидеск
Добавление поля в Омнидеск

Настройка на стороне BILLmanager

  • 1. Установите модуль интеграции с Омнидеск. Для этого перейдите в меню Интеграции → Модули. Выберите модуль OmniDesk и нажмите Установить.
Добавление модуля интеграции с Омдидеск в BILLmanager
Добавление модуля интеграции с Омдидеск в BILLmanager
  • 2. После завершения установки можно переходить к настройке. Для этого нажмите Настроить.
Переход к настройкам интеграции с Омнидеск в BILLmanager
Переход к настройкам интеграции с Омнидеск в BILLmanager
  • 3. Заполните все поля во вкладке Параметры интеграции и нажмите Ok.
Настройка интеграции с Омнидеск в BILLmanager
Настройка интеграции с Омнидеск в BILLmanager
  • 4. Создайте сотрудника с электронной почтой пользователя интеграции. Для этого перейдите на вкладку Провайдер → Сотрудники → Cоздать. После заполнения всех полей нажмите кнопку Ok.
Создание нового сотрудника в BILLmanager
Создание нового сотрудника в BILLmanager
  • 5. Назначьте созданному сотруднику права группы Поддержка. Для этого перейдите на вкладку Провайдер → Сотрудники. Выберите созданного на предыдущем шаге сотрудника и нажмите кнопку Права. В открывшемся окне найдите группу Поддержка и назначьте все правой из данной группы.
Настройка прав пользователя
Настройка прав пользователя
  • 6. Настройте кастомные поля, которые будут заполняться на стороне Омнидеска. Для этого перейдите на вкладку Интеграции → Модули и нажмите кнопку Настроить напротив модуля. Затем добавьте новое кастомное поле, используя соответствующую кнопку во вкладке Кастомные поля.
Добавление и редактирование кастомных полей в BILLmanager
Добавление и редактирование кастомных полей в BILLmanager
  • 7. При добавлении кастомного поля вы указываете связку между полем на стороне Омнидеск и значением в BILLmanager. Если подходящего вам значения нет в списке, его можно добавить по инструкции ниже.
Настройка кастомного поля в BILLmanager
Настройка кастомного поля в BILLmanager

Новые значения для кастомных полей в Омнидеск

Значения формируются на основании записей о пользователях BILLmanager, с помощью SQL-запросов . Все доступные варианты значения для выбора хранятся в файле /usr/local/mgr5/etc/omnidesk/custom_fields_values.json в формате json. Каждое значение представляет собой объект вида:


{
  "client_id": {
   "entity": "user",
   "name": "ID клиента",
   "sql": "SELECT account FROM user WHERE id = __id__"
  },
  "ticket": {
   "entity": "case",
   "name": "Номер тикета",
   "sql": "SELECT t.id FROM ticket t WHERE t.id = __id__"
  }
}

  • client_id — уникальный ключ значения, используется для связки с полями Omnidesk. Задается администратором;
  • entity — сущность, к которой относится значение. Может принимать два значения: case (для полей обращений) и user (для полей пользователей);
  • name — имя поля, которое будет отображаться в интерфейсе при настройке кастомного поля
  • sql — запрос, который достает нужную информацию по связанной сущности. Вместо макроса __id__ будет подставлен ID конкретного запроса или пользователя.

Для добавления нового значения необходимо сформировать объект и добавить в указанный выше файл.

Настройка ответов сотрудников

Для синхронизации оценок клиентов в BILLmanager перейдите во вкладку Настройки → Оценка ответов. Затем включите опцию Клиенты могут оценивать работу сотрудников в обращениях по почте и из центра поддержки. В поле Каким образом отправлять просьбу оценить работу выберите в подписи каждого ответа сотрудника.

Настройка ответов сотрудников в Омнидеск
Настройка ответов сотрудников в Омнидеск

Устройство модуля интеграции с Омнидеском

База данных

В работе модуля участвуют три таблицы:

  • ticket2external_case - связывает запрос в BILLmanager с обращением OmniDesk
  • ticket_message2external_case_message - связывает сообщения в запросе BILLmanager с сообщением в обращении OmniDesk
  • user2external_user - связывает пользователя в BILLmanager с пользователем в OmniDesk

Компоненты

Модуль состоит из трех основных компонентов:

  • 1. Библиотека, подключаемая панелью BILLmanager. Библиотека предназначена для следующих задач:
    • отслеживание и обработка событий с пользовательскими запросами;
    • вставка новых сообщений, поступающих из Омнидеска.
  • 2. Исполнительный файл (/usr/local/mgr5/processing/pmomnidesk) для взаимодействия с сервисом Омнидеск. Файл выполняет следующие задачи:
    • создание нового обращение на стороне Омнидеск на основе запроса BILLmanager;
    • обновление статуса обращения Омнидеск;
    • вставка нового сообщения на стороне Омнидеска на основе сообщения в запросе BILLmanager.
    • синхронизация информации о пользователе BILLmanager;
    • выставление пользовательской оценки ответа сотрудника на основе на оценки сообщения в запросе BILLmanager;
    • cинхронизация запросов между системами BILLmanager и Омнидеск.
  • 3. CGI для уведомлений о новых ответах сотрудника в Омнидеске. Используется для добавления нового сообщения, полученного из Омнидеска, в соответствующий запрос BILLmanager в режиме реального времени.

Логирование

Работу модуля можно проанализировать на основании следующий файлов:

  • var/omnidesk_webhook.log — работа CGI для уведомлений;
  • var/pmomnidesk.log — взаимодействие между системами BILLmanager и Омнидеск;
  • var/billmgr.log — работа библиотеки, подключенной к панели BILLmanager.