####################################################################################
####                        msg2box Version 2.00
####        Nachrichten von der D-Box zu anderen D-Boxen schicken
####                                        
####        Bugreport und Anregungen an SnowHead@keywelt-board.com
####    oder im Board: http://www.keywelt-board.com/index.php?showforum=33
####################################################################################

Mit diesem Plugin knnt ihr Textnachrichten hnlich SMS von Eurer D-Box zu anderen
Boxen im Heimnetzwerk oder auch im Internet schicken. Die eingegebene Nachricht wird 
an alle Boxen in der Liste "msg2box.conf" versendet und anschlieend eine Info aus-
gegeben, welche Boxen alle erreicht wurden.

Vorraussetzungen:
----------------------------------

Das Plugin bentigt den Editor "input" und das FlexMen "shellexec". Diese liegen dem 
Paket bei. "input" wird nach /var/bin/ und "shellexec" nach /var/plugins/ kopiert und 
beide mit den Rechten 755 versehen. Ist die MessageBox "msgbox" bereits im Image vor-
handen oder wird aus dem Archiv nachinstalliert (nach /var/bin/ oder /bin/ mit den
Rechten 755), so wird diese statt des Web-Interfaces zur Informationsausgabe auf dem 
TV verwendet.
Fr das Senden von Nachrichten an Boxen im Internet mu an deren Router der HTTP-
Port auf die Box hinter dem Router forwardet werden. Das ist im Normalfall der
Port 80. Damit aber nicht jeder sofort auf das Web-Interface der Box zugreifen
kann, ist es auch mglich, einen beliebigen externen Port auf den internen Port
80 der Box zu forwarden. Dieser Port ist dann in der msg2box.conf mit anzugeben.


Installation
----------------------------------

Die Verzeichnis-Struktur gibt den Ort der Dateien im Image eigentlich schon vor,
also msg2box.cfg und msg2box.so (Rechte auf 755) nach /var/tuxbox/plugins/.
Den Ordner "msg2box" (einschlielich des Ordners selbst) nach /var/plugins/ kopieren.
msg2box braucht die Rechte 755.

Konfiguration
----------------------------------

In der Datei msg2box.conf werden die Boxen, an welche die Nachricht gesendet werden soll,
mit ihren IP (auch DynDNS-Adresses im Internet) und bei vom Standardport 80 abweichenden
HTTP-Ports einegtragen. Es knnen bis zu 9 Nutzer eingetragen werden. Die Eintrge erfol-
gen fr jeden User paarweise in der Form:

  Userx=Username
  IPx=UserIP[:port] 
  
mit x=0..9. Der Username darf dabei keine Leerzeichen oder Sonderzeichen enthalten!
  
Beispiele:

  User1=internal_User              
  IP1=180.185.21.9             
  
  User2=internal_User_Port              
  IP2=180.185.21.9:12345       
  
  User3=Internet_User
  IP3=demouser.dyndns.org      
  
  User4=Internet_User_Port              
  IP4=demouser.dyndns.org:1234     

Fr das Versenden sich selten ndernder Texte knnen im Verzeichnis /var/plugins/msg2box/
Vorlagendateien erstellt werden. Der Name dieser Dateien besteht aus einer laufenden Nummer
von 0 bis 9, einem Punkt und der Beschreibung. Beispiele dazu sind im Archiv enthalten.
Der Inhalt dieser Dateien darf 100 Zeichen nicht berschreiten. Statt eines Zeilenumbruchs
mssen sie das Zeichen "@" und folgende Steuerzeichen statt Umlauten enthalten:

Steuer-	  Umlaut
zeichen
  ~a   		
  ~o    	
  ~u    	
  ~A    	
  ~O    	
  ~U    	
  ~z    	

