diff options
author | Christian Wieninger <winni@debian.(none)> | 2007-11-11 15:40:28 +0100 |
---|---|---|
committer | Christian Wieninger <winni@debian.(none)> | 2007-11-11 15:40:28 +0100 |
commit | 8d4f8607dc1558ce73eb4c376bdbf78ddb65da83 (patch) | |
tree | d0c5dde81a36ab2e8a2edc7c1e6922556518b312 /doc-src | |
download | vdr-plugin-epgsearch-8d4f8607dc1558ce73eb4c376bdbf78ddb65da83.tar.gz vdr-plugin-epgsearch-8d4f8607dc1558ce73eb4c376bdbf78ddb65da83.tar.bz2 |
Initial commit
Diffstat (limited to 'doc-src')
28 files changed, 5640 insertions, 0 deletions
diff --git a/doc-src/de/epgsearch.1.txt b/doc-src/de/epgsearch.1.txt new file mode 100644 index 0000000..3ac4223 --- /dev/null +++ b/doc-src/de/epgsearch.1.txt @@ -0,0 +1,1187 @@ +=head1 NAME + +F<epgsearch> - Suchtimer und Ersatz für VDR's Standard-Programm-Menü + +=head1 BESCHREIBUNG + +EPG-Search kann als Ersatz für VDR's Standard-Programm-Menü verwendet +werden. Es sieht genauso aus, erweitert es aber um einige zusätzliche +Funktionen. + +Ein weiterer Punkt sind die sog. Suchtimer die dafür +sorgen, dass Timer automatisch programmiert werden. + + - Befehle für EPG-Einträge mit verschiedenen integrierten Befehlen wie + z.B. 'Wiederholungen anzeigen', 'Suche anlegen'. Man kann eigene + Befehle hinzufügen, um z.B. einen VDRAdmin Autotimer anzulegen. + + - Bis zu 4 weitere Zeitpunkte im Menü 'Was läuft jetzt?' neben 'Jetzt' + und 'Nächste', sowie ein optionales Favoritenmenü. + + - Suche im EPG: Anlegen von wiederverwendbaren Abfragen, die auch als + 'Suchtimer' verwendet werden können. + + - Suchtimer: Sucht im Hintergrund nach Sendungen und erzeugt einen + Timer bei passenden EPG-Einträgen (ähnlich zu VDRAdmins Autotimern) + oder informiert über die Sendung via OSD. + + - Vermeidung von doppelten Aufnahmen der gleichen Sendung + * Timer-Vorschau + * Erkennung abgebrochener Aufnahmen + * Fuzzy-Vergleich von Sendungen + + - Fortschrittsbalken in 'Jetzt' und 'Nächste' + + - Zeit im Menü 'Jetzt', 'Nächste' kann per Tastendruck verschoben + werden, z.B. was läuft 'Jetzt' + 30 Minuten + + - Startmenü 'Programm' oder 'Jetzt' einstellbar. + + - das Menü zur detaillierten EPG-Anzeige (Zusammenfassung) erlaubt den + Sprung zur vorherigen/nächsten Sendung + + - Unterstützung erweiterter EPG-Infos in Suchtimern + + - Erweiterung des Timer-Edit-Menüs um Verzeichnisse, + benutzerdefinierte Wochentage und Untertitel-Auswahl + + - Timer Konfliktcheck, informiert über OSD-Meldung + + - Timer Konfliktmenü, zeigt die Konflikte an und erleichtert die + Konfliktlösung + + - Email-Benachrichtigungen über Suchtimer-Updates und Timer-Konflikte + +Funktioniert nur mit >= vdr-1.3.46. + +Teile der Quelltexte basieren auf dem repeating-epg-patch von Gerhard Steiner, der mir die Erlaubnis gab, diese zu verwenden. Danke für seine Arbeit! + +=head1 OPTIONEN + +=over 4 + +=item -f file, --svdrpsendcmd=file + +Pfad zu svdrpsend.pl für externe SVDRP-Kommunikation (Standard ist interne +Kommunikation, deshalb ist dieser Paramter normalerweise nicht notwendig) + +=item -c path, --config=path + +zur Angabe eines eigenen Konfigurationsverzeichnisses für alle +epgsearch-Dateien, Standard ist '<Plugin-Konfig-Verzeichnis>/epgsearch' + +=item -l file, --logfile=file + +zur Angabe eines abweichenden Dateipfades für epgsearch's Log-File (Standard +ist epgsearch.log in epgsearch's Konfig-Verzeichnis) + +=item -v n, --verbose=n + +verbose level für das Log-File. Wert 0 bedeutet kein Logging. Weiter Werte sind +1 (allgemeine Meldungen), 2 (detaillierte Meldungen), 3 (für Debug-Zwecke) + +=item -r, --reloadmenuconf + +bewirkt ein Neuladen der epgsearchmenu.conf bei jedem Plugin-Aufruf am +OSD. Kann für das Testen eines selbst angepaßten Menü-Layouts praktisch sein. + +=item -m file, --mailcmd=file + +das externe Kommando für den Emailversand. Als Standard wird 'sendEmail.pl' +benutzt. Wenn ein abweichendes Kommando oder Skript verwendet wird, muss +sichergestellt sein, dass das gleiche Paramter-Interface verwendet wird, wie +bei sendEmail.pl. + +=back + +=head1 Inhalt + + 1. Beschreibung + 1.1 Menü Befehle + 1.2 Menü Suche + 1.2.1 Menü Suche editieren + 1.2.2 Menü Suchergebnisse + 1.3 Erweitertes 'Jetzt' und 'Nächste' + 1.4 Menü Setup + 23. Suchtimer + 2.1 'Wiederholungen vermeiden' - Im Detail + 2.2 Wie funktioniert der Vergleichstest zwischen 2 Sendungen? + 2.3 Wie und wo wird der Vergleichstest eingesetzt? + 3. Verwendung der Suche durch andere Plugins oder Skripte + 4. Verwendung erweiterter EPG Infos + 5. Ersetzen des Standardmenü + 6. Addons + +=head1 1. Beschreibung + +Auf den ersten Blick sieht EPG-Search wie der Programm-Menü-Punkt des +VDR aus. +Ein Tastendruck auf '0' schaltet die Farbtasten um, so dass weitere +Funktionen erreicht werden können (die vorgegebene Zuweisung kann per +Setup angepasst werden): + +=head2 1.1 Menü Befehle + +Dieses Menü zeigt Befehle an, die auf den ausgewählten Menüeintrag +angewandt werden können. Es gibt 8 vorgegebene Befehle: + + - Wiederholung: Zeigt Wiederholungen an + - Aufnehmen + - Umschalten + - Suche anlegen: schaltet zum Suchmenü und erzeugt eine Suche mit dem + Namen der aktuellen Sendung als Suchbegriff (um die manuelle Erfassung + zu vermeiden + - Suche in Aufnahmen: durchsucht die Aufnahmen nach einer Sendung mit + diesem Namen + - Als 'bereits aufgezeichnet' markieren: + Hiermit wird die ausgewählte Sendung in die Datei epgsearchdone.data + übernommen und epgsearch angewiesen, diese Sendung nicht aufzunehmen, falls + der zugehörige Suchtimer mit "Wiederholung vermeiden" geschaltet ist. Ein + bereits erzeugter Timer wird beim nächsten Suchtimer-Update automatisch + gelöscht. + - In/Aus Umschaltliste?: + Zum Bearbeiten der Umschaltliste. Wenn eine Sendung in der Umschaltliste + enthalten ist, wird kurz vor Beginn eine Ankündigung eingeblendet und dann + umgeschaltet. Um die gesamte Umschaltliste einzusehen, bitte + 'Suche/Aktionen/Zeige Umschaltliste' aufrufen. + - Erzeuge Ausschlussliste: + Eine Ausschlussliste wird verwendet um bestimmte Sendungen bei der + Verwendung von Suchtimern zu ignorieren. Ein Suchtimer kann beliebige + Ausschlusslisten verwenden. + +Man kann eigene Befehle hinzufügen, indem man die Datei +epgsearchcmds.conf im epgsearch-Konfig-Verzeichnis editiert. Eine +Beispiel-Datei mit Bespielscripts liegt dem Plugin bei (s. Unterverzeichnis +'scripts', stammt von vdr-wiki.de. Danke an die Autoren). + +Das Format der Datei ist identisch zu VDRs commands.conf oder reccmds.conf. +Wenn ein Befehl ausgeführt wird, werden folgende Parameter übergeben: + + $1: Titel des Programmeintrags + $2: Startzeit als time_t-Wert (wie im Shutdown-Skript) + $3: Endzeit + $4: Programmplatz + $5: langer Kanalname + $6: Untertitel des Programmeintrags, "" falls nicht vorhanden + +Zum Ausführen eines Befehls aus dem Hauptmenü ohne Öffnen des +Befehlsmenüs genügt es, die zugehörige Nummer des Befehls zu drücken. + +=head2 1.2 Menü Suche + +Hier kann man eine Suche im EPG erzeugen, editieren, löschen und +ausführen. Bedienung und Verhalten ist ähnlich zu VDR's Timer-Menü. + +=head3 1.2.1 Menü Suche editieren + +Das meiste in diesem Menü ist selbsterklärend, deshalb nur einige +Anmerkungen zu: + +=over 4 + +=item - B<Suche:> + +Suchbegriff. Will man nach mehreren Worten suchen, dann bitte mit +Leerzeichen trennen. Lässt man den Suchbegriff leer (in Verbindung +mit Suchmodus 'Ausdruck') wird alles akzeptiert. Das kann praktisch +sein, um z.B. alles zu suchen, was zu einer bestimmten Zeit auf +einem bestimmten Sender kommt. + +Mit 'Blau' kann man auch eine Vorlage für eine Suche +übernehmen. Falls eine Vorlage als Standard definiert wurde, wird +bei einer neuen Suche automatisch der Inhalt der Standard-Vorlage +verwendet. + +Hinweis: Die unscharfe Suche ist auf 32 Zeichen begrenzt! + +=item - B<Suchmodus:> + +'Ausdruck' sucht nach diesem Ausdruck innerhalb eines +EPG-Eintrags. 'alle Worte' erfordert, dass jedes Wort im EPG-Eintrag +vorkommt, 'ein Wort' dagegen nur, dass zumindest ein Wort +auftaucht. 'exakt' vergleicht den gesamten Suchbegriff mit dem +EPG-Eintrag (praktisch bei kurzen Titeln wie z.B. "Alf"). 'regulärer +Ausdruck' erlaubt die Angabe eines regulären Ausdrucks zur +Suche. Ein führender und abschließender '/' ist nicht notwendig. Als +Standard werden POSIX extended regular expressions verwendet. Wer +lieber mit Perl kompatiblen regulären Ausdrücken arbeitet, muss +lediglich im Makefile des Plugins #HAVE_PCREPOSIX=1 in +HAVE_PCREPOSIX=1 ändern und neu kompilieren. (Dafür ist pcreposix +notwendig, das mit libpcre von www.pcre.org installiert wird, aber +auf den meisten Distributionen bereits vorhanden sein sollte). + +Eine Beschreibung des Suchprozesses gibt es im MANUAL. + +=item - B<Verw. erweiterte EPG Info> + +(nur verfügbar, wenn konfiguriert. Siehe weiter unten 'Verwendung +erweiterter EPG Infos') + +=item - B<Ignoriere fehlende Kategorien> + +Wenn 'Ja' gewählt ist, verhindert das, dass eine Sendung aus dem +Suchergebnis ausgeschlossen wird, falls die entsprechende +Kategorie nicht im EPG vorhanden ist. Vorsicht: Ohne weitere Suchkriterien +kann das zu einer Flut von Timern führen. + +=item - B<Verw. Kanal:> + +sucht nur im angegebenen Kanalbereich, der hinterlegten +Kanalgruppe, z.B. 'Öffentl. Rechtl.' oder 'Sportsender'... oder in +FTA-Sendern. + +ACHTUNG: Nach einer Änderung der Kanal-Reihenfolge sollten unbedingt +diese Einstellungen der Suchtimer kontrolliert werden! + +=item - B<Verwende Wochentag:> + +Neben den Wochentagen kann auch eine benutzerdefinierte Auswahl +getroffen werden, um z.B. nur Montags und Freitags zu suchen. + +Die benutzerdefinierte Auswahl findet sich am Ende der Liste +Son, Mon, ..., Sam, benutzerdefiniert + +=item - B<Verwende Ausschlusslisten:> + +Hier können eine oder mehrere oder alle Ausschlusslisten selektiert werden. +Falls ein Suchergebnis auch in einer der gewählten Ausschlusslisten +erscheint, wird es verworfen. + +=item - B<In Favoritenmenü verw.:> + +Nur verfügbar, wenn im Setup aktiviert. Mit dieser Option kann eine Suche zur +Verwendung im Favoritenmenü markiert werden. Dieses Menü listet alle +Suchergebnisse von Suchen mit dieser Option. + +=item - B<Layout des Ergebnismenüs:> + +Nur verfügbar, wenn mehr als eine Menüvorlage für Suchergebnisse in +epgsearchmenu.conf angegeben wurde. Mit dieser Option kann ein anderes Layout +für die Suchergebnisse dieser Suche gewählt werden. + +=item - B<Verwende als Suchtimer:> + +falls ja, sucht das Plugin im Hintergrund nach passenden Sendungen +und erzeugt dafür einen Timer (im Setup muss dazu die Verwendung von +Suchtimern aktiv sein). Bei der Einstellung <benutzerdefiniert> läßt sich +über die Taste 'Blau' ein Zeitfenster einstellen, in dem der Suchtimer +aktiv sein soll. + +=item - B<Aktion:> + +Standard ist 'Aufnehmen', also das Erzeugen eines Timers für das +Suchergebnis. Man kann aber auch wählen, dass nur eine Ankündigung +der Sendung per OSD vorgenommen werden soll. Eine weitere +Möglichkeit ist 'nur umschalten'. Dadurch wird automatisch eine +Minute vor Beginn der Sendung auf deren Kanal gewechselt. + +=item - B<Serienaufnahme:> + +falls ja, wird die Aufnahme in einem Ordner mit dem Seriennamen +gespeichert. Die Aufnahme selbst erhält den Episondennamen. Falls es +keinen gibt, wird Datum und Uhrzeit als Episondenname verwendet. + +=item - B<Verzeichnis:> + +hier kann man ein Verzeichnis angeben, in dem die Aufnahme +gespeichert wird, z.B. 'SciFi'. Mit der Taste 'Blau' kann ein +Verzeichnis gewählt werden, das bereits bei anderen Sucheinträgen +verwendet wird. Die Liste kann außerdem durch Einträge in der Datei +epgsearchdirs.conf erweitert werden (pro Zeile ein Verzeichnis, ohne +das führende video-Verzeichnis, s. auch MANUAL). + +Wenn man erweiterte EPG-Infos von einem Provider erhält, können im +Verzeichnis-Eintrag auch Variablen wie "%Genre%" oder "%Category%" +verwendet werden. Diese werden durch die aktuellen erw. EPG-Infos +ersetzt, sobald ein Timer erzeugt wird. + +Siehe MANUAL 'Using variables in the directory entry of a search timer') + +=item - B<Aufn. nach ... Tagen löschen> + +Manchen Aufnahmen sollen nur ein paar Tage existieren, +z.B. Tagesschau. Mit diesem Feature kann man epgsearch sagen, dass +es die Aufnahme automatisch nach ... Tagen löschen soll + +=item - B<Pause, wenn ... Aufnahmen existieren> + +Wenn die angegebene Anzahl von Aufnahmen existiert, dann pausiert +epgsearch mit dem Erzeugen neuer Timer. Erst nach dem Löschen einer +oder mehrerer Aufnahmen, wird wieder nach neuen Sendungen gesucht. + +=item - B<Wiederholung vermeiden> + +Wenn man keine Wiederholungen aufnehmen will, versucht dieses +Feature festzustellen, ob eine Sendung bereits +aufgenommen/programmiert wurde und überspringt diese dann. Bitte vor +Verwendung den Abschnitt 'Wiederholungen vermeiden - Im Detail' +weiter unten lesen. + +=item - B<erlaubte Wiederholungen> + +Will man eine gewisse Anzahl von Wiederholungen einer Sendung +erlauben, kann dies hier hinterlegt werden. + +=item - B<Nur Wiederh. innerhalb ... Tagen> + +Falls Wiederholungen nur innerhalb einer anzugebenden Anzahl Tage +erlaubt werden sollen, kann dies hier eingestellt werden. 0 +entspricht unbegrenzt. + +=item - B<Vergleiche Titel> + +Einstellung, ob beim Test, ob eine Sendung identisch ist, auch der +Titel verglichen werden soll. + +=item - B<Vergleiche Untertitel> + +Einstellung, ob beim Test, ob eine Sendung identisch ist, auch der +Untertitel verglichen werden soll. Hat eine Sendung keinen +Untertitel wird sie als abweichend gewertet und ist damit nicht +gleich einer anderen Sendung mit oder ohne Untertitel. + +=item - B<Vergleiche Beschreibung> + +Einstellung, ob beim Test, ob eine Sendung identisch ist, auch die +Inhaltsbeschreibung verglichen werden soll. Dabei wird zunächst +alles aus dem Inhalt entfernt, das einer Kategorienangabe +gleicht. Der verbleibende Text wird dann verglichen. Ist dieser zu +90% ähnlich (im Sinne des Levinshtein-Distance-Algorithmus) wird er +als gleich behandelt. + +=item - B<Vergl. Kategorien> + +Über die Schaltfläche 'Einstellungen' kann angegeben werden welche +Kategorien ebenfalls miteinander verglichen werden sollen. + +=item - B<Priorität, Lebensdauer, Zeitpuffer Anfang und Ende:> + +Jeder Suchtimer kann für diese Parameter eigene Einstellungen +haben. Die Voreinstellung wird im Setup vorgenommen. + +=item - B<VPS:> + +aktiviert VPS, falls im VDR-Setup aktiv und für die gefundene +Sendung auch VPS-Informationen vorhanden sind. + +=item - B<automatisch löschen:> + +zum automatischen Löschen eines Suchttimers bei folgenden Bedingungen: + + * nach x Aufnahmen, oder + * nach x Tagen nach erster Aufnahme + +Gezählt werden dabei nur erfolgreiche Aufnahmen. Das Löschen erfolgt +direkt nach dem Ende der entsprechenden Aufnahme. + +=back + +Um den Status 'Als Suchtimer verw.' zu ändern, ohne das Menü zu +öffnen, kann die Taste '2' verwendet werden. Dies ruft direkt den +2. Befehl im Befehlsmenü auf. + +=head3 1.2.2 Menü Suchergebnisse + +Dieses Menü zeigt die Suchergebnisse an. Ein 'T' sagt aus, dass es zu +diesem Eintrag bereits einen Timer gibt, ein 't', dass es nur +teilweise aufgenommen wird, also wie im Standard-Programm-Menü. + +=head2 1.3 Erweitertes 'Jetzt' and 'Nächste' + +Im Setup können bis zu 4 zusätzliche Zeiten, als Erweiterung zu 'Jetzt' +und 'Nächste', angegeben werden um die Taste Grün zu erweitern. +Z.B. 'nachmittags', 'abends', 'spätabends'. Zeiten, die bereits +verstrichen sind, werden übersprungen, man erhält abends also kein +'nachmittags'. Ausnahme: Ist ein Zeitpunkt nicht mehr als 20 Stunden in der +Zukunft wird das Menü des nächsten Tages angezeigt. +In diesen Menü kann die aktuell angezeigte Zeit durch Drücken auf +FastRew und FastFwd verschoben werden um die Zeit nach hinter oder +vorne zu verstellen. Falls diese Tasten auf der Fernbedienung nicht +existieren, kann diese Funktion durch Umschalten mit '0' erreicht +werden. Die Tasten Grün und Gelb wechseln dann zu '<<' und '>>'. Das +Umschalten kann über das Setup angepasst werden. +Man kann einen Fortschrittsbalken im Menü 'Jetzt'/'Nächste' anzeigen lassen. +Falls text2skin verwendet wird, sollte die Option "text2skin" in den +Setup-Optionen "Zeige Fortschrittsbalken in 'Jetzt'"/"Zeige Fortschrittsbalken +in 'Nächste'" verwendet werden (Die Option 'graphisch' kann ebenfalls mit +text2skin funktionieren, das ist aber abhängig vom gewählten skin) + +=head2 1.4 Menü Setup + +=head3 1.4.1 Allgemein + +=over 4 + +=item - B<Hauptmenüeintrag verstecken:> + +Damit wird der Eintrag 'Suche' im Hauptmenü ausgeblendet. Achtung: +wenn das Plugin der Taste Grün zugeordnet ist, dann bewirkt das +Ausblenden, dass wieder das VDR-Standardmenü gerufen wird (um das zu +vermeiden s. unten). + +=item - B<Hauptmenü-Eintrag> + +Falls nicht ausgeblendet, kann hier der Name des Hauptmenü-Eintrags +hinterlegt werden. Vorgabe ist 'Programmführer'. Hinweis: Wenn man den +Eintrag abweichend von der Vorgabe setzt, ist der Eintrag nicht mehr +abhängig von der gewählten OSD-Sprache. Setzt man den Eintrag wieder auf den +Default oder auf leer ist die Abhängigkeit wieder gegeben. + +=item - B<Startmenü:> + +Auswahl von 'Programm' oder 'Jetzt' als Startmenü. + +=back + +=head3 1.4.2 EPG Menüs + +=over 4 + +=item - B<Taste Ok:> + +Hier kann das Verhalten der 'Ok'-Taste bestimmt werden. Man kann damit +die Inhaltsangabe anzeigen oder zum entsprechenden Sender +wechseln. Hinweis: Die Funktion der Taste 'Blau' (Umschalten/Info/Suche) +hängt von dieser Einstellung ab. + +=item - B<Taste Rot:> + +Auswahl, ob man den Standard ('Aufnehmen') oder 'Befehle' als +Vorbelegung möchte. + +=item - B<Taste Blau:> + +Auswahl, ob man den Standard ('Umschalten') oder 'Suche' als +Vorbelegung möchte. + +=item - B<Zeige Fortschrittsbalken in 'Jetzt':> + +Im Menü 'Jetzt' kann ein Fortschrittsbalken angezeigt werden, der +den Fortschritt der laufenden Sendung anzeigt. Falls text2skin verwendet +wird, sollte die Option "pipes" verwendet werden (Die Option 'graphisch' +kann ebenfalls mit text2skin funktionieren, das ist aber abhängig vom +gewählten skin) + +=item - B<Zeige Kanalnummer:> + +auswählen, um eine führende Programmnummer vor jedem EPG-Eintrag +anzuzeigen. + +=item - B<Zeige Kanal-Separatoren:> + +zur Anzeige einer Trennzeile zwischen Kanalgruppen im Menü +'Übersicht - Jetzt' ... + +=item - B<Zeige Tages-Separatoren:> + +zur Anzeige einer Trennzeile zwischen Sendungen unterschiedlicher +Tage im Menü 'Programm'. + +=item - B<Zeige Radiokanäle:> + +Zeigt auch Radiokanäle an. + +=item - B<Limit channels from 1 to:> + +Bei einer sehr großen Kanalliste läßt sich der Menü-Aufbau mit dieser +Einstellung durch eine Einschränkung der angezeigten Kanäle beschleunigen. Mit +'0' wird das Limit aufgehoben. Wenn der aktuelle Kanal über dem Limit liegt, +wird das Limit ignoriert und wieder alle Kanäle angezeigt. + +=item - B<Timer mit 'Aufnehmen' sofort anlegen:> + +Falls 'Ja' wird ein Timer sofort erzeugt, sobald man 'Aufnehmen' drückt, wie +in vdr-1.3.38 eingeführt, sonst wird das Timer-Edit-Menü angezeigt. + +=item - B<Zeige Kanäle ohne EPG:> + +zur Anzeige von Programmen ohne EPG, um auf diese umschalten zu +können oder einen Timer zu programmieren + +=item - B<Timer mit 'Aufnehmen' sofort anlegen:> + +Falls 'Ja' wird nach Drücken von 'Aufnahme' sofort ein Timer angelegt, wie +in vdr-1.3.38 eingeführt, falls 'Nein' erscheint das Timer-Edit-Menü. + +=item - B<Zeitintervall für FR/FF [min]:> + +In den Menüs 'Programm', 'Jetzt', 'Nächste', 'Benutzerdef. Zeit 1', +... kann die angezeigte Zeit durch drücken von FastRew, FastFwd +verschoben werden. Die Anzahl Minuten für den Sprung kann hier +angepasst werden. + +=item - B<Grün/Gelb umschalten:> + +Falls die Tasten FastRew, FastFwd auf der Fernbedienung nicht +vorhanden sind, dann auf 'ja' setzen. Wenn die Taste '0' gedrückt +wird, werden somit auch die Tasten Grün/Gelb auf z.B. '<<' und '>>' +umgeschaltet. + +=item - B<Zeige Favoriten-Menü:> + +Das Favoritenmenü kann dazu verwendet werden, eine Liste von bevorzugten +Sendungen anzuzeigen, die innerhalb der nächsten 24 Stunden laufen. Je nach +Einstellung erscheint dieses Menü vor oder nach den EPG-Menüs mit +benutzerdef. Zeiten. Die Auswahl von Sendungen wird durch setzen der Option +'In Favoriten-Menü verw.' innerhalb einer Suche geregelt. + +=item - B<für die nächsten ... Stunden:> + +Mit diesem Wert wird die Zeitspanne eingestellt, für die Favoriten angezeigt +werden sollen. + +=back + +=head3 1.4.3 Benutzerdef. EPG-Zeiten + +=over 4 + +=item - B<Benutzerdef. Zeit 1..4:> + +Bis zu 4 benutzerdefinierte Zeiten können zu 'Jetzt' und 'Nächste' +hinzugefügt werden. + +=item - B<Beschreibung:> + +Name der benutzerdef. Zeit, z.B. 'Nachmittags', 'Abends', +'Spätabends'. + +=item - B<Zeit:> + +zugehörige Uhrzeit. + +=back + +=head3 1.4.4 Timer-Programmierung + +=over 4 + +=item - B<VDR's Time-Edit-Menü verw.> + +Beim normalen Programmieren eines Timers verwendet epgsearch ein +erweitertes Timer-Edit-Menü, das einen Verzeichniseintrag, +benutzerdefinierte Wochentage und die Vervollständigung um +Untertitel anbietet. Falls man einen gepatchten VDR verwendet der +ebenfalls ein erweitertes Timer-Edit-Menü anbietet und lieber dieses +verwenden will, dann einfach diese Option auf 'Ja' setzen. + +=item - B<Standard Aufn. Verzeichnis:> + +Dieser Eintrag wird beim normalen Programmieren eines Timers +verwendet. Man kann auch EPG-Variablen verwenden (z.B.. 'Meine +Filme~%Category%~%Genre%'). Wird das Timer-Edit-Menü aufgerufen +versucht epgsearch alle Variablen durch die Werte in der +Beschreibung der Sendung zu ersetzen. Konnten nicht alle ersetzt +werden, bleibt der Verzeichniseintrag leer. + +=item - B<Untertitel in manuellen Timern:> + +Beim manuellen Programmieren eines Timers kann epgsearch den +Untertitel automatisch im Dateinamen ergänzen, wodurch die spätere +Aufnahme in einem Unterverzeichnis für diese Episode gespeichert +wird. Hier wählt man wie die Ergänzung gemacht werden +soll. 'Intelligent' versucht zu prüfen, ob es Sinn macht und prüft +dazu die Länge einer Sendung. Ist diese länger als 80min wird keine +Untertitel ergänzt. + +=item - B<Standard-Timer-Prüfmethode:> + +Manuell angelegte Timer können auf Änderungen im EPG überprüft werden. Hier +kann die Standardeinstellung für die Prüfmethode je Kanal hinterlegt +werden. Folgende Prüfmethoden existieren: + * ohne Überwachung + * anhand Sendungskennung: geprüft wird anhand einer Kennung, die durch den + Sender vergeben wird. (Achtung: nicht jeder Sender liefert vernünftige + Kennungen!) + * anhand Sender/Uhrzeit: geprüft wird anhand der Sendung, die am besten zur + Dauer der ursprünglichen Sendung passt. + +Nicht alle Sender liefern eine vernünftige Sendungskennung. Deshalb kann hier +die Standardeinstellung für jeden Kanal einzeln gesetzt werden. Bei der +Programmierung eines manuellen Timers wird diese im Timer-Edit-Menü +vorgegeben, falls das epgsearch-eigene Menü benutzt wird. + +=back + +=head3 1.4.5 Suche und Suchtimer + +=over 4 + +=item - B<Verwende Suchtimer:> + +falls ja, untersucht das Plugin im Hintergrund die EPG-Daten und +erzeugt Timer, falls passende Einträge gefunden werden. Dies +betrifft nur Sucheinträge, die mit 'Als Suchtimer verwenden' +markiert sind. + +=item - B<Aktualisierungsintervall:> + +Das Intervall in Minuten, in dem die Hintergrundsuche vorgenommen +wird. + +=item - B<SVDRP Port:> + +Falls nicht der Standard-SVDRP-Port 2001 verwendet wird, dann bitte +hier anpassen, damit die Suchtimer funktionieren. + +=item - B<Priorität, Lebensdauer und Zeitpuffer für Anfang und Ende:> + +Voreinstellungen + +=item - B<Keine Ankündigung bei Wiedergabe:> + +zum Unterdrücken von Sendungs-Ankündigungen während einer aktiven Wiedergabe. + +=item - B<Timer nach Löschen neuprogrammieren:> + +epgsearch merkt sich standardmäßig welche Timer bereits durch Suchtimer +angelegt wurden und programmiert diese nicht erneut, wenn sie gelöscht +wurden. Zum Abschalten dieses Verhaltens bitte 'Ja' wählen. + +=item - B<PayTV-Sender ignorieren:> + +Auf 'Ja' setzen, wenn man bei der Suche nach Wiederholungen keine Sendungen +von PayTV-Sendern haben will. + +=item - B<Such-Vorlagen:> + +Hier können Suchvorlagen verwaltet werden, die beim Anlegen neuer Suchen +verwendet werden können. + +=item - B<Ausschlusslisten:> + +Hier können Ausschlusslisten verwalten werden. Diese können innerhalb einer +Suche verwendet werden um unerwünschte Sendungen zu vermeiden. + +=item - B<Kanalgruppen:> + +verwaltet die Kanalgruppen, die als Suchkriterium in einer Suche +verwendet werden können. Die Verwaltung ist auch im Edit-Menü einer +Suche möglich. + +=back + +B<Wichtig>: wenn der EPG aus einer externen Quelle bezogen wird, sollte dafür +gesorgt werden, dass die Suchtimer-Updates während des EPG-Updates +abgeschaltet sind. Der Grund dafür ist, dass epgsearch Timer löscht, denen +keine Sendungen zugeordnet sind. Während der neue EPG an VDR übermittelt wird, +kann diese Situation auftreten. Am einfachsten geht das mit dem SVDRP-Befehl +SETS im EPG-Update-Skript: + +svdrpsend.pl plug epgsearch SETS off + +<das EPG update Skript> + +svdrpsend.pl plug epgsearch SETS on + + +=head3 1.4.6 Timer-Konflikt-Prüfung + +=over 4 + +=item - B<Ignoriere unter Priorität:> + +Falls ein Timer fehlschlagen wird, dessen Priorität unter dem angegebene +Wert liegt, wird darauf nicht per OSD-Nachricht hingewiesen und der Konflikt +wird als 'nicht relevant' in der Konflikt-Übersicht angezeigt. + +=item - B<Ignoriere Konfliktdauer unter ... Min.:> + +Falls ein Konflikt nicht länger als die angegebene Anzahl Minuten dauert, +wird darauf nicht per OSD-Nachricht hingewiesen und der Konflikt wird als +'nicht relevant' in der Konflikt-Übersicht angezeigt. + +=item - B<Prüfe nur die nächsten ... Tage:> + +Hier kann der Zeitraum der Prüfung angegeben werden. + +=item - B<Nach jeder Timer-Programmierung:> + +Das bewirkt eine Konfliktprüfung nach jeder manuellen Timer-Programmierung +und erzeugt eine OSD-Nachricht, falls der neue/geänderte Timer in einen +Konflikt verwickelt ist. + +=item - B<Beim Beginn einer Aufnahme:> + +Hier auf 'Ja' setzen, wenn die Konfliktprüfung beim Beginn jeder Aufnahme erfolgen soll. +Im Falle eines Konflikts wird dann sofort eine Nachricht angezeigt. Diese erscheint nur, +wenn der Konflikt innerhalb der nächsten 2 Stunden auftritt. + +=item - B<Nach jedem Suchtimer-Update:> + +Hier kann eingestellt werden, ob eine Konfliktprüfung nach jedem +Suchtimer-Update erfolgen soll. Falls nicht: + +=item - B<nach ... Minuten:> + +gibt an nach wievielen Minuten im Hintergrund eine automatische +Konfliktprüfung erfolgen soll. Bei relevanten Konflikten erfolgt eine +Nachricht per OSD. Mit '0' wird diese Funktion deaktiviert. + +=item - B<Wenn nächster Konflikt in ... Minuten:> + +Wenn nächster Konflikt in ... Minuten eintritt, verwende folgendes +Prüfintervall. + +=over 4 + +=item - B<alle ... Minuten:> + +um einen Konflikt in Kürze nicht zu übersehen, kann hier ein kürzeres +Prüfintervall eingestellt werden. + +=back + +=item - B<Vermeide Nachricht bei Wiedergabe:> + +Bitte auf 'Ja' setzen, wenn während einer Wiedergabe keine OSD-Benachrichtigungen +über Timer-Konflikte gewünscht sind. Die Benachrichtigung erfolgt trotzdem, +wenn der nächste Konflikt innerhalb der nächsten 2 Stunden auftritt. + +=back + +Bitte ebenfalls den Abschnitt 'Working with the timer conflict menu' im MANUAL +berücksichtigen. + +=head3 1.4.7 Email-Benachrichtigungen + +(Bitte sicherstellen, dass 'sendEmail.pl' im Pfad der ausführbaren Dateien +liegt und 'epgsearchupdmail.templ' und 'epgsearchconflmail.templ' im +Konfig-Verzeichnis von epgsearch existieren!) + +=over 4 + +=item - B<Suchtimer-Benachrichtigung:> + +Diese Option aktivieren, wenn man eine Email-Benachrichtigung wünscht, sobald +der Suchtimer-Hintergrund-Thread + + - neue Timer angelegt hat + - vorhandene Timer geändert hat + - Timer gelöscht hat, weil diese wegen EPG-Änderungen oder anderen + Benutzeraktionen nicht mehr gültig sind. + +(Dazu muss ebenfalls die Option 'Verwende Suchtimer' im Suchtimer-Setup aktiv sein.) + +=item - B<Timer-Konflikt-Benachrichtigung:> + +Diese Option aktivieren, wenn man eine Email-Benachrichtigung bei +Timer-Konflikten wünscht. Es werden nur Konflikte gemeldet, die laut +Setup-Einstellungen 'relevant' sind. Neue Benachrichtigungen werden nur +versandt, sobald sich etwas bei den Konflikten verändert. + +(Dazu muss ebenfalls die Option 'Nach jedem Suchtimer-Update' oder 'nach +... Minuten' im Timer-Konflikt-Setup aktiv sein.) + +=item - B<Email-Adresse:> + +Hier bitte die volle (!) Email-Adresse hinterlegen, an die die Nachrichten +verschickt werden sollen. Hinweis: Einigen Provider (z.B. Arcor) erlauben nicht +die gleiche Adresse für Sender und Empfänger. + +=item - B<Mail-Methode:> + +Zur Auswahl stehen + + - sendEmail.pl: ein einfaches Skript, das auch auf Systemen ohne + konfigurierten Mailserver den Versand von Emails erlaubt. Das Skript wird + mit epgsearch ausgeliefert und sollte im $PATH liegen. + - sendmail: setzt ein korrekt aufgesetzes Mailsystem voraus. + +=item - B<Email-Adresse:> + +Hier bitte die volle (!) Email-Adresse hinterlegen, von der die Nachricht versandt +werden soll. + +=item - B<SMTP Server:> + +Der Name des SMTP Servers, über den der Mailversand erfolgt. + +=item - B<Verw. SMTP-Authentifizierung:> + +'Ja' wählen wenn das Emailkonto eine SMTP-Authentifizierung für den +Emailversand benötigt. + +=item - B<AUTH-Benutzer:> + +Hier bitte den Benutzernamen angeben, falls das Email-Konto mit +Authentifizierung arbeitet. + +=item - B<AUTH-Passwort:> + +Hier bitte das Passwort angeben, falls das Email-Konto mit +Authentifizierung arbeitet. +Achtung: Das Passwort wird im Klartext gespeichert. Man muss selber dafür +sorgen, dass das System sicher ist und nicht authorisierten Personen kein +Zugriff auf VDR-Konfigurations-Dateien möglich ist. + +=back + +Nach Angabe der Email-Konto-Daten bitte mit 'Test' prüfen, ob alles +funktioniert. Wenn mit 'sendEmail.pl' gearbeitet wird, sollte am Ende der +Test-Ausgabe etwas wie 'Email sent successfully' auftauchen. Die Testfunktion +gibt es bei der Methode 'sendmail' leider nicht. + +Bitte ebenfalls den Abschnitt 'Email notifications' im Manual berücksichtigen. + +=head1 2. Suchtimer + +Das ist ziemlich das gleiche wie VDRAdmin's Autotimer, benötigt jedoch +kein externes Programm. Beim Anlegen einer Suche kann man die Option +setzen, ob diese als Suchtimer verwendet werden soll. Das Plugin sucht +nun im Hintergrund in bestimmten Zeitabständen (->Setup->Update +Intervall [min]) nach passenden Sendungen und erzeugt Timer für die +Ergebnisse. Gerade für Serien ist dies sehr praktisch, weshalb es in +der Suche die Option "Serienaufnahme" gibt. In diesem Fall wird ein +Timer mit zusätzlichem Episodennamen angelegt. Die Aufnahme erscheint +dann in einem Ordner mit dem Seriennamem. Falls es keinen Episodennamen gibt +wird stattdessen automatisch Datum und Uhrzeit verwendet. + +Die Suchtimer-Funktion muss ausserdem im Setup aktiviert werden. +Falls für SVDRP nicht der Standardport 2001 verwendet wird, bitte +ebenfalls im Setup eintragen. + +Falls man eine Hintergrund-Suche manuell anstoßen will, genügt ein + +touch /etc/vdr/plugins/epgsearch/.epgsearchupdate + +Das kann ebenfalls Teil des shutdown-Skripts sein (hier sollte man +dann noch einen sleep von ein paar Sekunden anhängen, damit das Plugin +Zeit hat, den Scan zu beenden). + +Mehr Infos zu Suchtimern gibts im MANUAL unter 'Description of the +search process' und 'How do Search Timers work?'. + +=head1 2.1 'Wiederholungen vermeiden' - Im Detail + +Hier soll erklärt werden wie die Option 'Wiederholungen vermeiden' +eines Suchtimers funktioniert. + +Nicht immer lässt sich durch entsprechende Suchkriterien vermeiden, +dass auch Timer für Wiederholungen erzeugt werden. + +Um das zu verhindern, versucht das Feature 'Wiederholungen vermeiden' +vor dem Programmieren einer Sendung zu prüfen, ob eine gleiche Sendung +schon mal aufgenommen wurde oder ein Timer existiert, der die gleiche +(nicht dieselbe!) Sendung aufzeichnet. Ist dies der Fall, wird kein +Timer für die zu überprüfende Sendung erzeugt. + +=head2 2.2 Wie funktioniert der Vergleichstest zwischen 2 Sendungen? + +Für den Test auf Gleichheit zwischen 2 Sendungen gibt es viele +Einstellmöglichkeiten beim Suchtimer. Man kann wählen, ob Titel, +Untertitel, Beschreibung und bestimmte Kategorien innerhalb der +Beschreibung einer Sendung mit den jeweiligen Angaben einer anderen +Sendung verglichen werden sollen. + +Der Vergleich der einzelnen Angaben selbst prüft immer auf +vollständige Identität. Die Beschreibung einer Sendung bildet hier +aber eine Ausnahme. Hier wird zunächst alles aus dem Text entfernt, +das einer Kategorie-Angabe gleicht, z.B. 'Bewertung: Tagestipp'. Als +Kategorie-Angabe wird alles gewertet, was am Anfang einer Zeile +maximal 40 Zeichen hat, von einem ':' gefolgt wird und dann maximal +weitere 60 Zeichen hat. Hintergrund für dieses Rausschneiden sind die +oft vorhandenen Bewertungen wie 'Tagestipp', die bei der Wiederholung +aber nicht mehr enthalten sind. + +Der verbleibende Text wird nun zunächst in der Länge verglichen. Ist +der Unterschied größer als 90% wird die Beschreibung als +unterschiedlich gewertet. Andernfalls wird über den +Levinsthein-Distance-Algorithmus (LD), der einen Fuzzy-Textvergleich +macht, ein Test vorgenommen. Hier wird die Beschreibung als gleich +akzeptiert, wenn LD mehr als 90% Identität zurückgibt. + +Da dieser Algorithmus ziemlich laufzeitintensiv ist (O(mn)), sollte +nach Möglichkeit nicht nur 'Vergleiche Beschreibung' als einziges +Vergleichskriterium ausgewählt werden, sondern am besten immer nur in +Kombination mit anderen Vergleichen. + +=head2 2.3 Wie und wo wird der Vergleichstest eingesetzt? + +Wie zuvor erwähnt wird bei einem Suchtimer-Update für Suchtimer mit +diesem Feature zusätzlich geprüft, ob eine Sendung bereits irgendwann +schon aufgezeichnet wurde, oder in der Timerliste ein Timer steht, der +die gleiche Sendung aufzeichnen würde. Letzteres sollte klar sein, +während für ersteres das File epgsearchdone.data ins Spiel kommt. + +Nach jeder Aufnahme, die durch einen Suchtimer mit 'Wiederholung vermeiden' +erzeugt wurde, werden alle Angaben zu dieser Sendung im genannten File +gespeichert. Über das Aktionenmenü im Menü 'Suche' kann man sich alle +Sendungen, die ein solcher Timer bisher aufgenommen hat, anzeigen +lassen und diese auch bearbeiten. In dieses File werden nur Aufnahmen +aufgenommen, die bezüglich der Timerangaben korrekt begonnen und auch +beendet wurden. D.h. dass teilweise unvollständige Aufnahmen nicht +registriert werden und somit beim nächsten Suchtimer-Update +automatisch ein neuer Timer für diese Sendung erzeugt wird, falls +gefunden. + +B<Wie verwenden?> + +Man sieht, dass das ganze Feature stark von der Qualität und dem +Umfang des verwendeten EPGs abhängt. Hat man einen entsprechenden +Suchtimer angelegt, ist es sinnvoll erstmal zu prüfen, ob er auch das +richtige macht. Dazu gibt es für solche Timer im Suchergebnis-Menü auf +der Taste 'Blau' die zusätzliche Belegung 'Timer-Vorschau'. Sendungen, +die noch keinen Timer haben ('T'), aber für die einer aufgrund des +Features beim nächsten Suchtimer-Update programmiert würde, haben dort +ein 'P' stehen. + +Hinweis: Möchte man wegen Konflikten einen bereits programmierten +Timer nicht verwenden, dann sollte dieser im Timermenü deaktiviert +werden. Beim nächsten Suchtimer-Update wird dann einfach die nächste +mögliche Wiederholung programmiert, falls vorhanden. + +B<Wenn es nicht richtig funktioniert :-)> + +Damit das Programmieren oder Nicht-Programmieren von Timern gerade bei +Verwendung dieses Features besser nachvollziehbar ist, wurde ein +Logfile für epgsearch eingeführt. Startet man epgsearch mit einem +Loglevel >= 2 (-P'epgsearch -v 2) werden beim Suchtimer-Update +in der Datei epgsearch.log hilfreiche Infos abgelegt. Siehe MANUAL für +'command line options'. + +=head1 3. Verwendung der Suche durch andere Plugins oder Skripte + +Siehe C<epgsearch(4)>. + +=head1 4. Verwendung erweiterter EPG Infos + +Einige EPG Provider liefern zusätzliche EPG Infos wie die Art der +Sendung, das Video und Audio Format, die Besetzung,... +Mit tvmovie2vdr oder epg4vdr können diese Daten in den VDR importiert +werden. + +Somit kann man also z.B. einfach einen Suchtimer erzeugen, der alle +Tagestipps findet, die in 16:9 ausgestrahlt werden. +Um diese Informationen in Suchtimern zu verwenden, muss anhand der +Datei epgsearchcats.conf im epgsearch-Konfig-Verzeichnis eine +Konfiguration vorgenommen werden. + +Das Format dieser Datei ist folgendes: + + ID|category name|name in menu|values separated by ','(option)|searchmode(option) + + - 'ID' sollte eine eindeutige ganze Zahl sein + Achtung: Ändert man später aus irgendeinem Grund diese ID müssen + die Suchtimer neu editiert werden! + - 'category name' ist der Name der Info lt. EPG Provider, z.B. 'Genre' + - 'name in menu' ist der Name im Menü von epgsearch. + - 'values' ist eine optionale Liste von Werten für diese Info. + - 'searchmode' gibt optional an, wie gesucht werden soll: + Textvergleich: + 0 - Der gesamte Begriff muss als Substring erscheinen + 1 - Die einzelnen Worte (getrennt durch ',', ';', '|' oder + '~') müssen alle als Substring auftauchen. Diese Einstellung ist + der Standardwert. + 2 - mindestens ein Wort (getrennt durch ',', ';', '|' oder + '~') muss als Substring auftauchen + 3 - exakte Übereinstimmung + 4 - als regulärer Ausdruck + Numerischer Vergleich: + 10 - kleiner + 11 - kleiner oder gleich + 12 - größer + 13 - größer oder gleich + 14 - gleich + 15 - ungleich + +Beispiel-Dateien für epgsearchcats.conf kommen mit dem +Plugin im Verzeichnis 'conf'. Einfach die passende ins +epgsearch-Konfig-Verzeichnis als epgsearchcats.conf kopieren, VDR neu starten und +dann das Eingabe-Menü eines Suchtimers aufrufen. + +Weil das Aufsetzen einer neuen epgsearchcats.conf ziemlich lästig ist, +habe ich ein kleines Tool 'createcats' mitgeliefert, das den Großteil +der Arbeit erledigt. Es sollte mit dem Plugin übersetzt worden sein +und sich im Quellverzeichnis befinden. Einfach folgendermaßen aufrufen: + +createcats /pfad_zu/epg.data + +Dieses Tool scannt nun die vorhandenen EPG infos und versucht daraus +die erweiterten Infos zu extrahieren. Das Ergebnis ist eine neue +epgsearchcats.conf, die aber noch editiert werden muss, weil sicher +nicht alles genau passt. Danach ins epgsearch-Konfig-Verzeichnis kopieren. +(Mehr über createcats im Manual 'Using createcats') + +Details: epgsearch durchsucht die Zusammenfassung einer Sendung nach +dem Namen einer Kategorie gefolgt von ': '. Das geschieht für alle +Kategorien, für die im Suchtimer ein Wert gesetzt wurde. Die Suche +berücksichtigt die Groß/Kleinschreibung sowohl bezüglich des +Kategorie-Namens als auch des Wertes. + +=head1 5. Ersetzen des Standardmenü + +Um das Plugin als Ersatz für VDR's Standard-Menü zu verwenden, genügt +es die Zeile + + Green @epgsearch + +in die Datei keymacros.conf zu setzen. Falls kein weiterer Menüeintrag +im Hauptmenü erscheinen soll, dann den Eintrag des Plugins zunächst im +Setup ausblenden. Um das Plugin trotzdem mit der Taste "Grün" aufrufen +zu können, könnte man z.B. mein launcher-Plugin verwenden und +die Zeile + + Green @launcher x + +in die keymacros.conf schreiben, wobei x die Position von epgsearch +innerhalb des launcher listings ist. + +Achtung: Versteckt man das Plugin ohne die Verwendung des launcher +plugins oder anderer Patches, die das Aufrufen versteckter Plugins +erlauben, erhält man das VDR-Standard-Menü beim Drücken von Grün. Ab +VDR 1.3.32 sind dazu keine Patches oder Plugins mehr notwendig. + +Ein weiterer Ansatz ist ein Patch gegen VDR, der das Standardmenü +'Programm' gegen epgsearch austauscht. +Hierzu VDR mit dem Patch vdr-replace-schedulemenu.diff.gz aus dem +Patches-Verzeichnis patchen. Danke an den Autor Uwe/egal@vdrportal. +Bei Anwendung dieses Patches sollte der Eintrag + + Green Schedule + +heißen. Dieser Patch ist bereits in manchen Patchsammlungen, +z.B. Bigpatch, enthalten. + +=head1 6. Addons + +Mit epgsearch werden 2 weitere 'Mini'-Plugins ausgeliefert. Beide Plugins +erfordern, dass epgsearch ebenfalls installiert ist (epgsearch kann aber aus +dem Hauptmenü ausgeblendet werden): + +=over 4 + +=item - B<epgsearchonly:> + +Wer nur die Suchfunktionen und/oder die Suchtimer von +epgsearch verwenden möchte oder einfach einen eigenen Hauptmenüeintrag für die +Suche wünscht, kann dies mit diesem Plugin erreichen. Es wird damit ein +Hauptmenüeintrag "Suche" erzeugt, der einen direkt in das Suchenmenü führt. +Aktivierung im VDR-Startskript mit "-Pepgsearchonly". + +=item - B<conflictcheckonly:> + +Die Timer-Konfliktprüfung kann ebenfalls als eigener +Hauptmenüeintrag angelegt werden. Über eine Setup-Option läßt sich auch +das Ergebniss der letzten Konfliktprüfung direkt im Hauptmenü anzeigen. +Aktivierung im VDR-Startskript mit "-Pconflictcheckonly". + +=back + +Viel Spass! + +Christian Wieninger + +=head1 Ausführliche Beschreibung + +Die ausführliche Beschreibung der internen Funktionen des Plugins findest +Du in der Datei MANUAL, die dem Plugin beigelegt sein sollten. + +Ob Du diese auf deinem System hast verrät dir + +C<locate epgsearch*/MANUAL> + +Sollte Deine Distribution diese Dateien nicht enthalten, kannst Du sie +dir online durchlesen + +L<http://winni.vdr-developer.org/epgsearch/README.DE> + +L<http://winni.vdr-developer.org/epgsearch/README> + +L<http://winni.vdr-developer.org/epgsearch/MANUAL> + +=head1 SIEHE AUCH + +C<epgsearch.conf(5)>, C<epgsearchcats.conf(5)>, C<epgsearchcmds.conf(5)>, C<epgsearchdirs.conf(5)>, C<epgsearchmenu.conf(5)>, C<epgsearchuservars.conf(5)>, C<epgsearchdone.data(5)>, C<epgsearchswitchtimer.conf(5)>, C<epgsearchblacklists.conf(5)>, C<epgsearchchangrps.conf(5)> + +=head1 DATEIEN + +F<epgsearch.conf> + +Enthält die Suchtimer. Siehe C<epgsearch.conf(5)>. + +F<epgsearchcats.conf> + +Enthält die Kategorien des erweiterten EPG. Siehe C<epgsearchcats.conf(5)>. + +F<epgsearchcmds.conf> + +Enthält Befehle ähnlich der commands.conf, die auf EPG-Einträge angewandt werden können. Siehe C<epgsearchcmds.conf(5)>. + +F<epgsearchdirs.conf> + +Enthält Pfade die beim Bearbeiten eines Suchtimers ausgewählt werden können. Siehe C<epgsearchdirs.conf(5)>. + +F<epgsearchmenu.conf> + +Enthält die vom User gewählte Konfiguration der OSD Menüdarstellung. Siehe C<epgsearchmenu.conf(5)>. + +F<epgsearchuservars.conf> + +Enthält die User-Variablen. Siehe C<epgsearchuservars.conf(5)>. + +F<epgsearchdone.data> + +Enthält die done-Liste. Siehe C<epgsearchdone.data(5)>. + +F<epgsearchswitchtimers.conf> + +Enthält die Umschalttimer. Siehe C<epgsearchswitchtimer.conf(5)>. + +F<epgsearchblacklists.conf> + +Enthält die Ausschlussliste. Siehe C<epgsearchblacklists.conf(5)>. + +F<epgsearchchangrps.conf> + +Enthält die Kanalgruppen. Siehe C<epgsearchchangrps.conf(5)>. + +F<epgsearchtemplates.conf> + +Enthält die Vorlagen für Suchtimer. Siehe C<epgsearchtemplates.conf(5)>. + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + + + + + diff --git a/doc-src/de/epgsearch.conf.5.txt b/doc-src/de/epgsearch.conf.5.txt new file mode 100644 index 0000000..daae063 --- /dev/null +++ b/doc-src/de/epgsearch.conf.5.txt @@ -0,0 +1,142 @@ +=head1 NAME + +F<epgsearch.conf> - Die gespeicherten Suchtimer + +=head1 BESCHREIBUNG + +Die in epgsearch angelegten Suchtimer werden in dieser Datei gespeichert. + +Sie sollte nicht manuell editiert werden. Verwende stattdessen lieber SVDRP. + +=head1 FORMAT + +Aufgrund von möglichen Formatänderungen enthält die Datei eine Versionsangabe. +Die Format-Version befindet sich in der ersten Zeile der Datei. + +Der allgemeine Feldtrenner ist C<':'>. + +Folgende Felder sind möglich: + + 1 - Einmalige Suchtimer ID + 2 - Suchstring + 3 - Verwende Zeit? 0/1 + 4 - Startzeit in HHMM + 5 - Stopzeit in HHMM + 6 - Verwende Kanal? 0 = nein, 1 = Intervall, 2 = Kanalgruppe, 3 = nur FTA + 7 - Wenn 'verwende Kanal' = 1 dann ist Kanal ID[|Kanal ID] im VDR Format, + Einträge oder min/max Einträge getrennt durch |, wenn 'Verwende Kanal' = 2 + dann der Kanalgruppenname + 8 - Beachte Gross-/Kleinschreibung? 0/1 + 9 - Suchmodus: + 0 - Der gesamte Suchbegriff muss genau so enthalten sein + 1 - Alle Suchbegriffe (Trenner sind Leerzeichen,',', ';', '|' oder '~') + müssen enthalten sein. + 2 - Mindestens ein Suchbegriff muss enthalten sein (Trenner sind + Leerzeichen, ',', ';', '|' oder '~'). + 3 - Der Suchbegriff muss genau zutreffen + 4 - Regulärer Ausdruck + 10 - Suche in Titel? 0/1 + 11 - Suche in Untertitel? 0/1 + 12 - Suche in Beschreibung? 0/1 + 13 - Verwende Länge? 0/1 + 14 - Minimale Länge der Sendung in Minuten + 15 - Maximale Länge der Sendung in Minuten + 16 - Verwende als Suchtimer? 0/1 + 17 - Verwende Tag der Woche? 0/1 + 18 - Tag der Woche (0 = Sonntag, 1 = Montag...; + -1 Sonntag, -2 Montag, -4 Dienstag, ...; -7 So, Mo, Di) + 19 - Verwende als Serienaufnahme? 0/1 + 20 - Verzeichnis für Aufnahme + 21 - Priorität der Aufnahme + 22 - Lebensdauer der Aufnahme + 23 - Zeitpuffer am Anfang in Minuten + 24 - Zeitpuffer am Ende in Minuten + 25 - Verwende VPS? 0/1 + 26 - Aktion: + 0 = Lege Timer an + 1 = Benachrichtige nur per OSD (kein Timer) + 2 = Schalte nur um (kein Timer) + 27 - Verwende erweitertes EPG? 0/1 + 28 - Felder des erweiterten EPGs. Dieser Eintrag hat folgendes Format + (Trenner ist '|' für jede Kategorie, '#' trennt ID vom Wert): + 1 - Die ID der Kategorie des erweiterten EPGs, festgelegt in + F<epgsearchcats.conf>, s. C<epgsearchcats.conf(5)> + 2 - Wert des erweiterten EPGs für diese Kategorie + (Ein ':' wird übersetzt in "!^colon^!", z.B. "16:9" -> "16!^colon^!9") + 29 - vermeide Wiederholungen? 0/1 + 30 - erlaubte Anzahl Wiederholungen + 31 - Vergleiche Titel bei Prüfung auf Wiederholung? 0/1 + 32 - Vergleiche Untertitel bei Prüfung auf Wiederholung? 0/1 + 33 - Vergleiche Beschreibung bei Prüfung auf Wiederholung? 0/1 + 34 - Vergleiche erweitertes EPG bei Prüfung auf Wiederholung? + Dieser Eintrag ist ein Bitfeld von Kategorie IDs. + 35 - Erlaube Wiederholungen nur innerhalb x Tagen + 36 - Lösche eine Aufnahme automatisch nach x Tagen + 37 - Aber behalte mindestens x Aufnahmen + 38 - Schalte x Minuten vor der Sendung um, wenn Aktion = 2 + 39 - Pausiere das Anlegene von Timern wenn x Aufnahmen vorhanden sind + 40 - Modus der Ausschlussliste: 0 = Aus, 1 = Wähle aus, 2 = Alle + 41 - Verwende diese Ausschluss-Suchtimer, IDs getrennt durch '|' + 42 - Fuzzy Toleranz für Suche + 43 - Verwende diese Suche im Favoriten Menü, 0 = Nein, 1 = Ja + 44 - ID einer Menüvorlage für das Suchergebnis + +Folgende Zeichen werden bei der Speicherung übersetzt: + + : => | + | => !^pipe^! + +Es müssen nicht alle Felder belegt sein. Gefordert sind lediglich die ersten +11. + +=head1 BEISPIELE + + #version 2 - DONT TOUCH THIS! + 1:Kommissar Beck:0:::2:ÖffRecht:0:0:1:0:0:0:::1:0:0:1:%Category%~%Genre%:50:99:10:60:0:0:0::1:0:1:1:0:0:0:0:0 + 2:* Sägebrecht:0:::2:Hauptsender:0:0:0:0:0:0:::0:0:0:0:%Category%~%Genre%:50:99:10:10:0:0:1:1#|2#|3#|4#|5#|6#Marianne Sägebrecht|7#|8#|9#|10#|11#|12#|13#:1:0:1:0:0:0:0:0:0 + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + diff --git a/doc-src/de/epgsearchblacklists.conf.5.txt b/doc-src/de/epgsearchblacklists.conf.5.txt new file mode 100644 index 0000000..ea3784d --- /dev/null +++ b/doc-src/de/epgsearchblacklists.conf.5.txt @@ -0,0 +1,72 @@ +=head1 NAME + +F<epgsearchblacklists.conf> - Die gespeicherten Auschlusslisten-Suchtimer + +=head1 BESCHREIBUNG + +In epgsearch können Ausschlusslisten (Blacklists) angelegt werden. + +Dies sind im Grunde normale Suchtimer die in der Datei +F<epgsearchblacklists.conf> gespeichert werden. Zu jedem Suchtimer kann +man dann einen oder mehrere Einträge aus der Ausschlussliste auswählen. + +=head2 Funktion + +Suchtimer "Krimi" verwendet Ausschlusssuchtimer "Tatort" + +Ausschlusssuchtimer "Tatort" sucht "Tatort" + +Es werden alle Krimis gesucht und anschliessend wird nachgesehen ob ein +Ergebnisse auf den Ausschlusssuchtimer zutrifft. Dieses wird dann verworfen. + +=head1 FORMAT + +Diese Datei hat dasselbe Format wie die Datei F<epgsearch.conf>. Für den +Aufbau verweise ich auf C<epgsearch.conf(5)>. + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + + diff --git a/doc-src/de/epgsearchcats.conf.5.txt b/doc-src/de/epgsearchcats.conf.5.txt new file mode 100644 index 0000000..d682254 --- /dev/null +++ b/doc-src/de/epgsearchcats.conf.5.txt @@ -0,0 +1,140 @@ +=head1 NAME + +F<epgsearchcats.conf> - Die Kategorien des erweiterten EPGs, sofern vorhanden. + +=head1 BESCHREIBUNG + +Wenn man das EPG aus dem Internet bezieht, z.B. von Hörzu, enthält das EPG +erweiterte Daten. Zusätzlich zum Titel, Untertitel un der Beschreibung findet +man dann eine Liste der Darsteller, Jahr des Drehs, Episode der Serie, Kategorie +und Genre des Film, etc. + +Damit epgsearch diese verwenden kann müssen die Felder des erweiterten EPGs +Variablen zugeordnet werden. + +Einige Beispieldateien werden dem Plugin mitgeliefert und finden sich im +Verzeichnis "conf". + +Um eine eigene F<epgsearchcats.conf> zu erstellen dient das mitgelieferte Tool +F<createcats>. + +Es scannt das vorhandene EPG und erstellt eine F<epgsearchcats.conf>. Diese +sollte an die eigenen Wünscche angepasst werden, eine Formatbeschreibung +findet sich im Kopf der Datei. + +=head1 FORMAT + +Auszug aus einer F<epgsearchcats.conf>: + +-------------------------------------------------------------------- + + This is just a template based on your current epg.data. Please edit! + Perhaps a category or its value list should be removed. Also the + 'name in menu' should be adjusted to your language. + The order of items determines the order listed in epgsearch. It does not + depend on the ID, which is used by epgsearch. + Format: + ID|category name|name in menu|values separated by ',' (option)|searchmode + - 'ID' should be a unique positive integer + (changing the id later on will force you to reedit your search timers!) + - 'category name' is the name in your epg.data + - 'name in menu' is the name displayed in epgsearch. + - 'values' is an optional list of possible values + if you omit the list, the entry turns to an edit field in epgsearch, + else it's an list of items to select from + - 'searchmode' is an optional parameter specifying the mode of search: + text comparison: + 0 - the whole term must appear as substring + 1 - all single terms (delimiters are ',', ';', '|' or '~') + must exist as substrings. This is the default search mode. + 2 - at least one term (delimiters are ',', ';', '|' or '~') + must exist as substring. + 3 - matches exactly + 4 - regular expression + numerical comparison: + 10 - less + 11 - less or equal + 12 - greater + 13 - greater or equal + 14 - equal + 15 - not equal + +-------------------------------------------------------------------- + +=head1 BEISPIELE + +(Die Zeilen sind gekürzt, daher unvollständig) + +Beispiel für EPG von Hörzu, bezogen von epgdata.com mit tvmovie2vdr. + + 1|Category|Kategorie|Information,Kinder,Musik,Serie,Show,Spielfilm,Sport|2 + + 2|Genre|Genre|Abenteuer,Action,Wirtschaft,Wissen,Zeichentrick|2 + + 3|Format|Video-Format|16:9,4:3|2 + + 4|Audio|Audio|Dolby Surround,Dolby,Hoerfilm,Stereo|2 + + 5|Year|Jahr||2 + + 6|Cast|Besetzung||2 + + 7|Director|Regisseur||2 + + 8|Moderator|Moderation||2 + + 9|Rating|Bewertung|Großartig besonders wertvoll,Annehmbar,Schwach|2 + + 10|FSK|FSK|6,12,16,18|2 + + 11|Country|Land||2 + + 12|Episode|Episode||4 + + 13|Themes|Thema||4 + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + diff --git a/doc-src/de/epgsearchchangrps.conf.5.txt b/doc-src/de/epgsearchchangrps.conf.5.txt new file mode 100644 index 0000000..4ae4703 --- /dev/null +++ b/doc-src/de/epgsearchchangrps.conf.5.txt @@ -0,0 +1,73 @@ +=head1 NAME + +F<epgsearchchangrps.conf> - Liste der Kanalgruppen + +=head1 BESCHREIBUNG + +In epgsearch kann man Sender zu Kanalgruppen zusammenfassen die dann in +den Suchtimern verwendet werden können. + +Hierdurch können für viele Suchtimer auf einmal die durchsuchten Kanäle zentral +neu konfiguriert werden. + +In dieser Datei werden die Kanalgruppen gespeichert. + +=head1 FORMAT + +Jede Zeile eine Kanalgruppe. Jede Zeile beginnt mit dem Gruppennamen, dahinter, getrennt durch '|', +die Liste der Kanäle. + +=head1 BEISPIELE + +(Die Zeilen sind gekürzt, daher unvollständig) + + Private|S19.2E-133-33-46|S19.2E-133-33-51 + ProsiebenSat.1|S19.2E-133-33-46|S19.2E-133-33-47 + RTL World|S19.2E-1-1089-12003||S19.2E-1-1089-12090 + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + + diff --git a/doc-src/de/epgsearchcmds.conf.5.txt b/doc-src/de/epgsearchcmds.conf.5.txt new file mode 100644 index 0000000..68995b3 --- /dev/null +++ b/doc-src/de/epgsearchcmds.conf.5.txt @@ -0,0 +1,78 @@ +=head1 NAME + +F<epgsearchcmds.conf> - EPG-Befehle + +=head1 BESCHREIBUNG + +Diese Datei enthält ähnlich der commands.conf oder der reccmds.conf Befehle, die +auf die in der Programmübersicht ausgewählte Sendung angewandt werden können. + +Intern besitzt epgsearch 8 nicht veränderbare EPG-Befehle. + +Wenn eine F<epgsearchcmds.conf> existiert, werden die darin aufgeführten Befehle +beginnend mit Nummer 9 gelistet. + +=head2 Sprachen + +Man kann für verschiedene Sprachen unterschiedliche Dateien anlegen. Sie +müssen dann z.B. F<epgsearchcmds-deu.conf> für deutsch oder +F<epgsearchcmds-eng.conf> für englisch heissen. + +Wenn eine Datei entsprechend der im VDR eingestellten Sprache existiert wird +diese geladen. Existiert eine solche nicht wird versucht F<epgsearchcmds.conf> +zu laden. + +=head1 FORMAT + +Befehlsname : Befehl + +=head1 BEISPIELE + +epg2taste (de): /usr/local/vdr/epg2taste.sh + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + + diff --git a/doc-src/de/epgsearchdirs.conf.5.txt b/doc-src/de/epgsearchdirs.conf.5.txt new file mode 100644 index 0000000..e252332 --- /dev/null +++ b/doc-src/de/epgsearchdirs.conf.5.txt @@ -0,0 +1,97 @@ +=head1 NAME + +F<epgsearchdirs.conf> - Liste von Aufnahmepfaden zur einfachen Auswahl + +=head1 BESCHREIBUNG + +In epgsearch, speziell beim Editieren von Suchtimern, muss man häufig ganze +Verzeichnisspfade eingeben. Da dies oft mühselig ist, können in dieser Datei +häufig genutzte Pfade vorgegeben werden, die dann im Menü einfach ausgewählt +werden können. + +=head1 FORMAT + +Pro Zeile ein Pfad. Pfade können Variablen enthalten. + +Verwendet werden können interne Variablen, die Variablen des erweiterten EPG +(F<epgsearchcats.conf>) sowie die in der Datei F<epgsearchuservars.conf> +konfigurierten Variablen. + +Folgende internen Variablen stehen zur Verfügung: + + %title% - Title der Sendung + %subtitle% - Subtitle der Sendung + %time% - Startzeit im Format HH:MM + %date% - Startzeit im Format TT.MM.YY + %datesh% - Startdatum im Format TT.MM. + %time_w% - Name des Wochentages + %time_d% - Tag der Sendung im Format TT + %chnr% - Kanalnummer + %chsh% - Kanalname kurz + %chlng% - Kanalname lang + +Für weitere Variablen siehe C<epgsearchcats.conf(5)> und C<epgsearchuservars.conf(5)>. + +Im Auswahlmenü werden die Pfade alphabetisch sortiert dargestellt. Pfade die Variablen +enthalten stehen am Anfang der Liste. + +=head1 BEISPIELE + + %Category%~%Genre% + %Category%~%Genre%~%Title%~%Episode%: %Subtitle% + Information~Natur~%Title%~%Episode%: %Subtitle% + %Serie% + Spielfilm~Action + Spielfilm~Doku + Spielfilm~Drama + Spielfilm~Horror + Musik + Sport + Show + Serie + +=head1 SIEHE AUCH + +C<epgsearch(1)>, C<epgsearchcats.conf(5)>, C<epgsearchuservars.conf(5)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + diff --git a/doc-src/de/epgsearchmenu.conf.5.txt b/doc-src/de/epgsearchmenu.conf.5.txt new file mode 100644 index 0000000..1c9b0e6 --- /dev/null +++ b/doc-src/de/epgsearchmenu.conf.5.txt @@ -0,0 +1,133 @@ +=head1 NAME + +F<epgsearchmenu.conf> - Konfiguration der Menüdarstellung + +=head1 BESCHREIBUNG + +Die Darstellung des Menüs des Plugins kann auf die eigenen Wünsche +angepasst werden. Die Konfiguration erfolgt mit Hilfe dieser Datei. + +=head1 FORMAT + + In dieser Datei können den Variablen + + MenuWhatsOnNow + MenuWhatsOnNext + MenuWhatsOnElse + MenuSchedule + MenuSearchResults + +Zeichenketten zugewiesen werden die die Darstellung der Menüs im OSD regeln. + +Eine Besonderheit stellt MenuSearchResults. Hier kann man der Variablen +MenuSearchResults eine beliebige Zeichenkette anhängen: + + MenuSearchResultsSerienlayout=... + +Dies bewirkt das man beim Editieren eines Suchtimers nun auch dieses Layout +unter dem Namen "Serienlayout" auswählen kann. + +So kann man jedem Suchtimer seine eigene OSD Darstellung verpassen. + +Es können alle Variablen verwendet werden. Die Variablen aus dem erweiterten +EPG, die in der F<epgsearchuservars.conf> konfigurierten sowie die folgenden +internen: + + %title% - Title der Sendung + %subtitle% - Subtitle der Sendung + %time% - Startzeit im Format HH:MM + %date% - Startzeit im Format TT.MM.YY + %datesh% - Startdatum im Format TT.MM. + %time_w% - Name des Wochentages + %time_d% - Tag der Sendung im Format TT + %time_lng% - Startzeit in Sekunden seit 1970-01-01 00:00 + %t_status% - Timerstatus ('T', 't', 'R') + %v_status% - VPS Status + %r_status% - Running Status + %status% - Kompletter Status, das selbe wie + '%t_status%%v_status%%r_status%' + +Für die Menüs "Was läuft jetzt" und "Suchergebniss", also die Variablen +MenuWhatsOnNow und MenuSearchResults, stehen fünf weitere Variablen +zur Verfügung: + + %chnr% - Kanalnummer + %chsh% - Kanalname kurz + %chlng% - Kanalname lang + %chdata% - VDR's interne Kanaldarstellung (z.B. 'S19.2E-1-1101-28106') + %progr% - Grafischer Fortschrittsbalken (nicht für das Menü "Suchergenis") + %progrT2S% - Fortschrittsbalken im text2skin Stil (nicht für das Menü "Suchergenis") + +Es wird bei den Variablen nicht zwischen Gross-/Kleinschreibung unterschieden. + +Ein Eintrag besteht aus bis zu 6 Tabellenspalten, die Spalten werden durch +'|' getrennt. Der letzte Eintrag jeder Spalte kann die Spaltenbreite durch +angabe einer Breite in Zeichen festlegen. Die Breitenangabe wird durch ':' +vom Variablennamen getrennt. + +Wenn du Trenner wie '~', '-' oder '#' verwendest um einzelne Bestandteile zu +trennen, z.B. %title% ~ %subtitle%, dann achtet epgsearch darauf das ein +solcher Trenner nicht am Ende einer Spalte steht. + +Die einzelnen Spaltenbreiten sollten angepasst werden, das Aussehen ist vom +verwendeten Skin abhängig. + +Wenn diese Datei verändert werden soll während VDR läuft kann man dem Plugin +den Startparamter '-r' oder '--reloadmenuconf' übergeben, die Datei wird dann +bei jedem öffnen des Menüs neu eingelesen. + +=head1 BEISPIELE + + MenuWhatsOnNow=%chnr%:3|%progrt2s%:5| %time% %t_status%:8|%category%:6| %title% ~ %subtitle%:35 + MenuWhatsOnNext=%chnr%:3|%time% %t_status%:8|%category%:8| %title% ~ %subtitle%:35 + MenuWhatsOnElse=%chnr%:3|%time% %t_status%:8|%category%:8| %title% ~ %subtitle%:35 + MenuSchedule=%time% %t_status%:8|%genre%:14| %title% ~ %subtitle%:35 + MenuSearchResults=%chnr%:3|%datesh% %time% %t_status%:14|%genre%:8| %title%%colon% %subtitle%:35 + MenuFavorites=%chnr%:3|%datesh% %time% %t_status%:14|%genre%:8| %title%%colon%%subtitle%:35 + +=head1 SIEHE AUCH + +C<epgsearch(1)>, C<epgsearchcats.conf>, C<epgsearchuservars.conf> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + + diff --git a/doc-src/de/epgsearchswitchtimers.conf.5.txt b/doc-src/de/epgsearchswitchtimers.conf.5.txt new file mode 100644 index 0000000..edeaf7f --- /dev/null +++ b/doc-src/de/epgsearchswitchtimers.conf.5.txt @@ -0,0 +1,75 @@ +=head1 NAME + +F<epgsearchswitchtimer.conf> - Die gespeicherten Umschalttimer + +=head1 BESCHREIBUNG + +In epgsearch kann man über das Programmenü und die Suchtimer +Umschalttimer anlegen, die einem zu beginn der Sendung auf die +Sendung hinweisen oder gleich umschalten. + +Die Umschalttimer werden in dieser Datei gespeichert. + +=head1 FORMAT + +Der allgemeine Feldtrenner ist C<':'>. + +Folgende Felder sind möglich: + + 1 - Kanal + 2 - Event ID + 3 - Startzeit + 4 - Vorlaufzeit + 5 - Nur ankündigen + +=head1 BEISPIELE + + S19.2E-1-1089-12060:52221:1153322700:1:0 + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + + + diff --git a/doc-src/de/epgsearchtemplates.conf.5.txt b/doc-src/de/epgsearchtemplates.conf.5.txt new file mode 100644 index 0000000..71ef8af --- /dev/null +++ b/doc-src/de/epgsearchtemplates.conf.5.txt @@ -0,0 +1,60 @@ +=head1 NAME + +F<epgsearchtemplates.conf> - Die gespeicherten Suchtimer-Vorlagen + +=head1 BESCHREIBUNG + +Für die Suchtimer können Vorlagen angelegt werden. Diese werden hier +gespeichert. + +=head1 FORMAT + +Diese Datei hat dasselbe Format wie die Datei F<epgsearch.conf>. Für den +Aufbau verweise ich auf C<epgsearch.conf(5)>. + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + + diff --git a/doc-src/de/epgsearchuservars.conf.5.txt b/doc-src/de/epgsearchuservars.conf.5.txt new file mode 100644 index 0000000..e40256a --- /dev/null +++ b/doc-src/de/epgsearchuservars.conf.5.txt @@ -0,0 +1,188 @@ +=head1 NAME + +F<epgsearchuservars.conf> - Die Uservariablen + +=head1 BESCHREIBUNG + +In dieser Datei können Variablen definiert werden die dann in epgsearch +in allen Feldern, in denen Variablen möglich sind, zur Verfügung stehen. + +=head1 FORMAT + +Die Variablen selbst sind in dem Format %Variablenname% aufgebaut. + +"Variablenname" kann aus alphanumerischen Zeichen bestehen, Leerzeichen +und Sonderzeichen sind nicht erlaubt. + +Zwischen Gross-/und Kleinschreibung wird nicht unterscheiden. + +Beispiele für mögliche Namen: + + %Serie% %DokuVar1% %ThemesSubtitleDate1% + +=head2 Zuweisung + +Die Zuweisung eines Wertes erfolgt so: + + %Serie%=Neue Serie~Krimi + +Hier wird der Variablen %Serie% die Zeichenkette "Neue Serie~Krimi" zugewiesen. + +Es wird immer eine Zeichenkette zugewiesen. Leerzeichen werden daher auch +als Leerzeichen mit übernommen. + + %Pfad%=%Serie% + +Hier wird der Variablen %Pfad% der Inhalt der Variablen %Serie% zugewiesen. + +Das lässt sich beliebig verwenden. + + %Pfad%=%Serie%~Tatort + +Pfad enthält hier den String "Neue Serie~Krimi~Tatort". + +=head2 Kontroll-Strukturen + +Einfache "if then else" Konstrukte sind mögliche. + +Innerhalb dieser Konstrukte können keine Strings, wohl aber Variablen +zugwiesen werden. Leerzeichen werden ignoriert. + + %Foo%=Verschiedenes + + %Variable%=%Pfad% ? %Pfad% : %Foo% + +Ist Pfad nicht leer, weise %Variable% den Inhalt aus %Pfad% zu, sonst +den Inhalt aus %Foo%. + +"%Pfad% ?" bedeutet also "nicht leer?". Es sind auch andere Prüfungen +möglich. + + %Variable%=%Pfad%!=5 ? %Pfad% : %Foo% + +"%Pfad%!=5 ?" bedeutet "ist %Pfad% ungleich 5?" + +Es können auch Variablen verglichen werden. + + %Fuenf%=5 + + %Variable%=%Pfad%!=%Fuenf% ? %Pfad% : %Foo% + + +Folgende Prüfungen sind möglich: + + == ist gleich + != ist nicht gleich + +=head2 Systemaufruf + +Es können auch externe Programme/Scripte aufgerufen werden. Die zurück- +gegebene Zeichenkette wird dann einer Variablen zugewiesen. + + %Ergebnis%=system(scriptname,%Variable1% %Variable2% -f %Variable3% --dir=%Variable4% --dummy) + +Ruft das Script "scriptname" mit den Parametern "%Variable1%", +"%Variable2%", usw. auf. Das Ergebnis wird der Variablen %Ergebnis% +zugewiesen. + +Es sind beliebig viele Variablen möglich. + +Wenn nötig, umfasst epgsearch die Variablen automatisch mit "". + +Das Script darf nur eine Zeichenkette ohne Zeilenumbruch zurückgeben. + +Erfolgt keine Rückgabe wird der Variablen %Ergebnis% eine leere Zeichenkette +zugewiesen. + +=head2 Verfügbare Variablen + +Folgende Variablen sind bereits intern definiert und können verwendet +werden. + + %title% - Title der Sendung + %subtitle% - Subtitle der Sendung + %time% - Startzeit im Format HH:MM + %timeend% - Endzeit im Format HH:MM + %date% - Startzeit im Format TT.MM.YY + %datesh% - Startdatum im Format TT.MM. + %time_w% - Name des Wochentages + %time_d% - Tag der Sendung im Format TT + %time_lng% - Startzeit in Sekunden seit 1970-01-01 00:00 + %chnr% - Kanalnummer + %chsh% - Kanalname kurz + %chlng% - Kanalname lang + %chdata% - VDR's interne Kanaldarstellung (z.B. 'S19.2E-1-1101-28106') + + %summary% - Beschreibung + %htmlsummary% - Beschreibung, alle CR ersetzt durch '<br />' + %eventid% - Event ID + + %colon% - Das Zeichen ':' + %datenow% - Aktuelles Datum im Format TT.MM.YY + %dateshnow% - Aktuelles Datum im Format TT.MM. + %timenow% - Aktuelle Zeit im Format HH:MM + %videodir% - VDRs Aufnahme-Verzeichnis (z.B. /video) + %plugconfdir% - VDRs Verzeichnis für Plugin-Konfigurationsdateien (z.B. /etc/vdr/plugins) + %epgsearchdir% - epgsearchs Verzeichnis für Konfiguratzionsdateien (z.B. /etc/vdr/plugins/epgsearch) + +Desweiteren können die in der Datei F<epgsearchcats.conf> definierten Variablen +verwendet werden. Siehe dazu C<epgsearchcats.conf(5)>. + +=head1 BEISPIELE + + # Wochentag, Datum, Uhrzeit + %Datum%=%time_w% %date% %time% + + # Themes oder Subtitle oder Datum + %ThemesSubtitleDate1%=%Subtitle% ? %Subtitle% : %Datum% + %ThemesSubtitleDate%=%Themes% ? %Themes% : %ThemesSubtitleDate1% + + # Rufe das Script auf das den Aufnahmepfad erzeugt + %DokuScript%=system(doku.pl,%Title%,%Subtitle%,%Episode%,%Themes%,%Category%,%Genre%) + %Doku%=%DokuScript% + +=head1 SIEHE AUCH + +C<epgsearch(1)>, C<epgsearchcats.conf(5)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LIZENZ + +Copyright © 2004-2007 Christian Wieninger + +Dieses Programm ist freie Software. Sie können es unter den Bedingungen +der GNU General Public License, wie von der Free Software Foundation +veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2 +der Lizenz oder (nach Ihrer Option) jeder späteren Version. + +Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es +Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die +implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN +ZWECK. Details finden Sie in der GNU General Public License. + +Sie sollten ein Exemplar der GNU General Public License zusammen mit +diesem Programm erhalten haben. Falls nicht, schreiben Sie an die +Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +auf. + +Der Author kann über cwieninger@gmx.de erreicht werden. + +Die Projektseite ist http://winni.vdr-developer.org/epgsearch + +Der MD5-Code ist abgeleitet aus dem Message-Digest Algorithm +von RSA Data Security, Inc.. + diff --git a/doc-src/de/noannounce.conf.5.txt b/doc-src/de/noannounce.conf.5.txt new file mode 100644 index 0000000..83a3ba6 --- /dev/null +++ b/doc-src/de/noannounce.conf.5.txt @@ -0,0 +1,53 @@ +=head1 NAME + +F<noannounce.conf> - Liste von Sendungen, die nicht mehr per OSD angekündigt +werden sollen. + +=head1 BESCHREIBUNG + +Diese Datei enthält eine Liste von Sendungen die markiert wurden, sodass diese +nicht mehr durch den Suchtimer-Hintergrund-Thread per OSD angekündigt werden. + +Wenn während der Ankündigung einer Sendung eine der Tasten '0', ... '9' oder +'Ok' gedrückt wird, wird nachgefragt, ob zukünftige Ankündigungen vollständig +(bei den Tasten '0' oder 'Ok') oder nur für die nächsten x Tage (bei den +Tasten '1' bis '9') unterdrückt werden sollen. Bestätigt man diese Abfrage +durch ein erneutes 'Ok', wird die Einstellung entsprechend übernommen. + +=head1 FORMAT + +Pro Zeile eine Sendung, die Felder werden durch ':' getrennt. + +Folgende Felder existieren: + + 1 - Titel + 2 - Episode + 3 - Kanal-Kennung + 4 - Startzeit + 5 - Zeitpunkt für nächste Ankündigung + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT und LIZENZ + +Copyright © 2005 - 2007 Christian Wieninger + +Dieses Dokument wird unter den Bedingungen der Gnu Public License +(GPL) veröffentlicht. Alle Angaben sind nach bestem Wissen, aber +natürlich ohne Gewähr (no warranty in any kind). diff --git a/doc-src/de/timersdone.conf.5.txt b/doc-src/de/timersdone.conf.5.txt new file mode 100644 index 0000000..b61d096 --- /dev/null +++ b/doc-src/de/timersdone.conf.5.txt @@ -0,0 +1,55 @@ +=head1 NAME + +F<timersdone.conf> - Liste von anstehenden Timern, die von Suchtimern erzeugt +wurden. + +=head1 BESCHREIBUNG + +Diese Datei enthält eine Liste von anstendenden Timern, die von Suchtimern +erzeugt wurden. Wenn die Setup-Option 'Timer nach Löschen neuprogrammieren' +auf nein steht, benutzt epgsearch diese Liste, um zu prüfen, ob ein Timer +bereits angelegt wurde und erstellt den Timer in diesem Fall nicht nochmals. +Sobald die zugehörige Aufnahme stattgefunden hat, wird der Timer automatisch +aus dieser Liste entfernt. + +=head1 FORMAT + +Pro Zeile ein Timer, die Felder werden durch ':' getrennt. + +Folgende Felder existieren: + + 1 - Kanal-Kennung + 2 - Startzeit + 3 - Stopzeit + 4 - Suchtimer-ID + 5 - Titel der Sendung + 6 - Untertitel der Sendung + +=head1 SIEHE AUCH + +C<epgsearch(1)> + +=head1 AUTOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 FEHLER MELDEN + +Fehlerberichte bitte im Bugtracker. + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT und LIZENZ + +Copyright (c) 2005-2006 Christian Wieninger + +L<http://www.cwieninger.de.vu/> + +Dieses Programm ist freie Software. Es darf nach belieben benutzt, +kopiert, modifiziert, verteilt und verkauft werden, solange niemand +anderem das Recht abgesprochen wird dasselbe zu tun. + diff --git a/doc-src/en/createcats.1.txt b/doc-src/en/createcats.1.txt new file mode 100644 index 0000000..cca13dd --- /dev/null +++ b/doc-src/en/createcats.1.txt @@ -0,0 +1,120 @@ +=head1 NAME + +B<createcats> - helps you creating your own F<epgsearchcats.conf> + +=head1 SYNOPSIS + +B<createcats> [OPTIONS] F</path_to/epg.data> + +=head1 DESCRIPTION + +This tool is deliverd with the plugin and should exist in the plugins +source directory after compilation. It helps you in creating your own +epgsearchcats.conf, if the samples in directory 'conf' don't fit your needs. + +createcats takes your epg.data as argument and scans it for suitable +EPG infos. Such an info is a set of a category name and a coresponding +value at the beginning of a line (represented with '|') and has the +form '|category: value', e.g. + + |Genre: Action + +So simply call it with + +B<createcats> /path_to/epg.data + +The output is a file epgsearchcats.conf, that should be copied to your +plugins config dir. Before using it, you should do some customizing, +since not all things in the file will be suitable to be used as +extended EPG info. + +=head1 OPTIONS + +The full set of arguments is: + +usage: B<createcats> [OPTIONS] F</path_to/epg.data> + + -m N, --minappearance=N the minimum number a category has to appear + to be used + -v N, --maxvalues=N values of a category are omitted if they exceed + this number + -l N, --maxlength=N the maximum length of a text to be accepted + as a category value + -h, --help this help + +Some notes: + +=over 4 + +=item -m N, --minappearance=N + +createcats counts how often a category is used in your current +epg.data. If this is less than N, then this category will not be part +of the resulting epgsearchcats.conf. + +=item -v N, --maxvalues=N + +if the number of values for a category is more than N then createcats +will not output a value list for this category. As a consequence in +epgsearch the menu item gets an edit item, that can be filled with +every text. Else, the item gets a selection item, that lets you select +from a list of values. + +=item -l N, --maxlength=N + +if the text length of a value is more than N, this value is not part +of the value list. + +=back + +B<Hint:> Results are best, if your current EPG is as big as possible. So +update it, if you are using an external EPG provider, before calling +createcats. + +Please edit this file now, since it will contain also things not suitable. + +After that copy it to your plugins config directory. + +=head1 SEE ALSO + +C<epgsearch(1)>, C<epgsearch(4)>, C<epgsearchcats.conf(5)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bugreports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. diff --git a/doc-src/en/epgsearch.1.txt b/doc-src/en/epgsearch.1.txt new file mode 100644 index 0000000..51e9e58 --- /dev/null +++ b/doc-src/en/epgsearch.1.txt @@ -0,0 +1,1116 @@ +=head1 NAME + +F<epgsearch> - Searchtimer and replacement of the VDR program menu + +=head1 OVERVIEW + +EPG-Search can be used as a replacement for the default schedules +menu entry. It looks like the standard schedules menu, but adds some +additional functions: + + - Commands for EPG entries with 5 built-in commands like 'show repeats', + 'create search'. One can add own commands for other needs, like adding a + VDRAdmin auto-timer. + + - Add up to 4 user-defined times to 'now' and 'next' and an optional + favorites menu + + - Searching the EPG: Create reusable queries, which can also be used + as 'search timers'. + + - Search timers: Search for broadcasts in the background and add a + timer if one matches (similar to VDRAdmin's auto-timers) or simply + make an announcement about it via OSD + + - Avoid double recordings of the same event + * timer preview + * recognition of broken recordings + * fuzzy event comparison + + - Progress bar in 'What's on now' and 'What's on next' + + - Shift the time displayed by key press, e.g. 'What's on now' + 30 minutes + + - Start menu can be setup between 'Schedule' or 'What's on now' + + - background check for timer conflicts with a timer conflict manager + + - detailed EPG menu (summary) allows jumping to the next/previous + event + + - support for extended EPG info for search timers + + - extension of the timer edit menu with a directory item, user + defined weekday selection and a subtitle completion. + + - Timer conflict check, informs you over the OSD about conflicts + + - Timer conflict menu, show detailed information about the conflicts + and let you resolve them + + - Email notifications about search timer updates and timer conflicts + +Works only with >= vdr-1.3.46 or newer. + +Parts of the sources are based on the repeating-ECG patch from Gerhard Steiner, who gave me the permission to use them. Thanks for his work! + +=head1 OPTIONS + +=over 4 + +=item -f file, --svdrpsendcmd=file + +the path to svdrpsend.pl for external SVDRP communication (default is +internal communication, so this is usually not needed anymore) + +=item -c path, --config=path + +to specify a specific config directory for all epgsearch config files, default +is '<plugins configuration directory>/epgsearch' + +=item -l file, --logfile=file + +to specify a specific log file for epgsearch (default log file is +epgsearch.log in the epgsearchs config directory) + +=item -v n, --verbose=n + +verbose level for log file. Value 0 means no logging. Other values +are 1 (general messages), 2 (detailed messages), 3 (planned for extra +detailed info for debugging purposes) + +=item -r, --reloadmenuconf + +reload epgsearchmenu.conf with plugin call. This can be useful when testing +customized menu layouts. + +=item -m file, --mailcmd=file + +the external command to be used for mail delivery. The default uses +'sendEmail.pl'. If you are using a different command or script make sure that +it has the same parameter interface as sendEmail.pl. + +=back + +=head1 CONTENT + + 1. Description + 1.1 Menu commands + 1.2 Menu search + 1.2.1 Menu edit search + 1.2.2 Menu search results + 1.3 Extended 'now' and 'next' + 1.4 Menu setup + 2. Search timers + 2.1 'Avoid repeats' - internals + 2.2 How do we compare two events? + 2.3 How and when do we compare? + 3. Usage from other plugins or scripts + 4. Using extended EPG info + 5. Replacing the standard schedule menu + 6. Add-ons + +=head1 1. Description + +At first glance EPG-Search looks like the schedules menu entry of VDR. +By pressing the key '0', one can toggle the bottom color keys to access +additional functions (the default assignment of the color keys can be +adjusted by setup): + + +=head2 1.1 Menu Commands + +This menu displays commands that can be executed on the current +item. There are 8 built-in commands: + + - Repeats: Searches for repeats + + - Record + + - Switch + + - Create search + Switches to search menu and adds a new search with the name of the current + item (to avoid editing the name manually) + + - Search in recordings: + Search the recordings for a broadcast with the same name + + - Mark as 'already recorded': + This puts the selected event in the file epgsearchdone.data and instructs + epgsearch to avoid recording this event if an according search timer is set + to "avoid repeats". An already created timer will be automatically removed + with the next search timer update. + + - Add/Remove to/from switch list?: + Controls the switch list. If there is an event in the switch list, epgsearch + will announce it and switch to the event before it starts. To access the + complete switch list, call 'Search/Actions/Switch list'. + + - Create blacklist: + A blacklist is used to ignore events when using search timers. A search + timer can be setup to ignore events from arbitrary blacklists. + +You can add your own commands to this menu by editing the file +epgsearchcmds.conf in epgsearchs config directory. There's a sample +conf file with some sample commands (see directory 'scripts', taken +from vdr-wiki.de, thanks to the authors). + +The format of the file is the same as VDR's commands.conf or +reccmds.conf. When a command is executed the following parameters +are passed to it: + + $1: the title of the EPG entry + $2: the start time of the EPG entry as time_t value (like in the + shutdown script) + $3: the end time + $4: the channel number of the EPG entry + $5: the long channel name of the EPG entry + $6: the subtitle of the EPG entry, "" if not present + +To execute a command from the main menu you can also press its +associated number without opening the commands menu. + +=head2 1.2 Menu search + +Here you can add, edit, delete and execute your own queries on the +EPG. The usage and behavior of this menu is similar to VDR's timer +menu. + +=head3 1.2.1 Menu edit search + +Most things in this menu are quite clear, so only some notes on: + +=over 4 + +=item - B<Search term:> + +The term to search for. If you like to search for more words, separate +them by blanks. Leaving this empty (combined with search mode +'Phrase') will match anything. This is useful, if you search e.g. for +anything that starts between some times on a specific channel. + +With 'blue' you can also select a template for the new search. If +one of the templates is set to default, new searches will +automatically get the settings of the default template. + +Note: fuzzy searching is limited to 32 chars! + +=item - B<Search mode:> + +'Phrase' searches for the expression within the EPG. 'All words' +requires, that each word of the expression occurs in the EPG item. +'at least one word' requires, that only one word occurs in the EPG item. +'Match exactly' requires, that your search term matches exactly the +found title, subtitle or description. + +With 'Regular expression' you can setup a regular expression as +search term. You don't need a leading and trailing '/' in the +expression. By default these are POSIX extended regular expressions. +If you like to have Herl compatible regular expression, simply edit +the plugins Makefile and uncomment #HAVE_PCREPOSIX=1 to +HAVE_PCREPOSIX=1 (you will need pcreposix installed, comes with +libpcre from www.pcre.org, but it's already part of most distributions). + +See also C<epgsearch(4)> 'Description of the search process'. + +=item - B<Use extended EPG info:> + +Only available if configured, see below 'Using extended EPG info'. + +=item - B<Ignore missing categories:> + +If set to 'Yes' this tells epgsearch that a missing EPG category +should not exclude an event from the results. Caution: Using this without +any other criterions could flood your timers. + +=item - B<Use channel:> + +Search only for events in the given channels interval, channel +groups or FTA channels only. + +Channel groups (e.g. sport channels or Pay-TV channels) can be +managed with a sub-menu called with 'blue'. + +ATTENTION: After changing the channels order please check the +settings of your search timers! + +=item - B<Use day of week:> + +Besides the weekdays you can also set up a user-defined selection, +e.g. search only on Monday and Friday. + +You'll find the user-defined selection in the list after Friday. + +=item - B<Use blacklists:> + +You can select one or more or all blacklists here. If any search result +is also contained in one of the selected blacklists it will be skipped. + +=item - B<Use in favorites menu:> + +Only available if turned on in setup. With this option you can mark a search +to be used in the favorites menu. The search results of all these searches are +listed in the favorites menu. + +=item - B<Result menu layout:> + +Only available if you have defined more than one menu template for search +results in epgsearchmenu.conf. This option is used to assign a different menu +layout for the search results of this search. + +=item - B<Use as Search Timer:> + +If set to yes, the plugin will do a background scan of the EPG in +certain intervals and add a timer, if there is a match. You have to +activate the 'search timers' in the setup. If set to "user defined" one +can specify time margins with key 'blue' where the search timer is active +or not. + +=item - B<Action:> + +Default action is creating a timer for the search results. But you can +also choose to simply announce the found event via OSD or to switch +to the event one minute before it starts. + +=item - B<Serial recording:> + +If set to yes, the recordings will be stored in a folder with the name +of the broadcasting and the recordings itself will have the name of +the episode. If there is no episode name, the date and time of the +recording will be used. + +=item - B<Directory:> + +Here you can assign a directory, where the recording should be stored, +e.g. 'SciFi'. Use the key 'blue' to select directory entries already +used in other search entries or given by entries in the file +epgsearchdirs.conf (simply place your directories here one at each line +without the leading video directory, also see MANUAL). +If your provider delivers extended EPG infos you can also use +variables like "%Genre%" or "%Category%" in your directory +entry. These are replaced with the current EPG info, when a timer is +created. + +See also C<epgsearch(4)> 'Using variables in the directory +entry of a search timer'. + +=item - B<Delete recordings after ... days:> + +Some recordings should only be kept for a few days, like news. With +this feature you can tell epgsearch to delete them automatically +after ... days. + +=item - B<Pause if ... recordings exist:> + +If the given numbers of recordings currently exists, then epgsearch +will not create further timers. After deleting one or more +recordings it will go on generating new timers. + +=item - B<Avoid repeats:> + +If you don't want to record repeats, this feature tries to check if +an event was already recorded/programmed and skips it. Please refer +to the section 'Avoid repeats - internals' below before using it. + +=item - B<Allowed repeats:> + +If you like to accept a certain amount of repeats you can give here +their number. + +=item - B<Only repeats within ... days:> + +Give here the number of days a repeat has to follow its first +broadcast. 0 is equal to no restriction. + +=item - B<Compare title:> + +When comparing to events then specify here if the title should be +compared. + +=item - B<Compare subtitle:> + +When comparing to events then specify here if the subtitle should be +compared. If there is no subtitle than this event is always +different to an event with/without a subtitle. + +=item - B<Compare description:> + +When comparing to events then specify here if the description should +be compared. + +For comparison all parts of the description, that look like a +category value, are removed first. The remaining text will be +compared. If this is similar at 90% (regarding the +Levinshtein-Distance algorithm) then it will be accepted as equal. + +=item - B<Compare categories:> + +With the button 'setup' you can also specify which categories should +be compared. As with subtitles an event is different if it has no +according category value. + +=item - B<Priority, lifetime, margins for start and stop:> + +Each search timer can have its own settings for these parameters. +Defaults can be adjusted in the plugins setup. + +=item - B<VPS:> + +If set to yes, VPS is used, but only, if activated in VDR's setup menu and +if the broadcasting has VPS information. + +=item - B<Auto delete:> + +to automatically delete a search timer if the following is true: + + * after x recordings, or + * after x days after the first recording + +Only complete recordings are counted. The deletion is executed directly after +the correspondig recording + +=back + +To toggle the flag 'Use as search timer' without editing the search +entry you can use the key '2'. This will call directly the second +command of the command menu. + +=head3 1.2.2 Menu search results + +This menu displays the search results. A 'T' lets you know, that there +is already a timer for the event. A 't' means that there's only a +partial timer for it, as in standard schedules menu. + +=head2 1.3 Extended 'now' and 'next' and favorites + +By setup, one can add up to 4 additional times to extend the green +button, e.g. 'afternoon', 'prime time', 'late night'. Times, that are +already passed, are skipped (you will not get 'afternoon' at evening) with the +exception that a time will be displayed for the next day, if it is less then +20h in the future. +In these menus you can shift the currently displayed time by pressing +FastRew or FastFwd to move back and forward in time. If you don't have +these keys on your remote, you can access this function by pressing +'0' to toggle the green and yellow button to '<<' and '>>'. This toggling +can be adjusted by setup. + +You can display a progress bar in 'now' and 'next'. When using text2skin you +should use the setup option "text2skin" in the setup option "Show progress in +'Now'"/Show progress in 'Next'" (the setting 'graphical' may also work with +text2skin, but this depends on the selected skin). + +Furthermore you can enable in the setup an favorites list. You can configure +your searchtimers ("Use in favorite list") to display their results in +you favorite list. This list display event in the next 24 hours ordered by time. + +=head2 1.4 Menu setup + +=head3 1.4.1 General + +=over 4 + +=item - B<Hide main menu entry:> + +This hides the main menu entry 'search'. Attention: when the plugin is +assigned to key 'green' then hiding the plugin will give you VDR's +standard schedule menu (see below to avoid this). + +=item - B<Main menu entry:> + +If not hidden, the name of main menu entry can be set here. Default is +'Program guide'. Note: If you set it to something different from the default +then the main menu entry is no longer dependent on the OSD language. Setting +it back to default or empty restores this behavior again. + +=item - B<Start menu:> + +Select the starting menu 'Schedules' or 'Now' + +=back + +=head3 1.4.2 EPG menus + +=over 4 + +=item - B<Ok key:> + +Choose here the behavior of key 'Ok'. You can use it to display the summary +or to switch to the corresponding channel. Note: the functionality of key +'blue' (Switch/Info/Search) depends on this setting. + +=item - B<Red key:> + +Select if you like to have Standard ('Record') or 'Commands' as +assignment for key 'red'. + +=item - B<Blue key:> + +select if you like to have Standard ('Switch') or 'Search' as +assignment for key 'blue'. + +=item - B<Show progress in 'Now':> + +In the menu 'what's on now' you can display a progress bar, that +displays the progress of the current item. When using text2skin you +should use the setup option "text2skin" (the setting 'graphical' may also +work with text2skin, but this depends on the selected skin). + +=item - B<Show channel numbers:> + +Select this if you like to have a leading channel number before each +item in the EPG menus. + +=item - B<Show channel separators:> + +Display channel group separators between channel in the menus +'Overview now',... + +=item - B<Show day separators:> + +Display a day separator between events on different days in the +schedule menu. + +=item - B<Show radio channels:> + +Also list radio channels. + +=item - B<Limit channels from 1 to:> + +If you have a large channel set you can speed up things when you limit the +displayed channels with this setting. Use '0' to disable the limit. If the +current channel is above the limit, the limit is ignored and all channels will +be displayed again. + +=item - B<'One press' timer creation:> + +If set to 'yes' a timer is immediately created when pressing 'Record' as +introduced in vdr-1.3.38, else the timer edit menu is displayed. + +=item - B<Show channels without EPG:> + +Display channels without EPG to allow switching or create a timer. + +=item - B<Time interval for FR/FF [min]:> + +In the menus 'now', 'next', 'user def 1', ... you can shift the +displayed time by pressing FastRew, FastFwd on your remote control. +Adjust the amount of minutes to jump here. + +=item - B<Toggle Green/Yellow:> + +If you don't have FastRew, FastFwd on your remote control, set this to +yes. When pressing '0' in the menus, this toggles the assignment of +the color keys and assigns e.g. '<<' and '>>' to 'green' and 'yellow'. + +=item - B<Show favorites menu:> + +A favorites menu can display a list of your favorite broadcasts. Enable this +if you want an additional menu besides 'Now' and 'Next'. You can choose +between displaying this menu before or after the menus with user-defined +times. Any search can be used as a favorite. You only have to set the option +'Use in favorites menu' when editing a search. + +=item - B<for the next ... hours:> + +This value lets you adjust the timespan used to display the favorites. + +=back + +=head3 1.4.3 User-defined EPG times + +=over 4 + +=item - B<Use user time 1..4:> + +Add up to 4 user-defined times besides 'now' and 'next'. + +=item - B<Description:> + +Name of the user-defined time, e.g. 'Afternoon', 'Prime time', 'Late +night'. + +=item - B<Time:> + +The associated time of the user-defined time. + +=back + +=head3 1.4.4 Timer programming + +=over 4 + +=item - B<Use VDR's timer edit menu:> + +When programming a standard timer epgsearch uses an extended menu, +that also supports a directory item, user defined weekday selection +and subtitle completion. If you are using a patched version of VDR, +that also has an extended timer edit menu and like to use this menu +rather than epgsearch's then set this option to 'Yes'. + +=item - B<Default recording directory:> + +This entry will be used in standard timer programming as default +directory. You can also use EPG category variables (e.g. 'My +Movies~%Category%~%Genre%'). When the timer edit menu is launched +epgsearch tries to replace all variables with the values found in +the description of the event. If not all variables could be replaced +then the directory item is left blank. + +=item - B<Add episode to manual timers:> + +When manually adding a timer epgsearch can automatically add the +episode name to the timer file resulting in a sub-folder for the +later recording, that is named with the episode name. Choose here how +this should be done. 'smart' tries to recognize if this makes +sense. Therefore it checks the length of the event and skips the +subtitle if the event has more than 80min. + +=item - B<Default timer check method:> + +Manual timers can be checked for EPG changes. Here you can setup the default +check method for each channel. The following methods exist: + * no check + * by event ID: checks by an event ID supplied by the channel provider. + * by channel and time: check by the duration match. + +Not all channels provide a proper event ID, so you can setup the default for +each channel here. When programming a manual timer, this default use used in +epgsearch's own timer edit menu. + +=back + +=head3 1.4.5 Search and search timers + +=over 4 + +=item - B<Use search timers:> + +If yes, the plugin makes a background scan of the EPG and adds timers +if it finds matching entries. This applies only to searches that are +marked with 'use as search timer'. + +=item - B<Update interval:> + +The update interval of the background scan for search timers in minutes. + +=item - B<SVDRP port:> + +If you are using a SVDRP port other than 2001 then enter this here +to get the search timers working. + +=item - B<Default Priority:> + +Default priority of generated timers. + +=item - B<Default Lifetime:> + +Default lifetime of generated timers. + +=item - B<Margin at start/stop:> + +Default margins of generated timers. + +=item - B<No announcements when replaying:> + +suppress event announcements while any replay is active. + +=item - B<Recreate timers after deletion:> + +epgsearch remembers by default which timers where already created by search +timers and will not recreate them if they were removed. To disable this +behaviour set this to 'Yes'. + +Default margins of generated timers. + +=item - B<Ignore Pay-TV channels:> + +Set this to 'Yes' if you don't want to have events from Pay-TV channels when +searching for a repeat. + +=item - B<Search templates:> + +Here you can manage search templates which can be used when creating a +search. + +=item - B<Blacklists:> + +Here you can manage blacklists which can be used to suppress unwanted events +within a search. + +=item - B<Channel groups:> + +Here you can setup channel groups (e.g. Sport channels, Pay-TV +channels) that can be used as criterion in searches. The same can +be done in the search edit menu. + +=back + +B<Important>: if you get your EPG from external sources make sure that search +timer updates are disabled while your EPG is updated. The reason for this is +that epgsearch will remove timers without events assigned to them. This +situation can exist while the new EPG is feeded to VDR. A simple way to +disable search timer updates is to use the SVDRP command SETS in your EPG +update script: + +svdrpsend.pl plug epgsearch SETS off + +<your EPG update script> + +svdrpsend.pl plug epgsearch SETS on + +=head3 1.4.6 Timer conflict checking + +=over 4 + +=item - B<Ignore below priority:> + +If a timer will fail with a priority below the given value, you won't get an +OSD message about this and the conflict will be classified as 'not relevant' +in the conflicts overview. + +=item - B<Ignore conflict duration less ... min.:> + +If a conflict will last only the given minutes it will not produce an OSD +message and the conflict will be classified as 'not relevant' +in the conflicts overview. + +=item - B<Only check within next ... days:> + +Here you can specify the day range that should be used for the conflict +check. + +=item - B<After each timer programming:> + +This performs a conflict check after each manual timer programming and - if +the new/modified timer is involved in a conflict - pops up an OSD message +about it. + +=item - B<"When a recording starts:> + +Set this to 'yes' if the conflict check should be performed when a recording starts. +In the case of a conlfict you get immediately a message that informs you about it. +The message is only displayed if the conflict is within the next 2 hours. + +=item - B<After each search timer update:> + +Specify here if you want to have a conflict check after each search timer +update. If set to 'No': + +=item - B<every ... minutes:> + +performs a conflict check in the background every ... minutes and informs +about relevant conflicts via OSD. Set this to '0' to disable this feature. + +=item - B<if conflicts within next ... minutes:> + +=over 4 + +=item - B<every ... minutes:> + +if you like to have a more frequent check and OSD notification when a +conflict appears within the given time, use this feature. + +=back + +=item - B<Avoid notification when replaying:> + +Set this to 'yes' if the don't want to get OSD messages about conflicts if +you currently replay something. Nevertheless messages will be displayed if + the first upcoming conflict is within the next 2 hours. + +=back + +Also have a look at C<epgsearch(4)>, section 'Working with the timer conflict menu'. + +=head3 1.4.7 Email notification + +Please make sure, that 'sendEmail.pl' is in the path of your executables and +that the 'epgsearchupdmail.templ' and 'epgsearchconflmail.templ' exists in +epgsearch's configurations directory! + +=over 4 + +=item - B<Search timer notification:> + +Enable this, if you want to get an email notification, when the search timer +background thread has + + - created a new timer + - modified an existing timer + - deleted a timer, that was void because of EPG changes or other user + actions. + +(Also requires 'Use search timers' in the search timer setup to be activated.) + +=item - B<Timer conflict notification:> + +Enable this, if you want to get an email notification about timer +conflicts. The notification will only include 'relevant' conflicts as +specified in the timer conflict setup. epgsearch will always send a new +notification if there is any change in the current conflicts. + +(Also requires 'After each search timer update' or 'every ... minutes' in the +conflict check setup to be activated.) + +=item - B<Send to:> + +The mail adress of the recipient. Note: Some providers (like Arcor) don't +allow the same adresse for sender and recipient. + +=item - B<Mail method:> + +You can choose between: + + - sendEmail.pl: this is a simply script shipped with epgsearch, that allows + mail delivery also on systems without a configured mail server. Please + copy it to your $PATH + - sendmail: requires a properly configured mail system + +=item - B<Email address:> + +Your full(!) email account address to be used for sending the mail. + +=item - B<SMTP server:> + +The name of your SMTP server to be used for sending the mails. + +=item - B<Use SMTP authentication:> + +Select 'yes' if your account needs authentication to send mails. + +=item - B<AUTH user:> + +Specify the accounts username if your account needs authentication. + +=item - B<AUTH password:> + +Specify the accounts password if your account needs authentication. +Note: The password is saved as plain text. You have to make sure on your own +that your system is safe and no VDR configurations files are visible to non +authorized persons. + +=back + +After the account setup, check if it works with 'Test'. If you are +using 'sendEmail.pl' for mail delivery, there should be something like 'Email +sent successfully' at the end of the test output. The test function is not +available for method 'sendmail'. + +Also have a look at C<epgsearch(4)>, section 'Email notifications'. + +=head1 2. Search timers + +This is quite the same as VDRAdmin's auto-timers, but needs no external +software. When you create a search, you can give it an option to use +it as search timer. Now the plugin scans EPG entries in certain update +intervals (->setup) in the background and creates timers if there +are matching entries. If you don't like to get a new timer, but only +want to be informed about the event set 'Announce only (no timer)' to +yes. +Since these search timers are quite useful for serials, you can set +the option 'serial recording' in a search, which creates timers +whose recordings are stored in a folder with the serials name and +whose entries are named with the episode name. If there is no episode +name, the plugin names the recording with a date/time string. + +To use search timers, you also have to activate them in the plugins setup. +Also edit the SVDRP port, if you are not using the default 2001. + +If you want to trigger a background scan manually simply + +touch /etc/vdr/plugins/epgsearch/.epgsearchupdate + +This can also be part of your shutdown script. (Add here a sleep +afterwards to give the plugin the time to finish the scan.) + +For more info about searchtimers please refer to C<epgsearch(4)>, +'Description of the search process' and 'How do Search Timers work?' + +=head2 2.1 'Avoid repeats' - internals + +This section explains the feature 'Avoid repeats' for a search timer. +Sometimes one cannot avoid double recordings of an event only by +setting the corresponding search criterions. + +Therefore the feature 'avoid repeats' tries to check before creating a +timer, if the same event was already recorded in the past or if there +is a timer that records the same event. If so, there will be no new +timer for the event. + +=head2 2.2 How do we compare two events? + +To check if two events are the same there are many possible settings +for a search timer. You can choose the title, subtitle, description or +extended EPG categories within the description of an event to be +compared with the elements of another event. + +This comparison is always done case-sensitive and for the whole +term. But the description of an event makes an exception of this. +First all text within the description will be truncated that looks +like an extended category entry, e.g. 'Rating: tip'. An extended +category entry is a line of text beginning with max. 40 signs, +followed by ':' and ending with max. 60 further signs. +The reason for this cutting is that some categories like the rating of +an event are not part of the description of the repeat of the same +event. + +The remaining text will now be compared by length. If the difference +is bigger then 90%, then we rate the description of the two events as +different. If not, we apply the Levinsthein-Distance-Algorithm (LD), +which makes a fuzzy text comparison. We accept the description of the +events as equal, if LD returns a match of more then 90%. +Since LD is quite runtime intensive (O(mn)), you should not choose +'compare description' as the only comparison criterion, but combine +it always with other criterions. + +=head2 2.3 How and when do we compare? + +As already mentioned each search timer update checks search timers +with this feature for recordings in the past or an already existing +timer for the same event. + +To remember past recordings epgsearch stores their info in the file +epgsearchdone.data. You can have a look at the contents of this file +calling 'show recordings done' in the 'actions' of the searches menu. +This file only stores info about recordings that are complete, +i.e. that started and stopped just in time. So a broken recording will +not be stored in this file and epgsearch will automatically try to +record the next repeat, if there is any. + +B<How to use it?> + +As you see, the whole feature depends on the quality of the EPG. +After creating such a search timer, you should first check if it does +what is intended. Therefore the menu of search results has an +additional mode for the key 'blue' named 'Timer preview'. Here you can +see, what timers the next update would create. Existing timers are +labeled with 'T', future timers with 'P'. + +Hint: If the programming results in a conflict simply disable the +conflicting timer in the timers menu. The next search timer update, +will try to program a different timer for the same event, if it exists. + +B<When it works not correctly :-)> + +To get a better control of the programming or not-programming of the +timers when using this feature a log file was introduced. When starting +epgsearch with the command line option '-v n' where n is the log level +than you get additional info in the file epgsearch.log. Available log +levels are 0 (no logging) to 3 (extended logging). See also the manual +for the command line options. + +=head1 3. Usage from other plugins or scripts + +See C<epgsearch(4)>. + +=head1 4. Using extended EPG info + +Some EPG providers deliver additional EPG information like the type of +event, the video and audio format, cast,... + +Using tvm2vdr or epg4vdr you can import this into vdr. +To use this information with search timers one has to configure it +with the file epgsearchcats.conf in epgsearchs config directory. The +format of the file is as follows: + + ID|category name|name in menu|values separated by ','(option)|search mode(option) + + - 'ID' should be a unique positive integer + (changing the id later on will force you to re-edit your search timers!) + - 'category name' is the name as delivered by the EPG provider, e.g. 'Genre' + - 'name in menu' is the name displayed in epgsearch. + - 'values' is an optional list of possible values + - 'search mode' specifies the search mode: + text comparison: + 0 - the whole term must appear as substring + 1 - all single terms (delimiters are ',', ';', '|' or '~') + must exist as substrings. This is the default search mode. + 2 - at least one term (delimiters are ',', ';', '|' or '~') + must exist as substring. + 3 - matches exactly + 4 - regular expression + numerical comparison: + 10 - less + 11 - less or equal + 12 - greater + 13 - greater or equal + 14 - equal + 15 - not equal + +Sample files for epgsearchcats.conf are delivered with the plugin in the +directory 'conf'. + +Simply copy the one that fits for you to epgsearchs configurations directory +filename epgsearchcats.conf and then have a look to the search timers +edit menu (after a restart of VDR). + +Since setting up a new epgsearchcats.conf is a lot of work, I've added +a small tool 'createcats', that makes the biggest part of the job. It +should have been compiled with the plugin and exists in the sources +directory. + +See C<createcats(1)> for information about how to use it. + +Internals: epgsearch scans the summary of an event for the category +name followed by ': ' for all categories that have a corresponding +value set in the search timer. The search is case sensitive regarding +the category name as also the value. + +=head1 5. Replacing the standard schedule menu + +To use this plugin as a replacement for the default green key, simply +put the line + + Green @epgsearch + +in your keymacros.conf. If you don't like to get another plugin entry +in your main menu, first hide it by setup. Then you could use my +launcher-plugin and put the line + + Green @launcher x + +in your keymacros.conf, where x is the position of the Epgsearch +plugin within launchers menu listing. + +Attention: Hiding the plugin without using the launcher plugin or +other patches that enable calling hidden plugins will show the standard +schedules menu when you press the green key. This is not needed +anymore after VDR >= 1.3.32. + +Another approach is using a patch to VDR that replaces vdr's standard +schedule menu with epgsearch (vdr-replace-schedulemenu.diff.gz in the +patches subdir, thanks to the author Uwe/egal@vdrportal). When using +this patch the entry should look like + + Gree Schedule + +This patch is already included in some patch collections, like the +Bigpatch. + +=head1 6. Add-ons + +epgsearch delivers 2 'mini'-plugins. Both require an installed epgsearch (but +epgsearch can be hided in the main menu): + +=over 4 + +=item - B<epgsearchonly:> + +For those who only want to use the search feature and/or +search timers or simply want to have a separate main menu entry for the +search feature. This plugin creates a main menu entry 'Search' which calls +epgsearch search menu. +Activation in VDR start script with "-Pepgsearchonly". + +=item - B<conflictcheckonly:> + +The timer conflict check can also have its own main menu +entry which displays epgsearch conflict overview menu. It has a setup option +to display an information about the last check directly in its main menu entry. +Activation in VDR start script with "-Pconflictcheckonly". + +=back + +Have fun! + +Christian Wieninger + +=head1 Advanced description + +See C<epgsearch(4)> or read online + +L<http://winni.vdr-developer.org/epgsearch/README.DE> + +L<http://winni.vdr-developer.org/epgsearch/README> + +L<http://winni.vdr-developer.org/epgsearch/MANUAL> + +=head1 SEE ALSO + +C<epgsearch.conf(5)>, C<epgsearchcats.conf(5)>, C<epgsearchcmds.conf(5)>, C<epgsearchdirs.conf(5)>, C<epgsearchmenu.conf(5)>, C<epgsearchuservars.conf(5)>, C<epgsearchdone.data(5)>, C<epgsearchswitchtimer.conf(5)>, C<epgsearchblacklists.conf(5)>, C<epgsearchchangrps.conf(5)> + +=head1 FILES + +F<epgsearch.conf> + +Searchtimers. See C<epgsearch.conf(5)>. + +F<epgsearchcats.conf> + +Categories, advanced epg. See C<epgsearchcats.conf(5)>. + +F<epgsearchcmds.conf> + +EPG-commands, like the commands in commands.conf. See C<epgsearchcmds.conf(5)>. + +F<epgsearchdirs.conf> + +Pre-defined patches which can be selected while editing an searchtimer. See C<epgsearchdirs.conf(5)>. + +F<epgsearchmenu.conf> + +Configuration of the OSD menu layout. See C<epgsearchmenu.conf(5)>. + +F<epgsearchuservars.conf> + +User defined variables. See C<epgsearchuservars.conf(5)>. + +F<epgsearchdone.data> + +The done-data. See C<epgsearchdone.data(5)>. + +F<epgsearchswitchtimers.conf> + +The switchtimers. See C<epgsearchswitchtimer.conf(5)>. + +F<epgsearchblacklists.conf> + +The blacklist. See C<epgsearchblacklists.conf(5)>. + +F<epgsearchchangrps.conf> + +The channelgroups. See C<epgsearchchangrps.conf(5)>. + +F<epgsearchtemplates.conf> + +Templates for searchtimers. See C<epgsearchtemplates.conf(5)>. + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bugreports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailinglist: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. diff --git a/doc-src/en/epgsearch.4.txt b/doc-src/en/epgsearch.4.txt new file mode 100644 index 0000000..58fa4c5 --- /dev/null +++ b/doc-src/en/epgsearch.4.txt @@ -0,0 +1,880 @@ +=head1 NAME + +F<epgsearch> - Searchtimer and replacement of the VDR program menu + +=head1 OVERVIEW + +Since the README get bigger and bigger this man page shall be used +to explain some things in detail. So it's not really a manual, but an +extended README. + +=head1 CONTENT + + 1. Using variables in the directory entry of a search timer + 2. The format of epgsearch.conf + 3. Description of the search process + 4. How do Search Timers work? + 5. How to trigger a search timer update? + 6. The sources of the 'Select directory' menu + 7. Language dependent commands for EPG + 8. Usage from other plugins or scripts + 9. SVDRP interface + 10. Customizing the EPG menus + 11. Working with the timer conflict menu + 12. User defined variables + 13. Email notifications + +=head1 1. Using variables in the directory entry of a search timer + +If you are using extended EPG information, you can use variables as +part of a directory entry of a search timer. These variables always have +the form '%variable%'. The name of a variable corresponds with the +internal name of an extended EPG info, as specified in the file +epgsearchcats.conf (samples can be found in subdirectory 'conf'). +Example: + + 1|Category|Kategorie|Information,Kinder,Musik,Serie,Show,Spielfilm,Sport|3 + +The category with ID 1 has the internal name 'Category'. So you could +use it with '%Category%'. The names are not case sensitive. Sample +directory entries could look like this: + + My Movies~%Category% + Childrens Movies~%category% + %CATEGORY%~%genre% + +There are also three other variables: %Title%, %Subtitle% and %Channel%. +If you don't use %Title%, the title is always automatically +appended to the directory entry, when a timer will be created. If you +set 'serial recording' to 'yes' in your search timer then also the +subtitle will be automatically appended. So the directory entry + + %Category%~%Genre%~%Title%~%Subtitle% + +is the same as + + %Category%~%Genre% + (with 'serial recording' set to 'yes'). + +The %Channel% variable gets replaced with the name of the channel. + +Attention: Automatically appending title and subtitle will not be +done, if you use the variables %Title% or %Subtitle% in the directory +entry. This allows to form directory entries like this one: + + %Category%~%Genre%~%Title%~%Episode%~%Subtitle% + +There is also another variable %search.query% that will be replaced with the +query of the search timer. + +See also C<epgsearchuservars.conf(5)>. + +=head1 2. The format of epgsearch.conf + +Due to some new features there was a change in the format. The format +is now signed with a comment in the first line. The field delimiter +is B<':'>: + + 1 - unique search timer id + 2 - the search term + 3 - use time? 0/1 + 4 - start time in HHMM + 5 - stop time in HHMM + 6 - use channel? 0 = no, 1 = Interval, 2 = Channel group, 3 = FTA only + 7 - if 'use channel' = 1 then channel id[|channel id] in vdr format, + one entry or min/max entry separated with |, if 'use channel' = 2 + then the channel group name + 8 - match case? 0/1 + 9 - search mode: + 0 - the whole term must appear as substring + 1 - all single terms (delimiters are blank,',', ';', '|' or '~') + must exist as substrings. + 2 - at least one term (delimiters are blank, ',', ';', '|' or '~') + must exist as substring. + 3 - matches exactly + 4 - regular expression + 5 - fuzzy searching (specify tolerance in parameter 42, not available + for EPG categories) + 10 - use title? 0/1 + 11 - use subtitle? 0/1 + 12 - use description? 0/1 + 13 - use duration? 0/1 + 14 - min duration in minutes + 15 - max duration in minutes + 16 - use as search timer? 0/1/2 (with 2 one can specify time margins in + parameter 48/49 where the search timer is active) + 17 - use day of week? 0/1 + 18 - day of week (0 = Sunday, 1 = Monday...; + -1 Sunday, -2 Monday, -4 Tuesday, ...; -7 Sun, Mon, Tue) + 19 - use series recording? 0/1 + 20 - directory for recording + 21 - priority of recording + 22 - lifetime of recording + 23 - time margin for start in minutes + 24 - time margin for stop in minutes + 25 - use VPS? 0/1 + 26 - action: + 0 = create a timer + 1 = announce only via OSD (no timer) + 2 = switch only (no timer) + 27 - use extended EPG info? 0/1 + 28 - extended EPG info values. This entry has the following format + (delimiter is '|' for each category, '#' separates id and value): + 1 - the id of the extended EPG info category as specified in + epgsearchcats.conf + 2 - the value of the extended EPG info category + (a ':' will be translated to "!^colon^!", e.g. in "16:9") + 29 - avoid repeats? 0/1 + 30 - allowed repeats + 31 - compare title when testing for a repeat? 0/1 + 32 - compare subtitle when testing for a repeat? 0/1 + 33 - compare description when testing for a repeat? 0/1 + 34 - compare extended EPG info when testing for a repeat? + This entry is a bit field of the category IDs. + 35 - accepts repeats only within x days + 36 - delete a recording automatically after x days + 37 - but keep this number of recordings anyway + 38 - minutes before switch (if action = 2) + 39 - pause if x recordings already exist + 40 - blacklist usage mode (0 none, 1 selection, 2 all) + 41 - selected blacklist IDs separated with '|' + 42 - fuzzy tolerance value for fuzzy searching + 43 - use this search in favorites menu (0 no, 1 yes) + 44 - number of the search menu template to use (only available if multiple + search result templates are defined in epgsearchmenu.conf) + 45 - auto deletion mode (0 don't delete search timer, 1 delete after given + count of recordings, 2 delete after given days after first recording) + 46 - count of recordings after which to delete the search timer + 47 - count of days after the first recording after which to delete the search + timer + 48 - first day where the search timer is active (see parameter 16) + 49 - last day where the search timer is active (see parameter 16) + 50 - ignore missing EPG categories? 0/1 + 51 - unmute sound if off when used as switch timer + +A ':' in the search term or the directory entry will be translated in +a '|'. If a '|' exists in the search term, e.g. when using regular +expressions, it will be translated to "!^pipe^!" (I know it's ugly ;-)) + +See also C<epgsearch.conf(5)>. + +=head1 3. Description of the search process + +First, for each broadcasting a search text divided by '~' is created, +depending on the settings of 'Use title', 'Use subtitle' and 'Use +description': + + title~subtitle~description + +If "Match case" is not set, the search text and the search term are +transformed to lower case. +Now depending on the search mode, the search term will be looked up in +the search text: + +=over 4 + +=item - 'Phrase' matches + +if the search term is found anywhere in the search text. + +=item - 'at least one word', 'all words' + +first the search term will be split in single words. Delimiters are a +blank and the characters ',' ';' '|' '~'. + +Then we check if at least one or all words appear in the search text. + +=item - 'match exactly' + +matches if search term and search text are identical. + +=item - 'regular expression' + +the search is done with a regular expression. You don't need a leading +and trailing '/' in your search term. +Two standards of regular expression are supported: extended +POSIX and Perl compatible regular expressions (PCRE) (see F<INSTALL>). + +=back + +If the search was successful until now, the other criterions (start +time, duration, week day) are checked. + + +=head1 4. How do Search Timers work? + +With each update, the plugin searches for new matches of your search +timers. If a new match is found then a new timer is created. For +serial recordings, the subtitle is appended to the recording +directory. Many providers deliver the subtitle just 1-2 days before +the event. The plugin uses then a date/time string for the subtitle, +but replaces this one later if the subtitle is present. + +Start and end times of a broadcasting often vary a little bit. To avoid +getting many different timers for the same event, the plugin +checks before adding a new timer, if there is one, that has start and +end times which only differ by a maximum of 10 minutes (or the events +duration if this is less then 10 minutes). If so, the present timer is +modified, else a new timer is created. If the timer was set to inactive +there will be no update. Also manually corrected priority or lifetime +will not be changed when updating. + +If you have set 'Announce only (no timer)' to yes, no timer is +created. Instead you get an OSD message about the event. This message +is displayed at each scan, but only if there is no timer for the event. + +=head1 5. How to trigger a search timer update? + +the update of search timers runs in its own thread. There are several +ways to trigger it: + +=over 4 + +=item - automatically + +after VDR starts there is always an update (after a +few seconds). After this, the setup option 'Update interval' tells +epgsearch when the next update should be done repeatedly (in minutes). + +=item - manually extern + +the thread observes the file '.epgsearchupdate' in the +plugins config directory. When you + + touch /path_to_file/.epgsearchupdate + +this will also trigger an update. So this is a simple solution to +make an update e.g. by a script. + +=item - manually intern + +calling actions or pressing '3' in the menu of searches asks also +for an update. + +=item - from other plugins + +=back + +there's a service +'Epgsearch-updatesearchtimers-v1.0' that can be used with the service +interface of VDR from other plugins with the option to inform via +OSD when the update has finished + +=head1 6. The sources of the 'Select directory' menu + +This menu displays directories, that can be used for search timers or +ordinary timers. The items displayed are read from the following +sources: + + * current recording directories + * current timer directories + * directories used in search timers + * directories specified in F<epgsearchdirs.conf>, + see C<epgsearchdirs.con(5)> + +The menu merges theses directories and displays only distinct +directories. With key 'yellow' one can change the depth of the +directories shown. If there are items, that contain category variables +like '%genre%', these entries are always shown before any other +directories. They are also not level dependent, but are always shown +with their full directory. + +If this menu is called from the timer edit menu and an item is +selected that contains the variables "%title%" or "%subtitle" then the +'file' item of the timer gets cleared, since title or subtitle already +exist in the 'directory' item. +This list can also be accessed via the SVDRP command 'LSRD'. + +=head1 7. Language dependent commands for EPG + +If you like to have a language dependent list of commands simply +translate your present F<epgsearchcmds.conf> to your preferred OSD +language and store it with the filename epgsearchcmds-XXX.conf, where +XXX is the language code from i18n.c: + + { "eng,dos", + "deu,ger", + "slv", + "ita", + "dut,nla,nld", + "por", + "fra,fre", + "nor", + "fin,smi", + "pol", + "esl,spa", + "ell,gre", + "sve,swe", + "rom,rum", + "hun", + "cat,cln", + "rus", + "hrv", + "est", + "dan", + } + +If there are more codes for one language (e.g. "deu,ger") choose +one of them. If there is no language dependent file, epgsearch loads +the file F<epgsearchcmds.conf>. + +See also C<epgsearchcmds.conf(5)>. + +=head1 8. Usage from other plugins or scripts + +Searching the EPG and other functionality can be used by other plugins +or scripts. There are two approaches: + +=head2 8.1. File-based (intended for use in scripts) + +Therefore simply create the file '.epgsearchrc' in the plugins config +directory with the following lines in it: + + Search=your search term + Searchmode=x // 0=phrase, 1=and, 2=or, 3=regular expression + ChannelNr=x // add this line, to search on a specific channel + UseTitle=x // 1(default) or 0 + UseSubtitle=x // 1(default) or 0 + UseDescr=x // 1(default) or 0 + +Then call Epgsearch via svdrpsend.pl (you must have assigned a key +to it), e.g. + + svdrpsend.pl HITK green + +At startup Epgsearch will look for this file and give you the +search results for your search, if it exists. After that the file is +removed. + +A sample script F<recrep.sh>, that searches for the repeats of a recording +exists in the scripts subdirectory of Epgsearch. + +=head2 8.2. via Plugin-Interface (intended for use in plugins) + +A plugin can directly call two functions of epgsearch with only some +lines of source code: + + - searching the EPG for some criteria and display the result list + - extended timer edit menu + +I have added a quick and dirty dummy plugin +(source/vdr-epgsearchclient-0.0.1.tgz), that demonstrates the usage. + +=head1 9. SVDRP interface + +epgsearch implements a SVDRP interface, that can be accessed for +example like this + + svdrpsend.pl PLUG epgsearch LSTS + +the following commands are available: + +=head2 search management: + + * 'LSTS [ID]' to list all searches, or the one with the passed ID + (format is the same as epgsearch.conf) + * 'NEWS <settings>' to add a new search + REMARK: the value of element ID is ignored. epgsearch will always + assign the next free ID + * 'DELS <ID>' to delete the search with ID + * 'EDIS <settings>' to modify an existing search + * 'UPDS [OSD]' to update the search timers. Passing the optional keyword + 'OSD' pops up an OSD message after the update has finished. + * 'MODS ID ON|OFF' turns on/off the option 'Use as search timer'. + * 'UPDD' to reload the file epgsearchdone.data, e.g. after an + external tool has modified it. + * 'SETS <ON|OFF>' to temporarily activate or cancel the search timer background + thread. + * 'FIND <settings>' for searching the EPG + input is the same as with 'NEWS'. output is a list of found events formatted + as 'NEWT' lines. So they can be immediately used to create a new timer for + an event. + * 'QRYS < ID(s) >' to get the results for a search with the given + ID. Multiple IDs can also be passed and have to be separated with '|'. + The results are formatted like this: + + search ID : // the ID of the corresponding search timer + event ID : // VDR event ID + title : // event title, any ':' will be converted to '|' + episode name : // event short text, any ':' will be converted to '|' + event start : // event start in seconds since 1970-01-01 + event stop : // event stop in seconds since 1970-01-01 + channel : // channel ID in VDR's internal representation (e.g. 'S19.2E-1-1101-28106') + timer start : // timer start in seconds since 1970-01-01 (only valid if timer flag is > 0) + timer stop : // timer stop in seconds since 1970-01-01 (only valid if timer flag is > 0) + timer file : // timer file (only valid if timer flag is > 0) + timer flag : // 0 = no timer needed, 1 = has timer, 2 timer planned for next update) + * 'QRYS <settings>' to get the results for a search with the given search + settings. + * 'QRYF [hours]' to get the results for the favorites menu, see QRYS for + result format. The optional parameter specifies the number of hours to + evaluate and defaults to 24h. + +=head2 channel group management: + + * 'LSTC [channel group name]' + list all channel groups or if given the one with name 'group name' + * 'NEWC <channel group settings>' + create a new channel group, format as in epgsearchchangrps.conf + * 'EDIC <channel group settings>' + modify an existing channel group, format as in epgsearchchangrps.conf + * 'DELC <channel group name>' + delete an existing channel group + * 'RENC <old channel group name|new channel group name>' + rename an existing channel group + +=head2 blacklist management: + + * 'LSTB [ID]' to list all blacklists, or the one with the passed ID + (format is the same as epgsearchblacklists.conf) + * 'NEWB <settings>' to add a new blacklist + REMARK: the value of element ID is ignored. epgsearch will always + assign the next free ID + * 'DELB <ID>' to delete the blacklist with ID + * 'EDIB <settings>' to modify an existing blacklist + +=head2 search template management: + + * 'LSTT [ID]' to list all search templates, or the one with the passed ID + (format is the same as epgsearch.conf) + * 'NEWT <settings>' to add a new search template + REMARK: the value of element ID is ignored. epgsearch will always + assign the next free ID + * 'DELT <ID>' to delete the search template with ID + * 'EDIT <settings>' to modify an existing search template + * 'DEFT [ID]' returns the ID of the default search template. When passing an + ID it activates the corresponding template as default. + +=head2 extended EPG categories: + + * 'LSTE [ID] to get the extended EPG categories defined in epgsearchcats.conf + or the one with the given ID. (format is the same as epgsearchcats.conf) + +=head2 misc: + + * 'SETP [option]' returns the current value of the given setup option or a + list of all options with their current values. + The following options can be accessed: + - ShowFavoritesMenu + - UseSearchTimers + +=head2 timer conflicts: + + * 'LSCC [REL]' returns the current timer conflicts. With the option 'REL' only + relevant conflicts are listed. The result list looks like this for example + when we have 2 timer conflicts at one time: + + 1190232780:152|30|50#152#45:45|10|50#152#45 + + '1190232780' is the time of the conflict in seconds since 1970-01-01. It's + followed by list of timers that have a conflict at this time: + + '152|30|50#152#45' is the description of the first conflicting timer. Here: + + '152' is VDR's timer id of this timer as returned from VDR's LSTT command + '30' is the percentage of recording that would be done (0...100) + '50#152#45' is the list of concurrent timers at this conflict + + '45|10|50#152#45' describes the next conflict + + +=head1 10. Customizing the EPG menus + +The file F<epgsearchmenu.conf> in your plugins config directory is used to store +the entries for customizing the EPG menus. You specify the look of each menu +(What's on now, What's on next, What's on at ..., Schedule, Search results, +Favorites) with a separate line. Here's a sample: + + MenuWhatsOnNow=%chnr%:3|%progrt2s%:5| %time% %t_status%:8|%category%:6| %title% ~ %subtitle%:35 + MenuWhatsOnNext=%chnr%:3|%time% %t_status%:8|%category%:8| %title% ~ %subtitle%:35 + MenuWhatsOnElse=%chnr%:3|%time% %t_status%:8|%category%:8| %title% ~ %subtitle%:35 + MenuSchedule=%time% %t_status%:8|%genre%:14| %title% ~ %subtitle%:35 + MenuSearchResults=%chnr%:3|%datesh% %time% %t_status%:14|%genre%:8| %title%%colon% %subtitle%:35 + MenuFavorites=%chnr%:3|%time%:6|%timespan%:7|%t_status%:14|%genre%:8| %title%%colon%%subtitle%:35 + +E.g. the entry 'MenuWhatsOnNow' tells epgsearch how you would like to build a +line for the menu 'What's on now'. This would create a menu line starting with +the channel number, followed by a progress bar in text2skin style, a space of +one char, the start time, the timer status, the EPG category (like "movie") +and finally the title and subtitle. + +The values for MenuWhatsOnNext, MenuWhatsOnElse, MenuSchedule, +MenuSearchResults, MenuFavorites specify the menu 'What's on next', 'What's on +at ...', 'Schedule', 'Search results' and 'Favorites' respectively. If you do +not specify one entry, epgsearch uses it's default menu look. + +'MenuSearchResults' has something special: If you want to have different +layouts for your search results depending on the search, you can use more then +one menu template. Simply define e.g. an additional + + MenuSearchResultsTip of the Day=%chnr%:3|%time_w%:4|%t_status%:3|%genre%:10|%title%%colon% %subtitle%:35 + +This will produce an additional menu item "Result menu layout" in the edit +menu of a search where you can choose between the default menu template and your +own templates. In the example above you will get "Tip of the Day" as selection +entry, since epgsearch simply cuts the leading "MenuSearchResults". When you +display the search results the chosen template will be used instead of the +default one. + +The following variables exist: + + %time% - start time in format HH:MM + %timeend% - end time in format HH:MM + %date% - start date in format TT.MM.YY + %datesh% - start date in format TT.MM. + %time_w% - weekday name + %time_d% - start day in format TT + %time_lng% - start time in seconds since 1970-01-01 00:00 + %timespan% - timespan from now to the beginning of an event, e.g. 'in 15m' + or the time an event is already running, e.g. '10m'. + %length% - length in seconds + %title% - title + %subtitle% - subtitle + %summary% - summary + %htmlsummary% - summary, where all CR are replaced with '<br />' + %eventid% - numeric event ID + %t_status% - timer status ('T', 't', 'R') + %v_status% - VPS status + %r_status% - running status + %status% - complete status, the same as + '%t_status%%v_status%%r_status%' + + %<epg-category>% - a value from the extended EPG categories, specified in + epgsearchcats.conf, like %genre% or %category% + +for the 'Whats on...' and 'Search results' menu there are also: + + %chnr% - channel number + %chsh% - the short channel name (>=vdr-1.3.15) + %chlng% - the 'normal' channel name + %chdata% - VDR's internal channel representation (e.g. 'S19.2E-1-1101-28106') + %progr% - graphical progress bar (not for menu 'Search results') + %progrT2S% - progress bar in text2skin style (not for menu 'Search results') + +some indepent variables: + + %colon% - the sign ':' + %datenow% - current date in format TT.MM.YY + %dateshnow% - current date in format TT.MM. + %timenow% - current time in format HH:MM + %videodir% - VDR video directory (e.g. /video) + %plugconfdir% - VDR plugin config directory (e.g. /etc/vdr/plugins) + %epgsearchdir% - epgsearchs config directory (e.g. /etc/vdr/plugins/epgsearch) + +The variables are not case sensitive. You can also use variables for extended +EPG categories defined in F<epgsearchcats.conf> or use your own user defined +variables defined in F<epgsearchuservars.conf> + +An entry consists of up to 6 tables separated with '|'. The last entry of +each table should declare the table width in chars, separated with ':'. + +If you use a separator like '~', '-' or '#' to separate items like title or +subtitle, e.g. %title% ~ %subtitle%, and the subtitle is empty, then epgsearch +will try to fix this automatically to avoid a trailing separator. + +You should vary the tab width values to fit your needs, since the look often +depends on the selected skin. epgsearchmenu.conf is not reloaded with every +plugin call, since this is only useful when testing the conf file. To activate +the permanent reload for testing your conf, pass the new start parameter '-r' +or '--reloadmenuconf' in your runvdr. + +There's a sample F<epgsearchmenu.conf> in the subdirectory "conf". For a quick try +copy it to your plugins config directory (e.g. /etc/vdr/plugins). + +To enable icons from WarEagleIcon-Patch simply put the line + + WarEagleIcons=1 + +to F<epgsearchmenu.conf>. + +NOTE: As long as there is a file epgsearchmenu.conf with an entry for a special +menu, all setup settings regarding the look of this menu are ignored. + +See also C<epgsearchmenu.con(5)>. + +=head1 11. Working with the timer conflict menu + +If a conflict is detected within the periodic conflict background check you get +an OSD message which informs you about it. Pressing 'Ok' you will get a menu +that displays all relevant conflicts. You can manually call this menu in +epgsearch in the menu 'Search/Actions'. + +Besides the relevant conflicts (relevance is controlled via the setup options +of epgsearch) there may also be conflicts which are not classified as +important. If so, you can press 'Show all' to get the complete list. The menu +title always displays the number of relevant conflicts and the total number. + +The list displays first the time when a conflict appears and then all timers +that will fail here. A timer entry consists of the channel number and its name +followed by the timer priority and the percentage value that shows how much of +the timer will be recorded. Finally the timer's file entry is displayed. + +When you select a timer entry and press 'Ok' or 'Details' you get a new menu +which displays all concurrent timers. This menu allows you to resolve the +conflict by + + - searching a repeat for an event + - disabling a timer + - deleting a timer + - changing the timers start- or stop-time or its priority + - executing any other commands on this timer + +An entry of this menu consists of the sign '>' to indicate an active timer, +the channel number, the start and stop time, the priority, the number of the +device that will do the recording (or 'C' for conflict) and the timer's file +entry. Pressing 'Ok' on a timer entry will show you its event description if +present. + +If one returns from this menu to the conflict overview menu there will be an +automatic update to see if a conflict was really resolved. Some changes to a +timer (like modifying start/stop or deleting a timer) in the conflict details +menu also cause an immediate return to the overview menu and produce an +update. + +=head1 12. User defined variables + +You can create your own variables to be used in any place that supports +variables, like the default recording directory for manually created timers, +the recording directory of a search timer or in your customized EPG menus. +Put them in the file F<epgsearchuservars.conf>. + +Variables looks like %Variablename%. + +"Variablename" can be consist of any alphanumerical character. Space +and special characters are not allowed. + +The variable names are case-insensitive. + +Examples for possible names: + + %Series% %DocuVar1% %ThemesSubtitleDate1% + +=head2 Assignment + + %Series%=New series~Thriller + +The variable %Series% will be assigned with the string "New series~Thriller". + +Assignments are always strings. Spaces stay spaces. + + %Path%=%Series% + +The variable %Path% gets the content of the variable %Series%. + +You can do nearly everything: + + %Path%=%Serie%~Lost + +The variable %Path% contains now the string "New series~Thriller~Lost". + +=head2 Control structures + +You can use simple "if then else" constructions. + +These constructions cannot contain strings, only variables. +Spaces are ignored. + + %Foo%=Other + + %Variable%=%Path% ? %Path% : %Foo% + +If %Path% is not empty, assign the content of %Path% to %Variable%, +otherwise the content of %Foo%. + +"%Path% ?" means "not empty?". You can use other checks. + + %Variable%=%Path%!=5 ? %Path% : %Foo% + +"%Path%!=5 ?" means "is %Path% equal 5?" + +You can also compare variables. + + %Five%=5 + + %Variable%=%Path%!=%Five% ? %Path% : %Foo% + +Other possible checks: + + == equal + != not equal + +=head2 Calling a system command + +You can call external commands. The returned string will be assigned +to a variable + + %uservar%=system(scriptname[, parameters]) + +Calls the script "scriptname" with the parameters defined in the optional list +of 'parameters'. This can be an arbitrary expression containing other user +variables, but not again a system call or a conditional expression. + +Sample: + + %myVar%=system(/usr/local/bin/myscript.sh, -t %title% -s %subtitle% -u %myOtherVar%) + +The script must return a string B<without> line break! + +If the script returns nothing, an empty string will be assigned to the +Variable %Result%. + +=head2 Possible variables + +for a list of already builtin variables refer to the section "Customizing the EPG menus" +Furthermore you can use every variable defined in F<epgsearchcats.conf>. + +See C<epgsearchcats.conf(5)>. + +=head2 EXAMPLES + + # Weekday, Date, Time + %DateStr%=%time_w% %date% %time% + + # Themes or Subtitle or Date + %ThemesSubtitleDate1%=%Subtitle% ? %Subtitle% : %DateStr% + %ThemesSubtitleDate%=%Themes% ? %Themes% : %ThemesSubtitleDate1% + + # Calls this script to get a recording path + %DocuScript%=system(doku.pl, -t %Title% -s %Subtitle% -e %Episode% -th %Themes% -c %Category% -g %Genre%) + %Docu%=%DocuScript% + +=head1 13. Email notification + +If you want to get email notifications about timers added/modified/removed by +the search timer thread or about timer conflicts, first copy the script +'sendEmail.pl' to the place where your executables are (e.g. /usr/local/bin) +and then configure your email account in the setup. Press 'Test' to check if +it works. There should be something like 'Email successfully sent' at the end +of the output. +The content of the mails is defined by the files + + - epgsearchupdmail.templ (for search timer update notifications) + - epgsearchconflmail.templ (for timer conflict notifications) + +You can find sample files in the 'conf' directory. Copy them to epgsearchs +config directory (e.g. /etc/vdr/plugins/epgsearch). + +=head2 Customizing the notifications mails + +The content of the mails can be customized in many ways. You can use plain +text or HTML (see the sample conf/epgsearchupdmail-html.templ). For an update +mail you have to define the following sections: + + - "subject" to be used as mail subject + - "mailbody" the body of the mail: + put '%update.newtimers%' in the place where the list of new timers should + appear. The same for %update.modtimers% and %update.deltimers% for the + list of changed or deleted timers. + - "timer" the description of one timer. This section is used to display one + timer within a timer list, e.g. in %update.newtimers% + +each section is enclosed in a pseudo XML tag. + +The following variables can be used in the section <mailbody>: + + - %update.newtimers% - will be replaced with the list of new timers + created with this update. The timers are + displayed as defined in the section '<timer>' + - %update.countnewtimers% - the number of new timers + - %update.modtimers% - same as %update.newtimers% but for modified + timers. + - %update.countmodtimers% - the number of modified timers + - %update.deltimers% - same as %update.newtimers% but for deleted + timers. (Note: a deleted timer has eventually + no event assigned to it. So all event variables + within the timer section will be substituted to + an empty string.) + - %update.countdeltimers% - the number of deleted timers + - %colon% - the sign ':' + - %datenow% - current date in format TT.MM.YY + - %dateshnow% - current date in format TT.MM. + - %timenow% - current time in format HH:MM + +The following variables can be used in the section <timer>: + + - %timer.date% - date of the timer + - %timer.start% - start time of the timer + - %timer.stop% - stop time of the timer + - %timer.file% - recording directory of the timer + - %timer.chnr% - channel number + - %timer.chsh% - short channel name + - %timer.chlng% - channel name + - %timer.search% - name of the search timer, that created the timer + - %timer.searchid% - id of the search timer, that created the timer + - any event variable (as in '10. Customizing the EPG menus') + - any extended EPG variable as defined in epgsearchcats.conf + - any user variable (as in '12. User defined variables') + +For a conflict notification mail the following sections exist: + + - "subject" to be used as mail subject + - "mailbody" the body of the mail. Put %conflict.conflicts% in the place + where the list of conflict times should appear (Note: there can be more + than one timer conflict at the same time!). A conflict time uses the + section 'conflictsat' to display its content. + - "conflictsat" the description of one time where one or more conflicts + exists. Put %conflict.confltimers% in the place where the list of conflict + timers should appear. + - "confltimer" the description of one conflicting timer + +The following variables can be used in the section <mailbody>: + + - %conflict.count% - complete number of timer conflicts + - %conflict.conflicts% - list of times with conflicting timers + +The following variables can be used in the section <conflictsat>: + + - %conflict.date% - date of the conflict + - %conflict.time% - time of the conflict + - %conflict.confltimers% - list of conflicting timers for this time + +The section <conflicttimer> can use the same variables as the section <timer> +in an update mail (see above). + + +=head1 SEE ALSO + +C<epgsearch(1)>, C<epgsearch.conf(5)>, C<epgsearchuservars.con(5)>, C<epgsearchdirs.conf(5)>, C<epgsearchmenu.conf(5)>, C<epgsearchcmds.conf(5)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + + + diff --git a/doc-src/en/epgsearch.conf.5.txt b/doc-src/en/epgsearch.conf.5.txt new file mode 100644 index 0000000..4299039 --- /dev/null +++ b/doc-src/en/epgsearch.conf.5.txt @@ -0,0 +1,145 @@ +=head1 NAME + +F<epgsearch.conf> - The searchtimers + +=head1 DESCRIPTION + +This file contains the searchtimers. + +Do not edit it manually, you should use SVDRP. + +=head1 SYNTAX + +Due to some new features there was a change in the format. The format +is now signed with a comment in the first line. The field delimiter +is B<':'>: + + 1 - unique search timer id + 2 - the search term + 3 - use time? 0/1 + 4 - start time in HHMM + 5 - stop time in HHMM + 6 - use channel? 0 = no, 1 = Interval, 2 = Channel group, 3 = FTA only + 7 - if 'use channel' = 1 then channel id[|channel id] in VDR format, + one entry or min/max entry separated with |, if 'use channel' = 2 + then the channel group name + 8 - match case? 0/1 + 9 - search mode: + 0 - the whole term must appear as substring + 1 - all single terms (delimiters are blank,',', ';', '|' or '~') + must exist as substrings. + 2 - at least one term (delimiters are blank, ',', ';', '|' or '~') + must exist as substring. + 3 - matches exactly + 4 - regular expression + 10 - use title? 0/1 + 11 - use subtitle? 0/1 + 12 - use description? 0/1 + 13 - use duration? 0/1 + 14 - min duration in minutes + 15 - max duration in minutes + 16 - use as search timer? 0/1 + 17 - use day of week? 0/1 + 18 - day of week (0 = Sunday, 1 = Monday...; + -1 Sunday, -2 Monday, -4 Tuesday, ...; -7 Sun, Mon, Tue) + 19 - use series recording? 0/1 + 20 - directory for recording + 21 - priority of recording + 22 - lifetime of recording + 23 - time margin for start in minutes + 24 - time margin for stop in minutes + 25 - use VPS? 0/1 + 26 - action: + 0 = create a timer + 1 = announce only via OSD (no timer) + 2 = switch only (no timer) + 27 - use extended EPG info? 0/1 + 28 - extended EPG info values. This entry has the following format + (delimiter is '|' for each category, '#' separates id and value): + 1 - the id of the extended EPG info category as specified in + epgsearchcats.conf + 2 - the value of the extended EPG info category + (a ':' will be translated to "!^colon^!", e.g. in "16:9") + 29 - avoid repeats? 0/1 + 30 - allowed repeats + 31 - compare title when testing for a repeat? 0/1 + 32 - compare subtitle when testing for a repeat? 0/1 + 33 - compare description when testing for a repeat? 0/1 + 34 - compare extended EPG info when testing for a repeat? + This entry is a bit field of the category IDs. + 35 - accepts repeats only within x days + 36 - delete a recording automatically after x days + 37 - but keep this number of recordings anyway + 38 - minutes before switch (if action = 2) + 39 - pause if x recordings already exist + 40 - blacklist usage mode (0 none, 1 selection, 2 all) + 41 - selected blacklist IDs separated with '|' + 42 - fuzzy tolerance value for fuzzy searching + 43 - use this search in favorites menu (0 no, 1 yes) + 44 - id of a menu search template + 45 - auto deletion mode (0 don't delete search timer, 1 delete after given + count of recordings, 2 delete after given days after first recording) + 46 - count of recordings after which to delete the search timer + 47 - count of days after the first recording after which to delete the search + timer + 48 - first day where the search timer is active (see parameter 16) + 49 - last day where the search timer is active (see parameter 16) + 50 - ignore missing EPG categories? 0/1 + 51 - unmute sound if off when used as switch timer + +A ':' in the search term or the directory entry will be translated in a +'|'. If a '|' exists in the search term, e.g. when using regular +expressions, it will be translated to "!^pipe^!" (I know it's ugly ;-)) + +There's no need to fill all fields, only the first 11 fields must exist. + + +=head1 EXAMPLE + + #version 2 - DON'T TOUCH THIS! + 1:Kommissar Beck:0:::2:ÖffRecht:0:0:1:0:0:0:::1:0:0:1:%Category%~%Genre%:50:99:10:60:0:0:0::1:0:1:1:0:0:0:0:0 + 2:* Sägebrecht:0:::2:Hauptsender:0:0:0:0:0:0:::0:0:0:0:%Category%~%Genre%:50:99:10:10:0:0:1:1#|2#|3#|4#|5#|6#Marianne Sägebrecht|7#|8#|9#|10#|11#|12#|13#:1:0:1:0:0:0:0:0:0 + +=head1 SEE ALSO + +C<epgsearch(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + diff --git a/doc-src/en/epgsearchblacklists.conf.5.txt b/doc-src/en/epgsearchblacklists.conf.5.txt new file mode 100644 index 0000000..43a752e --- /dev/null +++ b/doc-src/en/epgsearchblacklists.conf.5.txt @@ -0,0 +1,71 @@ +=head1 NAME + +F<epgsearchblacklists.conf> - Blacklist + +=head1 DESCRIPTION + +You can create blacklists in epgsearch and use them in searchtimers. + +A blacklist entry is like a normal searchtimer which is saved in the file +F<epgsearchblacklists.conf>. + +While editing an searchtimer you can select one ore more blacklist entries. + +=head2 USAGE + +Searchtimer "Action" use blacklist "Damme". + +Blacklist entry "Damme" searches "Damme" + +First the searchtimer searches all films with "Action". + +Then for each search result epgsearch will test if the result matches +against "Damme". If so, the result will be dismissed. + +=head1 SYNTAX + +This file uses the same syntax as F<epgsearch.conf> except that theres no <use as searchtimer> field. +So there's a shift by one field from this position. Because that, see C<epgsearch.conf(5)>. + +=head1 SEE ALSO + +C<epgsearch(1)>, C<epgsearch.conf(5)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. diff --git a/doc-src/en/epgsearchcats.conf.5.txt b/doc-src/en/epgsearchcats.conf.5.txt new file mode 100644 index 0000000..08637b4 --- /dev/null +++ b/doc-src/en/epgsearchcats.conf.5.txt @@ -0,0 +1,133 @@ +=head1 NAME + +F<epgsearchcats.conf> - Configuration of the additional EPG information + +=head1 DESCRIPTION + +Some EPG providers deliver additional EPG information like the type of +event, the video and audio format, cast,... + +Using tvm2vdr or epg4vdr you can import this into vdr. To use this +information with search timers one has to configure it with the file +epgsearchcats.conf in your plugins config directory. + +Sample files for F<epgsearchcats.conf> are delivered with the plugin in +the directory 'conf'. + +Simply copy the one that fits for you to your plugins config directory with +filename epgsearchcats.conf and then have a look to the search timers +edit menu (after a restart of VDR). + +Since setting up a new F<epgsearchcats.conf> is a lot of work, I've added +a small tool 'createcats', that makes the biggest part of the job. It +should have been compiled with the plugin and exists in the sources +directory. + +See C<createcats(1)> for information about how to use it. + +B<Internals:> epgsearch scans the summary of an event for the category +name followed by ': ' for all categories that have a corresponding +value set in the search timer. The search is case sensitive regarding +the category name as also the value. + +=head1 SYNTAX + + ID|category name|name in menu|values separated by ','(option)|searchmode(option) + + - 'ID' should be a unique positive integer + (changing the id later on will force you to re-edit your search timers!) + - 'category name' is the name as delivered by the EPG provider, e.g. 'Genre' + - 'name in menu' is the name displayed in epgsearch. + - 'values' is an optional list of possible values + - 'searchmode' specifies the search mode: + text comparison: + 0 - the whole term must appear as substring + 1 - all single terms (delimiters are ',', ';', '|' or '~') + must exist as substrings. This is the default search mode. + 2 - at least one term (delimiters are ',', ';', '|' or '~') + must exist as substring. + 3 - matches exactly + 4 - regular expression + numerical comparison: + 10 - less + 11 - less or equal + 12 - greater + 13 - greater or equal + 14 - equal + 15 - not equal + +=head1 EXAMPLE + +(Lines are shortened for correct displaying) + +Example for EPG from Hörzu, downloaded from epgdata.com with tvmovie2vdr. + + 1|Category|Kategorie|Information,Kinder,Musik,Serie,Show,Spielfilm,Sport|2 + + 2|Genre|Genre|Abenteuer,Action,Wirtschaft,Wissen,Zeichentrick|2 + + 3|Format|Video-Format|16:9,4:3|2 + + 4|Audio|Audio|Dolby Surround,Dolby,Hoerfilm,Stereo|2 + + 5|Year|Jahr||2 + + 6|Cast|Besetzung||2 + + 7|Director|Regisseur||2 + + 8|Moderator|Moderation||2 + + 9|Rating|Bewertung|Großartig besonders wertvoll,Annehmbar,Schwach|2 + + 10|FSK|FSK|6,12,16,18|2 + + 11|Country|Land||2 + + 12|Episode|Episode||4 + + 13|Themes|Thema||4 + +=head1 SEE ALSO + +C<epgsearch(1)>, C<epgsearchcats.conf(5)>, C<createcats(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + diff --git a/doc-src/en/epgsearchchangrps.conf.5.txt b/doc-src/en/epgsearchchangrps.conf.5.txt new file mode 100644 index 0000000..bc55c87 --- /dev/null +++ b/doc-src/en/epgsearchchangrps.conf.5.txt @@ -0,0 +1,65 @@ +=head1 NAME + +F<epgsearchchangrps.conf> - Channel groups + +=head1 DESCRIPTION + +You can define channel groups in epgsearch which can be used in searchtimers. + +In this file the groups will be saved. + +=head1 SYNTAX + +Each line contains one channel group. The line begins with the group name, after the name, +split by '|', the list of channels. + +=head1 EXAMPLE + +(Lines are shortened for clean displaying) + + Private|S19.2E-133-33-46|S19.2E-133-33-51 + ProsiebenSat.1|S19.2E-133-33-46|S19.2E-133-33-47 + RTL World|S19.2E-1-1089-12003||S19.2E-1-1089-12090 + +=head1 SEE ALSO + +C<epgsearch(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. diff --git a/doc-src/en/epgsearchcmds.conf.5.txt b/doc-src/en/epgsearchcmds.conf.5.txt new file mode 100644 index 0000000..2fadf8a --- /dev/null +++ b/doc-src/en/epgsearchcmds.conf.5.txt @@ -0,0 +1,73 @@ +=head1 NAME + +F<epgsearchcmds.conf> - EPG Commands + +=head1 DESCRIPTION + +This file contains, like the file commands.conf or reccmds.conf, commands, which +can be applied to the in the program menu selected event. + +Internal epgsearch has 8 not changeable commands. + +If there is a F<epgsearchcmds.conf>, the commands in it will be appended to +the list of the internal commands, starting with 9. + +=head2 Language + +You can use different files for each language. For example F<epgsearchcmds-eng.conf> +will be loaded if the, in VDR selected, language is english. + +If there is no file for the selected language, epgsearch tries to load +F<epgsearchcmds.conf>. + +=head1 SYNTAX + +Description : Command + +=head1 EXAMPLE + +epg2taste (de): /usr/local/vdr/epg2taste.sh + +=head1 SEE ALSO + +C<epgsearch(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + diff --git a/doc-src/en/epgsearchdirs.conf.5.txt b/doc-src/en/epgsearchdirs.conf.5.txt new file mode 100644 index 0000000..e9aa7cc --- /dev/null +++ b/doc-src/en/epgsearchdirs.conf.5.txt @@ -0,0 +1,103 @@ +=head1 NAME + +F<epgsearchdirs.conf> - List of directories for selecting in epgsearch + +=head1 DESCRIPTION + +This is one source of the 'Select directory' menu. + +This file contain directories which can be used for search timers or +ordinary timers. + +The items displayed are read from the following sources: + + * current recording directories + * current timer directories + * directories used in search timers + * directories specified in F<epgsearchdirs.conf> + +The menu merges theses directories and displays only distinct +directories. With key 'yellow' one can change the depth of the +directories shown. If there are items, that contain category variables +like '%genre%', these entries are always shown before any other +directories. They are also not level dependent, but are always shown +with their full directory. + +If this menu is called from the timer edit menu and an item is +selected that contains the variables "%title%" or "%subtitle" then the +'file' item of the timer gets cleared, since title or subtitle already +exist in the 'directory' item. + +=head1 SYNTAX + +Each line contains a directory. You can use every variable, internal ones +those defined in F<epgsearchuservars.conf> and the variables of the +extended EPG. + +See C<epgsearchcats.conf(5)> and C<epgsearchuservars.conf(5)>. + +Internal ones: + + %time% - start time in format HH:MM + %date% - start date in format TT.MM.YY + %datesh% - start date in format TT.MM. + %time_w% - weekday name + %time_d% - start day in format TT + %time_lng% - start time in seconds since 1970-01-01 00:00 + %title% - title + %subtitle% - subtitle + +=head1 EXAMPLE + + %Category%~%Genre% + %Category%~%Genre%~%Title%~%Episode%: %Subtitle% + Information~Nature~%Title%~%Episode%: %Subtitle% + %Series% + Movie~Action + Movie~Docu + Movie~Thriller + Music + Sports + +=head1 SEE ALSO + +C<epgsearch(1)>, C<epgsearchcats.conf(5)>, C<epgsearchuservars.conf(5)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. diff --git a/doc-src/en/epgsearchmenu.conf.5.txt b/doc-src/en/epgsearchmenu.conf.5.txt new file mode 100644 index 0000000..0dfde69 --- /dev/null +++ b/doc-src/en/epgsearchmenu.conf.5.txt @@ -0,0 +1,144 @@ +=head1 NAME + +F<epgsearchmenu.conf> - Customizing the EPG menus + +=head1 DESCRIPTION + +The file F<epgsearchmenu.conf> in your plugins config directory is used to store +the entries for customizing the EPG menus. You specify the look of each menu +(What's on now, What's on next, What's on at ..., Schedule, Search results, +Favorites) with a separate line. + +=head1 EXAMPLE + + MenuWhatsOnNow=%chnr%:3|%progrt2s%:5| %time% %t_status%:8|%category%:6| %title% ~ %subtitle%:35 + MenuWhatsOnNext=%chnr%:3|%time% %t_status%:8|%category%:8| %title% ~ %subtitle%:35 + MenuWhatsOnElse=%chnr%:3|%time% %t_status%:8|%category%:8| %title% ~ %subtitle%:35 + MenuSchedule=%time% %t_status%:8|%genre%:14| %title% ~ %subtitle%:35 + MenuSearchResults=%chnr%:3|%datesh% %time% %t_status%:14|%genre%:8| %title%%colon% %subtitle%:35 + MenuFavorites=%chnr%:3|%datesh% %time% %t_status%:14|%genre%:8| %title%%colon%%subtitle%:35 + +=head1 SYNTAX + +E.g. the entry 'MenuWhatsOnNow' tells epgsearch how you would like to build a +line for the menu 'What's on now'. This would create a menu line starting with +the channel number, followed by a progress bar in text2skin style, a space of +one char, the start time, the timer status, the EPG category (like "movie") +and finally the title and subtitle. + +The values for MenuWhatsOnNext, MenuWhatsOnElse, MenuSchedule, +MenuSearchResults, MenuFavorites specify the menu 'What's on next', 'What's on +at ...', 'Schedule', 'Search results' and 'Favorites' respectively. If you do +not specify one entry, epgsearch uses it's default menu look. + +'MenuSearchResults' has something special: If you want to have different +layouts for your search results depending on the search, you can use more then +one menu template. Simply define e.g. an additional + + MenuSearchResultsTip of the Day=%chnr%:3|%time_w%:4|%t_status%:3|%genre%:10|%title%%colon% %subtitle%:35 + +This will produce an additional menu item "Result menu layout" in the edit +menu of a search where you can choose between the default menu template and your +own templates. In the example above you will get "Tip of the Day" as selection +entry, since epgsearch simply cuts the leading "MenuSearchResults". When you +display the search results the chosen template will be used instead of the +default one. + +The following variables exist: + + %time% - start time in format HH:MM + %date% - start date in format TT.MM.YY + %datesh% - start date in format TT.MM. + %time_w% - weekday name + %time_d% - start day in format TT + %time_lng% - start time in seconds since 1970-01-01 00:00 + %title% - title + %subtitle% - subtitle + %t_status% - timer status ('T', 't', 'R') + %v_status% - VPS status + %r_status% - running status + %status% - complete status, the same as + '%t_status%%v_status%%r_status%' + %colon% - the sign ':' + %<epg-category>% - a value from the extended EPG categories, specified in + epgsearchcats.conf, like %genre% or %category% + +for the 'Whats on...' and 'Search results' menu there is also: + + %chnr% - channel number + %chsh% - the short channel name (>=vdr-1.3.15) + %chlng% - the 'normal' channel name + %chdata% - VDR's internal channel representation (e.g. 'S19.2E-1-1101-28106') + %progr% - graphical progress bar (not for menu 'Search results') + %progrT2S% - progress bar in text2skin style (not for menu 'Search results') + +the variables are not case sensitive. + +An entry consists of up to 6 tables separated with '|'. The last entry of +each table should declare the table width in chars, separated with ':'. + +If you use a separator like '~', '-' or '#' to separate items like title or +subtitle, e.g. %title% ~ %subtitle%, and the subtitle is empty, then epgsearch +will try to fix this automatically to avoid a trailing separator. + +You should vary the tab width values to fit your needs, since the look often +depends on the selected skin. epgsearchmenu.conf is not reloaded with every +plugin call, since this is only useful when testing the conf file. To activate +the permanent reload for testing your conf, pass the new start parameter '-r' +or '--reloadmenuconf' in your runvdr. + +There's a sample F<epgsearchmenu.conf> in the subdirectory "conf". For a quick try +copy it to your plugins config directory (e.g. /etc/vdr/plugins). + +To enable icons from WarEagleIcon-Patch simply put the line + + WarEagleIcons=1 + +to F<epgsearchmenu.conf>. + +NOTE: As long as there is a file epgsearchmenu.conf with an entry for a special +menu, all setup settings regarding the look of this menu are ignored. + +=head1 SEE ALSO + +C<epgsearch(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + diff --git a/doc-src/en/epgsearchswitchtimers.conf.5.txt b/doc-src/en/epgsearchswitchtimers.conf.5.txt new file mode 100644 index 0000000..bb0e615 --- /dev/null +++ b/doc-src/en/epgsearchswitchtimers.conf.5.txt @@ -0,0 +1,73 @@ +=head1 NAME + +F<epgsearchswitchtimer.conf> - The list of switchtimer + +=head1 DESCRIPTION + +In epgsearch switchtimer can be created via the program menu +or the searchtimers. These switchtimer can switch the channel +at the beginning of the event or only inform you about the +start via OSD. + +The switchtimers are saved in this file. + +=head1 SYNTAX + +The delimiter is ':'. + +This fields are possible: + + 1 - Channel + 2 - Event ID + 3 - Start time + 4 - Minutes to switch before event + 5 - Only inform via OSD + 6 - unmute sound if off + +=head1 EXAMPLE + + S19.2E-1-1089-12060:52221:1153322700:1:0 + +=head1 SEE ALSO + +C<epgsearch(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + diff --git a/doc-src/en/epgsearchtemplates.conf.5.txt b/doc-src/en/epgsearchtemplates.conf.5.txt new file mode 100644 index 0000000..5b19f74 --- /dev/null +++ b/doc-src/en/epgsearchtemplates.conf.5.txt @@ -0,0 +1,59 @@ +=head1 NAME + +F<epgsearchtemplates.conf> - Searchtimer templates + +=head1 DESCRIPTION + +In epgsearch searchtimer templates can be created for easy +creating new searchtimers. + +These templates are saved in this file. + +=head1 SYNTAX + +This file has the same syntax as the epgsearch.conf. + +So please refer to F<epgsearch.conf>, see C<epgsearch.conf(5)>. + +=head1 SEE ALSO + +C<epgsearch(1)>, C<epgsearch.conf(5)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. diff --git a/doc-src/en/epgsearchuservars.conf.5.txt b/doc-src/en/epgsearchuservars.conf.5.txt new file mode 100644 index 0000000..59ef7a9 --- /dev/null +++ b/doc-src/en/epgsearchuservars.conf.5.txt @@ -0,0 +1,182 @@ +=head1 NAME + +F<epgsearchuservars.conf> - User defined variables + +=head1 DESCRIPTION + +In this file you can defines variables which then can be used +in epgsearch in any play where variables are possible. + +=head1 SYNTAX + +Variables looks like %Variablename%. + +"Variablename" can be consist of any alphanumerical character. Space +and special characters are not allowed. + +The variable names are case-insensitive. + +Examples for possible names: + + %Series% %DocuVar1% %ThemesSubtitleDate1% + +=head2 Assignment + + %Series%=New series~Thriller + +The variable %Series% will be assigned with the string "New series~Thriller". + +Assignments are always strings. Spaces stay spaces. + + %Path%=%Series% + +The variable %Path% gets the content of the variable %Series%. + +You can do nearly everything: + + %Path%=%Serie%~Lost + +The variable %Path% contains now the string "New series~Thriller~Lost". + +=head2 Control structures + +You can use simple "if then else" constructions. + +These constructions cannot contain strings, only variables. +Spaces are ignored. + + %Foo%=Other + + %Variable%=%Path% ? %Path% : %Foo% + +If %Path% is not empty, assign the content of %Path% to %Variable%, +otherwise the content of %Foo%. + +"%Path% ?" means "not empty?". You can use other checks. + + %Variable%=%Path%!=5 ? %Path% : %Foo% + +"%Path%!=5 ?" means "is %Path% equal 5?" + +You can also compare variables. + + %Five%=5 + + %Variable%=%Path%!=%Five% ? %Path% : %Foo% + +Other possible checks: + + == equal + != not equal + +=head2 Calling a system command + +You can call external commands. The returned string will be assigned +to a variable + + %Result%=system(scriptname,%Variable1% %Variable2% -f %Variable3% --dir=%Variable4% --dummy) + +Calls the script "scriptname" with the parameters "%Variable1%", +"%Variable2%", etc. The result will be stored in %Result%. + +You can use as many variables as you want. + +If needed, epgsearch will quote the variable. + +The script must return a string B<without> line break! + +If the script returns nothing, an empty string will be assigned to the +Variable %Result%. + +=head2 Possible variables + +The following variables exist: + + %time% - start time in format HH:MM + %timeend% - end time in format HH:MM + %date% - start date in format TT.MM.YY + %datesh% - start date in format TT.MM. + %time_w% - weekday name + %time_d% - start day in format TT + %time_lng% - start time in seconds since 1970-01-01 00:00 + %title% - title + %subtitle% - subtitle + %summary% - summary + %htmlsummary% - summary, where all CR are replaced with '<br />' + %eventid% - numeric event ID + + %<epg-category>% - a value from the extended EPG categories, specified in + F<epgsearchcats.conf>, like %genre% or %category% + + %chnr% - channel number + %chsh% - the short channel name (>=vdr-1.3.15) + %chlng% - the 'normal' channel name + %chdata% - VDR's internal channel representation (e.g. 'S19.2E-1-1101-28106') + + %colon% - the sign ':' + %datenow% - current date in format TT.MM.YY + %dateshnow% - current date in format TT.MM. + %timenow% - current time in format HH:MM + %videodir% - VDR video directory (e.g. /video) + %plugconfdir% - VDR plugin config directory (e.g. /etc/vdr/plugins) + %epgsearchdir% - epgsearchs config directory (e.g. /etc/vdr/plugins/epgsearch) + + +See also C<epgsearchcats.conf(5)>. + +=head1 EXAMPLES + + # Weekday, Date, Time + %DateStr%=%time_w% %date% %time% + + # Themes or Subtitle or Date + %ThemesSubtitleDate1%=%Subtitle% ? %Subtitle% : %DateStr% + %ThemesSubtitleDate%=%Themes% ? %Themes% : %ThemesSubtitleDate1% + + # Calls this script to get a recording path + %DocuScript%=system(doku.pl,%Title%,%Subtitle%,%Episode%,%Themes%,%Category%,%Genre%) + %Docu%=%DocuScript% + +=head1 SEE ALSO + +C<epgsearch(1)>, C<epgsearchcats.conf(5)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + diff --git a/doc-src/en/noannounce.conf.5.txt b/doc-src/en/noannounce.conf.5.txt new file mode 100644 index 0000000..d57475d --- /dev/null +++ b/doc-src/en/noannounce.conf.5.txt @@ -0,0 +1,71 @@ +=head1 NAME + +F<noannounce.conf> - list of events that have been marked to not be announced +via OSD + +=head1 DESCRIPTION + +This file contains a list of events that have been marked to not be announced +via OSD by the search timer background thread. + +If the user presses one of the keys 'Ok', '0', ... '9' while the announcement +of an event is displayed, he will be asked if further announcements of this +event should be disabled for ever (user hit '0' or 'Ok') or for the next 'x' +days (user hit '1' to '9'). After pressing 'Ok' again, this setting will be +stored. + +=head1 FORMAT + +Events are stored one per line, where the fields are separated with ':'. + +The following fields exists: + + 1 - title + 2 - short text + 3 - channel ID + 4 - start time + 5 - next announce time + +=head1 SEE ALSO + +C<epgsearch(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (C) 2004-2007 Christian Wieninger + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + +The author can be reached at cwieninger@gmx.de + +The project's page is at http://winni.vdr-developer.org/epgsearch + +The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. + diff --git a/doc-src/en/timersdone.conf.5.txt b/doc-src/en/timersdone.conf.5.txt new file mode 100644 index 0000000..8ee305e --- /dev/null +++ b/doc-src/en/timersdone.conf.5.txt @@ -0,0 +1,52 @@ +=head1 NAME + +F<timersdone.conf> - list of current timers created by search timers + + +=head1 DESCRIPTION + +This file contains the current timers that were created by search timers. If +the setup option 'Recreate timers after deletion' is set to 'no', epgsearch +uses this list to determine if a timer was already created and cancels +further timer creations. If a corresponding recording was made for any timer +in this list, the timer is automatically removed from it. + +=head1 FORMAT + +Timers are stored one per line, where the fields are separated with ':'. + +The following fields exists: + + 1 - channel-ID + 2 - start time + 3 - stop time + 4 - search timer ID + 5 - event title + 6 - event episode + +=head1 SEE ALSO + +C<epgsearch(1)> + +=head1 AUTHOR (man pages) + +Mike Constabel <epgsearch (at) constabel (dot) net> + +=head1 REPORT BUGS + +Bug reports (german): + +L<http://www.vdr-developer.org/mantisbt/> + +Mailing list: + +L<http://www.vdr-developer.org/mailman/listinfo/epgsearch> + +=head1 COPYRIGHT and LICENSE + +Copyright (c) 2005-2006 Christian Wieninger + +L<http://www.cwieninger.de.vu/> + +This is free software. You may redistribute copies of it under the terms of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>. +There is NO WARRANTY, to the extent permitted by law. |