DynTimer: Unterschied zwischen den Versionen

Aus Gemini-Wiki
Zur Navigation springen Zur Suche springen
 
(43 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
DynTimer 0.5 entwickelt von oerg und abgeändert von, BadCluster und jdow!!!
+
'''DynTimer 0.5''' entwickelt von oerg und abgeändert von, BadCluster und jdow!!!
  
Der DynTimer durchsucht das EPG nach definierbaren Sendungen und erstellt dynamische Timer. Das script sollte täglich mindestens einmal gestartet werden. Ich empfehle cron und wird in Kombination mit epgRefresh recht gut funktionieren. Cron und epgRefresh sind Bestandteil von Gemini Project.  
+
Der DynTimer durchsucht das EPG nach definierbaren Sendungen und erstellt dynamische Timer. Das Script sollte täglich mindestens einmal gestartet werden. Ich empfehle cron und wird in Kombination mit [[EPGRefresh]] recht gut funktionieren. Cron und EPGRefresh sind Bestandteil von Gemini Project.  
  
Das Skript läuft mit der Version Gemini_0460_DM7000. Voraussetzung ist ein installiertes webif, welches in der angegebenen Version von Gemini bereits enthalten ist.
+
''Das Skript läuft mit der Version Gemini_0460_DM7000. Voraussetzung ist ein installiertes webif, welches in der angegebenen Version von Gemini bereits enthalten ist.''
  
Zur Installation:
+
== Zur Installation ==
 +
* Ladet euch die aktuelle Version von DynTimer[http://www.i-have-a-dreambox.com/wbb2/thread.php?postid=1012687#post1012687] herunter.
 +
* Alle Dateien mit der Endung *.cfg, *.sh, *.ini aus dem Archiv in das verzeichnis /var/tuxbox/plugins kopieren.
  
1) Ladet euch die aktuelle Version von DynTimer herunter.
+
[[bild:DynTimerInst1.png|Kopieren von lokal zur Dreambox]]
2) Alle Dateien mit der Endung *.cfg, *.sh, *.ini aus dem Archiv in das verzeichnis /var/tuxbox/plugins kopieren.
 
3) Alle kopierten *.sh Dateien auf 755 setzen, damit sie ausführbar werden.
 
4) In der DynTimer.sh sind folgende Einstellungen in der Funktion UserSettings vorzunehmen:
 
  
# webif user kann man in der Regel lassen
+
* Alle kopierten *.sh Dateien auf 755 setzen, damit sie ausführbar werden.
user=root
 
  
# webif password kann man in der Regel leer lassen
+
[[bild:DynTimerInst2.png|Kopieren von lokal zur Dreambox]]
pw=
 
  
# (S)atellite, (C)able or (T)errestrial
+
* In der DynTimer.sh sind folgende Einstellungen in der Funktion UserSettings vorzunehmen:
TunerType=S
 
  
# Die Nummer eures Buques welches Ihr für den DynTimer angelegt habt. Die Nummer
+
[[bild:DynTimerUserSettings.png]]
# befindet sich in der Zeichenkette des Dateinamens.
 
# Sie userbouquet aus /etc/tuxbox/config/enigma
 
BouquetID=bba79 # zum testen
 
  
# IP from the Dreambox
+
Den User "root" und das leere Passwort kann man in der Regel lassen. '''Die IP und die BouquetID müssen angepasst werden.'''<br>
DreamboxIP=192.168.2.240
 
  
 +
Die Nummer eures Buques, welches Ihr für den DynTimer anlegen müsst, befindet sich in der Zeichenkette des Dateinamens. Siehe userbouquet aus /var/tuxbox/config/enigma<br>
 +
BouquetID='''bba79'''<br><br>
 +
Das folgende Bild zeigt ein Bouqet '''dt''' und steht für DynTimer. Ich habe es über die Dreambox am TV angelegt und auch dort Sender hinzugefügt. Die Dreambox erstellte daraus eine Datei '''userbouqet.bba79.tv'''. Dort befinden sich alle relevanten Sender, dessen EPG-Informationen vom DynTimer verwendet werden sollen. Natürlich könnt Ihr auch die BouquetID des Service-Bouquets verwenden, dann prüft DynTimer jedoch erheblich länger. Auch wenn das Skript später durch den Cron im Hintergrund ausgeführt wird, sollte man nicht unnötige Ressourcen verschwenden. Achtung!!! Ihr könnt nicht diese ID verwenden, sondern müsst bei euch auf der Box nachschauen!
  
