Для того, чтобы отправлять push уведомления по различным событиям из заявки, необходимо перейти в меню "Диспетчер" и создать новое правило.
В зависимости от того, по каким действиям Вы хотите получать уведомления, необходимо выбрать обязательные и дополнительные условия, при выполнении которых будет осуществляться отправка уведомлений.
- Пример 1. Отправка личного сообщения от бота
- Пример 2. Отправка уведомления в Telegram группу
- Пример 3. Отправка уведомлений в Telegram-топики (topics/темы)
В нашем примере уведомление будет отправляться каждый раз при поступлении новой заявки в системе. Как только правило будет создано, необходимо в действиях выбрать "Отправить вебхук" и заполнить информацию как на скриншоте.
Пример 1: Отправка личного сообщения от бота.
В поле URL необходимо вставить ссылку с токеном бота, через который будет осуществляться отправка:
https://api.telegram.org/bot*/sendMessage, где * - API ключ вашего бота.
В содержимом нужно будет указать шаблон, который будет отправлен при срабатывании правила. В поле с "chat_id" должен находиться Ваш уникальный id аккаунта в Telegram. Узнать id можно, например, обратившись к Telegram-боту @myidbot:
Содержимое шаблона можно выбирать на Ваше усмотрение, при помощи тегов.
С примером содержимого можно ознакомиться ниже:
{
"parse_mode":"html",
"chat_id": "*****",
"text":"Поступила новая заявка {unique_id}. Содержимое: $strip_tags({answer_first})"
}
где:
1) ***** - id пользователя (сотрудника), которому будет отправлено уведомление о поступлении заявки
2) $strip_tags({answer_first})" - тег answer_first с содержимым первого ответа в заявке. Тег обернули в $strip_tags() чтобы избежать ошибки от Telegram в случае отправки неподдерживаемых тегов.
Отметим, чтобы не было ошибок со стороны телеграмма бот должен быть подключен к системе как канал связи, а так же пользователь, которому вы пишите сообщение должен хоть раз написать в данный телеграмм бот.
Пример 2. Отправка уведомления в Telegram группу.
Правило составляется по аналогии с отправкой личных сообщений (пример 1). Единственное, что поменяется это параметр chat_id (нужно будет подставить id группы), который можно узнать так:
- добавить Telegram бота @myidbot в нужную группу и прописать команду /getgroupid@myidbot - после чего он отобразит id текущей группы:
Пример содержимого вебхука будет выглядеть практически также:
{
"parse_mode":"html",
"chat_id": "-**********",
"text":"заявка: {link_staff}, id заявки: {ticket_id}"
}
Пример 3. Отправка уведомлений в Telegram-топики (topics/темы)
В HelpDeskEddy можно настроить отправку уведомлений в Telegram-топики (тематические ветки в чатах) с помощью вебхуков. Это позволяет автоматически отправлять сообщения в определённые топики Telegram-группы в зависимости от событий в системе, например, создания заявки с определённым названием. В этой статье мы рассмотрим, как настроить вебхуки для отправки уведомлений в топики Telegram, такие как "Срочные заявки" или "Новые заказы", на основе заголовка заявки в HelpDeskEddy.
Отправка уведомлений в Telegram-топики помогает:
Автоматизировать оповещения о новых заявках в соответствующие тематические ветки.
Улучшить организацию коммуникаций в команде, направляя уведомления в нужные топики.
Сократить время реакции на важные события, такие как срочные заявки или новые заказы.
Предварительные требования
Telegram-бот: Создайте бота через @BotFather в Telegram и получите его токен (например, 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11).
Группа с топиками: Убедитесь, что у вас есть Telegram-группа с включёнными топиками (темами). Бот должен быть добавлен в группу как администратор с правами на отправку сообщений.
ID топиков: Определите ID топиков в группе, куда будут отправляться уведомления. Вы можете узнать ID топика, отправив сообщение в топик и использовав бота (например, @GetIDSBot) для получения thread_id.
Доступ к HelpDeskEddy: У вас должны быть права администратора для настройки вебхуков в разделе "Диспетчер".
Шаг 1: Настройка Telegram-бота
Откройте Telegram и найдите @BotFather.
Создайте нового бота с помощью команды /newbot, следуя инструкциям.
Сохраните полученный токен бота.
Добавьте бота в вашу Telegram-группу как администратора.
Включите топики в группе (настройки группы → "Темы" → Включить).
Создайте топики, например, "Срочные заявки" и "Новые заказы".
Используйте бота, такого как @GetIDSBot, чтобы получить thread_id для каждого топика. Например:
Топик "Срочные заявки": thread_id = 123456.
Топик "Новые заказы": thread_id = 789012.
Шаг 2: Настройка вебхука в HelpDeskEddy
Войдите в HelpDeskEddy и перейдите в модуль Управление → Диспетчер.
Нажмите Добавить правило для создания нового правила автоматизации.
Условия:
В разделе "Обязательные условия" выберите поле "Заголовок заявки" и укажите условие, например, "содержит 'Срочная заявка'" или "содержит 'Новый заказ'".
При необходимости добавьте дополнительные условия (например, по приоритету или категории заявки).
Действия:
Выберите действие Отправить вебхук.
Укажите URL вебхука Telegram API. Формат:
https://api.telegram.org/bot<ВАШ_ТОКЕН_БОТА>/sendMessageНапример:
https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/sendMessageВ поле Параметры вебхука укажите JSON-данные для отправки сообщения в нужный топик. Пример для топика "Срочные заявки":
{ "chat_id": "-100123456789", "message_thread_id": "123456", "text": "Новая срочная заявка: {link_staff}, id заявки: {ticket_id}", "parse_mode": "HTML" }Для топика "Новые заказы":
{ "chat_id": "-100123456789", "message_thread_id": "789012", "text": "Новый заказ: {link_staff}, id заявки: {ticket_id}", "parse_mode": "HTML" }chat_id: ID вашей Telegram-группы (например, -100123456789). Получите его через @GetIDSBot.
message_thread_id: ID топика, соответствующий нужной теме.
text: Текст уведомления. Используйте переменные HelpDeskEddy, в том числе {link_staff} для получения ссылки на заявку.
parse_mode: Укажите "HTML" или "Markdown" для форматирования текста, если требуется.
Сохраните правило и протестируйте его, создав тестовую заявку с заголовком, например, "Срочная заявка".
Шаг 3: Создание дополнительных правил
Для каждого типа заявок создайте отдельное правило в "Диспетчере":
Для "Срочных заявок": Укажите условие "Название заявки содержит 'Срочная заявка'" и настройте вебхук с message_thread_id для топика "Срочные заявки".
Для "Новых заказов": Укажите условие "Название заявки содержит 'Новый заказ'" и настройте вебхук с message_thread_id для топика "Новые заказы".
По аналогии настройте правила для других категорий заявок и соответствующих топиков.
Шаг 4: Тестирование
Создайте тестовую заявку в HelpDeskEddy с заголовком, например, "Срочная заявка #123".
Проверьте, появилось ли уведомление в топике "Срочные заявки" в Telegram-группе.
Повторите тест для заявки с заголовком "Новый заказ #456" и убедитесь, что уведомление отправлено в топик "Новые заказы".
Если уведомления не приходят, проверьте:
Правильность токена бота и chat_id.
Корректность message_thread_id для топика.
Логи вебхуков в HelpDeskEddy (раздел "Диспетчер" → "Логи").
Полезные советы
Форматирование: Для выделения текста используйте HTML-теги (например, <b>текст</b>) или Markdown (**текст**) в поле text.
Ограничения Telegram: Убедитесь, что бот имеет права администратора в группе и топики включены.
Масштабирование: Для большого числа топиков создайте шаблон правил в "Диспетчере" и дублируйте их, изменяя только message_thread_id и условия.
Пример настройки
Допустим, у вас есть Telegram-группа с chat_id = -100123456792 и топик "Срочные заявки" (message_thread_id = 8). Тогда ваше правило будет выглядеть приблизительно следующим образом:
Остальные правила можно реализовать по аналогии.