SharePoint Alfresco PHP MySQL
О сайте Контакты
суббота, 26 января 2013 г.

Задачи из email в Redmine

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

Самый простой метод, который позволяет организовать прием писем, это создание специального почтового ящика, который и будет периодически опрашиваться Redmine по протоколу pop3.

Для затягивания писем и преобразования их в задачи Redmine можно использовать командный файл следующего содержания:

@echo off

SET _redmine_path=D:\\webserver\\redmine\\
SET _host=pop3.server.com
SET _username=redmine@server.com
SET _password=pass

rake -f "%_redmine_path%Rakefile" redmine:email:receive_pop3 RAILS_ENV="production" host=%_host% username=%_username% password=%_password% project=unsorted tracker=bug allow_override=tracker,priority delete_unprocessed=1 unknown_user=accept no_permission_check=1

В самом Redmine настраивать практически ничего не нужно. Надо только завести проект, в который будут попадать «почтовые» задачи. Идентификатор этого проекта указывается в параметре project, как видно из скрипта выше.

Параметр tracker=bug означает, какой тип будет присвоен задаче. В данном случае, это «Ошибка»

В теле письма можно указывать параметры создания задачи. Эти параметры перечисляются в директиве allow_override=tracker,priority. Например, если в письме написать Tracker: feedback, то создастся задача с трекером не bug, а feedback.

delete_unprocessed=1 означает, что Redmine будет удалять из почтового ящика те письма, которые ему не удалось обработать.

unknown_user=accept — если письмо отправлено с email, который не зарегистрирован в Redmine, создастся задача от имени Аноним.

no_permission_check=1 позволяет не проверять права доступа, особенно это актуально для незарегистрированных, так как у них нет никаких прав и задачи могут не создаться

Вышеприведенный скрипт необходимо оформить как запланированное задание и запускать каждые N минут. Я настроил запуск раз в 10 минут.

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

Sergey Lysenko, суббота, 26 января 2013 г.

Комментарии: