backspace
Goto Top

Sieve script

Einen Guten Tag zusammen,

hab ein sievesvript geschrieben, daß dazu dient Mails zu filtern.

Bis dahin alles o.k.

Muß jetzt aber noch dafür sorgen, daß wenn der Server eines Kunden ab zwei Tage oder mehr, keine Backup-Emailbenachrichtigung an uns verschickt, daß eine Warnmeldung erzeugt wird.

Weiß leider nicht, wie ich das machen soll.

Hoffe Ihr könnt mir helfen.

Danke im Voraus !

Content-Key: 150410

Url: https://administrator.de/contentid/150410

Printed on: April 19, 2024 at 03:04 o'clock

Member: H41mSh1C0R
H41mSh1C0R Sep 06, 2010 at 11:49:02 (UTC)
Goto Top
Es gibt unterschiedliche Sieve Implementationen:

Server based

Client based

und

verschiedene Sieve Libs

Denke bei dir wird die Server based eingesetzt. Aber auch da gibt es wieder mehrere Implementationen und nicht alle halten sich unbedingt an die RFC3028.

Was musst du machen:

Prüfe ob eine Benachrichtigungsmail versendet wurde, wenn nein, prüfe ob die Mail am Vortag versendet wurde, wenn 2te mal Nein --> Message ausgeben.

Im Grunde nur ein aneinanderreihen von If Verzweigungen.

Alternative, versende eine Benachrichtigung CC an den Server selber mit nem bestimmten Betreff. Da Sieve ja als Filter eingesetzt wird, kannst du dann genau nach dieser Mail filtern.

Findest du keine gib eine Meldung aus. Findest du eine ist alles i.O. und du kannst diese löschen/verschieben or whatever. xD


Grüße
Member: Backspace
Backspace Sep 08, 2010 at 09:37:20 (UTC)
Goto Top
Was musst du machen:

Prüfe ob eine Benachrichtigungsmail versendet wurde, wenn nein, prüfe ob die Mail am Vortag versendet wurde, wenn 2te
mal Nein --> Message ausgeben.

Im Grunde nur ein aneinanderreihen von If Verzweigungen.


==> Genau so ist es.
==> Das Problem ist, ich weiß nicht so recht, wie ich es umsetzen soll (bin Anfänger was Programmierung angeht) !?


Danke
Member: H41mSh1C0R
H41mSh1C0R Sep 16, 2010 at 13:28:19 (UTC)
Goto Top
Nehmen wir mal einen anderen Ansatz:

lasse dir die Mail mal immer CC an den Absender schicken und im Sieve schreibst du folgendes:

if anyof (not address :all :contains ["To", "Cc", "Bcc"] "<hier kommt deine Adresse vom Absender rein>",   
header :matches "Subject" ["<name/Zeichenkette auf den geprüft wird>"]) {  
      fileinto "INBOX.trash";  
}
else {
      redirect   ............  oder vacation ..... benutzen
}

Im ersten Zweig prüfst du auf deine Prüfmail. Ist diese vorhanden verschiebst du die in den Trash und alles ist i.O.

Der 2te Zweig stellt die Alternative dar, was im Grunde ja bedeutet das deine Controlmail nicht versendet worden ist, wenn ich jetzt keinen Denkfehler drinnen hab.
Mit redirect kannst du eine Mail umleiten oder benutzt die Abwesenheitsmeldung als Controlmeldung.

Grüße