Nixys > Журнал > Наш Telegram-бот для Redmine: таск-трекер в кармане

Наш Telegram-бот для Redmine: таск-трекер в кармане

  • 25 января 2018
  • #

Уже более 10 лет мы ведем задачи наших клиентов в Redmine. С самого начала деятельности компании мы железно решили использовать таск-трекер для работы над задачами по одной простой причине — вся информация по проектам находится в одном месте с общим доступом. Для нас это жизненно необходимо, так как помимо администрирования серверов 24/7 мы также разрабатываем и внедряем инфраструктурные решения на базе Kubernetes. Поэтому аккумулирование и сохранность информации критически важны. Удобство такого подхода оценивают на себе не только наши специалисты, но и сам клиент, когда у него под контролем, по сути, всегда исчерпывающая информация по его проекту онлайн.

Основная проблема с таким подходом в том, что клиентам обычно довольно сложно все действия по задачам проводить только через таск-трекер. Спустя некоторое время после начала сотрудничества в ход начинают идти различные мессенджеры, просто потому, что они всегда под рукой. Вконтакте, Skype или WhatsApp, отправить сообщение в несколько кликов прямо с мобильного и не ждать, пока прогрузится браузер с Redmine. Конечно мессенджер в разы удобней, но с ними есть одна проблема — их много. Каждый клиент пользуется чем-то своим, и когда на менеджеров и администраторов начинают сыпаться сообщения из разных каналов, держать по 10 открытых чатов попросту неэффективно. Поэтому мы жестко ограничивали такие активности и приучали клиентов работать только в Redmine.

Но прогресс не стоит на месте, мы развиваемся, и не только с профильной стороны, но и сточки зрения сервиса. За последние 2 года численность пользователей смартфонов для повседневных задач и работы выросла в несколько раз. Конечно, мы начали получать все больше запросов от клиентов на возможность коммуницировать через мобильные мессенджеры. Мы не могли уже противостоять этому, и стали искать какой из популярных мессенджеров официально интегрировать в нашу инфраструктуру. На тот момент наш выбор пал на Telegram, потому что у него предельно удобный веб-клиент и мобильное приложение, и нет лишних тяжелых обвесов, как у мессенджера ВК, например.

Но ввести в обиход один мессенджер — это безусловно удобно для клиентов, но дополнительная головная боль для администраторам. Причина в том, что любая живая переписка почти всегда ведется стихийно, на бегу, и поэтому в какой то момент участники теряют нить повествования и снова просят писать все в Redmine. В таком случае, без дополнительных правил переписки, внедрение мессенджера теряют смысл. В этот момент мы приняли решение написать свой собственный Telegram-бот и максимально формализовать рабочую переписку в Telegram. Нашей целью было использовать все прелести мобильности и простоты мессенджера, при этом избегая бесконтрольности живой переписки.

С помощью нашего Telegram-бота можно:

  • быстро поставить задачу
  • получать апдейты по текущим задачам
  • отвечать по задачам буквально на лету

Всё это — прямо из Telegram, не заходя в систему задач!

Для того, чтобы найти бота есть 2 варианта:

  • Можно перейти по ссылке — https://t.me/nixys_support_bot
  • Можно найти в Telegram через поиск по имени
    @nixys_support_bot

Авторизируемся

Для работы с чат-ботом необходимо иметь Redmine-аккаунт.

Сначала придумываем себе username и прописываем в настройках Telegram.

Данный username также прописываем в настройках Redmine.

Находим в Telegram чат-бота @nixys_support_bot и пишем “Start”.

Бот предложит выбор языка: Русский или Английский.

После выбора языка, бот предложит выполнить привязку
к аккаунту Redmine.

После регистрации в Redmine необходимо получить ключ
API и отправить его боту. Для этого необходимо зайти в настройки аккаунта, сгенерировать и скопировать ключ:

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

Готово, вы успешно включили бота. Теперь уведомления об изменениях по вашим задачам будут отображаться в сообщениях.

Ставим задачи

Для создания новой задачи, нажмите «Создать новую задачу».
Бот перейдёт в соответствующий режим.

И предложит два варианта дальнейшего действия. Сначала выберете нужный проект (если исходный проект не подходит) и укажите нужный приоритет для задачи (если исходный приоритет не подходит).

Если вас устраивают исходные проект и приоритет — сразу нажимайте «Создать задачу» и укажите для нее заголовок и описание в текстовом поле мессенджера

Бот сообщит о создании новой задачи и предложит
кликабильную ссылку, по которой можно будет перейти в
тикет в Redmine:

В Redmine поставленная задача будет выглядеть следующим образом:

Для добавления комментария в конкретную задачу, выделите
сообщение с задачей, нажмите «Ответить» и введите текст
комментария. Бот автоматически добавить ваш комментарий к
задаче. Важно помнить, что вы имеете доступ только к тем задачам,
к которым вы подключены непосредственно в Redmine.

Ведем переписку по задачам

Как только что-то происходит в задаче, бот об этом сообщает. Например, администратор отписывается о проделанной работе.

В Telegram приходит данный комментарий с указание задачи, статуса и отправителя.

На такое сообщение можно сразу ответить прямо через бота.

Итого, мы создали задачу и ответили по ней на комментарий — и ни разу не зашли для этого в Redmine. При этом дежурный администратор все это время работал с задачей именно в Redmine, не переключаясь на мессенджер.

Вложения в комментариях

Бот гибко работает с вложениями, как из Telegram в
Redmine, так и наоборот. Вложения поодерживают:
фотографии, документы, видео и аудио

Допустим, система мониторинга сообщила нам о
проблеме на сервере. Администратор создает задачу в
Redmine и прикрепляет к ней график системы
мониторинга. Вам в Telegram придёт подобное
сообщение:

На которое вы, например, сможете ответить голосовым
сообщением (оно будет доставлено в задачу в виде файла):

Вот и все! Пользуйтесь нашим Telegram-ботом будет вам счастье 🙂

Если хотите узнать технические особенности Telegram-бота, читайте наш обширный материал на Хабре: https://habr.com/ru/company/nixys/blog/347526/