Plugin um die Timerliste timerd.conf von einer Box auf die andere zu kopieren.
==============================================================================

Die Idee zu diesem Plugin kam mir, als ich eine zweite Box angeschafft habe, die jedoch 
in einem anderen Raum steht. Mit Hilfe dieses Plugins kann man die Timerliste von einer
auf die andere Box kopieren, um dann mit dieser zu streamen. So kann ich weiter im
Wohnzimmer fernsehen, whrend die andere Box aufnimmt. Oder ich kann 2 sich 
berschneidende Sendungen aufnehmen. So braucht man nicht an jeder Box die Timer zu 
programmieren, sondern man kann dies von einer Dbox, (Box 1) erledigen, und dann die 
Timerliste auf die andere Box (Box 2) kopieren.

Vorrausetzung:
==============

2 Dboxen, die ber das Netzwerk verbunden sein mssen. Auf Box 1 sollte rcsim 
(in /bin/) verfgbar sein. Sonst die beigefgte rcsim nach /var/bin/ kopieren und 
Ausfhrrechte (755) vergeben, oder in den Scripts copytmr und gettmr die Zeile 
sh /var/plugins/rctimer & mit einer Raute # auskommentieren. 
Das Plugin funktioniert dann trotzdem, nur die Timerliste wird dann nicht 
automatisch angezeigt. Wichtig ist auch, da auf beiden Boxen die gleichen Senderlisten 
vorhanden sind.


Anleitung: Funktion des Plugins
===============================

Das Plugin besteht aus 2 Teilen, "Timer von Box 2" und "Timer nach Box 2".
Die Plugins mssen auch in dieser Reihenfolge aufgerufen werden, es wird vorher 
berprft, ob eine Sicherungsdatei /var/tuxbox/config/timerdneu.conf auf Box 1
vorliegt. Existiert sie kann nur "Timer nach Box 2" ausgefhrt werden, ist sie nicht 
vorhanden, kann nur "Timer von Box 2" ausgefhrt werden. Werden die Plugins falsch 
aufgerufen, so wird die Timerliste nicht kopiert und eine entsprechende Fehlermeldung 
angezeigt. So wird vermieden, da eventuell auf den jeweiligen Boxen vorhandene Timer,
ohne berprfung berschrieben werden knnen. Es besteht also immer Kontrolle ber die 
jeweils auf den Boxen programmierten Timer.

Timer von Box 2
===============

Mit "Timer von Box 2" wird die Timerliste von Box 2 nach Box 1 kopiert, hier knnen
die Timer von Box 2 auf der Box 1 bearbeitet werden, also gelscht oder neue Timer 
hinzugefgt werden. Zuvor wird die Timerliste von Box 1 gesichert, d.h. nach dem 
Holen der Timer von Box 2 werden auch nur deren Timer beabeitet. Falls die zweite 
Box nicht erreichbar ist, wird eine Fehlermeldung auf dem Bildschirm angezeigt. 
Dann wird mit Hilfe von rctimer noch die Timerliste aufgerufen und angezeigt.

Timer nach Box 2
================

Mit "Timer nach Box 2" werden die auf Box 1 bearbeiteten Timer wieder auf Box 2 kopiert.
Danach werden die zuvor auf Box 1 gespeicherten Timer wieder zurckgesichert. Falls die 
zweite Box nicht erreichbar ist, wird eine Fehlermeldung auf dem Bildschirm angezeigt.
Dann wird mit Hilfe von rctimer noch die Timerliste anzeigt, um zu kontrollieren, 
welche Timer auf Box 1 programmiert sind.

Funktionsweise der enthaltenen Scripte:
=======================================

gettmr 
------
gettmr kommt auf Box 1 und dient dazu, um die Timerliste von Box 2 auf Box 1 zu kopieren. 
Zuerst wird berprft ob Box 2 ereichbar ist. Ist sie das nicht, wird eine entsprechende 
Fehlermeldung angezeigt. Ist die Box erreichbar, wird berprft ob die Sicherungsdatei
/var/tuxbox/config/timerdneu.conf existiert. Ist sie vorhanden, so wird das Plugin mit einer
entsprechenden Fehlermeldung beendet. Ist die Datei /var/tuxbox/config/timerdneu.conf nicht 
vorhanden, wird die Timerliste der Box 1 /var/tuxbox/config/timerd.conf nach 
/var/tuxbox/config/timerdneu.conf gesichert. Dann wird ber wget die Timerliste 
/var/tuxbox/config/timerd.conf von Box 2 nach /var/tuxbox/config/timerd.conf auf Box 1 kopiert. 
Danach wird der Timerdmon timerd gekillt und neu gestartet um die kopierte Liste neu einzulesen. 
Auf dem TV wird noch angezeigt, da die Timerliste von Box 2 abgeholt wurde.
Dananch wird ber die mit Hilfe der Datei rctimer die Timerliste von Box 2 angezeigt.

