company_banner
2 декабря 2015 в 09:01

Хотите интегрировать Telegram в Redmine? Есть решение

Некоторое время назад я рассказал от том «Как хранить сложную иерархию настроек в проектах Redmine». Рассказ этот базировался на опыте разработки плагина redmine_intouch. В этой публикации расскажу о самом плагине и том, чем он может быть полезен для вас.

Наша компания растёт, полагаться на человеческий фактор всё сложнее и сложнее, а многочисленные клиенты ожидают мгновенной реакции на свои заявки.

В связи с этим мы стараемся максимально автоматизировать все возможные процессы, напоминать администраторам о необходимости вовремя написать статус по открытым задачам клиентам…

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

image


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

image


И тут кто-то пнёт Ивана Царевича, он вскочет на коня и отправится искать церевну. А его оставшиеся у экранов друзья, наблюдающие за задачей, увидят следующее сообщение:

image

Общие настройки


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

Приоритеты срочных задач указываются дополнительно. Уведомления об этих задачах будут отправляться круглосуточно и без выходных.

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

Мгновенные уведомления


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

Группы исполнителей


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

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

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

Периодические уведомления


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

Для исправления таких ситуация служит функционал периодических уведомлений.image

Отдельно можно настроить уведомления для задач:
  • со статусом «В работе» или «Обратная связь»
  • не назначенные или назначенные на группы
  • просроченные или без указанной даты завершения

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

Например, Аварию стоит обновлять хотя бы раз в час, задачу с приоритетом Высокий — раз в 4 часа, а низкоприоритетную можно и вовсе не комментировать.

Установка и настройка плагина


В этой публикации я не буду рассказывать о тонкостях настройки плагина, т.к. довольно детально это сделал в файле README.

Если возникнут какие-то вопросы, с радостью отвечу на них в комментариях.

P.S.: Компания Centos-admin.ru не участвует в Сказочных приключениях. Задача Ивана Царевича была использована как иллюстрация и ничего общего с деятельностью компании не имеет. Компание же, предоставляет следующие услуги:
  • обновление программного обеспечения
  • мониторинг доступности ресурса 24x7
  • оптимизацию настроек для нагруженных проектов
  • аппаратный мониторинг
  • помощь в отражении DDoS-атак
  • сбор статистики по нагрузке на сервер
  • удаленное резервное копирование
  • поддержку нагруженных проектов

P.P.S.: Ах, да. Чуть не забыл. Вот ссылка на плагин redmine_intouch, он совершенно бесплатный. Будем рады, если он пригодится и вам.

UPD 3.12.2015: Плагин работает с Redmine версии 3.1.2 или выше
Автор: @arturtr
Southbridge
рейтинг 201,98
Обеспечиваем стабильную работу серверов
Похожие публикации

Комментарии (16)

  • 0
    rake aborted!
    NoMethodError: undefined method `[]' for nil:NilClass
    

    Что может быть? На github не могу issue сделать…
    • 0
      Здравствуйте, а можно через pastebin полный trace ошибки? Так легче будет выяснить в чём дело.
      • 0
        http://pastebin.com/vrygrSQ4
        Если что то крутиться все на CentOS + ISPmanager
        • 0
          Добавление аккаунта Telegram к пользователю

          После того как бот запущен и пользователь поприветствовали его командой /start, на страничке редактированию пользователя, можно выбрать соответствующий ему аккаунт Telegram.
          И это не появляется, и во вкладе настройки плагина — также нет аккаунтов
        • 0

          Cудя по логу ошибка вокруг sidekiq
          в redmine/config должнен быть файл sidekiq.yml
          примерно такого содержания https://github.com/centosadmin/redmine_intouch/blob/master/tools/sidekiq.yml


          возможно там есть какой-то другой файл ошибочно составленный. И вообще запущены ли sidekiq и redis для него?


          посмотрите в эту сторону

          • 0
            Я же правильно понял в сервисе redminebot я указываю APP_ROOT в ту папку, где у меня установлен редмайн?
            Или пробую запускать через
            bundle exec rake intouch:telegram:bot PID_DIR='/var/www/data/tmp/pids/telegram-bot.pid'
            

            В redmine/config
            я скопировал без изменения этот файл sidekiq.yml
            Или в нем тоже нужно было указать абсолютные пути?
            sidekiq и redis запущены, по крайней мере /sidekiq работает и показывает кол-во задач и обновляется иногда его лог файл — по другому как-то проверить можно?
            Ранее была ошибка с htmlentities 4.3.1 — победил установкой дополнительно 4.3.4

            P.S. может на github откроете issues, чтобы тут не засорять?
            • 0

              Открыли issues

  • 0
    Ох ребята! Ваш плагин заставил меня вспомнить времена красноглазия.

    Начнём.

    1. Есть CentOS 7.3.1611
    2. rvm ом ставим Ruby 2.3.3 (с 2.4 и выше плохо дружит редмайн)
    3. пытаемся накатить ваш плагин и втыкаемся в ошибки на установке redmine_sidekiq

    Ну вот с документированием у вас явно не всё гладко.
    • 0
      mugz, пожалуйста, создайте тикет на github с вопросами по документации. Мы опишем подробнее.

      По-поводу ошибок — тоже напишите подробности на github. Поможем.
      • +1
        Спасибо помогли. Документацию по настройке и установке хорошо бы сделать получше.
        Из текущих проблем:
        — Нельзя поставить ваши плагины на BITNAMI Redmine. Из-за того что у них Ruby-2.1.0 а у вас минимум 2.3 просит
        — Существует проблема с отправкой email при подписке на бота.
        • 0
          Давайте попробуем найти проблему, работаем в тикете https://github.com/centosadmin/redmine_intouch/issues/31

          По-поводу документации — с радостью примем пулл-реквесты с правками ;-)
          • 0
            Для начала мне надо всё это дело заставить работать. Потом уже могу документацию пошаговую написать.
            • 0
              Данные об ошибке получили. Как только будет решение — напишем в тикете. Скорее всего уже на следующей неделе.
            • 0
              Спасибо за помощь в отладке!
  • 0
    Спасибо за плагин. Очень удобно. Единственное пожелание, возможно ли сделать чтоб при обновлении задачи (добавление комментария) в телеграмм также присылалось сообщение с самим добавленным комментарием?
    • 0
      Для этого есть redmine_chat_telegram.
      В течение 1-2 недель в нем будут существенные изменения, наконец-то получится избавиться от telegram-cli.

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

Самое читаемое Разное