http://code.google.com/p/tracmailarchiveextplugin より移行中

MailArchiveExtPlugin

説明

MailArvhiveExtPluginは、Hirobe氏作のMailArchivePluginを拡張したプラグインです。

オリジナルのMailArchivePluginに以下の機能を追加しています。MailArchivePluginの元々の機能は、Hirobe氏のドキュメントを参照してください。

(2015-04-27 このページにアクセスできないため wiki:plugins/MailArchivePlugin にこのページのコピーを置いています)
HTMLメールに対応(まだまだ不完全な対応)オリジナル版では、HTMLメールを取り込むと常に「HTML」とだけ表示されてしまいますが、HTMLをテキストに変換して表示するようにしています。
複数のメール取り込みに対応オリジナル版では、trac.iniにはPOP3のメール取得先を1つしか設定できません。カテゴリ単位に指定可能にして、メール取り込み可能にしています。これはhttp://weekbuild.sakura.ne.jp/trac/ticket/183で投稿されていたパッチを取り込んだ物です。
メールからチケットの作成機能を追加メールの詳細ページから、メールの内容をそのまま取り込んでチケットを新規作成するためのUIを追加しています。また、MailArchiveExtPluginをインストールすると、カスタムフィールドに「mail_id」を自動的に追加しています。このフィールドを利用して、メールとチケットのクロスリファレンスを実現しています。メールからチケットを作成する際に、自動的にこのフィールドにMailArchivePluginで管理しているメールIDを設定しています。チケットの画面からは、このメールIDからトリガーとなったメールの詳細ページを参照できるようにしています。また、メール詳細ページに、関連しているチケットの一覧も表示されるようになります。
メール受信時の動作を拡張可能にメール受信時に、IEMailHandlerを実装したコンポーネントを呼び出すように拡張ポイントを作成しました。
チケットの画面に関連メールのスレッドを表示上記のmail_idのメールを、チケットの画面にスレッド表示します。チケットからトリガーとなったメール、そのメールに対するレスポンスメールを1画面で見ることができます。
スレッド表示のロジックの変更オリジナル版では、月をまたがったり、1ページに表示しきれない場合はスレッドを切ってメールが表示されます。MailArchiveExtPluginでは、スレッドのメールを常に全て表示するようにしています。(現在の実装では、かなり性能が悪いです。一覧表示で数秒かかってしまいます。要改善。)
関連するメールの表示の変更オリジナル版では、画面右側に関連するメールが1列で表示されます。MailArchiveExtPluginでは、関連するメールはスレッド形式で表示するようにしています。

ソース

sf.jpのSVNリポジトリ (Trac 0.11.x 用), (Trac 0.12.x 用)から取得できます。

セットアップ方法

チェックアウトしたフォルダにて、下記を実行してパッケージをインストールしてください。

> python setup.py install

利用方法

Trac 0.12, 1.0 / メールインポート方法

インポート用のコマンドは trac-admin のサブコマンドとして実行できるようになっています。

unixmail 形式のメール

> trac-admin $TRACENV mailarchive import mailarc-ml C:\tmp\mbox-2011

POP3 サーバからのインポート

> trac-admin $TRACENV mailarchive pop3 mailarc-ml

Trac 0.11 / メールインポート

インストールを行うと TracMailArchive-admin コマンドもインストールされます。このコマンドを用いてインポートを行います。

unixmail 形式のメール

> TracMailArchive-admin $TRACENV import mailarc-ml C:\tmp\mbox-2011

POP3 サーバからのインポート

> TracMailArchive-admin $TRACENV pop3 mailarc-ml

免責事項

本ソフトウェアは使用者の責任において利用してください。 このプラグインによって発生した、いかなる障害・損害も作成者は一切責任を負わないものとします。