2011年1月26日水曜日

SESを使ってみた(AWS)

スズキです。

久しぶりの24時間以内のクイックレビューです。

こちらで紹介されているようにAWSでEmail送信サービス(SES)がリリースされました。
(簡単な使い方はこちらで紹介されています)

今回は、"Amazon Simple Email Service Scripts"を利用して試してみました。

まずは適当なUnix環境でスクリプトのアーカイブをダウンロードして展開します。

# curl -OL http://aws-catalog-download-files.s3.amazonaws.com/AmazonSES-2011-01-24.zip
# unzip AmazonSES-2011-01-24.zip

展開したファイルは、以下の通りです。

ses-get-stats.pl : 統計情報の取得
ses-send-email.pl : メールの送信
ses-verify-email-address.pl : メールアドレスのチェック
SES.pm : 上記で使われるモジュール

※ READMEに従いPerlの環境(モジュールも含む)を用意しておく必要があります。

スクリプトができたら、下記コマンドで送受信するメールアドレスの認証です。
(この状態では認証したメールアドレスしか送受信できません)

# ./ses-verify-email-address.pl -k credentials.conf -v suzuki@suz-lab.com

※ credentials.confは以下のような認証情報が記述されたファイルです。

--------【credentials.conf】--------
AWSAccessKeyId=AAAAAAAA
AWSSecretKey=SSSSSSSS
--------

すると、認証リクエストを行ったメールアドレスに下記メールが届きます。

--------
Dear Amazon SES customer:

We have received a request to authorize an email address for use with Amazon SES.
To confirm that you are authorized to use this email address,
please go to the following URL:

https://email-verification.us-east-1.amazonaws.com/?...

Your request will not be processed unless you confirm the address using this URL.

To learn more about sending email from Amazon SES,
please refer to the Amazon SES Developer Guide.

Sincerely, Amazon Web Services
--------

URLをクリックすると、次のページに遷移してメールアドレスが認証されます。


メールアドレスの認証が終わったら、下記コマンドでメールの送信です。

# ./ses-send-email.pl -k credentials.conf -s "Test" -f suzuki@suz-lab.com \
> suzuki@suz-lab.com < test.txt

"suzuki@suz-lab.com(-f)"から"suzuki@suz-lab.com"へ、タイトル"Test"の
本文が"test.txt"の内容のメールを送信しています。

無事にメールが届けば実験成功です。

ただ、これでは認証したメールアドレスしか送信できないので、
このままだと現実的ではありません。

認証してないメールアドレスにも送信できるようにするためには、
下記フォームから申請する必要があります。


これで大量メール配信(スパムじゃない)などで、
サーバ数とかを気にする必要がなくなるかも知れません。
--------
http://www.suz-lab.com

0 コメント: