3. E-Mail Bounces Management
Diese optionale Komponente behandelt E-Mail Bounces. Sie besteht aus den folgenden Teilen:
Holen der Bounces aus einer speziellen Mailbox.
Kategorisierung der Bounces in Hard- und Soft-Bounces und verschiedene andere Typen.
Festhalten und Folgeaktionen in funtrade.
Die Komponente ist ausschliesslich für E-Mails, die mit funtrade Document Output erzeugt wurden. Wenn Newsletter mit anderen externen Systemen erzeugt werden, sollten Bounces auch dort behandelt werden.
3.1. Aktionen des Bounce Systems
Das Bounce System behandelt eine kategorisierte Bounce wie folgt:
Soft- und Hard-Bounces werden in funtrade weiter behandelt (siehe unten).
Auto-Replies (Out of office) und andere mehr technische Bounces werden ignoriert.
Die restlichen Bounces werden an eine Mailbox zum manuellen Bearbeiten durch die Organisation weiter geleitet.
3.2. Behandlung von Soft- und Hard-Bounces in funtrade
Wenn funtrade E-Mails sendet, erfasst es zuerst einen Datensatz im Service EKommunikation und startet dann einen asynchronen E-Mail Sender, der das Mail mit dem richtigen externen Werkzeug versendet. In EKommunikation ist die Verknüpfung des Versands zum Geschäftsfall vorhanden. Dort ist auch ein Status (offen, gesendet, Fehler) abgelegt.
Beim Eingang eines Bounces suchen wir zuerst den Eintrag in EKommunikation, der für den ursprünglichen Versand angelegt wurde. Wird kein solcher Datensatz gefunden, erzeugen wir eine Aufgabe „Bounce ohne EKommunikation“.
Wenn wir die EKommunikation gefunden haben, wird zuerst der Bounce festgehalten: EKommunikation erhält den neuen Status „Bounced“, und wir speichern die Details zum Bounce.
Jetzt beginnen unterschiedliche Prozesse je nach Art des Bounces und je nach vorgelagertem Prozess, der die E-Mail geschickt hatte.
3.2.1. Hard-Bounces
Bei einem Hard-Bounce ist der Empfänger nicht erreichbar. Die Adresse ist falsch und kann nicht mehr verwendet werden. funtrade erfasst deshalb ein XU Ereignis. Damit ist die Adresse gesperrt.
Weiter unten diskutieren wir Automatisierungen für einzelne Prozesse. Diese Automatisierungen können per Systemparameter ein- und ausgeschaltet werden. Alle Prozesse können auch manuell durchgeführt werden. Wir empfehlen, zuerst mit den manuellen Prozessen zu arbeiten, bis die Fälle vertraut sind und dann später die Automatisierungen einzuschalten.
Der manuelle Prozess geht so: Es wird eine Aufgabe „Hard-Bounce“ erstellt. Das SC kann dann entscheiden, was zu tun ist. Ist die E-Mail Adresse z.B. offensichtlich falsch geschrieben (@bluewun.ch oder ähnlich), korrigiert ein Benutzer die E-Mail und löst die fehlgegangene(n) Aktion(en) noch einmal aus. Siehe unten für Details, wie das bei den einzelnen Prozessen möglich ist.
3.2.2. Soft-Bounces
Soft-Bounces sind Zustellungsprobleme aus zeitlich begrenzten Gründen. Es ist davon auszugehen, dass die identische E-Mail zu einem späteren Zeitpunkt zustellbar ist.
Bei Soft-Bounces versucht das System automatisch den Versand zu wiederholen. Wir verwenden dazu den gleichen EKommunikations- Datensatz und aktualisieren dort nur den Status und Loggen, dass der Versand erneut probiert wurde. Nach einer einstellbaren Anzahl Versuchen, wird der Versand abgebrochen mit einer Aufgabe.
Bei Soft-Bounces erstellen wir keine Refusé-Ereignisse. Die Mail-Zustellung ist asynchron und kann über mehrere Stufen laufen, die ausserhalb unserer Kontrolle sind. Das temporäre Problem eine E-Mail zuzustellen geht in die gleiche Kategorie von Problemen „unterwegs“ und muss deshalb nicht festgehalten werden.
3.2.3. Automatisierungen der Folgeprozesse
In verschiedenen Fällen kann funtrade auf Grund eines Bounces einen Folgeprozess auslösen.
3.3. Einstellungen
Die folgenden Einstellungen werden benötigt:
Die Bounces Komponente wird im funtrade Appserver konfiguriert. Hier ist ein Beispiel der Konfiguration in load/ch.arenae.funtrade.server.bounces.impl.emailservice.cfg
ch.arenae.funtrade.server.bounces.impl.emailservice.protocol=imaps
ch.arenae.funtrade.server.bounces.impl.emailservice.host=mail.example.org
ch.arenae.funtrade.server.bounces.impl.emailservice.port=993
ch.arenae.funtrade.server.bounces.impl.emailservice.username=example
ch.arenae.funtrade.server.bounces.impl.emailservice.password=password
ch.arenae.funtrade.server.bounces.impl.emailservice.smtpProtocol=smtps
ch.arenae.funtrade.server.bounces.impl.emailservice.smtpHost=smtp.example.org
ch.arenae.funtrade.server.bounces.impl.emailservice.smtpPort=587
ch.arenae.funtrade.server.bounces.impl.emailservice.smtpUser=
ch.arenae.funtrade.server.bounces.impl.emailservice.smtpPassword=
ch.arenae.funtrade.server.bounces.impl.emailservice.forwardToAddress=info@example.org
Der erste Teil sind die Daten für die Mailbox, in welche Bounces geliefert werden. Der zweite Teil inklusive die forwardToAddress dienen dem Weiterleiten von Bounces, die manuell bearbeitet werden müssen.
Aufgaben: HardBounce und BounceOhneEKomm.
Systemparameter: Einstellungen zum funtrade Bounce System.