Тип плагина "канал"

Плагин с типом "Канал" в HelpDeskEddy представляет собой инструмент для интеграции с внешними сервисами через вебхуки. Он позволяет отправлять уведомления о различных событиях в системе, таких как изменение статуса оператора, вход или выход из системы, а также изменения в заявке (созданных плагином) в реальном времени. Это решение помогает минимизировать необходимость постоянных запросов к API для получения актуальной информации, что особенно полезно для создания дашбордов, аналитики или других систем мониторинга.

 

Основные возможности плагина

Плагин "Канал" отслеживает ключевые события в HelpDeskEddy и отправляет данные о них на внешний сервис через HTTP-запросы (обычно POST) в формате JSON. Поддерживаемые события включают:

  1. Действия сотрудника (смена статуса, вход/выход из системы);

  2. Действия в заявках, созданных плагином (добавление/изменение/удаление ответа, изменение статуса, закрытие заявки).

 

Данные, передаваемые плагином

Плагин отправляет данные в формате JSON, включающие информацию о событии и связанных объектах. Как вариант, можно использовать сервисы pipedream или requestcatcher, чтобы просмотреть в каком формате приходят данные по разным событиям. Пример структуры данных для события смены статуса:

{
  "event": "user.status.updated",
  "event_data": {
    "user_status": "online"
  },
  "user": {
    "id": "123",
    "name": "Оператор",
    "email": "operator@example.com",
    "group": {
      "id": "2"
    },
    "user_status": "na-chatah"
  }
}

Пример для события логина:

{
  "event": "user.authorization.login",
  "event_data": {
    "ip": "192.168.1.1",
    "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Gecko/20100101 Firefox/138.0"
  },
  "user": {
    "id": "123",
    "name": "Оператор",
    "email": "operator@example.com",
    "group": {
      "id": "2"
    },
    "user_status": "on-hold"
  }
}

Поддерживаемые данные по действиям сотрудника:

  • Обязательные:

    • ID учетной записи оператора (user.id).

    • Статус оператора (user_status).

  • Дополнительные (при необходимости):

    • Имя оператора (user.name).

    • Email оператора (user.email).

    • ID группы оператора (user.group.id).

    • IP-адрес и User-Agent (браузер) для событий логина/логаута.

 

Преимущества использования

  1. Снижение нагрузки на API: Отправка данных по событиям устраняет необходимость постоянных запросов (polling) к API для проверки статуса операторов.

  2. Гибкость: Возможность настройки передаваемых данных и событий в зависимости от требований внешнего сервиса.

  3. Поддержка реального времени: Идеально подходит для создания дашбордов или систем мониторинга, отображающих актуальную информацию о статусе операторов.

     

Настройка и интеграция

Перейдите в меню "Маркетплейс/плагины" в управлении хелпдеска и добавьте новый плагин: 

 

В настройках плагина укажите тип плагина — "Канал", после чего появятся вкладки с настройкой исходящего и входящего вебхуков:

 

Настройка плагина:

  • Укажите URL внешнего сервиса для отправки вебхуков.

  • Настройте события, которые нужно отслеживать.

  • Настройте обработку вебхуков на стороне внешнего сервиса для получения и интерпретации данных. Убедитесь, что внешний сервис принимает JSON-данные в указанном формате.

Пример запроса при изменении статуса сотрудника:

 

POST / HTTP/1.1
Host: hdetest.requestcatcher.com
Accept: application/json
Content-Length: 176
Content-Type: application/json
Source: Событие в HelpDeskEddy
X-Signature: sTc4rwfIbyJ3u2QSFAo7N4CUg12an4zB9m++b0ahNRU=

{"event":"user.status.updated","event_data":{"user_status":"on-hold"},"user":{"id":"1","name":"Сергей","email":"hde@test.com","group":{"id":"2"},"user_status":"on-hold"}}

 

Примеры использования

  1. Создание дашборда в реальном времени:

    • Клиент (например, ритейл-компания) использует плагин для отправки данных о статусе операторов на собственный дашборд, отображая, кто из операторов в сети, занят или неактивен.

  2. Автоматизация процессов:

    • При входе оператора в систему автоматически устанавливается статус "в сети".

    • При выходе или неактивности статус меняется на "не в сети".

  3. Синхронизация данных:

    • Передача изменений статуса или данных контакта в другую систему (например, CRM) для синхронизации информации.

 

Плагин типа "Канал" в HelpDeskEddy — мощный инструмент для интеграции с внешними сервисами, обеспечивающий передачу данных о ключевых событиях в реальном времени. Он поддерживает гибкую настройку событий и данных, снижая нагрузку на API и упрощая создание интерактивных дашбордов или автоматизированных процессов.