Menerima notifikasi pantulan

Untuk menerima notifikasi email tidak terkirim, Anda harus mengonfigurasi aplikasi untuk mengaktifkan notifikasi email dan harus membuat pengendali untuk menangani notifikasi masuk tersebut.

Mengonfigurasi aplikasi untuk notifikasi email tidak terkirim

Ada dua bagian untuk konfigurasi. Pertama, Anda harus mengaktifkan notifikasi. Kedua, Anda perlu menetapkan pemetaan antara /_ah/bounce dan pengendali pantulan, sehingga App Engine tahu tempat untuk memposting data notifikasi. Untuk mengonfigurasi aplikasi Anda agar menerima notifikasi email tidak terkirim:

  • Tambahkan kode berikut ke file app.yaml Anda untuk mengaktifkan notifikasi:

    inbound_services:
        - mail_bounce
    
  • Selain itu, di app.yaml, deklarasikan pemetaan antara /_ah/bounce dan pengendali notifikasi tidak terkirim dalam kode Anda, misalnya:

    - url: /_ah/bounce
      script: handle_bounced_email.app
      login: admin

Menangani notifikasi tidak terkirim

Notifikasi tidak terkirim adalah pesan otomatis dari sistem email yang menyatakan bahwa terjadi masalah dengan pengiriman pesan. Di aplikasi, Anda harus membuat kode pengendali pantulan untuk menerima dan memproses notifikasi ini.

Salah satu cara untuk menulis pengendali pantulan adalah menggunakan BounceNotificationHandler class praktis. Jika melalui rute ini, Anda harus mengganti metode receive() ini, yang dipanggil dengan sebuah argumen dari BounceNotification class. Baik menggunakan BounceNotificationHandler class praktis maupun tidak, Anda harus menggunakan BounceNotification untuk mengurai notifikasi tidak terkirim.

Berikut adalah contoh pengendali pantulan yang menggunakan BounceNotificationHandler class praktis:

@app.route("/_ah/bounce", methods=["POST"])
def receive_bounce():
    bounce_message = mail.BounceNotification(dict(request.form.lists()))

    # Do something with the message
    print("Bounce original: ", bounce_message.original)
    print("Bounce notification: ", bounce_message.notification)

    return "OK", 200

Pelajari pertimbangan migrasi untuk Mail API lebih lanjut dalam panduan Pengendali email.