copytmr
-------
copytmr kommt nach Box 1, und dient dazu, um die Timerliste von Box 2 auf Box 1 zu kopieren. 
Zuerst wird berprft ob Box 2 ereichbar ist. Ist sie das nicht, wird eine entsprechende 
Fehlermeldung angezeigt. Ist die Box erreichbar, wird berprft ob die Sicherungsdatei
/var/tuxbox/config/timerdneu.conf existiert. Ist nicht vorhanden, so wird das Plugin mit einer
entsprechenden Fehlermeldung beendet. Ist die Datei /var/tuxbox/config/timerdneu.conf vorhanden, 
wird ber wget die Datei readtmr auf Box 2 gestartet. readtmr kopiert die Timerliste 
/var/tuxbox/config/timerd.conf von Box 1 nach /var/tuxbox/config/timerd.conf 
auf Box 2, anschlieend wird die vorher im Script gettmr gesicherte Timerliste der Box 1 
/var/tuxbox/config/timerdneu.conf wieder nach /var/tuxbox/config/timerd.conf zurckkopiert.
Danach wird der Timerdmon timerd gekillt und neu gestartet um die kopierte Liste neu einzulesen.
Auf dem TV wird noch angezeigt, da die Timerliste nach Box 2 kopiert wurde.
Dann wird ber die Datei rctimer die wieder hergestellte Timerliste von Box 1 angezeigt.

readtmr
-------
readtmr kommt nach Box 2, sie holt mit Hilfe von wget die Timerliste /var/tuxbox/config/timerd.conf
von Box 1 ab und kopiert sie nach /var/tuxbox/config/timerd.conf auf Box 2. Anschlieend gibt
readtmr eine Meldung auf Box 2 aus, da eine Timerliste von Box 1 gesendet wurde.
readtmr wird ber den Shellstarter readtmr.so gestartet, die zugehrige readtmr.cfg wird durch die
Befehlszeile 'wget -O /dev/null http://192.168.0.24/cgi-bin/startPlugin?name=readtmr' ausgelesen.
Dadurch wird dann readtmr.so gestartet, die ihrerseits wiederum readtmr aufruft. Die Insider werden 
sich sicher wundern, warum readtmr nicht als Plugin auf Box 2 angezeigt wird. Das kommt daher, da
in der Datei readtmr.cfg die Zeile type=0 drinsteht. Das Plugin wird dann weder im Features-Men
(Blaue Taste), noch unter Skripte (Dbox-Taste) angezeigt, es lsst sich aber trotzdem ber wget 
aufrufen, auch von der anderen Box aus.

rctimer
-------
rctimer kommt nach Box 1, in dieser Datei wird rcsim aufgerufen. rcsim bildet Tastendrcke auf der 
Fernbedienung der Dbox nach. In rctimer wird rcsim dazu benutzt, um den Aufruf der Timerliste, die 
normalerweise ber Blaue Taste -> Rote Taste mit der FB aufgerufen wird, nachzubilden. 
Alle mglichen Befehle von rcsim knnen durch die Eingabe von rcsim per telnet direkt auf der Box 
angezeigt werden. Sollte nach dem Einloggen auf der Box per telnet rcsim nicht vorhanden sein, so 
kann die im Archiv enthaltene Datei rcsim nach /var/bin/ kopiert werden. Ausfhrrechte 755 nicht
vergessen. 
 
Vorbereitung:
=============

In den Scripts copytmr, gettmr und readtmr mssen die IP-Adressen der Boxen angepasst 
werden. ( In copytmr und gettmr in zwei Zeilen, in readtmr in einer Zeile. ) Die 
entsprechenden Zeilen sind mit Kommentaren versehen.
Die nderungen mssen mit einem Unix-kompatiblen Editor, z.B. Ultraedit oder Crimson-
Editor gemacht werden. Alternativ knnen die Dateien allerdings auch mit Notepad
gendert werden. Dann mssen sie aber vor dem Ausfhren auf der Box mit dem 
Tuxbox-Commander-Plugin auf der Box in das Linux-Format umgewandelt werden. Dazu werden
die Dateien mit Taste 4 = Bearbeiten geffnet und dann mit der Blauen Taste ins Linux-
Format gendert. Anschlieend den Editor mit der Home-Taste verlassen und dann die Datei 
mit der Roten Taste abspeichern. Oder man macht die nderungen gleich mit dem Editor des
Tuxbox-Commander-Plugins.
Die Ausfhrrechte der Dateien knnen ebenfalls mit dem Tuxbox-Commander gendert werden. 
Dazu die betreffende Datei mit Taste 1 = Rechte ffnen.
Dann mit der "Pfeil nach oben Taste" auf ausfhren gehen und die Ok-Taste drcken, bis 
der Balken grn angezeigt wird. Dann mit der roten Taste abspeichern. Die Dateien die 
Ausfhrrechte (755) besitzen werden im Tuxbox-Commander gelb angezeigt.

