|
Существует множество вариантов взаимодействия между разработчиками и пользователями программных продуктов. Чаще всего информация об ошибках автоматически уходит разработчикам в виде письма, а просьбы о различных улучшениях пользователи медленно передают через руководителей.
Если при разработке используется система управления задачами (а мне сложно представить случай, когда без такой системы можно обойтись), удобно все задачи хранить именно в этой системе. К тому же пропадает необходимость копирования сообщений.
В Redmine, который мы используем сейчас для большинства проектов, есть такая функция, как прием задач по email (Receiving emails). Настраивается прием сообщений достаточно просто, но не тривиально, т.к. в интерфейсной части Redmine эта функция никак не отражена. Ниже приведен примерный алгоритм настройки приема задач как сообщений email по протоколу POP3.
1. Проверить файлы redmine\lib\redmine\pop3.rb и redmine\lib\tasks\email.rake
Итак, для начала нужно определить какая версия Redmine используется. Для этого достаточно посмотреть описание в файле redmine\doc\CHANGELOG (про Changelog в официальной документации). Верхняя строчка и будет содержать текущую версию. Если это версия 0.8.X. или меньше, то в ней еще нет поддержки протокола POP3.
Вообще, за поддержку этого протокола и прием сообщений отвечают всего два файла: redmine\lib\redmine\pop3.rb и redmine\lib\tasks\email.rake.
Если файла pop3.rb не оказалось, значит придется или обновить Redmine до последней версии или заменить некоторые файлы. В нашем случае обновление неприемлемо из-за отсутствия обновлений некоторых важных плагинов. Файл pop3.rb можно взять прямо из репозитория Redmine (например, из текущей ветки): http://redmine.rubyforge.org/svn/trunk/lib/redmine/pop3.rb.
Далее нужно проверить включена ли поддержка приема сообщений по pop3 в email.rake – файл, содержащий форматы запуска задач приема сообщений. Если простым текстовым поиском упоминаний pop3 не нашлось, значит и этот файл нужно взять из репозитория: http://redmine.rubyforge.org/svn/trunk/lib/tasks/email.rake. Старый файл на всякий случай нужно переместить или переименовать, а на его место скопировать файл из репозитория.
После этого Redmine нужно остановить и запустить снова. Если Вы используете сборку Bitnami, то для этого есть bat файл, запускаемый и из меню Пуск.
2. Создать пользователя, от имени которого будут создаваться задачи из email.
Принимаемые сообщения в Redmine ассоциируется с неким пользователем по исходящему почтовому ящику. Предположим, что сообщения отправляются от имени почтового ящика RedmineEmail@myhost.com. В Redmine должен существовать пользователь с таким почтовым ящиком, например Feedback или FatalError. Все задачи, создаваемые по входящим сообщениям, будут созданы от имени этого пользователя.
Если нужно, что бы каждый пользователь мог создавать задачи по email от свого имени, то все эти пользователи должны существовать в Redmine и иметь соответствующие права в проекте.
3. Установить разрешение в Redmine для приема входящих сообщений
Нужно зайти в Redmine как администратор и в общих настройках поставить галочку для разрешения приема входящих сообщений (см. рис.1).
Рис. 1. – Настройка приема входящих сообщений.
4. Создать скрипт для запуска задачи разбора почты
Ниже приведен пример скрипта (bat-файл). Предполагается, что параметры доступа к ящику входящих сообщений Host = pop3.myhost.com, Username = IncomeRedmineEmail, Password = IncomeRedmineEmailPassword, а также существует проект ProjectName и вид задач Feedback; Redmine_Path – путь к Redmine.
REM Setting path
SET Redmine_Path = c:\Program files\BitNami Redmine Srack\apps\redmine\
REM Setting email
SET Host = pop3. myhost.com SET Username = IncomeRedmineEmail SET Password = IncomeRedmineEmailPassword SET Project = ProjectName SET Tracker = Feedback
REM Getting emails from server Rake –f “%REDMINE_PATH%rakefile” redmine:email:receive_pop3 RAILS_ENV=”producrion” host=%Host% username=%Username% password=%Password% project=%Project% tracker=%Tracker%
Подробнее формат команды rake task (redmine:email:receive_pop3) см. Receiving emails
5. Создать расписание для запуска задачи забора почты.
Самый простой способ в Windows задать расписание для запуска bat-файла – Task Scheduler
После этого, сообщения, приходящие на адрес IncomeRedmineEmail@ myhost.com с ящика RedmineEmail@myhost.com (пользователь с таким ящиком зарегистрирован в Redmine и имеет достаточные права) будут добавляться в Redmine в проект ProjectName, треккер Feedback по заданному расписанию. Теги: Redmine | POP3 | эл. почта
|