Damit das Skript (DynTimer.sh) autom. aufgerufen wird, muss es nur noch im Cronmanager angegeben werden. Natürlich könnt Ihr das Skript auch manuell über die Taste PlugIn aufrufen. Ob der Aufruf über den Cronmanager funktioniert hat, könnt Ihr mit dem Skript "DynTimerResultViewer.sh" testen. Was in der ini-Datei steht, könnt Ihr euch mit dem Skript "DynTimerIniViewer.sh" anzeigen lassen. Als Tipp empfehle ich den EPGRefresh von Gemini, damit die EPG´s auch immer aktuell gehalten werden.
+
[[bild:DynTimerUserbouquet.png]]
  
Welche Sendungen automatisch aufgenommen werden sollen, sind im file DynTimer.ini einzutragen, pro zeile eine Sendung, auch regular expressions sind erlaubt.  
+
Damit das Skript (DynTimer.sh) autom. aufgerufen wird, muss es nur noch im Cronmanager angegeben werden.  
  
Aufbau und Beschreiung dieser Datei:
+
[[bild:DynTimerCron1.JPG]]
  
Sendungsname;Startzeit Von-Bis;Sendername;Beschreibung;
+
Bevor Ihr die Eingabe durchführt solltet Ihr den Prozess beeden. Hier wird das Sript beispielsweise jeden morgen um 07:05 Uhr im Hintergrund aufgerufen.
  
Sendungsname (Regular Expression) Eingabe ist optional wenn leer sollte jedoch in der Beschreibung was stehen.
+
[[bild:DynTimerCron2.JPG]]
Startzeit Eingabe ist optional. Wenn leer wird die Zeit von 00:00 bis 23:59 Uhr verwendet.
 
Sendername (Regular Expression) Eingabe ist optional wenn leer erfolg die Suche in allen Sendern. Kleiner gleich
 
ein Zeichen bedeutet leer. Beispiel ein "-" oder ein " " ist als leer zu betrachten.
 
Beschreibung (Regular Expression) Eingabe ist optional. Stimmt der Ausdruck mit der Beschreibung überein
 
wird dieser unabhängig vom Sendungsnamen in den Timer gepackt.
 
  
Groß und klein Schreibung wird nicht mehr berücksichtigt. Umlaute wie ÄÖÜ sollten mit .. ersetzt werden.
+
Solltet Ihr Probleme mit der Konfiguration des Cron über die Box haben könnt Ihr den Eintrag auch mittels Editor durchführen (siehe Bild). Mit diesem Eintrag würde DynTimer.sh jeden Morgen um 07:05 Uhr gestartet.
Beispiel: Anfänger mit Anf..nger.
 
  
Die Zeit sollte mit "0000-2359" oder mit "-" oder leer angegeben werden. Ich empfehle das erste.
+
[[bild:DynTimerCron1.png]]
Beispiel: 2015-2300 oder 2000-2359. Für alles verwendet Ihr am besten 0000-2359.
 
  
Beispiele:
+
== Aufbau der DynTimer.ini ==
erstellt jedesmal einen Timer, wenn die Sendung "stern TV" mit der Startzeit zwischen
+
Welche Sendungen automatisch aufgenommen werden sollen, sind im file DynTimer.ini einzutragen, pro zeile eine Sendung, auch regular expressions sind erlaubt. Hinweis!!! In der Version 0.5a funktioniert die Suche in der Beschreibung noch nicht. Der Rest geht, wie beschrieben, einwandfrei.
20:00 und 23:59 Uhr auf irgeneinem Sender ausgestrahlt wird.
 
  
stern TV;2000-2359;;
+
Sendungsname;Startzeit Von-Bis;Sendername;Beschreibung;<br>
oder
 
stern TV;2000-2359;-;
 
oder
 
stern TV;2000-2359;alle sender;
 
  
erstellt jedesmal einen Timer, wenn die Sendung "stern TV" nur auf RTL mit der Startzeit zwischen
+
Sendungsname (Regular Expression) Eingabe ist optional wenn leer sollte jedoch in der Beschreibung was stehen.<br>
20:00 und 23:59 Uhr auf irgeneinem Sender ausgestrahlt wird.
+
Startzeit Eingabe ist optional. Wenn leer wird die Zeit von 00:00 bis 23:59 Uhr verwendet.<br>
 +
