TT-RSSとメールサーバの連携 その2(PHP製IMAP->RSS変換ツールを試す)


前回、TT-RSSをセットアップしました。

メール着信をTT-RSSに通知する方法を検討していますが、
現在試しに使っているRSSWebMail for Windowsだと、
何とか変換は出来るけど、いくつか都合が悪いところがあったので、
別のものを探していました。
(新規メールのRSSが定期的に出るのはTT-RSS側でフィルタをかければ済むのですが、
一定時間ごとの検索で、反映に時間がかかったり、メールに対するRSSがかけたりもするので・・・)

で、やっと見つけたのが、Mail2RSSというPHPで書かれたソースコードhttps://github.com/vekin03/Mail2RSS

というわけで、PHPで書かれたプログラムでMail->RSS変換に挑戦。

CentOS6.4 on Walbrixでは標準でLAMP環境が構築されているので、
今回もこれをベースに、PHP-IMAPだけを追加インストールして、
httpd再起動だけすれば準備は完了。

後はダウンロードしたPHPソースコードを、配置。

配置先は、
Windowsファイル共有でアクセスするか、
\\<IPアドレス>\html\

SSHで入って、httpdのドキュメントルートにアクセスする。
/var/www/html/

例として、「mail2rss」というフォルダを作って、
mail2rss.phpという名前でダウンロードしたソースコードを保存。

で、環境に合わせて必要な部分を修正

ここで、TOKENには、rss取得時のパスワードの代わりになるので、任意の文字を入力。
また、メールサーバに通常のIMAPでアクセスする場合は、以下のように指定します。

修正が終わったら、試しにブラウザでアクセス

RSS Feed的なXMLデータが表示されればOKです。

あとは、TT-RSSで、フィードを購読すれば、新着メールをRSSでチェックできます。

なんで、こんな面倒なことをしているのかというと、
単にZabbixの監視の結果をメールサーバを経由して、RSSに表示させるためだったり。

Zabbixだけだったら、直接MySQLからトリガーをRSSに変換してもよさそうけど、
トリガ名とかでZabbixのマクロ変換が難しそうなので・・・・
メールサーバを経由する場合、Zabbixだけじゃなくて、異常時にメールをタスシステムにも応用が利きそうかなと。

あと、Zabbixからのメールの場合、本文がBase64エンコードされて表示されるけど、
この辺はソースを直せば何とかなりそうな気もするので、あとで挑戦予定。
ただ、件名だけ見えれば、今回の目的の場合は問題ないかと。

将来的には、Roundcube Webmailをインストールして
連携させたいなぁ・・・・と妄想中。

ZabbixとTT-RSSとの連携は時間があれば後日まとめたいです。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です