Hier ein Mini-Howto, wie eGroupware in Verbindung mit dem Cyrus IMAPd eingerichtet werden muss, um eMailfilter und Abwesenheitsnotizen benutzen zu können.
eGroupware erstellt dazu sogenannte Sieve-Scripts auf dem IMAP-Server. Diese Sieve-Scripte filtern eingehende eMails und ermöglichen es, auf bestimmte Nachrichten zu reagieren.
So kann man also beispielsweise durch den eMail-Server automatisch eine Abwesenheitsbenachrichtigung an einen Kunden verschicken lassen, wenn dieser einem eine eMail schickt, während man selbst auf Mallorca in der Sonne liegt. (Herrliche Vorstellung – zumindest das mit Mallorca
)
Eigentlich ist die Umsetzung sehr simpel:
Das “komplizierteste” ist eigentlich, Cyrus dazu zu bewegen, Sieve-Scripte ordentlich abzuarbeiten. Eine kurze Anleitung dazu habe ich unter “Vacation-Script mit Sieve” veröffentlicht.
Jetzt fehlt nur noch der Punkt “Abwesenheitsnotiz” im Seitenmenü von FeLaMiMail.
Dazu ruft man die Konfiguration der Anwendung von “emailadmin” auf. Dort öffnet man die dort abgelegte Default-Konfiguration. Im Aktenreiter “IMAP” müssen folgende Einstellungen vorgenommen werden:
Der Serverport hängt natürlich von der Konfiguration von Cyrus ab, 2000 ist der Standard-Wert.
Und das war’s dann eigentlich auch schon.
Nur eine kleine Unzulänglichkeit hat uns bisher gestört (aus diesem Grund ist eigentlich auch dieses Minihowto entstanden *g*):
Wir konnten die Abwesenheitsnotizen nicht benutzen, da FeLaMiMail eine Syntax-Überprüfung der unter “Abwesenheitsnotiz” eingetragenen Empfänger-eMail-Adressen vornimmt, ehe es das Sieve-Script für die Vacation-Nachricht speichert. Entspricht eine Adresse nicht der richtigen Syntax (adresse@domain.tld), wird das Script weder gespeichert noch aktiviert.
Und da wir bei uns hausinterne Mail-Adressen in der Form benutzer@firma benutzen (also ohne abschließende TLD), und unser Postfix diese Adressen auch in den Mail-Header unter “TO:” einträgt, verträgt sich das mit dieser Syntax-Prüfung natürlich nicht.
Ein Minipatch auf die Datei class.uisieve.inc.php (zu finden unter felamimail/inc im Root-Verzeichnis von eGroupware) macht’s dann aber möglich:
Wer vor dem gleichen Problem steht, kann den Patch in eine Datei packen und im “egroupware/felamimail/inc”-Verzeichnis mit
patch <Patchdatei
auf class.uisieve.inc.php loslassen.
Den Patch habe ich für die eGroupware-Version 1.4.002 gebastelt.
11. Oktober 2007 um 17:11
Ist so eine ganz feine Sache. Funktioniert das ganze auch mit Dovecot??
13. Oktober 2007 um 13:00
In emailadmin ist Dovecot nicht explizit in der IMAP-Serverliste aufgeführt.
Ralf Becker (eGW-Entwickler) empfiehlt, testweise Cyrus als Servertyp auszuwählen, und zu testen, ob eGroupware so mit der Sieve-Erweiterung von Dovecot klar kommt.
Ansonsten müsse eine neue Erweiterung programmiert werden.
15. Januar 2008 um 15:06
Also. Dovcot funktioniert einwandfrei. Habe jetzt den 1.0.10 mit Managesieve-patch und das läuft richtig gut.
Eine Frage habe ich nur noch. Wie kann ich in EGW die Sieve-Scriptname vorgeben? Muss ja /home/user/.dovcot.sieve sein
16. Januar 2008 um 22:52
@Sascha:
eGW erstellt die Sieve-Scripte über die Netzwerkverbindung zum Sieve-Port des Mailservers und hat somit auch keinen Einfluss auf den Speicherort des Scripts, da dieser vom IMAP-Server bzw. Sieve-Daemon vorgegeben wird.
Den Pfad wirst Du in der Dovecot-Konfiguration einstellen können.