メールとWebシステムを連携できると便利だよなと思いつつもメールサーバとしての堅牢、安定性やメールの解析などで二の足を踏んでしまっているという人は多いのではないかと思います。 特にメールの解析が面倒と考える方に使ってみてほしいのがMailinです。node製のSMTPサーバで、受け取ったメールをなんとJSONにしてくれる機能があります。

Mailinの使い方

Mailinはnpmでインストールができてとても簡単です。

$ sudo mailin
Password:
warn: Either spamassassin or spamc are not available. Spam score computation is disabled.
info: Mailin v0.0.10
info: Mailin Smtp server listening on port 25
info: Webhook url: http://localhost:3000/webhook
info: Log file: /var/log/mailin.log
warn: Webhook http://localhost:3000/webhook seems invalid or down. You may want to double check the webhook url.

Webhookをサポートしているのでメールを受信したらその内容を特定のURLに対してポストしてくれます。これはWebシステムとの連携においてかなり便利ではないでしょうか。

メールの受信例。JSONとして飛んできます。

スパム判定もあったりします。日本語も問題なく扱えるようです。添付ファイルとも取り出せますのでメールと連携するシステムを考える上で注目したいソフトウェアです。nodeというノンブロッキングな特性も活かせる領域かもしれません。

Mailinはnode/JavaScript製、MIT Licenseのオープンソース・ソフトウェアです。

Mailin - Receive inbound emails in your web app with node.js Flolagale/mailin