Das Plugin besteht aus folgenden Dateien:
=========================================

copytimer.so 	kommt nach Box 1 nach /var/tuxbox/plugins/	(Rechte 755)
copytimer.cfg 	kommt nach Box 1 nach /var/tuxbox/plugins/	(Rechte 644)
copytmr 	kommt nach Box 1 nach /var/plugins/		(Rechte 755)

gettimer.so 	kommt nach Box 1 nach /var/tuxbox/plugins/	(Rechte 755)
gettimer.cfg 	kommt nach Box 1 nach /var/tuxbox/plugins/	(Rechte 644)
gettmr		kommt nach Box 1 nach /var/plugins/		(Rechte 755)

rctimer		kommt nach Box 1 nach /var/plugins/		(Rechte 755)

readtmr.so	Kommt nach Box 2 nach /var/tuxbox/plugins/ 	(Rechte 755)
readtmr.cfg 	kommt nach Box 2 nach /var/tuxbox/plugins/	(Rechte 644)
readtmr 	kommt nach Box 2 nach /var/plugins/		(Rechte 755)

Falls auf Box 1 der Befehl "rcsim" nicht in /bin/ verfgbar ist optional noch 
-----------------------------------------------------------------------------

rcsim		kommt nach Box 1 nach /var/bin/			(Rechte 755)

Die Dateien werden per FTP auf die Dbox in die entsprechenden Verzeichnisse kopiert.
Nicht vergessen die IP-Adressen anzupassen und den Dateien die Ausfhrrechte (755) 
bentigen, diese auch zu vergeben.
Wenn Du jetzt alles richtig gemacht hast, hast Du auf der Box 1 ber die blaue Taste 2 neue
Plugins "Timer von Box 2" und "Timer nach Box 2".

Einbau ins Flexmen-Plugin
==========================

Wer das ganze ber das Flexmen-Plugin aufrufen mchte, bentigt folgende Dateien nicht: 
----------------------------------------------------------------------------------------
copytimer.so 
copytimer.cfg
gettimer.so
gettimer.cfg

Stattdessen wird in der shellexec.conf in /var/tuxbox/config/ folgender neuer Menpunkt eingefgt.

	MENU=Timerliste kopieren Box 1 <---> Box 2
		DEPENDOFF=Timerliste von Box 2 holen,/var/plugins/gettmr,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=Die Timerliste mu nach dem Bearbeiten,,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=wieder auf Box 2 zurckkopiert werden.,,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=Sonst kann keine neue Timerliste von,,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=Box 2 eingelesen werden. So wird,,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=vermieden da eventuell auf den,,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=jeweiligen Boxen vorhandene Timer,,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=ohne berprfung berschrieben werden,,/var/tuxbox/config/timerdneu.conf
		DEPENDOFF=knnen.,,/var/tuxbox/config/timerdneu.conf
		DEPENDON=Timerliste nach Box 2 Kopieren,/var/plugins/copytmr,/var/tuxbox/config/timerdneu.conf
		DEPENDON=Die Timerliste fr Box 2 mu vor dem,,/var/tuxbox/config/timerdneu.conf
		DEPENDON=Kopieren auf Box 2 zuerst von Box 2,,/var/tuxbox/config/timerdneu.conf
		DEPENDON=geholt werden. So wird vermieden,,/var/tuxbox/config/timerdneu.conf
		DEPENDON=da eventuell auf den jeweiligen,,/var/tuxbox/config/timerdneu.conf
		DEPENDON=Boxen vorhandene Timer ohne,,/var/tuxbox/config/timerdneu.conf
		DEPENDON=berprfung berschrieben werden,,/var/tuxbox/config/timerdneu.conf
		DEPENDON=knnen.,,/var/tuxbox/config/timerdneu.conf
	ENDMENU

Die Dateien readtmr.so,	readtmr.cfg und readtmr mssen jedoch alle nach Box 2, an die entsprechenden 
Stellen kopiert werden, sonst funktioniert das Plugin nicht.


Mein Dank geht an Snowhead vom New-Tuxwetter-Team, ohne dessen Hilfe, htte ich es nicht geschafft!
===================================================================================================

Support gibts bei http://www.jackthegrabber.de/index.php im Plugin Unterforum.


Greetz von DrStoned :-) :-) :-)
-------------------------------

