Gmailアカウントで受信したメールをRedmineにチケット登録する
Redmineを個人タスク管理に使うため、どこからでもメールでチケット登録したいと思って試してみた。
Redmine環境は BitNami :: Redmine の VMware Virtual Machines Ubuntu 10.10
まずはRedmine.JPのマニュアルを参照してコマンドを作成。
sudo /opt/bitnami/ruby/bin/rake --trace -f \
/opt/bitnami/apps/redmine/Rakefile \
redmine:email:receive_imap \
RAILS_ENV="production" \
host=imap.gmail.com \
port=993 \
ssl=1 \
project=XXX \
username=XXX@gmail.com \
password=XXX
メールを送ったあと上記コマンドを実行してみると、一応チケットが登録されたものの、タイトルが文字化けしている。
探してみたらパッチがあったので対策してみる。
メールでチケット登録時に題名が文字化けする問題を修正 | Redmine.JP Blog
wget http://blog.redmine.jp/assets/2010/07/16/farend_mail_handler_ja_subject_fix.rb
sudo mv farend_mail_handler_ja_subject_fix.rb /opt/bitnami/apps/redmine/config/initializers/
sudo /opt/bitnami/ctlscript.sh restart
定期的に自動でメールを取得するためcronに登録する。
sudo crontab -e
*/10 * * * * /opt/bitnami/ruby/bin/rake -f /opt/bitnami/apps/redmine/Rakefile redmine:email:receive_imap RAILS_ENV="production" host=imap.gmail.com port=993 ssl=1 project=XXX username=XXX@gmail.com password=XXX
これにて完了。
なお、このままだと送信元メールアドレスとRedmineのユーザのメールアドレスが一致してないといけないという制約がある。任意のメールアドレス(匿名ユーザ)でチケット登録するには unknown_user=accept を付ければいいらしいけど今のところ必要ないのでこのまま。