Sendername (Regular Expression) Eingabe ist optional wenn leer erfolg die Suche in allen Sendern. Kleiner gleich ein Zeichen bedeutet leer. Beispiel ein "-" oder ein " " ist als leer zu betrachten.<br>
 +
Beschreibung (Regular Expression) Eingabe ist optional. Stimmt der Ausdruck mit der Beschreibung überein wird dieser unabhängig vom Sendungsnamen in den Timer gepackt.<br>
  
stern tv;0000-2359;RTL;
+
''So könnte der Inhalt von DynTimer.ini aussehen:''
  
erstellt jedesmal einen Timer, wenn die Sendung "stern TV" irgendwann und irgendwo ausgestrahlt wird.
+
<nowiki>##### Anfang #####</nowiki>
  
stern tv;;
+
'''<nowiki>.*Quarks.*;0000-2359;alle sender</nowiki>'''<br>
oder
+
'''<nowiki>Unser Traum vom Haus;0000-2359;alle sender</nowiki>'''<br>
stern tv;-;-
+
'''<nowiki>Einfach genial.*;0000-2359;alle sender</nowiki>'''<br>
oder
+
'''<nowiki>Extra Engl.*;0000-2359;alle sender</nowiki><br>'''
stern tv;0000-2359;alle sender
 
  
erstellt jedesmal einen Timer, wenn in der Beschreibung die Zeichenkette "Computerhacker" vor kommt.
+
<nowiki>##### Ende #####</nowiki>
Beachtet das Semikolon. Davor wurde mit Absicht kein Sendungsname eingegeben.
 
  
;0000-2359;alle sender,Computerhacker
+
Die Anzeige ist auch über die Dreambox möglich.
oder
 
;0000-2359;-;Computerhacker
 
oder
 
;0000-2359;;Computerhacker
 
  
erstellt Timer für jede Sendung, die das Wort "der" enthält
+
[[bild:DynTimerIniFile0.JPG]]
  
.*der.*;0000-2359;alle sender
+
Hier die Anzeige. Die Eingabe muss leider noch über den PC erfolgen.
  
Umlaute mit Platzhalter ersetzen. "Für" muss ersetzt werden mit "f..r"
+
[[bild:DynTimerIniFile1.JPG]]
  
.*englisch f..r.*;0000-2359;alle sender
+
== Fehlersuche und überprüfen der Ergebnisse ==
 +
Ab Version 0.5a werden einige interne Abläufe protokolliert. Dort werden alle gefundenen EPG-Informationen und die Inhalte aus der ini-Datei angezeit. Ein "Treffer:" bedeutet, Sendung oder Beschreibung gefunden. Stimmt die Zeitspanne, so wird diese Sendung in die Timerliste gepackt und mit "Erzeugt:" dort dokumentiert. Tritt ein Fehelr auf findet Ihr den Eintrag "Fehler:". Inhalt der Datei tmp/dyntimer.log:
  
das gilt auch für andere Umlaute wie "Anfänger" und "Anf..nger"
+
[[bild:DynTimerLog.png]]
  
