GSB 7.0 Standardlösung

Bounceverarbeitung


Bounceverarbeitung Bounceverarbeitung



Falls es zu Fehlern bei der Zustellung der Newsletter-Mails im Mail-Dienst kommt, werden automatisch Bounce-Mails an den lokalen Mailserver zurück gesandt. Diese werden durch die in der Installationsanleitung beschriebene LMTP-Weiterleitung an den MailDistributor übermittelt und verarbeitet.

Da sich der Inhalt der Bounce-Mails von Mailserver zu Mailserver unterscheidet und es keine Standardisierung gibt, kann nicht garantiert werden, dass die wichtigen Informationen aus jeder erhaltenen Bounce-Mail extrahiert werden können. Es werden die im Open-Source Bereich typischen Muster zur Erkennung diese Informationen verwendet.
Im Rahmen des Bounce-Processings werden Abonnenten, die Bounce-Mails hervorrufen, anhand der Häufigkeit und des Fehlertyps mit einem Punktestand bewertet. Wenn der Punktestand einen definierten Grenzwert überschreitet, wird der Abonnent automatisch vom Erhalt weiterer Newsletter-Mails ausgeschlossen.

Für ein sinnvolles Bounce-Processing sind verschiedene Felder in der User-Tabelle der Newsletter-DB notwendig:

  • delivery_status (User aktiviert, deaktiviert)
  • delivery_status_timestamp (letzte Änderung des Status)
  • bounce_score (aktueller Punktestand)
  • bounce_score_timestamp (letzte Aktualisierung des bounce_scores)

Darüber hinaus sind die Felder bounce_score_threshold (Grenzwert) und bounce_ignore_period (Zeitraum in Stunden, in der jede weitere Bounce-Mail keinen Effekt für den User hat) in der Konfiguration für jede Mailingliste hinterlegt.

Ablauf Bounce Processing

  1. Nach dem Erhalt einer Bounce-Mail wird der Listen-Name aus der Empfänger-Adresse mit den vorhandenen Listen in der Newsletter-Datenbank verglichen. Falls dieser Name nicht in der Datenbank vorhanden ist, wird die Bounce-Mail ohne weitere Bearbeitung gelöscht
  2. Es wird versucht, den Verursacher und den Fehlercode aus dem Inhalt der Bounce-Mail zu extrahieren. Falls kein Verursacher extrahiert werden kann oder dieser nicht in der Datenbank vorhanden ist, wird die Bounce-Mail wegen der fehlenden Zuordnungsmöglichkeit zu einem Abonnenten gelöscht
  3. Anhand des bounce_score_timestamp und der bounce_ignore_period wird geprüft, ob der Zeitraum, in dem eine erneute Bounce-Mail keine Auswirkungen hat, bereits abgelaufen ist. Falls nicht, wird die Bounce-Mail ignoriert (gelöscht)
  4. Der bounce_score für den Abonnenten wird anhand der Fehlercodes erhöht (0.5 Punkte für temporäre Fehler und 1 Punkt für fatale Fehler) und der bounce_score_timestamp wird aktualisiert
  5. Überschreitet der neue Punktstand den bounce_score_threshold, wird der User über den Eintrag im delivery_status als Empfänger für weitere Newsletter der Mailingliste des Mandanten ausgeschlossen