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

Назначение

Сценарий используется, когда необходимо настроить отправку уведомлений Платформы в Telegram-бот.

Уведомления в Telegram позволяют оперативно получать сообщения о событиях, связанных с устройствами, сертификатами и состоянием компонентов Платформы.

Такой подход удобно применять, если требуется:

  • получать уведомления о неуспешном применении стадий протокола BCMP;

  • заранее получать сообщения об истечении срока действия x.509-сертификатов;

  • получать уведомления о плановом автоматическом обновлении сертификатов;

  • отправлять оповещения Prometheus в Telegram;

  • централизованно доставлять технические уведомления в приватную группу администраторов.

Условия применения

Перед настройкой убедитесь, что:

  • у администратора есть доступ к Telegram;

  • создан Telegram-бот через BotFather;

  • создана приватная группа Telegram для получения уведомлений;

  • Telegram-бот добавлен в созданную группу;

  • известен токен Telegram-бота;

  • известен Chat ID группы;

  • у пользователя есть доступ к утилите установки и обновления Платформы;

  • известен пароль от Платформы;

  • Платформа имеет сетевой доступ к Telegram API.

Токен Telegram-бота является секретным значением. Не передавайте его третьим лицам и не публикуйте в открытых источниках.

Если токен был скомпрометирован, перевыпустите его через BotFather.

Поддерживаемые типы уведомлений

Тип уведомления

Текст сообщения

Стадия протокола BCMP не применилась, состояние Failed

Cpe name:(имя устройства) cpe_id:(идентификатор устройства) has invalid stage:(название не примененной стадии)

Истечение срока действия x.509-сертификата

(имя устройства, на котором истекает срок действия x.509-сертификата) certificate is about to expire at (дата истечения x.509-сертификата)

Плановое автоматическое обновление x.509-сертификата

(имя устройства, на котором будет проведено автоматическое обновление x.509-сертификата) certificate is about to expire at (дата истечения x.509-сертификата). Scheduled update (дата обновления x.509-сертификата)

Уведомление об истечении срока действия x.509-сертификата отправляется за две недели до окончания срока действия сертификата.

Шаги настройки

Создание Telegram-бота

Для создания Telegram-бота выполните следующие шаги:

  1. Откройте Telegram и перейдите к боту BotFather.

  2. Отправьте команду:

    /newbot
  3. Укажите имя создаваемого Telegram-бота.

  4. Укажите имя пользователя Telegram-бота. Имя пользователя должно заканчиваться на bot.

  5. Дождитесь сообщения от BotFather с токеном созданного Telegram-бота. Токен имеет следующий формат:

    7777777777:xXxXxxXXxxXxXx
  6. Сохраните токен. Он потребуется при настройке уведомлений на Платформе.

Проверка режима приватности Telegram-бота

Для проверки режима приватности Telegram-бота выполните следующие шаги:

  1. Перейдите к боту BotFather.

  2. Отправьте команду:

    /mybots
  3. Выберите созданного Telegram-бота.

  4. Перейдите в раздел Bot SettingsGroup Privacy.

  5. Убедитесь, что для бота включен режим приватности. Должно отображаться сообщение вида:

    Privacy mode is enabled for Имя бота @name_bot

Создание группы Telegram

Для создания группы Telegram выполните следующие шаги:

  1. Создайте новую приватную группу Telegram.

  2. Добавьте в группу созданного Telegram-бота.

  3. Добавьте в группу администраторов, которые должны получать уведомления.

Получение Chat ID

Для получения идентификатора чата выполните следующие шаги:

  1. Откройте созданную группу в веб-версии Telegram.

  2. Посмотрите URL в адресной строке браузера. URL может иметь следующий вид:

    https://web.telegram.org/k/#-12345678
  3. Скопируйте значение после символа #. Например:

    -12345678

    Это значение используется как Chat ID.

Запуск утилиты установки и обновления Платформы

Для запуска утилиты выполните следующие шаги:

  1. Подключитесь к узлу Платформы по SSH.

  2. Перейдите в директорию размещения утилиты установки и обновления Платформы.

  3. Запустите утилиту:

    ./csp_wizard
  4. В окне CSP Wizard Main Menu выберите пункт Reconfigure CSP.

Выбор режима работы Платформы

Для выбора режима работы Платформы выполните следующие шаги:

  1. Выберите вариант реконфигурации в зависимости от режима работы Платформы:

    1. одиночный узел;

    2. отказоустойчивый кластер.

  2. Введите пароль от Платформы.

  3. Если выполняется реконфигурация отказоустойчивого кластера, повторите ввод пароля для всех узлов, для которых его запросит утилита.

Настройка Telegram Alerts

Для настройки уведомлений Telegram выполните следующие шаги:

  1. В меню реконфигурации выберите пункт Change ‘Enable Telegram Alerts‘.

  2. В блоке New value включите флаг Enable Telegram Alerts.

  3. В поле Bot Token укажите токен Telegram-бота. Например:

    7777777777:xXxXxxXXxxXxXx
  4. В поле Chat ID укажите идентификатор чата. Например:

    -12345678
  5. Если требуется получать в Telegram оповещения Prometheus, включите флаг Enable Prometheus Alerts.

  6. В поле Telegram API URL укажите URL API Telegram, который должен использоваться Платформой для отправки уведомлений.

  7. Если уведомления должны отправляться в конкретную тему группы Telegram, в поле Message Thread ID укажите идентификатор темы сообщения. Если темы не используются, оставьте поле пустым.

  8. Нажмите кнопку

    .

  9. В окне Attention подтвердите изменение настроек Платформы.

Завершение настройки

Дождитесь завершения реконфигурации Платформы.

После завершения настройки убедитесь, что Telegram-бот добавлен в нужную группу и имеет возможность отправлять сообщения.

Проверка настройки

После применения настройки проверьте получение уведомлений в Telegram.

  1. Откройте группу Telegram, указанную в поле Chat ID.

  2. Убедитесь, что Telegram-бот находится в группе.

  3. Проверьте, что в настройках Платформы указаны корректные значения:

    • Enable Telegram Alerts;

    • Bot Token;

    • Chat ID;

    • Enable Prometheus Alerts;

    • Telegram API URL;

    • Message Thread ID, если используется тема группы.

  4. При наличии тестового события проверьте, что уведомление поступает в Telegram-группу.

Если уведомления не поступают, проверьте:

  • корректность токена Telegram-бота;

  • корректность Chat ID;

  • наличие Telegram-бота в группе;

  • доступность Telegram API с узлов Платформы;

  • настройки прокси или межсетевого экрана, если доступ в интернет ограничен;

  • значение Message Thread ID, если уведомления должны отправляться в тему группы.