.*englisch f..r Anf..nger.*;0000-2359;alle sender
+
Sollten die Sendungen mit "Treffer:" gefunden werden und sich trotzdem keine Sendung in den Timer schreiben, existiert möglicherweise bereits ein Ereignis zu diesem Zeitpunkt oder es liegt an der addTimerURL. Versucht es in diesem Fall manuell über das WebInterface (http://IP_der_Dreambox) -> (Timers und Add).
oder
 
.*englisch f..r Anf..nger.*;;
 
  
 +
Zum testen des Scrips könnt Ihr es auch über Telnet aufrufen.<br><br>
 +
Befehl: telnet 192.168.2.240 Enter.<br>
 +
Dann root Enter.<br>
 +
Dann dreambox Enter.<br>
 +
Anschl. cd var Enter.<br>
 +
cd tuxbox Enter.<br>
 +
cd plugins Enter.<br>
 +
sh DynTimer.sh Enter.<br><br>
 +
Statt 192.168.2.240 müsst Ihr natürlich die IP eurer Dreambox verwenden. Wenn es funktioniert sollte es in etwa so aussehen.
  
So könnte die ini-Datei (DynTimer.ini) aussehen:
+
[[bild:DynTimerTelnet1.png]]
  
.*englisch f..r anf..nger.*;0400-1600;alle sender
+
Das selbe geht auch über die Dreambox.  
.*Quarks.*;0000-2359;alle sender
 
Unser Traum vom Haus;0000-2359;alle sender
 
Das perfekte Promi Dinner.*;0000-2359;alle sender
 
Ab ins Beet.*;0000-2359;alle sender
 
Einfach genial.*;0000-2359;alle sender
 
Extra Engl.*;0000-2359;alle sender
 
Grundkurs Deutsch.*;0000-2359;alle sender
 
  
 +
[[bild:DynTimerAufrufPlugin1.JPG]]
  
[[Kategorie:Plugins_(Enigma1)]]
+
Nach einer gaaaaanzen weile kommt das...
[[Kategorie:Index]]
+
 
 +
[[bild:DynTimerAufrufPlugin2.JPG]]
 +
 
 +
Die Ergebnisse kann man sich auch über den Aufruf "DynTimerResult" im Menü Plugin anzeigen lassen.
 +
 
 +
[[bild:DynTimerResult1.JPG]]
 +
 
 +
== Tipp ==
 +
Als Tipp empfehle ich den EPGRefresh von Gemini, damit die EPG´s auch immer aktuell gehalten werden.
 +
 
 +
== Weiterführende Links ==
 +
*Die EPG- Informationen aktualisieren: [[EPG Refresh]]
 +
*Mehr über den DynTimer im Board: [http://www.i-have-a-dreambox.com/wbb2/thread.php?threadid=84860&threadview=0&hilight=DynTimer&hilightuser=0&page=1]
 +
 
 +
[[Kategorie:Enigma Plugins]]

Aktuelle Version vom 29. September 2013, 13:38 Uhr

DynTimer 0.5 entwickelt von oerg und abgeändert von, BadCluster und jdow!!!

Der DynTimer durchsucht das EPG nach definierbaren Sendungen und erstellt dynamische Timer. Das Script sollte täglich mindestens einmal gestartet werden. Ich empfehle cron und wird in Kombination mit EPGRefresh recht gut funktionieren. Cron und EPGRefresh sind Bestandteil von Gemini Project.

Das Skript läuft mit der Version Gemini_0460_DM7000. Voraussetzung ist ein installiertes webif, welches in der angegebenen Version von Gemini bereits enthalten ist.

Zur Installation

  • Ladet euch die aktuelle Version von DynTimer[1] herunter.
  • Alle Dateien mit der Endung *.cfg, *.sh, *.ini aus dem Archiv in das verzeichnis /var/tuxbox/plugins kopieren.

Kopieren von lokal zur Dreambox

  • Alle kopierten *.sh Dateien auf 755 setzen, damit sie ausführbar werden.

Kopieren von lokal zur Dreambox

  • In der DynTimer.sh sind folgende Einstellungen in der Funktion UserSettings vorzunehmen:

DynTimerUserSettings.png

Den User "root" und das leere Passwort kann man in der Regel lassen. Die IP und die BouquetID müssen angepasst werden.

Die Nummer eures Buques, welches Ihr für den DynTimer anlegen müsst, befindet sich in der Zeichenkette des Dateinamens. Siehe userbouquet aus /var/tuxbox/config/enigma
BouquetID=bba79

Das folgende Bild zeigt ein Bouqet dt und steht für DynTimer. Ich habe es über die Dreambox am TV angelegt und auch dort Sender hinzugefügt. Die Dreambox erstellte daraus eine Datei userbouqet.bba79.tv. Dort befinden sich alle relevanten Sender, dessen EPG-Informationen vom DynTimer verwendet werden sollen. Natürlich könnt Ihr auch die BouquetID des Service-Bouquets verwenden, dann prüft DynTimer jedoch erheblich länger. Auch wenn das Skript später durch den Cron im Hintergrund ausgeführt wird, sollte man nicht unnötige Ressourcen verschwenden. Achtung!!! Ihr könnt nicht diese ID verwenden, sondern müsst bei euch auf der Box nachschauen!

DynTimerUserbouquet.png

Damit das Skript (DynTimer.sh) autom. aufgerufen wird, muss es nur noch im Cronmanager angegeben werden.

DynTimerCron1.JPG

Bevor Ihr die Eingabe durchführt solltet Ihr den Prozess beeden. Hier wird das Sript beispielsweise jeden morgen um 07:05 Uhr im Hintergrund aufgerufen.

DynTimerCron2.JPG

Solltet Ihr Probleme mit der Konfiguration des Cron über die Box haben könnt Ihr den Eintrag auch mittels Editor durchführen (siehe Bild). Mit diesem Eintrag würde DynTimer.sh jeden Morgen um 07:05 Uhr gestartet.

DynTimerCron1.png

Aufbau der DynTimer.ini

Welche Sendungen automatisch aufgenommen werden sollen, sind im file DynTimer.ini einzutragen, pro zeile eine Sendung, auch regular expressions sind erlaubt. Hinweis!!! In der Version 0.5a funktioniert die Suche in der Beschreibung noch nicht. Der Rest geht, wie beschrieben, einwandfrei.

Sendungsname;Startzeit Von-Bis;Sendername;Beschreibung;

Sendungsname (Regular Expression) Eingabe ist optional wenn leer sollte jedoch in der Beschreibung was stehen.
Startzeit Eingabe ist optional. Wenn leer wird die Zeit von 00:00 bis 23:59 Uhr verwendet.
Sendername (Regular Expression) Eingabe ist optional wenn leer erfolg die Suche in allen Sendern. Kleiner gleich ein Zeichen bedeutet leer. Beispiel ein "-" oder ein " " ist als leer zu betrachten.
Beschreibung (Regular Expression) Eingabe ist optional. Stimmt der Ausdruck mit der Beschreibung überein wird dieser unabhängig vom Sendungsnamen in den Timer gepackt.

So könnte der Inhalt von DynTimer.ini aussehen:

##### Anfang #####

.*Quarks.*;0000-2359;alle sender
Unser Traum vom Haus;0000-2359;alle sender
Einfach genial.*;0000-2359;alle sender
Extra Engl.*;0000-2359;alle sender

##### Ende #####

Die Anzeige ist auch über die Dreambox möglich.

DynTimerIniFile0.JPG

Hier die Anzeige. Die Eingabe muss leider noch über den PC erfolgen.

DynTimerIniFile1.JPG

Fehlersuche und überprüfen der Ergebnisse

Ab Version 0.5a werden einige interne Abläufe protokolliert. Dort werden alle gefundenen EPG-Informationen und die Inhalte aus der ini-Datei angezeit. Ein "Treffer:" bedeutet, Sendung oder Beschreibung gefunden. Stimmt die Zeitspanne, so wird diese Sendung in die Timerliste gepackt und mit "Erzeugt:" dort dokumentiert. Tritt ein Fehelr auf findet Ihr den Eintrag "Fehler:". Inhalt der Datei tmp/dyntimer.log:

DynTimerLog.png

Sollten die Sendungen mit "Treffer:" gefunden werden und sich trotzdem keine Sendung in den Timer schreiben, existiert möglicherweise bereits ein Ereignis zu diesem Zeitpunkt oder es liegt an der addTimerURL. Versucht es in diesem Fall manuell über das WebInterface (http://IP_der_Dreambox) -> (Timers und Add).

Zum testen des Scrips könnt Ihr es auch über Telnet aufrufen.

Befehl: telnet 192.168.2.240 Enter.
Dann root Enter.
Dann dreambox Enter.
Anschl. cd var Enter.
cd tuxbox Enter.
cd plugins Enter.
sh DynTimer.sh Enter.

Statt 192.168.2.240 müsst Ihr natürlich die IP eurer Dreambox verwenden. Wenn es funktioniert sollte es in etwa so aussehen.

DynTimerTelnet1.png

Das selbe geht auch über die Dreambox.

DynTimerAufrufPlugin1.JPG

Nach einer gaaaaanzen weile kommt das...

DynTimerAufrufPlugin2.JPG

Die Ergebnisse kann man sich auch über den Aufruf "DynTimerResult" im Menü Plugin anzeigen lassen.

DynTimerResult1.JPG

Tipp

Als Tipp empfehle ich den EPGRefresh von Gemini, damit die EPG´s auch immer aktuell gehalten werden.

Weiterführende Links

  • Die EPG- Informationen aktualisieren: EPG Refresh
  • Mehr über den DynTimer im Board: [2]