Feature #44

Email-Bounces auswerten

Added by following about 6 years ago. Updated almost 6 years ago.

Status:erledigt% Done:

100%

Priority name:2 mittel
Assignee:following
Target version:Version 9
Ticket Referenz:423 - 12/2009 Kategorien:mail

Description

user.email_problems hochzählen, dann erscheint beim nächsten Login ein Hinweis, dass die Mailadresse bestätigt oder geändert werden muss.

Ab X unzustellbaren Mails keine Benachrichtigungen über neue Caches und Logs mehr versenden, außer Logs für eigene Caches.


Related issues

Related to OC Entwicklung - Change #111: Maßnahmen gegen Spam-Einordnung von OC-Mails in Arbeit 50%
Related to OC Entwicklung - Feature #113: Anzeige wichtiger Informationen nach Login offen
Blocks OC Entwicklung - Feature #90: automatische Archivierung nach X Monaten erledigt

Associated revisions

Revision a0172b1e
Added by following almost 6 years ago

added email bounces processing, fixes #44

Revision d658c903
Added by following almost 6 years ago

improved bounces handling; added AOL hack; updates #44

Revision 75cad8f0
Added by following almost 6 years ago

refined email bounce processing; update #44

History

#1 Updated by following about 6 years ago

  • Kategorien set to mail

#2 Updated by following about 6 years ago

Anmerkung: user.email_problems wird auch jedesmal hochgezählt, wenn ein Admin auf den ungültige-Emailadresse-Knopf drückt.

#3 Updated by following about 6 years ago

  • Target version set to Version 9

#4 Updated by bohrsty about 6 years ago

alle server loggen zusaetzlich zum lokalen logfile in eine syslog-ng-datenbank, diese liesse sich mit einem cronjob, der den folgenden (ungetesteten) code enthaelt, abfragen und zur weiterverarbeitung in der bounce-auswertung nutzen. jede weitere string-auswertung, die sinn macht, kann natuerlich auch angewendet werden

/*
 * getting nondelivered mails from log-db parsing following log-string (one line):
 * 
 * C7256D6DA2: to=<xyz@t-online.de>, relay=mx00.t-online.de[194.25.134.8]:25, delay=0.58, delays=0.24/0/0.08/0.26,
 * dsn=5.1.1, status=bounced (host mx00.t-online.de[194.25.134.8] said: 550-5.1.1
 * user unknown 550 5.1.1 Unknown recipient. (in reply to RCPT TO command))
 */

$db = new mysqli('hostname','username','password','database');

$result = $db->query("SELECT message FROM eventdb WHERE host_name='large' AND message LIKE '%dsn=5%'");

$nondelivered = array();
while ($row = $result->fetch_array(MYSQL_NUM))
{
  $message = $row[0];

  $parts = explode(' ',$message,7);

  preg_match('/^to=<(.*)>,$/U',$parts[1],$matches);

  $nondelivered[] = $matches[1];

}

$result->close();

$db->close();

zugang kann die technik einrichten, weitere felder wie datum sind auswertbar...

#5 Updated by following almost 6 years ago

  • Assignee set to following

#6 Updated by following almost 6 years ago

  • Status changed from offen to in Arbeit 20%

#7 Updated by following almost 6 years ago

  • Status changed from in Arbeit 20% to im Test
  • Estimated time deleted (15.00)

Live-Test auf dem Produktivsystem

Es werden sowohl Bounces als auch Zustellungen ausgewertet; letztere setzen den Fehlerzähler zurück. Ab 5 unzustellbaren Emails an 5 verschiedenen Tagen werden keine Benachrichtigungen für neue und beobachtete Caches mehr verschickt.

Der Name des MTA in der Eventlog-Tabelle wird ausgewertet; er ist zurzeit auf 'postfix/smtp' konfiguriert.

#8 Updated by following almost 6 years ago

Ab 5 unzustellbaren Emails an 5 verschiedenen Tagen werden keine Benachrichtigungen für neue und beobachtete Caches mehr verschickt.

Ausnahme: Es werden noch bis zu 5 Benachrichtigungen für neue Caches im Abstand von jeweils mindestens einem Monat verschickt - eine Maßnahme um den Benutzer zu "reaktivieren", falls die Emailadresse doch nochmal wiederkommen sollte.

#9 Updated by following almost 6 years ago

  • Status changed from im Test to erledigt
  • % Done changed from 0 to 100

Status geändert durch Changeset oc-server3|commit:a0172b1e10fbaa77b216c6634fa5ceda67c50039.

Also available in: Atom PDF