Совместно с командой разработчиков из secoint.ru мы разработали плагин redmine_status_notifier, о котором я и расскажу под катом.
Как работает плагин
Если в новой или уже существующей задаче приоритет становится к примеру, Авария! или Ахтунг!, запускается скрипт, который отправляет через sms-шлюз оповещение на заданные мобильные номера. При закрытии задачи так же отправляются оповещения, что очень удобно для сохранения нервной системы ответственных за проект.
Как установить и настроить
Плагин проверен на последних стабильных версиях Redmine, к примеру, 2.1.4.
Загружаем плагин в папку redmine/plugins:
cd redmine/plugins && git clone https://github.com/olemskoi/redmine_status_notifier.git
Редактируем параметры «critical_priority» (список приоритетов, при которых будут отправляться оповещения) и «script» (путь к скрипту, который будет отправлять оповещения) в файле redmine_status_notifier/init.rb.
Создаем скрипт примерно следующего содержания:
#!/bin/sh $1 new / done $2 номер задачи $3 идентификатор проекта $4 тема задачи # скрипт получает следующие параметры от плагина: # событие: new / done ACTION="$1" # номер задачи ISSUE_ID="$2" # идентификатор проекта PROJECT="$3" # тема задачи SUBJECT="$4" # в качестве sms-шлюза мы используем сервис smsc.ru SMSC_LOGIN="mylogin" SMSC_PASSWORD="mypassword" # номера для оповещения, указанные через запятую SMSC_NOTIFYTELS="89167777777,89151111111" case "$ACTION" in active) # если задача новая или открыта STATUS="new" ;; done) # если задачу закрыли STATUS="done" ;; *) echo "please define action" exit 1 ;; esac # шаблон sms-сообщения. в данном случае выглядит следующим образом: "new myproject #111: Сервер недоступен" SMSC_MESSAGE="$STATUS $PROJECT #$ISSUE_ID: $SUBJECT" # используя API smsc, отправляем утилитой curl запрос на отправку сообщений LC_ALL=ru_RU.UTF-8 /usr/bin/curl --silent --show-error "https://smsc.ru/sys/send.php?charset=utf-8&login=$SMSC_LOGIN&psw=$SMSC_PASSWORD&phones=$SMSC_NOTIFYTELS&mes=$SMSC_MESSAGE" > /dev/null 2>&1
Перезапускаем Redmine.
Для проектов, в которых нужны оповещения, в настройках включаем модуль «Отправка уведомлений об авариях»
Вот и все, теперь вы будете быстро узнавать о срочных задачах.
ссылка на оригинал статьи http://habrahabr.ru/company/centosadmin/blog/160457/
Добавить комментарий