Telegram

Чтобы получать уведомления из Трекера в Telegram, вы можете настроить подписку и выбрать Telegram в качестве канала для уведомлений. Как настроить подписку

Если возможностей стандартной подписки вам не хватает, можно использовать интеграцию с Telegram с помощью триггера, как описано на этой странице.

Предположим, что нужно автоматически отправлять уведомления в мессенджер, когда у задачи меняется статус. Например, чтобы отслеживать готовность релизов к тестированию. Для этого можно настроить триггер, который будет отслеживать статусы задач типа Задача и отправлять HTTP-запрос, когда статус задачи изменится на Требуется информация.

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

Шаг 1. Настройка Telegram-бота

  1. Создайте нового Telegram-бота:

    1. В мессенджере Telegram добавьте в контакты бота @BotFather и отправьте ему сообщение /start.

    2. Отправьте боту сообщение /newbot и следуйте инструкциям: придумайте для бота отображаемое имя (например, My Company) и имя аккаунта (например, MyCompanyBot). Имя аккаунта должно иметь окончание bot.

    В ответ вы получите сообщение об успешном создании бота. В сообщении будет указан токен, который потребуется для обращения к вашему боту через API. Токен имеет вид 1234567890:ABC123-defHIJ...

  2. Добавьте созданного бота в групповой чат Telegram, в который вы хотите отправлять оповещения из Трекера.
    Если вы хотите получать оповещения из Трекера в личных сообщениях, начните чат с ботом.

Подробнее о настройке Telegram-бота можно узнать на сайте https://core.telegram.org/bots.

Шаг 2. Получение идентификатора чата, темы чата, аккаунта

Для получения идентификаторов чата, темы чата и аккаунта можно использовать специальных ботов, например @myidbot.

  • Чтобы узнать идентификатор группового чата, добавьте в этот чат бота и отправьте ему сообщение /getgroupid. Обратите внимание, что идентификатор группового чата начинается с минуса -.

  • Если групповой чат в Telegram разделен на темы, вы можете узнать идентификатор темы:

    1. Отправьте сообщение в нужную тему.
    2. Нажмите правой кнопкой мыши на отправленное сообщению и выберите Копировать ссылку на сообщение.
    3. Вставьте ссылку в любой текстовый редактор. Вы получите ссылку вида https://t.me/c/1112223334/<message_thread_id>/3, где <message_thread_id> — идентификатор темы чата.
  • Чтобы узнать идентификатор вашего аккаунта для отправки личных сообщений, начните чат с ботом и отправьте ему сообщение /getid.

Шаг 3. Настройка Трекера

  1. Авторизуйтесь в Трекере. У вас должны быть права на администрирование очереди, для которой вы будете настраивать триггер.

  2. На панели слева нажмите  Очереди и выберите очередь.

  3. На странице очереди в правом верхнем углу нажмите  Настройки очереди.

  4. На панели слева выберите Автоматизация.

  5. В правом верхнем углу нажмите кнопку Создать → Триггер.

  6. Введите название триггера, например «Уведомления в Telegram».

  7. Задайте условия, чтобы триггер срабатывал, когда задача типа Задача переходит в статус Требуется информация:

    1. Добавьте условие Тип → равно → Задача.

    2. Добавьте условие Статус → стало равно → Требуется информация.

    3. Убедитесь, что слева от группы условий указан логический оператор И, чтобы триггер сработал при одновременном выполнении условий.

  8. Задайте действия триггера:

    1. Нажмите кнопку Добавить действие и выберите HTTP-запрос.

    2. Настройте запрос:

      • Метод — POST.

      • Адрес: https://api.telegram.org/bot<токен>/sendMessage
        Где <токен> — значение токена, который вы получили при настройке Telegram-бота.

      • Способ авторизации — NoAuth.

      • Тип содержимого — application/json.

      • Тело запроса:

        {
            "chat_id": "<идентификатор_чата>",
            "message_thread_id": "<идентификатор_темы_чата>",
            "parse_mode":"markdown",
            "text": "Требуется информация по задаче [{{issue.key}}: {{issue.summary}}](https://tracker.yandex.ru/{{issue.key}})"
        }
        

        Описание параметров:

        • chat_id — идентификатор чата, который вы получили при настройке Telegram-бота.
        • message_thread_id — идентификатор темы чата.
        • parse_mode — выбор способа для разбора текста. Укажите "parse_mode":"markdown", чтобы использовать разметку Markdown.
        • text — текст сообщения. Чтобы добавить значения полей задачи, справа от поля ввода нажмите кнопку { } и выберите имя поля.

        Если вы хотите использовать в HTTP-запросе другие методы и параметры, вы можете найти описание API Telegram-ботов на сайте https://core.telegram.org/bots/api.

      • Заголовки оставьте пустыми.

  9. Сохраните триггер.

Чтобы проверить работу триггера, переведите задачу типа Задача в статус Требуется информация. Триггер отправит в чат Telegram сообщение с текстом: «Требуется информация по задаче TEST-123: Настроить триггеры».

Токен — это секретный ключ для доступа к API. Он подтверждает пользователя или приложение, поэтому его нельзя передавать другим.

Триггер — это автоматическое правило. Оно выполняет действия с задачей, когда срабатывают заданные условия.

Предыдущая