Plugins:TuxMail
Inhaltsverzeichnis
Allgemeines
Mit TuxMail ist es möglich bis zu 10 POP3-Konten direkt über die DBox2 abzufragen und Informationen wie Datum, Zeit, Absender und Betreff einer Mail über den TV sowie eine Kurzübersicht über das LCD auszugeben. Das Lesen oder Schreiben von Mail wird nicht unterstützt und ist auch in Zukunft nicht geplant.
Das Programm besteht aus 2 Teilen:
- dem Daemon (tuxmaild), welcher im Hintergrund läuft und die Konten in festgelegten Intervallen auf Maileingang prüft und ausgewählte Mail löscht
- dem Plugin (tuxmail.so + tuxmail.cfg), welches die Infos nach Konten sortiert auf dem TV und LCD darstellt und den Daemon steuert
Sobald der Daemon neue Mail gefunden hat wird eine optische (und optional akustische) Benachrichtigung ausgelöst um dem Nutzer den Maileingang zu signalisieren. Dies kann über ein Nachrichtenfenster erfolgen oder das Plugin kann gleich gestartet werden.
Um bei einer interessanten Sendung nicht gestört zu werden kann die Kontenabfrage über das Plugin angehalten und auch wieder gestartet werden. Damit ist es auch möglich eine manuelle Kontenprüfung außerhalb des festgelegten Intervalls auszulösen.
Sollte sich mal wieder unerwünschte Mail verirrt haben kann diese gleich über das Plugin zum Löschen markiert werden - der Daemon erledigt dann den Rest. Ein einfacher Spamfilter (Absenderadresse bzw. Teiladresse) ist ebenfalls enthalten.
Konfiguration
Damit der Daemon die Konten überprüfen kann benötigt er Angaben wie Mailserver, Nutzername und Passwort. Diese müssen in die Datei tuxmail.conf im Verzeichnis /var/tuxbox/config/tuxmail eingetragen werden.
Der Daemon erzeugt beim ersten Start das Verzeichnis sowie eine Datei mit Standardwerten falls diese nicht existiert und beendet sich wieder. Hier können nun die erforderlichen Angaben eingetragen oder alternativ eine fertige Datei vom PC per FTP übertragen werden.
Die Datei hat folgenden Aufbau:
Eintrag | Bedeutung | mögliche Werte | Standard |
STARTDELAY | Wartezeit bis der Daemon mit der ersten Kontenabfrage beginnt (die GUI benötigt einige Zeit zum starten) |
15...60 | 30 Sekunden |
INTERVALL | Abstand zwischen den Kontenabfragen | 5...60 | 15 Minuten |
POP3LOG | Protokoll der Serververbindung speichern (/tmp/tuxmaild.log) | Y / N | Y |
LOGMODE | Protokollmodus (letzte Sitzung / alle Sitzungen) | S / A | S |
SAVEDB | Mail-DB beim Beenden sichern / Starten wiederherstellen | Y / N | Y |
AUDIO | akustische Signalisierung | Y / N | Y |
VIDEO | optische Signalisierung (Message: muss per Fernbedienung bestätigt werden) (Popup: wird nach einiger Zeit automatisch geschlossen) |
1 = Plugin starten 2 = Enigma Popup 3 = Neutrino Message 4 = Neutrino Popup |
1 |
LCD | Anzeige des Mailstatus auf dem LCD | Y / N | Y |
OSD | TV-Ausgaben in Deutsch oder Englisch | G / E | G |
ADMIN | Löschen von Mails erlauben / verbieten | Y / N | Y |
WEBPORT | Port des Webinterface der dbox | 0 - 65535 | 80 |
WEBUSER | Benutzername für das Webinterface der dbox | Text ohne Leerzeichen von bis zu 32 Zeichen | leer |
WEBPASS | Passwort für das Webinterface der dbox | Text ohne Leerzeichen von bis zu 32 Zeichen | leer |
NAME? | angezeigter Name des Kontos im Plugin | Text ohne Leerzeichen von bis zu 32 Zeichen | leer |
HOST? | Mailserver | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
USER? | Nutzername | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
PASS? | Passwort (falls nicht erforderlich z.B. "-" eintragen) | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
Die Einträge "STARTDELAY", "INTERVALL", "POP3LOG", "LOGMODE", "SAVEDB", "AUDIO", "VIDEO", "LCD", "OSD", "ADMIN" und "WEBxxxx" sind global, d.h. diese Einstellungen gelten für alle Konten und müssen somit nur einmal eingetragen werden.
WEBUSER und WEBPASS können leer gelassen werden, wenn das Webinterface keine Authorisation erfordert.
Für das "?" bei "NAME", "HOST", "USER" und "PASS" sind Werte von 0...9 möglich. Bei weniger als 10 Konten können die entsprechenden Einträge entfallen oder einfach leer gelassen werden.
Konfigurationsbeispiel "tuxmail.conf"
STARTDELAY=30 INTERVALL=15 POP3LOG=Y LOGMODE=S AUDIO=Y VIDEO=1 LCD=Y OSD=G ADMIN=Y WEBPORT=80 WEBUSER= WEBPASS= NAME0=Kontoname HOST0=Mailserver USER0=Kennung PASS0=Passwort
Spamfilter aktivieren
Um lästige Werbemail gleich zu löschen kann der Spamfilter aktiviert werden. Hierfür ist die Datei spamlist im Verzeichnis /var/tuxbox/config/tuxmail anzulegen und bis zu 100 unerwünschte Absenderadressen bzw. Teiladressen einzutragen. Über das Plugin kann das auch automatisch erfolgen.
Die Löschung vom Server erfolgt hierbei ohne Sicherheitsabfrage! Überlegt also genau was hier eingetragen werden soll: eine Zeile nur mit "@" oder "." löscht mit Sicherheit JEDE Mail...
Konfigurationsbeispiel "spamlist"
neu@web.de mailings@gmx
Bedienung
Zum starten des Plugins [BLAU] drücken und dann den Eintrag "E-Mail" wählen.
Das Plugin zeigt nun das Konto #0 (oder falls neue Mail vorliegt das erste Konto mit neuer Mail) an. Jede Mail ist farbig gekennzeichnet und hat dabei folgende Bedeutung:
20px | diese Mail ist seit der letzten Kontenabfrage neu hinzugekommen |
20px | diese Mail war bei der letzten Kontenabfrage bereits vorhanden |
20px | diese Mail soll bei der nächsten Kontenabfrage gelöscht werde |
Konto auswählen
Mit [+] [-] / [VOLUME +] [VOLUME -] kann das nächste bzw. vorhergehende Konto angezeigt werden. Ungenutzte Konten werden hierbei übersprungen. Eine Direktwahl (auch ungenutzter Konten) erfolgt über [0]...[9].
Mail löschen
Mittels [HOCH] [RUNTER] kann die vorhergehende bzw. nächste Mail ausgewählt und durch einen Druck auf [OK] zum Löschen vorgemerkt werden. Ein weiterer Druck auf [OK] hebt die Markierung wieder auf. Seitenweise kann mit [RECHTS] [LINKS] geblättert werden.
Alle Mails eines Kontos können mit [ROT] gelöscht werden, neue mit [GRÜN] und alte mit [GELB]. Die Markierung kann mit den entsprechenden Tasten auch wieder aufgehoben werden.
Beim verlassen des Plugins werden diese Informationen gespeichert und somit aktiv. Die Löschung vom Mailserver erfolgt jedoch erst bei der nächsten Abfrage des Kontos durch den Daemon.
Spamfilter erweitern
Mit [BLAU] wird die momentan selektierte Mail (Absenderadresse) zur Spamliste hinzugefügt. Sollte bisher noch keine Liste existieren wird diese automatisch angelegt. Gleichzeitig wird die Mail zum Löschen markiert. Sollten sich bereits weitere Mails dieses Absenders in der Datenbank befinden müssen diese manuell gelöscht werden.
Kontenabfrage steuern
Normalerweise wird der Daemon beim Start der Box automatisch gestartet und fragt die Konten im festgelegten Intervall periodisch ab. Die Abfrage kann auch mit [MUTE] gesteuert werden, z.B. wenn man eine Sendung ungestört ansehen oder eine manuelle Prüfung auslösen möchte. Ein Druck schaltet die Abfrage aus, ein weiterer wieder ein.
Die Konten werden beim Reaktivieren der Abfrage sofort geprüft. Einige Mailserver haben jedoch ein minimales Loginintervall (z.B. web.de FreeMail = 15min). Mehrfache Anfragen innerhalb dieser Zeit sind nutzlos und werden vom Server mit einem entsprechenden Hinweis abgelehnt.
Um im Standby eine Kontenabfrage zu unterbinden können unter Enigma die Scripte "/var/etc/enigma_enter_standby.sh" und "/var/etc/enigma_leave_standby.sh" mit dem Inhalt "if [ -e /tmp/tuxmaild.pid ]; then kill -usr1 $(cat /tmp/tuxmaild.pid); fi" angelegt werden.
Die Abfrage wird somit mit dem Beginn des Standby pausiert und startet erst beim Ende des Standby wieder. Eingehende Nachrichten während dieser Zeit werden nun nicht mehr verpasst.
Autostart festlegen
Über das Plugin kann auch der Start des Daemon kontrolliert werden. Ein Druck auf [STANDBY] aktiviert den Autostart, ein weiterer deaktiviert diesen wieder.
Vom Plugin wird dabei unter /var/etc die Datei .tuxmaild angelegt oder gelöscht. Eine vorhandene .tuxmaild bedeutet das der Autostart aktiviert ist. Allerdings muss dies vom Initscript der DBox2 oder dem Startscript der jeweiligen GUI (start_enigma, start_neutrino, start_lcars) ausgewertet werden.
Scriptbeispiel zum Daemon starten
if [ -e /var/etc/.tuxmaild ]; then /Pfad zum Daemon/tuxmaild; fi
Ohne einen aktiven Daemon findet keine Kontenabfrage statt und im Plugin wird somit "keine Info verfügbar" angezeigt. Der Autostart muss vom Nutzer also erst einmal aktiviert werden da er standardmäßig deaktiviert ist. Bei jedem Start der DBox2 bzw. GUI wird er danach automatisch gestartet.
Plugin verlassen
Das Plugin kann mittels [HOME] beendet werden. Dabei werden die Datenbanken upgedatet und der Daemon kann bei der nächsten Abfrage die zum Löschen selektierte Mail vom Server entfernen.
Kommandozeile
Der Daemon kann auch von der Kommandozeile aus gestartet bzw. kontrolliert werden. Folgende Startparameter sind derzeit möglich:
- nodelay : die Konten werden sofort nach dem Start abgefragt und das festgelegte STARTDELAY übergangen
Sobald der Daemon läuft kann er über Signale an seine PID gesteuert werden. Die PID kann auf 2 Arten ermittelt werden:
- verwenden des Befehls "ps | grep tuxmaild" oder "pidof tuxmaild" und nutzen der kleinsten aufgelisteten PID
- auslesen aus der Datei /tmp/tuxmaild.pid z.B. mit "cat /tmp/tuxmaild.pid"
Damit kann nun die Konfiguration aktualisiert, die Kontenabfrage gesteuert oder der Daemon sauber beendet werden.
Konfiguration aktualisieren
Falls zur Laufzeit die Konfiguration geändert wurde kann der Daemon die neue Konfiguration einlesen ohne hierfür extra beendet und neugestartet zu werden:
kill -HUP <PID> bzw. kill -1 <PID>
Kontenabfrage steuern
Die Kontenprüfung kann ebenfalls unterbrochen und wieder gestartet werden ohne den Daemon zu beenden. Der erste Aufruf stoppt die Anfrage, ein weiterer Aufruf setzt diese wieder fort:
kill -USR1 <PID> bzw. kill -10 <PID>
Daemon beenden
Ein sauberes Beenden mit Sicherung der Datenbanken erfolgt mit diesem Befehl:
Kill -TERM <PID> bzw. kill -15 <PID> oder einfach mit kill <PID>
Zur Laufzeit des Daemon wird pro Konto eine Datenbank geführt, welche alle relevanten Daten enthält. Um den Flash zu schonen befinden sich diese Datenbanken unter /tmp/tuxmail.n (n = 0...9) im RAM. Beim Beenden werden diese Dateien nach /var/tuxbox/config/tuxmail gesichert damit diese beim nächsten Start nach /tmp zurückkopiert werden können und somit wieder zur Verfügung stehen.
Damit diese Dateien beim Herunterfahren der Box gesichert werden können muss der Daemon sauber beendet werden bevor das JFFS2-Filesystem ungemountet wird!
Scriptbeispiel zum Daemon beenden
kill -term $(cat /tmp/tuxmaild.pid) sleep 3
LCD
Plugin
Im LCD wird eine Übersicht des gewählten Kontos dargestellt. Angezeigt wird der Status des Daemon, die Nummer des Kontos, Zeitpunkt der letzten Abfrage sowie Anzahl neuer und gesamter Mails.
Oben links ist erkennbar ob der Daemon läuft bzw. die Kontenprüfung aktiv oder inaktiv ist. Das Symbol "OFL" bedeutet das der Daemon derzeit nicht geladen ist (z.B. wenn der Autostart deaktiviert ist) und demzufolge keine Prüfung der Konten erfolgt, "ONL" zeigt an das die Konten im festgelegten Intervall abgefragt werden und bei "PAU" ist die Kontenabfrage derzeit deaktiviert.
Dahinter wird die momentan gewählte Kontonummer angezeigt und im Anschluss daran der Zeitpunkt der letzten Abfrage.
In der unteren Zeile wird nun noch die Anzahl der neuen und gesamten Mails für das Konto ausgegeben.
Daemon
Ist die Option "LCD=Y" gesetzt gibt auch der Daemon den Mailstatus auf das LCD aus.
Diese Anzeige bleibt solange aktiv (die Anzahl neuer Mails wird bei jeder Kontenabfrage aktualisiert) bis das Plugin gestartet und wieder beendet wird. Erst mit dieser Aktion wird die Sperrdatei /tmp/lcd.locked gelöscht und die Zählung beginnt wieder bei Null.
Damit ist z.B. sichergestellt, daß bei Abwesenheit keine Mails verpasst werden und bei Rückkehr der aktuelle Status sofort im LCD sichtbar ist.
Hinweis: Diese Funktion kann nur genutzt werden, wenn die GUI die Sperrdatei auswertet und bei Vorhandensein das LCD nicht mehr durch eigene Ausgaben überschreibt!
Grundlagen - Installation - Debug-Mode - Hardware - CDK/Development
LCars - Neutrino - Enigma - Plugins - Spiele - Software - Tools - Howto - FAQ - Images
Hauptseite - News - Alle Artikel - Bewertungen - Gewünschte Seiten - Index - Neue Artikel - Impressum - Team
Hilfeportal - Seite bearbeiten - Bilder - Links - Tabellen - Textgestaltung