« 週刊AWS - 2012年6月18日 | メイン | AWS Elastic Beanstalk - Ebを使ってコマンドラインから簡単操作! »

【AWS発表】Simple Email Service (SES) にプログラム可能なフィードバック通知機能が追加

Amazon Simple Email Service (SES) を使えば、アプリケーションからバルクトランザクションメールをプログラムを使って送ることができます。1ヶ月に数通のメッセージを送る場合でも、毎日数百万通のメールを送る場合でも、SESを使えばコスト効率よく、使った分だけ支払えばよいプライスモデルでご利用いただけます。

SESは、デリバビリティ(送った電子メールが実際に目的のメールボックスに届いているかどうか)を管理するのに役立ちます。デリバビリティを最大化するためには、Eメールアドレスのリストをきれいに保っておくことが重要です。例えば、ISPからのComplaintを処理する必要があるような場合、適切に一時的または永続的なBounceを処理する必要があります。

今までは、SESはメールボックスにBounceやComplaintを送っていました。これに対応するためには、適切なメッセージを識別、取得し、それを解析し、その結果何をすべきかを把握する必要がありました。

今日からは、このプロセスを単純化するメカニズムが使えるようになりました。選択したSNS (Simple Notification Service) のトピックにJSON形式のメッセージを送信することによって、BounceとComplaintを知ることができます。

セットアップするにはSetIdentityNotificationTopic APIをコールするか、単純にAWS Management Consoleにて、トピックを設定します。

この設定はドメイン全体にも各Eメールアドレス毎にも設定できます。一度設定をすると、BounceとComplaintがトピックにルーティングされるようになります。トピックが削除もしくはアクセス不能になった場合は、電子メールベースの通知に戻ります。

各通知には3つのトップレベルのフィールドが含まれます。

  1. 通知タイプ(Bounce もしくは Complaint)
  2. 通知を引き起こしたメール・メッセージに関する情報を含むメールオブジェクト
  3. BounceオブジェクトもしくはComplaintオブジェクト

メールオブジェクトは次のようになります。

{
   "timestamp":"2012-05-25T14:59:38.623-07:00",
   "messageId":"000001378603177f-7a5433e7-8edb-42ae-af10-f0181f34d6ee-000000",
   "source":"sender@example.com",
   "destination":[
      "recipient1@example.com",
      "recipient2@example.com",
      "recipient3@example.com",
      "recipient4@example.com"
   ]
}

Bounceオブジェクトは次のようになります。

{
   "bounceType":"Permanent",
   "bounceSubType": "General",
   "bouncedRecipients":[
      {
         "status":"5.0.0",
         "action":"failed",
         "diagnosticCode":"smtp; 550 user unknown",
         "emailAddress":"recipient1@example.com"
      },
      {
         "status":"4.0.0",
         "action":"delayed",
         "emailAddress":"recipient2@example.com"
      }
   ],
   "reportingMTA": "example.com",
   "timestamp":"2012-05-25T14:59:38.605-07:00",
   "feedbackId":"000001378603176d-5a4b5ad9-6f30-4198-a8c3-b1eb0c270a1d-000000"
}

bounceTypeはUndetermined、 Permanent (このタイプの場合、指定された受信者へのメールの送信を止めるべきです。)、Transient (このタイプの場合、Bounceした原因をもっと詳しく見るためにbounceSubTypeを調べた後、再送信することができます。)のいずれかです。

Complaintオブジェクトは次のようになります。

{
   "userAgent":"Comcast Feedback Loop (V0.01)",
   "complainedRecipients":[
      {
         "emailAddress":"recipient1@example.com"
      }
   ],
   "complaintFeedbackType":"abuse",
   "arrivalDate":"Thu, 03 Dec 2009 04:24:21 -0500",
   "timestamp":"2012-05-25T14:59:38.623-07:00",
   "feedbackId":"000001378603177f-18c07c78-fa81-4a58-9dd1-fedc3cb8f49a-000000"
}

complaintFeedbackTypeはabuse、auth-failure、fraud、not-spam、virus、otherのいずれかになります。Complaintへの適切な応答はこのフィールドと受信者により判断をします。

さらに詳しい情報については、Amazon SES Documentationを参照してください。

堀内康弘 (Facebook, Twitter)

コメント

トラックバック

この記事のトラックバックURL:
http://www.typepad.com/services/trackback/6a00d8341c534853ef016767f01f80970b

【AWS発表】Simple Email Service (SES) にプログラム可能なフィードバック通知機能が追加を参照しているブログ:

Featured Event

2016年3 月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31