VERP/Implementation

From MediaWiki.org
Jump to navigation Jump to search
Bounce-DSN-MTA-names.png

Steps

  1. wiki.wm.o sends a message to a user
    1. message envelope sender is bounce-wiki-f8h3hj4kh@wm.o
    2. destination address is sam@cats.com
  2. message goes out via mx.wm.o, which attempts to deliver to mx.cats.com
  3. mx.cats.com says "sam@cats.com is not a valid address"
  4. mx.wm.o queues a bounce message, destined for bounce-wiki-f8h3hj4kh@wm.o
  5. mx.wm.o's MTA accepts mail for wm.o and does a lookup for local user bounce-wiki
  6. this is where the handoff to the wiki's bounce-processor happens, which could take many forms:
    1. mx.wm.o-->wiki.wm.o:SMTP
      1. wiki.wm.o could receive via its main MTA, which passes back to a mw script
      2. wiki.wm.o could run a new daemon, all mw code, that handles SMTP directly
    2. mx.wm.o-->wiki.wm.o:HTTP with mw bounce processing code at that URL
    3. mx.wm.o could host enough mw code for a local bounce processing script which talks directly to wiki db
    4. mx.wm.o could queue to a bounce message db that wikis could access
    5. mx.wm.o could write to a local mbox, and runs a POP/IMAP server for wikis to poll