バウンス通知の受信

メールバウンス通知を受け取るには、メール通知を有効にするようにアプリを構成し、それらの通知を処理するハンドラを作成する必要があります。

バウンス通知を受け取るためのアプリの設定

2 段階の設定が必要です。まずは、通知を有効にする必要があります。次に、App Engine が通知データを POST する場所を認識できるように、/_ah/bounce とバウンス ハンドラ間のマッピングを設定する必要があります。バウンスメール通知を受け取るようにアプリを設定する手順は次のとおりです。

  1. 以下を app.yaml ファイルに追加して通知を有効にします。
    inbound_services:
    - mail_bounce
  2. また、app.yaml のコード内で、/_ah/bounce とバウンス通知ハンドラ間のマッピングを宣言します。以下に例を示します。
    - url: /_ah/bounce
      script: handle_bounced_email.app
      login: admin

バウンス通知の処理

バウンス通知は、メッセージ配信で問題が発生したメールシステムからの自動メッセージです。アプリで、これらの通知を受信して処理するバウンス ハンドラ コードを作成する必要があります。

バウンス ハンドラを作成する方法の 1 つが BounceNotificationHandler コンビニエンス クラスを使用する方法です。この方法を選択した場合は、BounceNotification クラスの引数を使って呼び出される receive() メソッドをオーバーライドする必要があります。BounceNotificationHandler コンビニエンス クラスを使用するかどうかに関係なく、BounceNotification を使用してバウンス通知を解析する必要があります。

BounceNotificationHandlerBounceNotification の両方が google.appengine.ext.webapp.mail_handlers パッケージに含まれています。

ここで、BounceNotificationHandler コンビニエンス クラスを使用するサンプル バウンス ハンドラを示します。

class LogBounceHandler(BounceNotificationHandler):
    def receive(self, bounce_message):
        logging.info('Received bounce post ... [%s]', self.request)
        logging.info('Bounce original: %s', bounce_message.original)
        logging.info('Bounce notification: %s', bounce_message.notification)
このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Python 2 の App Engine スタンダード環境