Уведомления GLPI в Telegram: пошаговое руководство по Telegram Bot (бесплатно)

Узнайте, как создать бота, подключить его к GLPI 11, привязать каждого пользователя по коду и выбрать, какие уведомления отправлять в Telegram. Бесплатно, с NexTool.

В этой статьеРазделов: 12

GLPI уже умеет оповещать команду; осталось, чтобы оповещение приходило туда, где она находится. Бесплатный модуль Telegram Bot от NexTool доставляет в Telegram те же уведомления, которые GLPI отправляет по электронной почте. Это руководство показывает полную настройку версии 3.7.1 — от BotFather до первого уведомления.

Что вы получите в итоге

Каждый сотрудник команды получает в Telegram уведомления, которые GLPI уже сегодня отправляет по почте: новая заявка, комментарий, решение, запрос на согласование. Бот принадлежит вашей компании, а сообщения идут из вашего GLPI напрямую в Telegram.

Перед началом

  • GLPI 11 с NexTool 6.27.0 или выше.
  • GLPI доступен из интернета по HTTPS с действительным сертификатом. Telegram должен доставить в ваш GLPI сообщение, которым каждый человек привязывает свой чат. Проверьте в Настройки > Общие, что «URL приложения» заполнен публичным адресом, начинающимся с https://. GLPI, доступный только во внутренней сети, не сможет привязывать пользователей.
  • Автоматическое действие (cron) GLPI запущено на сервере. Через него модуль каждые 5 минут проверяет подключение бота.
  • Аккаунт в Telegram для создания бота.

Шаг 1: создайте бота в Telegram

  1. В Telegram откройте диалог с @BotFather и отправьте /newbot.
  2. Выберите отображаемое имя (например, «Поддержка Моей Компании»).
  3. Выберите имя пользователя: оно должно заканчиваться на bot (например, minhaempresa_suporte_bot).
  4. BotFather ответит токеном API вида 123456789:AA…. Храните его бережно: тот, у кого есть токен, управляет ботом.

Совет: используйте отдельного бота только для этого GLPI. Один и тот же бот в двух GLPI заставит их конкурировать за сообщения.

Шаг 2: установите и активируйте модуль

  1. Перейдите в NexTool > Модули и найдите Telegram Bot.
  2. Нажмите «Скачать», затем «Установить» и «Активировать». Модуль бесплатный.

Шаг 3: выдайте права профилям

В Администрирование > Профили > [профиль] > вкладка NexTool, в строке Telegram Bot:

  • Для администраторов: «Просмотр настроек», «Настройка» и «Просмотр журналов» — для диагностики.
  • Для тех, кто будет получать уведомления (специалисты, а также профиль самообслуживания, если вы хотите уведомлять инициаторов): «Привязать свой чат Telegram».
  • Необязательно, для тех, кто помогает коллегам: «Привязать чат Telegram другого пользователя». Также требует права редактировать этого пользователя в GLPI. Даже в этом случае код отправляет сам человек из своего Telegram.

При новой установке эти права изначально не отмечены.

Раздел «Модуль: Telegram Bot» на вкладке NexTool профиля GLPI: отмечены «Просмотр настроек» и «Привязать свой чат Telegram», не отмечено «Привязать чат Telegram другого пользователя»
Права Telegram Bot в профиле: тем, кто только получает уведомления, достаточно «Привязать свой чат Telegram».

Шаг 4: подключите бота к GLPI

  1. Откройте NexTool > Telegram Bot и перейдите на вкладку Коннекторы.
  2. В карточке «API бота» заполните «Токен API» токеном от BotFather. Он хранится в зашифрованном виде и больше никогда не показывается на экране; чтобы заменить его, просто вставьте другой. В поле «Имя бота» укажите имя пользователя бота, с @ или без (например, @minhaempresa_suporte_bot).
  3. В «Режиме работы» оставьте «Автоматический (следует привязке к NexTool)».
  4. Нажмите «Сохранить». Если всё в порядке, появится «Бот подключён: сообщения, отправленные ему, уже поступают.», а карточка «Подключение бота» покажет «Подключено».

Если карточка показывает «Есть проблема», сообщение укажет причину; см. раздел Если что-то не работает. Проверка выполняется автоматически каждые 5 минут, а кнопка «Проверить сейчас» проверяет сразу.

Шаг 5: каждый привязывает свой Telegram

  1. В GLPI пользователь открывает Мои настройки (меню пользователя) и переходит к разделу Telegram.
  2. Нажимает «Сгенерировать код привязки».
  3. Нажимает «Открыть в Telegram». Telegram откроет диалог с ботом; нажатие Запустить отправит код автоматически. Без ссылки можно отправить боту сообщение /start с кодом после него.
  4. Бот ответит: «Готово! Этот чат привязан к учётной записи … в GLPI.»
  5. Перезагрузите страницу GLPI: раздел покажет «Привязан (чат, оканчивающийся на …)».
Раздел Telegram в «Моих настройках» GLPI: Telegram: не привязан, кнопка «Сгенерировать код привязки» и справочный текст о привязке по коду
В «Моих настройках» каждый генерирует свой код: «Привяжите по коду: сгенерируйте его, откройте ссылку в Telegram и отправьте боту. Код подтверждает, что чат принадлежит вам.»

