Plugins:TuxMail
Inhaltsverzeichnis
- 1 Allgemeines
- 2 Konfiguration
- 2.1 Konfigurationsbeispiel "tuxmail.conf"
- 2.2 Spamfilter aktivieren
- 2.3 Konfigurationsbeispiel "spamlist"
- 2.4 Konfigurationsbeispiel "tuxmail.addr"
- 2.5 Konfigurationsbeispiel "mailtext.01"
- 2.6 Konfigurationsbeispiel "tuxmail.t9 ???"
- 2.7 Bedienung
- 2.8 Konto auswählen
- 2.9 Mail löschen
- 2.10 Mail schreiben
- 2.11 Mail lesen
- 2.12 Mail ausführen
- 2.13 Spamfilter erweitern
- 2.14 Kontenabfrage steuern
- 2.15 Versionsnummern anzeigen
- 2.16 Autostart festlegen
- 2.17 Scriptbeispiel zum Daemon starten
- 2.18 Plugin verlassen
- 3 Kommandozeile
- 4 LCD
Allgemeines
Mit TuxMail ist es möglich bis zu 10 POP3 oder IMAP-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. Mails können ebenfalls über die Box gelesen und geschrieben werden. Das Plugin kann sowohl mit der Fernbedienung, als auch mit der IR-Tastatur bedient werden. Wenn die erste Zeile einer empfangenen Mail mit der SECURITY Angabe in der Datei tuxmail.conf übereinstimmt, werden alle nachfolgenden Zeilen dieser Mail als Befehle für die Box interpretiert und ausgeführt.
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 eine neue Mail gefunden hat wird eine optische und/oder 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 eine 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.
Damit diese Datei erzeugt wird, muss das Plugin gestartet werden und der Autostart aktiviert werden, danach die Box neu starten.
Mit dem Plugins kann durch drücken von [DBOX] die Konfiguration bearbeitet 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 |
LOGGING | 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 (Eine benutzerdefinierte 12/24/48KHz PCM Wave-Datei kann unter /var/tuxbox/config/tuxmail/tuxmail.wav abgelegt werden.) |
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 5 = keine Signalisierung |
1 |
LCD | Anzeige des Mailstatus durch den Daemon auf dem LCD | Y / N | Y |
OSD | TV-Ausgaben in Deutsch oder Englisch | G / E | G |
SKIN | Farbpalette wählen (1=blau, 2=grau) | 1 / 2 | 1 |
ADMIN | Löschen von Mails erlauben / verbieten | Y / N | Y |
TYPEFLAG | Wann werden Mails im Plugin grün markiert | 1 .. 3 | 1 |
CONFIGCODE | Sicherheits-PIN (Zugriff auf Konfigurationsmenü erst nach Eingabe möglich) | 0000...9999 | leer |
MAILCACHE | Mails werden schon bei der Kontoabfrage gelesen und gesichert (0=kein Lesen) | 0..99 | 0 |
MAILDIR | In welches Verzeichnis sollen die Mails gesichert werden | /directory/ | /tmp/ |
SECURITY | Zeichenfolge die das Ausführen einer Mail bewirkt | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
WEBPORT | Port des Webinterface der dbox | 1 - 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 |
POP3? | POP3 Maileingangsserver | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
IMAP? | IMAP Maileingangsserver | 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 |
SMTP? | Mailausgangsserver | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
FROM? | Absender-Adresse | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
CODE? | Sicherheits-PIN (Zugriff auf Konto erst nach Eingabe möglich, z.B. bei mehreren Familien-Mitgliedern) | 0000...9999 | leer |
AUTH? | Authentifizierungsmethode für SMTP | 0: keine, 1: POP3 Parameter, 2: SUSER? und SPASS? | 0 |
SUSER? | Nutzername für SMTP | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
SPASS? | Passwort für SMTP | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
INBOX? | Ordner für IMAP | Text ohne Leerzeichen von bis zu 64 Zeichen | leer |
Die Einträge "STARTDELAY", "INTERVALL", "LOGGING", "LOGMODE", "SAVEDB", "AUDIO", "VIDEO", "LCD", "OSD", "SKIN", "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", "POP3", "IMAP", "USER", "PASS", "SMTP", "FROM", "CODE", "AUTH", "SUSER", "SPASS" und "INBOX" sind Werte von 0...9 möglich. Bei weniger als 10 Konten können die entsprechenden Einträge entfallen oder einfach leer gelassen werden. Es darf nur entweder der Eintrag "POP3" oder der Eintrag "IMAP" verwendet werden. Wenn nicht das Standardport verwendet werden soll ist dies mit "Mailserver:Port" anzugeben. Wird der Eintrag INBOX leer gelassen, wird der Standardwert "INBOX" verwendet.
Konfigurationsbeispiel "tuxmail.conf"
STARTDELAY=30 INTERVALL=15 LOGGING=Y LOGMODE=S SAVEDB=Y AUDIO=Y VIDEO=1 LCD=Y OSD=G SKIN=1 ADMIN=Y TYPEFLAG=1 MAILCACHE=10 MAILDIR=/tmp/ SECURITY= WEBPORT=80 WEBUSER= WEBPASS= NAME0=Kontoname POP30=Maileingangsserver USER0=Kennung PASS0=Passwort SMTP0=Mailausgangsserver FROM0=Absender CODE0=1234 AUTH0=0 SUSER0= SPASS0=
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
Konfigurationsbeispiel "tuxmail.addr"
freundin@web.de geliebte@gmx.de frau@zuhause.de
Das ist ein vordefiniertes Adressbuch, aus dem beim Schreiben einer Mail ausgewählt werden kann.
Konfigurationsbeispiel "mailtext.01"
Hallo, ich sitze derzeit vor dem Fernseher und habe keine Zeit. cu. Dein Satreceiver
Das ist ein vordefinierter Mailblock, der beim Schreiben einer Mail ausgewählt werden kann.
Konfigurationsbeispiel "tuxmail.t9 ???"
Aachen,Aal,Aas,ab,Abakus... Baal,Baas,babbeln,Babel... C...
T9: Text on 9 keys, eine Erfindung zur vereinfachten Eingabe von SMS bei Handys
T9 ist derzeit noch nicht implementiert
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:
TYPEFLAG=1
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 werden |
TYPEFLAG=2
20px | es wurde noch keine neue Kontenabfrage durchgeführt seit diese Mail neu hinzugekommen ist |
20px | diese Mail war schon vorhanden seit das Plugin geöffnet wurde und eine neue Kontenabfrage durchgerührt wurde |
20px | diese Mail soll bei der nächsten Kontenabfrage gelöscht werden |
TYPEFLAG=3
20px | diese Mail ist seit dem letzten Öffnen des Plugins neu hinzugekommen |
20px | diese Mail war beim letzten Öffnen des Plugins bereits vorhanden |
20px | diese Mail soll bei der nächsten Kontenabfrage gelöscht werden |
Konto auswählen
Mit [+] [-] bzw. [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].
Falls eine PIN für dieses Konto definiert wurde wird diese zunächst abgefragt und muss mit [0]...[9] eingegeben oder mit [HOME] bzw. [EXIT] abgebrochen werden.
Nach 3 Fehlversuchen wird das Konto gesperrt. Ein Zugriff ist erst nach neustarten des Plugins wieder möglich.
Mail löschen
Mittels [HOCH] [RUNTER] kann die vorhergehende bzw. nächste Mail ausgewählt und durch einen Druck auf [ROT] zum Löschen vorgemerkt werden. Ein weiterer Druck auf [ROT] hebt die Markierung wieder auf. Seitenweise kann mit [RECHTS] [LINKS] geblättert 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.
Mail schreiben
Um eine Mail zu schreiben [GRÜN] drücken.
Der Absender der selektierten Mail wird dabei automatisch als Empfänger eingetragen und der Betreff um "Re: " erweitert.
Vorgefertigte Textblöcke können mit den Namen tuxmail.01, tuxmail.02 usw. in /var/tuxbox/config/tuxmail abgelegt werden. Eine Adressenliste kann mit dem Namen tuxmail.addr in /var/tuxbox/config/tuxmail abgelegt werden.
Zeichen können mit [MUTE] gelöscht und mit [BLAU] bzw. [RECHTS] eingefügt werden. Die Zeile kann mit [HOCH] und [RUNTER] gewechselt werden. Textblöcke bzw. die letzte gelesene EMail können mit [+] [-] bzw. [VOLUME +] [VOLUME -] gewechselt werden ( im Mode Texte ), Adressen aus der Adressenliste können ebenfalls mit [+] [-] bzw. [VOLUME +] [VOLUME -] gewechselt werden wenn die entsprechende Zeile ausgewählt ist.
Die Mail wird mit [OK] gesendet oder mit [HOME] bzw. [EXIT] verworfen.
Mail lesen
Um eine Mail zu lesen [GELB] drücken.
Die ausgewählte Mail wird nun (ohne sie zu löschen) vom Server geladen bzw. die schon vorher geladene Mail wird ausgewählt und angezeigt. Durch die Anzeige kann mittels [LINKS] / [HOCH] und [RECHTS] / [RUNTER] geblättert werden. Zurück kommt man mit [HOME] bzw. [EXIT].
Mail ausführen
Wenn die Optionen MAILCACHE und MAILDIR, sowie SECURITY gesetzt sind, wird jede vom Daemon gelesene Mail ausgewertet. Damit der Inhalt einer Mail ausgeführt wird, muss die erste Zeile dieser Mail exakt mit der in SECURITY definierten Zeichenfolge übereinstimmen. Alle weiteren Zeilen werden dann als Befehle auf der Box exekutiert.
Da Mails beim Lesen vom Daemon eine maximale Zeilenlänge von 80 Zeichen haben, müssen Befehle, um aus mehreren Zeilen zusammengesetzt werden zu können, am Zeilenende ein & Zeichen haben.
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. Das Löschen und das Hinzufügen zur Spamliste kann mit [BLAU] wieder rückgängig gemacht 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 kann unter Enigma das Script "/var/etc/enigma_enter_standby.sh" sowie unter Neutrino das Script "/var/tuxbox/config/standby.on" mit dem Inhalt "if [ -e /tmp/tuxmaild.pid ]; then kill -usr2 $(cat /tmp/tuxmaild.pid); fi" angelegt werden. Zum Fortsetzen der Kontenabfrage muss unter Enigma das Script "/var/etc/enigma_leave_standby.sh" sowie unter Neutrino das Script "/var/tuxbox/config/standby.off" mit dem Inhalt "if [ -e /tmp/tuxmaild.pid ]; then kill -usr1 $(cat /tmp/tuxmaild.pid); fi" angelegt werden.
Die Abfrage wird so mit dem Beginn des Standby pausiert und startet erst beim Beenden des Standby wieder. Eingehende Nachrichten während dieser Zeit werden nun nicht mehr verpasst.
Versionsnummern anzeigen
Zur Fehlereingrenzung ist die genutzte Version von Daemon und Plugin wichtig. Diese kann durch drücken von [?] bzw. [INFO] ermittelt werden.
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
- -syslog : die Informationen werden nicht auf die Konsole ausgegeben sondern an einen Syslog-Server gesendet
- -play <audio-Datei> : die angegebene Audio-Datei wird gespielt, der Daemon wird nicht gestartet
- -send <Kontonummer> <Empfängeradresse> <Text-Datei> : die angegebene Datei wird mit den Kontoeinstellungen der übergebenen Kontonummer an die Empfängeradresse gesendet, wobei die erste Zeile der Datei als Subject interpretiert wird. Der Daemon wird nicht gestartet
Um alle Ausgaben des Daemons auf seinen PC umzuleiten muss auf der Box mittels "syslogd -R <IP-Adresse des PC>" das Logging aktiviert werden. Auf dem PC muss natürlich ein Syslog-Server installiert sein, welcher die Ausgaben entgegen nimmt. Zur lokalen Speicherung auf der Box genügt ein "syslogd" ohne Parameter. Die Ausgaben werden so unter /var/log/messages gespeichert. Alternativ kann durch "syslogd -O <Pfad der Logdatei>" auch ein anderer Pfad eingestellt werden.
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.
kill -USR1 <PID> bzw. kill -10 <PID> startet die Kontenprüfung, kill -USR2 <PID> stoppt die Kontenprüfung,
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, dass 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