メールでRedmineのチケットに登録する

2013年4月8日

メールを送信することで、Redmineのチケットに自動登録させる方法です。

環境
・CentOS 6.3 x64
・Alminium(https://github.com/alminium/alminium)

今回は、gmailに送信されたメールをIMAPで受信し、自動登録する方法です。

Redmine状に登録されているユーザからしか、メールを受け付けてくれないため、
ユーザが登録されていることを確認してください。

手順的には、下記のようになります。

  1. gmailアカウントでIMAPを有効にする
  2. mail-iso-2022-jpをGemfile.localに登録する
  3. 登録テスト
  4. crontabに登録する

googleヘルプページを参照し、gmailアカウントでIMAPを有効にします。

初期状態だと、日本語を含むメールの登録がうまくいかないため、mail-iso-2022-jpをインストールします。

Redmineをインストールしたパスへ移動します。
Alminiumの場合は、/opt/alminium になっているかと思います。

#cd /opt/alminium
#vi Gemfile.local

下記内容を追記し保存します。

gem 'mail-iso-2022-jp'

下記コマンドを実行し、インストールします。

#gem install bundler

下記内容のメールをgmailあてに送信します。

メールによるチケット登録テストです。
[...]

Project: プロジェクト識別子名を記入

Project: で指定したプロジェクトのチケットとして登録されます。
そのたオプションは、こちらのURLを参照してください。

下記のようにコマンドを実行します。
usernameやpasswordは環境にあわせて変更してください。

#rake --trace -f /var/alminium/Rakefile redmine:email:receive_imap RAILS_ENV="production" host=imap.gmail.com port=993 ssl=1 [email protected] [email protected]

メールを定期的に取り込むようにするため、crontabに登録します。

#crontab -e
*/1 * * * * /usr/bin/rake --trace -f /var/alminium/Rakefile redmine:email:receive_imap RAILS_ENV="production" host=imap.gmail.com port=993 ssl=1 [email protected] [email protected]

チケット登録メールに対して件名を変更せずに、返信をすると
チケットNoに自動的に追記をしてくれます。


PAGE TOP