Правила кода:

  • Действует 10 минут и только один раз.
  • Работает только в личном диалоге с ботом. Отправленный в группу код аннулируется, чтобы никто не получал чужие уведомления.

Чтобы отвязать чат, используйте «Отвязать» в том же разделе. Администратор может сгенерировать код за другого человека в Администрирование > Пользователи > [пользователь]. Тот получает ссылку и открывает её в своём Telegram.

Шаг 6: проверьте

На вкладке Коннекторы, в карточке «Тест»:

  1. «Проверить подключение» проверяет, работает ли токен, без отправки сообщения.
  2. Чтобы отправить тестовое сообщение, отправьте боту /token — он ответит «Ваш chat_id: …». Вставьте это число в «Тестовый получатель (chat_id)» и нажмите «Отправить тестовое сообщение». Придёт тестовое сообщение от GLPI Telegram Bot: «Если вы получили это сообщение, настройка работает!»

Шаг 7: выберите, что отправлять в Telegram

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

  1. В Настройки > Уведомления включите «Включить уведомления» и «Включить followups через Telegram». Последний параметр при установке выключен.
Экран «Настройки > Уведомления» GLPI: «Включить уведомления» включено, «Включить followups через Telegram» пока выключено
В «Настройки > Уведомления» параметр «Включить followups через Telegram» пока выключен: именно его нужно включить.
  1. Откройте уведомление (например, Заявки > «Новая заявка») и перейдите на вкладку Шаблоны.
  2. Добавьте шаблон с режимом «Telegram». Это может быть тот же шаблон, что и для почты.
Форма «Новый элемент — Шаблон уведомления» для «Заявка — Новая заявка» с полем «Режим», установленным в Telegram
Новый шаблон в уведомлении «Заявка — Новая заявка» с режимом «Telegram».
  1. Получатели — те, что указаны на вкладке Получатели самого уведомления: инициатор, специалист, группа и т. д.
  2. Повторите для каждого уведомления, которое хотите получать в Telegram (комментарий, решение, запрос на согласование…).

В Telegram получает тот, кто указан среди получателей, привязал чат и имеет активную учётную запись. Сообщение использует текст шаблона. Чтобы в нём была ссылка на заявку, шаблон должен содержать URL (например, ##ticket.url##), который использует «URL приложения».

Шаг 8 (необязательно): уведомления о согласовании

  1. На вкладке Настройки Telegram Bot включите «Согласование кнопками» (по умолчанию выключено).
  2. В бесплатном режиме экран предупредит, что сообщение будет без кнопок: в нём будет ссылка на заявку, а согласование выполняется в GLPI.
  3. Согласующий получит «Заявка требует вашего согласования.» с адресом заявки и «Откройте заявку в GLPI, чтобы согласовать или отклонить.»
  4. Работает для индивидуального согласующего, но не для группы.

Если что-то не работает

  • Карточка «Подключение бота» в состоянии «Есть проблема»:
    • «Telegram отклонил токен бота»: заново скопируйте токен у BotFather и сохраните.
    • «У этого GLPI не настроен публичный адрес»: заполните «URL приложения» в «Настройки > Общие» с https.
    • «Этот GLPI использует http. Telegram доставляет сообщения только по https…»: опубликуйте GLPI по https с действительным сертификатом и исправьте «URL приложения».
    • «Бот не направлен на этот GLPI» или «Telegram не может доставить сообщения бота»: проверьте, открывается ли GLPI из интернета по https с действительным сертификатом и запущен ли cron GLPI.
  • Бот не отвечает на код: тот же случай, что выше (Telegram не может достучаться до GLPI). Либо истёк срок кода: сгенерируйте новый.
  • Пользователь не получает уведомления: проверьте, привязан ли он (раздел Telegram), есть ли он среди получателей уведомления и добавлен ли режим «Telegram», а также не заблокировал ли он бота в Telegram.
  • Где посмотреть, что произошло: вкладка Журналы Telegram Bot. Для подробностей переключите «Уровень журналирования» на Debug на вкладке «Настройки», а потом верните значение по умолчанию.

Совместимость

  • GLPI: 11 (не работает в GLPI 10)
  • Тариф: бесплатно
  • Плагин: NexTool 6.27.0 или выше, модуль Telegram Bot 3.7.1

Следующий шаг

Telegram Bot входит в NexTool — экосистему модулей для расширения GLPI без доработок кода. Остались вопросы по настройке? Свяжитесь с командой.


Проверено командой NexTool Solutions. Снимки экрана сделаны в реальной среде GLPI с плагином NexTool.

Часто задаваемые вопросы

Да. Модуль Telegram Bot от NexTool бесплатный.

Нет, только в GLPI 11 с NexTool 6.27.0 или выше.

Для привязки пользователей — нет: Telegram должен достучаться до GLPI по HTTPS с действительным сертификатом.

В бесплатной версии — нет. Он доставляет уведомления и выполняет привязку; отвечать и согласовывать нужно в GLPI.

Нет. Создайте отдельного бота для каждого GLPI: один бот в двух GLPI заставляет их конкурировать за сообщения.

Нет. GLPI общается напрямую с Telegram, используя токен вашего бота.

Нужна помощь?