とりあえずやってミタ

とりあえず技術的っぽいことをいろいろやってみるブログ

Mandrillを試す

   

メール配信サービスMandrillでPerlからメール配信を試したのでメモ



Mandrill?

サイトは英語ですが、UIやページ構成が分かりやすくて苦労しない。
APIリファレンスも充実していると思う
サクサクっと登録完了



MandrillのAPIを叩く

PerlのプログラムからMandrillのAPIを叩くのにWebService::Mandrillを使用した。
debugを”1″にすると標準出力に送信データが出力されるが、実際にメールも送信されるのでテスト時には注意が必要。Mandrill側でテスト用API KEY(メール配信をしない)を作れるのでそれを利用する。



SMTP送信する

smtp送信といってもMandrillは587ポートを使っており暗号化された”smtps”プロトコルとなる。 モジュールはEmail::Sender::Transport::SMTPSを使う。
(ちなみにEmail::Sender::Transport::SMTP::TLSなんかも試したが、cpanのページの説明にもあるように非推奨だそう。こちらのページがその辺りを詳しく書かれていた。)

CPANのページのサンプル通りだが一応記載
メール送信とは直接関係無いけど、サンプルではTry::Tinyモジュールのtry/cacheを使っているが、Perlの例外処理ってなんか違和感



日本語メールについて

いろいろ試したが、日本語メールを扱うことができなかった。これはメールのヘッダーの”Content-type”が”text/plain;charset=utf8″で固定なことと無関係じゃない気がする。もちろん”Content-type”を設定するようにいろいろ試したけど変更のさせかたが分からなかった。おそらくMandrill側でそもそも日本語メールを想定していないのではないかと思う。

ただメールサーバーの設定や運用で悩まずに済むので、英語メールでも問題無い案件ならアリだと思う

 - メモ ,

  関連記事