Bedienung
----------------------------------
Wurden Vorlagendateien gefunden, ffnet sich nach dem Start des Plugins eine Auswahlliste mit
den gefundenen Vorlagen. An erster Stelle steht "Neue Nachricht", welche den Editor mit einem
leeren Eingabefeld startet. Die Auswahl einer Vorlage ffnet den Editor mit der Vorbelegung aus 
dieser Datei. Sind keine Vorlagendateien vorhanden, wird gleich der leere Editor gestartet.
Mittels der Links-/Rechts-Tasten kann nun zwischen den einzelnen Eingabefeldern gewechselt wer-
den. Zustzlich kann mittels der Hoch-/Runter-Tasten auch zwischen den Zeilen navigiert werden.
In den Feldern kann wie beim Handy durch mehrfachen Druck der selben Taste durch die mglichen 
Buchstaben, Ziffern und Sonderzeichen geblttert werden. Der Druck auf eine andere als die bisher 
gedrckte Taste wird sofort zum nchsten Feld gewechselt und der neue Wert dort bernommen. 
Wird in einem Feld nach Drcken einer Taste fr 3 Sekunden keine weitere Taste bettigt, geht 
der Editor automatisch zum nchsten Eingabefeld. Damit ist die Eingabe zweier gleicher Buchstaben 
hintereinander mglich, ohne erst die Cursortasten benutzen zu mssen.
Die rote Taste schaltet zwischen Gro- und Kleinschreibung um. Die gelbe Taste lscht alle Einga-
befelder.
Um Zeilenmbrche einzufgen, kann das Zeichen "@" eingegeben werden. Dieses bewirkt im Nach-
richtenfenster der empfangenden Box, da der folgende Text auf einer neuen Zeile beginnt. So-
mit lt sich der Nachrichtentext bersichtlicher gestalten.
Mit "OK" werden die nderungen bernommen, der Editor geschlossen und die Nachricht gesendet. 
Die "HOME"-Taste bricht den Vorgang ab, beendet den Editor. Dabei wird keine Nachricht geendet.
Wurden mehr als 1 Adressat in der msg2box.conf definiert, ffnet sich nach Schlieen des Editors
eine Auswahl aller gefundenen Adressaten. Diese werden zunchst normal angezeigt. Fr die Auswahl
eines Adressaten wird der Selectbalken auf diesen bewegt und "OK" gedrckt. Ist ein Adressat aus-
gewhlt, wird das durch das vorangestellte Zeichen ">" und die Darstellung in gelber Farbe darge-
stellt. Es sind mehrere Adressaten gleichzeitig auswhlbar. Wird die OK-Taste auf einem bereits
ausgewhlten Adressaten erneut bettigt, wird dieser Adressat wieder deaktiviert.
Die Auswahl wird mit der "Home"-Taste geschlossen. Wurde nur eine Adresse in der msgbox.conf ge-
funden, wird die Auswahl bersprungen und gleich dieser Adressat ausgewhlt. 
War mindestens ein Adressat ausgewhlt, wird die Nachricht nun verschickt und im Anschlu eine 
Meldung auf dem Bildschirm ausgegeben, an welche Adressaten die Nachricht erhalten haben und wel-
che nicht erreichbar waren. Da das systemeigene "wget" eine lange Timeout-Zeit hat, kann es eine 
Weile dauern, bis alle Nachrichten verschickt wurden, wenn viele Teilnehmer offline sind. Also 
nicht ungeduldig werden.

Fr den Aufruf aus Scripten heraus knnen ab der Version 1.96 Kommandozeilenparameter bergeben
werden. Der Aufruf aus dem Script heraus erfolgt in der Form:
  
  /var/plugins/msg2box/msg2box IP "Defaulttext"
  
Als "IP" wird die IP oder DynDNS angegeben, an welche die Nachricht gesendet werden soll. Die Zugangs-
daten fr das HTTP-Interface der Zielbox (User, Pass und Port) werden beim Start des Plugins abgefragt
und knnen per Fernbedienung eingegeben werden. Werden keine Zugangsdaten bentigt, knnen die Eintr-
ge leer gelassen werden. 
Mit dem Text zwischen den Hochkommas (hier "Defaulttext") kann schon eine Vorbelegung der Nachricht er-
folgen. Wird der Defaulttext weggelassen, wird nach der Eingabe der Zugangsdaten das bekannte Auswahl-
men geffnet. Ansonsten startet sofort der Editor mit dem Defaulttext. Die weitere Bedienung erfolgt
wie gewohnt.

Also, viel Spa und viel Erfolg

Das New-Tuxwetter-Team
SnowHead und Worschter