.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "epgsearch 1" .TH epgsearch 1 "2019-11-01" "perl v5.30.0" "Epgsearch Version 2.4.0" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" epgsearch \- Suchtimer und Ersatz für VDR's Standard\-Programm\-Menü .SH "BESCHREIBUNG" .IX Header "BESCHREIBUNG" EPG-Search kann als Ersatz für \s-1VDR\s0's Standard\-Programm\-Menü verwendet werden. Es sieht genauso aus, erweitert es aber um einige zusätzliche Funktionen. .PP Ein weiterer Punkt sind die sog. Suchtimer die dafür sorgen, dass Timer automatisch programmiert werden. .PP .Vb 3 \& \- Befehle für EPG\-Einträge mit verschiedenen integrierten Befehlen wie \& z.B. \*(AqWiederholungen anzeigen\*(Aq, \*(AqSuche anlegen\*(Aq. Man kann eigene \& Befehle hinzufügen, um z.B. einen VDRAdmin Autotimer anzulegen. \& \& \- Bis zu 4 weitere Zeitpunkte im Menü \*(AqWas läuft jetzt?\*(Aq neben \*(AqJetzt\*(Aq \& und \*(AqNächste\*(Aq, sowie ein optionales Favoritenmenü. \& \& \- Suche im EPG: Anlegen von wiederverwendbaren Abfragen, die auch als \& \*(AqSuchtimer\*(Aq 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 \*(AqJetzt\*(Aq und \*(AqNächste\*(Aq \& \& \- Zeit im Menü \*(AqJetzt\*(Aq, \*(AqNächste\*(Aq kann per Tastendruck verschoben \& werden, z.B. was läuft \*(AqJetzt\*(Aq + 30 Minuten \& \& \- Startmenü \*(AqProgramm\*(Aq oder \*(AqJetzt\*(Aq 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 .Ve .PP 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! .SH "OPTIONEN" .IX Header "OPTIONEN" .IP "\-f file, \-\-svdrpsendcmd=file" 4 .IX Item "-f file, --svdrpsendcmd=file" Pfad zu svdrpsend für externe SVDRP-Kommunikation (Standard ist interne Kommunikation, deshalb ist dieser Paramter normalerweise nicht notwendig) .IP "\-c path, \-\-config=path" 4 .IX Item "-c path, --config=path" zur Angabe eines eigenen Konfigurationsverzeichnisses für alle epgsearch-Dateien, Standard ist '/epgsearch' .IP "\-l file, \-\-logfile=file" 4 .IX 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) .IP "\-v n, \-\-verbose=n" 4 .IX 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) .IP "\-r, \-\-reloadmenuconf" 4 .IX Item "-r, --reloadmenuconf" bewirkt ein Neuladen der epgsearchmenu.conf bei jedem Plugin-Aufruf am \&\s-1OSD.\s0 Kann für das Testen eines selbst angepaßten Menü\-Layouts praktisch sein. .IP "\-m file, \-\-mailcmd=file" 4 .IX 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. .SH "Inhalt" .IX Header "Inhalt" .Vb 10 \& 1. Beschreibung \& 1.1 Menü Befehle \& 1.2 Menü Suche \& 1.2.1 Menü Suche editieren \& 1.2.2 Menü Suchergebnisse \& 1.3 Erweitertes \*(AqJetzt\*(Aq und \*(AqNächste\*(Aq \& 1.4 Menü Setup \& 23. Suchtimer \& 2.1 \*(AqWiederholungen vermeiden\*(Aq \- 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 .Ve .SH "1. Beschreibung" .IX Header "1. Beschreibung" Auf den ersten Blick sieht EPG-Search wie der Programm\-Menü\-Punkt des \&\s-1VDR\s0 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): .SS "1.1 Menü Befehle" .IX Subsection "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: .PP .Vb 10 \& \- 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 \*(Aqbereits aufgezeichnet\*(Aq 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 \& \*(AqSuche/Aktionen/Zeige Umschaltliste\*(Aq aufrufen. \& \- Erzeuge Ausschlussliste: \& Eine Ausschlussliste wird verwendet um bestimmte Sendungen bei der \& Verwendung von Suchtimern zu ignorieren. Ein Suchtimer kann beliebige \& Ausschlusslisten verwenden. .Ve .PP 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). .PP Das Format der Datei ist identisch zu VDRs commands.conf oder reccmds.conf. Wenn ein Befehl ausgeführt wird, werden folgende Parameter übergeben: .PP .Vb 6 \& $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 .Ve .PP 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. .SS "1.2 Menü Suche" .IX Subsection "1.2 Menü Suche" Hier kann man eine Suche im \s-1EPG\s0 erzeugen, editieren, löschen und ausführen. Bedienung und Verhalten ist ähnlich zu \s-1VDR\s0's Timer\-Menü. .PP \fI1.2.1 Menü Suche editieren\fR .IX Subsection "1.2.1 Menü Suche editieren" .PP Das meiste in diesem Menü ist selbsterklärend, deshalb nur einige Anmerkungen zu: .IP "\- \fBSuche:\fR" 4 .IX Item "- 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. .Sp 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. .Sp Hinweis: Die unscharfe Suche ist auf 32 Zeichen begrenzt! .IP "\- \fBSuchmodus:\fR" 4 .IX Item "- 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. \*(L"Alf\*(R"). 'regulärer Ausdruck' erlaubt die Angabe eines regulären Ausdrucks zur Suche. Ein führender und abschließender '/' ist nicht notwendig. Als Standard werden \s-1POSIX\s0 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). .Sp Eine Beschreibung des Suchprozesses gibt es im \s-1MANUAL.\s0 .IP "\- \fBVerw. Kennung für Inhalt\fR" 4 .IX Item "- Verw. Kennung für Inhalt" Einige Provider liefern Kennungen für den Inhalt einer Sendung, z.B. \&\*(L"Film/Drama\*(R", \*(L"Dokumentation\*(R",...(erst ab vdr\-1.7.11 verfügbar) Hiermit können diesen Kennungen ausgewählt werden. Es ist auch eine Mehrfachauswahl möglich, die dann in allen Kennungen übereinstimmen muss (UND\-Verknüpfung). .IP "\- \fBVerw. erweiterte \s-1EPG\s0 Info\fR" 4 .IX Item "- Verw. erweiterte EPG Info" (nur verfügbar, wenn konfiguriert. Siehe weiter unten 'Verwendung erweiterter \s-1EPG\s0 Infos') .IP "\- \fBIgnoriere fehlende Kategorien\fR" 4 .IX Item "- Ignoriere fehlende Kategorien" Wenn 'Ja' gewählt ist, verhindert das, dass eine Sendung aus dem Suchergebnis ausgeschlossen wird, falls die entsprechende Kategorie nicht im \s-1EPG\s0 vorhanden ist. Vorsicht: Ohne weitere Suchkriterien kann das zu einer Flut von Timern führen. .IP "\- \fBVerw. Kanal:\fR" 4 .IX Item "- Verw. Kanal:" sucht nur im angegebenen Kanalbereich, der hinterlegten Kanalgruppe, z.B. 'Öffentl. Rechtl.' oder 'Sportsender'... oder in FTA-Sendern. .Sp \&\s-1ACHTUNG:\s0 Nach einer Änderung der Kanal-Reihenfolge sollten unbedingt diese Einstellungen der Suchtimer kontrolliert werden! .IP "\- \fBVerwende Wochentag:\fR" 4 .IX Item "- Verwende Wochentag:" Neben den Wochentagen kann auch eine benutzerdefinierte Auswahl getroffen werden, um z.B. nur Montags und Freitags zu suchen. .Sp Die benutzerdefinierte Auswahl findet sich am Ende der Liste Son, Mon, ..., Sam, benutzerdefiniert .IP "\- \fBVerwende Ausschlusslisten:\fR" 4 .IX Item "- Verwende Ausschlusslisten:" Ausschlusslisten können benutzt werden, um unerwünschte Sendungen auszuschließen. Hier können nur globale, eine oder mehrere oder alle Ausschlusslisten selektiert werden. Falls ein Suchergebnis auch in einer der gewählten Ausschlusslisten erscheint, wird es verworfen. .IP "\- \fBIn Favoritenmenü verw.:\fR" 4 .IX Item "- 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. .IP "\- \fBLayout des Ergebnismenüs:\fR" 4 .IX Item "- 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. .IP "\- \fBVerwende als Suchtimer:\fR" 4 .IX Item "- 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 läßt sich über die Taste 'Blau' ein Zeitfenster einstellen, in dem der Suchtimer aktiv sein soll. .IP "\- \fBAktion:\fR" 4 .IX Item "- 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 \s-1OSD\s0 vorgenommen werden soll, sobald diese gefunden wird. Eine weitere Möglichkeit ist 'nur umschalten'. Dadurch wird automatisch eine Minute vor Beginn der Sendung auf deren Kanal gewechselt. Ebenso kann mit 'Ankündigen und Umschalten' die Sendung vor ihrem Beginn angekündigt werden und mit 'Ok' zum entsprechenden Kanal gewechselt werden. .IP "\- \fBSerienaufnahme:\fR" 4 .IX Item "- 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. .IP "\- \fBVerzeichnis:\fR" 4 .IX Item "- 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 \s-1MANUAL\s0). .Sp Wenn man erweiterte EPG-Infos von einem Provider erhält, können im Verzeichnis-Eintrag auch Variablen wie \*(L"%Genre%\*(R" oder \*(L"%Category%\*(R" verwendet werden. Diese werden durch die aktuellen erw. EPG-Infos ersetzt, sobald ein Timer erzeugt wird. .Sp Siehe \s-1MANUAL\s0 'Using variables in the directory entry of a search timer') .IP "\- \fBAufn. nach ... Tagen löschen\fR" 4 .IX Item "- 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 .IP "\- \fBPause, wenn ... Aufnahmen existieren\fR" 4 .IX Item "- 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. .IP "\- \fBWiederholung vermeiden\fR" 4 .IX Item "- 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. .IP "\- \fBerlaubte Wiederholungen\fR" 4 .IX Item "- erlaubte Wiederholungen" Will man eine gewisse Anzahl von Wiederholungen einer Sendung erlauben, kann dies hier hinterlegt werden. .IP "\- \fBNur Wiederh. innerhalb ... Tagen\fR" 4 .IX Item "- Nur Wiederh. innerhalb ... Tagen" Falls Wiederholungen nur innerhalb einer anzugebenden Anzahl Tage erlaubt werden sollen, kann dies hier eingestellt werden. 0 entspricht unbegrenzt. .IP "\- \fBVergleiche Titel\fR" 4 .IX Item "- Vergleiche Titel" Einstellung, ob beim Test, ob eine Sendung identisch ist, auch der Titel verglichen werden soll. .IP "\- \fBVergleiche Untertitel\fR" 4 .IX Item "- Vergleiche Untertitel" Einstellung, ob beim Test, ob eine Sendung identisch ist, auch der Untertitel verglichen werden soll. Bei 'falls vorhanden' stuft epgsearch zwei Sendungen nur dann als identisch ein, wenn die Episodennamen gleich sind und nicht leer. .IP "\- \fBVergleiche Beschreibung\fR" 4 .IX Item "- 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 zum Prozentsatz der folgenden Option ähnlich (im Sinne des Levinshtein-Distance-Algorithmus) wird er als gleich behandelt. .ie n .IP "\- ""Min. Übereinstimmung in %""" 4 .el .IP "\- \f(CWMin. Übereinstimmung in %\fR" 4 .IX Item "- Min. Übereinstimmung in %" Die notwendige Übereinstimmung zweier Beschreibung in %. .IP "\- \fBVergl. Zeitpunkt\fR" 4 .IX Item "- Vergl. Zeitpunkt" Manchmal wird eine Sendung häufig innerhalb einer gewissen Zeitspanne (Tag, Woche, Monat,...) wiederholt, die einzelnen Sendungen lassen sich aber anhand des \s-1EPG\s0 Inhalts nicht unterscheiden. Somit ist der Zeitpunkt also die einzige Information. Um damit zu vergelichen, kann man hier die entsprechende Zeitspanne auswählen, um die Wiederholungen zu ignorieren. .IP "\- \fBVergl. Kategorien\fR" 4 .IX Item "- Vergl. Kategorien" Über die Schaltfläche 'Einstellungen' kann angegeben werden welche Kategorien ebenfalls miteinander verglichen werden sollen. .IP "\- \fBPriorität, Lebensdauer, Zeitpuffer Anfang und Ende:\fR" 4 .IX Item "- Priorität, Lebensdauer, Zeitpuffer Anfang und Ende:" Jeder Suchtimer kann für diese Parameter eigene Einstellungen haben. Die Voreinstellung wird im Setup vorgenommen. .IP "\- \fB\s-1VPS:\s0\fR" 4 .IX Item "- VPS:" aktiviert \s-1VPS,\s0 falls im VDR-Setup aktiv und für die gefundene Sendung auch VPS-Informationen vorhanden sind. .IP "\- \fBautomatisch löschen:\fR" 4 .IX Item "- automatisch löschen:" zum automatischen Löschen eines Suchttimers bei folgenden Bedingungen: .Sp .Vb 2 \& * nach x Aufnahmen, oder \& * nach x Tagen nach erster Aufnahme .Ve .Sp Gezählt werden dabei nur erfolgreiche Aufnahmen. Das Löschen erfolgt direkt nach dem Ende der entsprechenden Aufnahme. .PP 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. .PP \fI1.2.2 Menü Suchergebnisse\fR .IX Subsection "1.2.2 Menü Suchergebnisse" .PP 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ü. .SS "1.3 Erweitertes 'Jetzt' and 'Nächste'" .IX Subsection "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. .SS "1.4 Menü Setup" .IX Subsection "1.4 Menü Setup" \fI1.4.1 Allgemein\fR .IX Subsection "1.4.1 Allgemein" .IP "\- \fBHauptmenüeintrag verstecken:\fR" 4 .IX Item "- 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). .IP "\- \fBHauptmenü\-Eintrag\fR" 4 .IX Item "- 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. .IP "\- \fBStartmenü:\fR" 4 .IX Item "- Startmenü:" Auswahl von 'Programm' oder 'Jetzt' als Startmenü. .PP \fI1.4.2 \s-1EPG\s0 Menüs\fR .IX Subsection "1.4.2 EPG Menüs" .IP "\- \fBTaste Ok:\fR" 4 .IX Item "- 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. .IP "\- \fBTaste Rot:\fR" 4 .IX Item "- Taste Rot:" Auswahl, ob man den Standard ('Aufnehmen') oder 'Befehle' als Vorbelegung möchte. .IP "\- \fBTaste Blau:\fR" 4 .IX Item "- Taste Blau:" Auswahl, ob man den Standard ('Umschalten') oder 'Suche' als Vorbelegung möchte. .IP "\- \fBZeige Fortschrittsbalken in 'Jetzt':\fR" 4 .IX Item "- Zeige Fortschrittsbalken in 'Jetzt':" Im Menü 'Jetzt' kann ein Fortschrittsbalken angezeigt werden, der den Fortschritt der laufenden Sendung anzeigt. .IP "\- \fBZeige Kanalnummer:\fR" 4 .IX Item "- Zeige Kanalnummer:" auswählen, um eine führende Programmnummer vor jedem EPG-Eintrag anzuzeigen. .IP "\- \fBZeige Kanal-Separatoren:\fR" 4 .IX Item "- Zeige Kanal-Separatoren:" zur Anzeige einer Trennzeile zwischen Kanalgruppen im Menü \&'Übersicht \- Jetzt' ... .IP "\- \fBZeige Tages-Separatoren:\fR" 4 .IX Item "- Zeige Tages-Separatoren:" zur Anzeige einer Trennzeile zwischen Sendungen unterschiedlicher Tage im Menü 'Programm'. .IP "\- \fBZeige Radiokanäle:\fR" 4 .IX Item "- Zeige Radiokanäle:" Zeigt auch Radiokanäle an. .IP "\- \fBLimit channels from 1 to:\fR" 4 .IX Item "- 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. .IP "\- \fBTimer mit 'Aufnehmen' sofort anlegen:\fR" 4 .IX Item "- Timer mit 'Aufnehmen' sofort anlegen:" Falls 'Ja' wird ein Timer sofort erzeugt, sobald man 'Aufnehmen' drückt, sonst wird das Timer\-Edit\-Menü angezeigt. .IP "\- \fBZeige Kanäle ohne \s-1EPG:\s0\fR" 4 .IX Item "- Zeige Kanäle ohne EPG:" zur Anzeige von Programmen ohne \s-1EPG,\s0 um auf diese umschalten zu können oder einen Timer zu programmieren .IP "\- \fBTimer mit 'Aufnehmen' sofort anlegen:\fR" 4 .IX Item "- Timer mit 'Aufnehmen' sofort anlegen:" Falls 'Ja' wird nach Drücken von 'Aufnahme' sofort ein Timer angelegt, falls 'Nein' erscheint das Timer\-Edit\-Menü. .IP "\- \fBZeitintervall für \s-1FR/FF\s0 [min]:\fR" 4 .IX Item "- 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. .IP "\- \fBGrün/Gelb umschalten:\fR" 4 .IX Item "- 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. .IP "\- \fBZeige Favoriten\-Menü:\fR" 4 .IX Item "- 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. .IP "\- \fBfür die nächsten ... Stunden:\fR" 4 .IX Item "- für die nächsten ... Stunden:" Mit diesem Wert wird die Zeitspanne eingestellt, für die Favoriten angezeigt werden sollen. .PP \fI1.4.3 Benutzerdef. EPG-Zeiten\fR .IX Subsection "1.4.3 Benutzerdef. EPG-Zeiten" .IP "\- \fBBenutzerdef. Zeit 1..4:\fR" 4 .IX Item "- Benutzerdef. Zeit 1..4:" Bis zu 4 benutzerdefinierte Zeiten können zu 'Jetzt' und 'Nächste' hinzugefügt werden. .IP "\- \fBBeschreibung:\fR" 4 .IX Item "- Beschreibung:" Name der benutzerdef. Zeit, z.B. 'Nachmittags', 'Abends', \&'Spätabends'. .IP "\- \fBZeit:\fR" 4 .IX Item "- Zeit:" zugehörige Uhrzeit. .PP \fI1.4.4 Timer-Programmierung\fR .IX Subsection "1.4.4 Timer-Programmierung" .IP "\- \fB\s-1VDR\s0's Time\-Edit\-Menü verw.\fR" 4 .IX Item "- 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 \s-1VDR\s0 verwendet der ebenfalls ein erweitertes Timer\-Edit\-Menü anbietet und lieber dieses verwenden will, dann einfach diese Option auf 'Ja' setzen. .IP "\- \fBStandard Aufn. Verzeichnis:\fR" 4 .IX Item "- 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. .IP "\- \fBUntertitel in manuellen Timern:\fR" 4 .IX Item "- 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. .IP "\- \fBStandard\-Timer\-Prüfmethode:\fR" 4 .IX Item "- Standard-Timer-Prüfmethode:" Manuell angelegte Timer können auf Änderungen im \s-1EPG\s0 ü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. .Sp 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. .PP \fI1.4.5 Suche und Suchtimer\fR .IX Subsection "1.4.5 Suche und Suchtimer" .IP "\- \fBVerwende Suchtimer:\fR" 4 .IX Item "- 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. .Sp Suchtimer werden immer lokal erzeugt, auch wenn ein anderer Defaulthost für Aufnahmen definiert ist. .IP "\- \fBAktualisierungsintervall:\fR" 4 .IX Item "- Aktualisierungsintervall:" Das Intervall in Minuten, in dem die Hintergrundsuche vorgenommen wird. .IP "\- \fB\s-1SVDRP\s0 Port:\fR" 4 .IX Item "- SVDRP Port:" Falls nicht der Standard-SVDRP-Port 6419 (2001 vor vdr\-1.7.15) verwendet wird, dann bitte hier anpassen, damit die Suchtimer funktionieren. .IP "\- \fBPriorität, Lebensdauer und Zeitpuffer für Anfang und Ende:\fR" 4 .IX Item "- Priorität, Lebensdauer und Zeitpuffer für Anfang und Ende:" Voreinstellungen .IP "\- \fBKeine Ankündigung bei Wiedergabe:\fR" 4 .IX Item "- Keine Ankündigung bei Wiedergabe:" zum Unterdrücken von Sendungs\-Ankündigungen während einer aktiven Wiedergabe. .IP "\- \fBTimer nach Löschen neuprogrammieren:\fR" 4 .IX Item "- 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. .IP "\- \fBPrüfe ob \s-1EPG\s0 für ... [h] existiert:\fR" 4 .IX Item "- Prüfe ob EPG für ... [h] existiert:" Falls \s-1EPG\s0 von externen Anbietern bezogen wird, kann es vorkommenm, dass hier auch mal etwas schiefläuft und somit wegen fehlendem \s-1EPG\s0 Aufzeichnungen verlorengehen. Hiermit kann geprüft werden, ob für die nächsten ... Stunden \s-1EPG\s0 bei den gewünschten Sendern vorhanden ist. Mit '0' wird die Prüfung deaktiviert. .ie n .IP "\- ""per OSD warnen:""" 4 .el .IP "\- \f(CWper OSD warnen:\fR" 4 .IX Item "- per OSD warnen:" falls ja, erscheint die Warnung als OSD-Einblendung .ie n .IP "\- ""per Mail warnen:""" 4 .el .IP "\- \f(CWper Mail warnen:\fR" 4 .IX Item "- per Mail warnen:" falls ja, wird die Warnung per Mail versandt. Bitte das Email-Konto unter Email-Benachrichtigung konfigurieren. .ie n .IP "\- ""zu prüfende Kanalgruppe:""" 4 .el .IP "\- \f(CWzu prüfende Kanalgruppe:\fR" 4 .IX Item "- zu prüfende Kanalgruppe:" hier die Kanalgruppe auswählen, für die die Prüfung durchgeführt werden soll. Gegebenefalls zuvor unter Kanalgruppen anlegen. .IP "\- \fBPayTV-Sender ignorieren:\fR" 4 .IX Item "- PayTV-Sender ignorieren:" Auf 'Ja' setzen, wenn man bei der Suche nach Wiederholungen keine Sendungen von PayTV-Sendern haben will. .IP "\- \fBSuch-Vorlagen:\fR" 4 .IX Item "- Such-Vorlagen:" Hier können Suchvorlagen verwaltet werden, die beim Anlegen neuer Suchen verwendet werden können. .IP "\- \fBAusschlusslisten:\fR" 4 .IX Item "- Ausschlusslisten:" Hier können Ausschlusslisten verwalten werden. Diese können innerhalb einer Suche verwendet werden um unerwünschte Sendungen zu vermeiden. Eine Ausschlussliste kann auch als global gekennzeichnet werden. Da die Standardeinstellung beim Suchtimer für die Option 'Ausschlusslisten verw.' auf 'nur globale' steht, kann man somit einfach unerwünschte Sendungen von allen Suchtimern ausschließen. Ausnahme: Falls beim Suchtimer die Option \&'Ausschlusslisten verw.: keine' gewählt ist, hat eine globale Ausschlussliste keine Auswirkung. Ebenso werden globale Ausschlusslisten bei der Suche nach Wiederholungen über das \s-1OSD\s0 ignoriert. .IP "\- \fBKanalgruppen:\fR" 4 .IX Item "- 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. .PP \&\fBWichtig\fR: wenn der \s-1EPG\s0 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 \s-1EPG\s0 an \s-1VDR\s0 übermittelt wird, kann diese Situation auftreten. Am einfachsten geht das mit dem SVDRP-Befehl \&\s-1SETS\s0 im EPG-Update-Skript: .PP svdrpsend plug epgsearch \s-1SETS\s0 off .PP .PP svdrpsend plug epgsearch \s-1SETS\s0 on .PP \fI1.4.6 Timer\-Konflikt\-Prüfung\fR .IX Subsection "1.4.6 Timer-Konflikt-Prüfung" .IP "\- \fBIgnoriere unter Priorität:\fR" 4 .IX Item "- 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. .IP "\- \fBIgnoriere Konfliktdauer unter ... Min.:\fR" 4 .IX Item "- 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. .IP "\- \fBPrüfe nur die nächsten ... Tage:\fR" 4 .IX Item "- Prüfe nur die nächsten ... Tage:" Hier kann der Zeitraum der Prüfung angegeben werden. .IP "\- \fBKonflikte auch für Remote-Timer prüfen:\fR" 4 .IX Item "- Konflikte auch für Remote-Timer prüfen:" Falls SVDRPPeering aktiv ist, werden auch Konflikte bei entfernten Timern überpüft. Dazu muss am entsprechenden Remote-Rechner das epgsearch-Plugin ebenfalls aktiviert sein. Default ist nein. .IP "\- \fBNach jeder Timer-Programmierung:\fR" 4 .IX Item "- 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. .IP "\- \fBBeim Beginn einer Aufnahme:\fR" 4 .IX Item "- 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. .IP "\- \fBNach jedem Suchtimer-Update:\fR" 4 .IX Item "- Nach jedem Suchtimer-Update:" Hier kann eingestellt werden, ob eine Konfliktprüfung nach jedem Suchtimer-Update erfolgen soll. Falls nicht: .IP "\- \fBnach ... Minuten:\fR" 4 .IX Item "- nach ... Minuten:" gibt an nach wievielen Minuten im Hintergrund eine automatische Konfliktprüfung erfolgen soll. Bei relevanten Konflikten erfolgt eine Nachricht per \s-1OSD.\s0 Mit '0' wird diese Funktion deaktiviert. .IP "\- \fBWenn nächster Konflikt in ... Minuten:\fR" 4 .IX Item "- Wenn nächster Konflikt in ... Minuten:" Wenn nächster Konflikt in ... Minuten eintritt, verwende folgendes Prüfintervall. .RS 4 .IP "\- \fBalle ... Minuten:\fR" 4 .IX Item "- alle ... Minuten:" um einen Konflikt in Kürze nicht zu übersehen, kann hier ein kürzeres Prüfintervall eingestellt werden. .RE .RS 4 .RE .IP "\- \fBVermeide Nachricht bei Wiedergabe:\fR" 4 .IX Item "- 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. .PP Bitte ebenfalls den Abschnitt 'Working with the timer conflict menu' im \s-1MANUAL\s0 berücksichtigen. .PP \fI1.4.7 Email-Benachrichtigungen\fR .IX Subsection "1.4.7 Email-Benachrichtigungen" .PP (Bitte sicherstellen, dass 'sendEmail.pl' im Pfad der ausführbaren Dateien liegt und 'epgsearchupdmail.templ' und 'epgsearchconflmail.templ' im Konfig-Verzeichnis von epgsearch existieren!) .IP "\- \fBSuchtimer-Benachrichtigung:\fR" 4 .IX Item "- Suchtimer-Benachrichtigung:" Diese Option aktivieren, wenn man eine Email-Benachrichtigung wünscht, sobald der Suchtimer-Hintergrund-Thread .Sp .Vb 4 \& \- 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. .Ve .Sp (Dazu muss ebenfalls die Option 'Verwende Suchtimer' im Suchtimer-Setup aktiv sein.) .IP "\- \fBZeit zwischen Mails [h]:\fR" 4 .IX Item "- Zeit zwischen Mails [h]:" Für Benachrichtigungen zu Suchtimern kann hier angegeben werden, welchen Mindestabstand in Stunden die Mails haben sollen. Sobald die entsprechende Zeit verstrichen ist, wird eine Mail nach dem nächsten Suchtimer-Update versandt. Der Wert '0' bedeutet keine Verzögerung und bewirkt einen sofortigen Mailversand. .IP "\- \fBTimer-Konflikt-Benachrichtigung:\fR" 4 .IX Item "- 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. .Sp (Dazu muss ebenfalls die Option 'Nach jedem Suchtimer\-Update' oder 'nach \&... Minuten' im Timer-Konflikt-Setup aktiv sein.) .IP "\- \fBEmail-Adresse:\fR" 4 .IX Item "- 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. .IP "\- \fBMail-Methode:\fR" 4 .IX Item "- Mail-Methode:" Zur Auswahl stehen .Sp .Vb 4 \& \- 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. .Ve .IP "\- \fBEmail-Adresse:\fR" 4 .IX Item "- Email-Adresse:" Hier bitte die volle (!) Email-Adresse hinterlegen, von der die Nachricht versandt werden soll. .IP "\- \fB\s-1SMTP\s0 Server:\fR" 4 .IX Item "- SMTP Server:" Der Name des \s-1SMTP\s0 Servers, über den der Mailversand erfolgt. .IP "\- \fBVerw. SMTP-Authentifizierung:\fR" 4 .IX Item "- Verw. SMTP-Authentifizierung:" \&'Ja' wählen wenn das Emailkonto eine SMTP-Authentifizierung für den Emailversand benötigt. .IP "\- \fBAUTH-Benutzer:\fR" 4 .IX Item "- AUTH-Benutzer:" Hier bitte den Benutzernamen angeben, falls das Email-Konto mit Authentifizierung arbeitet. .IP "\- \fBAUTH-Passwort:\fR" 4 .IX Item "- 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. .PP 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. .PP Bitte ebenfalls den Abschnitt 'Email notifications' im Manual berücksichtigen. .SH "2. Suchtimer" .IX Header "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 \*(L"Serienaufnahme\*(R" 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. .PP Die Suchtimer-Funktion muss ausserdem im Setup aktiviert werden. Falls für \s-1SVDRP\s0 nicht der Standardport verwendet wird, bitte ebenfalls im Setup eintragen. .PP Falls man eine Hintergrund-Suche manuell anstoßen will, genügt ein .PP touch /etc/vdr/plugins/epgsearch/.epgsearchupdate .PP 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). .PP Mehr Infos zu Suchtimern gibts im \s-1MANUAL\s0 unter 'Description of the search process' und 'How do Search Timers work?'. .SH "2.1 'Wiederholungen vermeiden' \- Im Detail" .IX Header "2.1 'Wiederholungen vermeiden' - Im Detail" Hier soll erklärt werden wie die Option 'Wiederholungen vermeiden' eines Suchtimers funktioniert. .PP Nicht immer lässt sich durch entsprechende Suchkriterien vermeiden, dass auch Timer für Wiederholungen erzeugt werden. .PP 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. .SS "2.2 Wie funktioniert der Vergleichstest zwischen 2 Sendungen?" .IX Subsection "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. .PP 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. .PP 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 (\s-1LD\s0), der einen Fuzzy-Textvergleich macht, ein Test vorgenommen. Hier wird die Beschreibung als gleich akzeptiert, wenn \s-1LD\s0 mehr als 90% Identität zurückgibt. .PP 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. .SS "2.3 Wie und wo wird der Vergleichstest eingesetzt?" .IX Subsection "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. .PP 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. .PP \&\fBWie verwenden?\fR .PP 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. .PP 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. .PP \&\fBWenn es nicht richtig funktioniert :\-)\fR .PP 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 \s-1MANUAL\s0 für \&'command line options'. .SH "3. Verwendung der Suche durch andere Plugins oder Skripte" .IX Header "3. Verwendung der Suche durch andere Plugins oder Skripte" Siehe \f(CWepgsearch(4)\fR. .SH "4. Verwendung erweiterter EPG Infos" .IX Header "4. Verwendung erweiterter EPG Infos" Einige \s-1EPG\s0 Provider liefern zusätzliche \s-1EPG\s0 Infos wie die Art der Sendung, das Video und Audio Format, die Besetzung,... in der Beschreibung der Sendung. .PP Anmerkung: Dies hat nichts mit den content descriptors seit vdr\-1.7.11 zu tun, die als zusätzliche Daten nach einem gemeinsamen Standard aufgeliefert werden. Leider liefern nicht alle Provider diese Daten oder setzen die Kennungen nicht korrekt. Deshalb gibt es den Ansatz der \*(L"erweiterten \s-1EPG\s0 Infos\*(R", der versucht diese Information aus der Inhaltsbeschreibung zu extrahieren. .PP Mit tvmovie2vdr oder epg4vdr können diese Daten in den \s-1VDR\s0 importiert werden. .PP 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. .PP Das Format dieser Datei ist folgendes: .PP .Vb 1 \& ID|category name|name in menu|values separated by \*(Aq,\*(Aq(option)|searchmode(option) \& \& \- \*(AqID\*(Aq sollte eine eindeutige ganze Zahl sein \& Achtung: Ändert man später aus irgendeinem Grund diese ID müssen \& die Suchtimer neu editiert werden! \& \- \*(Aqcategory name\*(Aq ist der Name der Info lt. EPG Provider, z.B. \*(AqGenre\*(Aq \& \- \*(Aqname in menu\*(Aq ist der Name im Menü von epgsearch. \& \- \*(Aqvalues\*(Aq ist eine optionale Liste von Werten für diese Info. \& \- \*(Aqsearchmode\*(Aq gibt optional an, wie gesucht werden soll: \& Textvergleich: \& 0 \- Der gesamte Begriff muss als Substring erscheinen \& 1 \- Die einzelnen Worte (getrennt durch \*(Aq,\*(Aq, \*(Aq;\*(Aq, \*(Aq|\*(Aq oder \& \*(Aq~\*(Aq) müssen alle als Substring auftauchen. Diese Einstellung ist \& der Standardwert. \& 2 \- mindestens ein Wort (getrennt durch \*(Aq,\*(Aq, \*(Aq;\*(Aq, \*(Aq|\*(Aq oder \& \*(Aq~\*(Aq) 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 .Ve .PP Beispiel-Dateien für epgsearchcats.conf kommen mit dem Plugin im Verzeichnis 'conf'. Einfach die passende ins epgsearch-Konfig-Verzeichnis als epgsearchcats.conf kopieren, \s-1VDR\s0 neu starten und dann das Eingabe\-Menü eines Suchtimers aufrufen. .PP 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: .PP createcats /pfad_zu/epg.data .PP Dieses Tool scannt nun die vorhandenen \s-1EPG\s0 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') .PP 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. .SH "5. Ersetzen des Standardmenü" .IX Header "5. Ersetzen des Standardmenü" Um das Plugin als Ersatz für \s-1VDR\s0's Standard\-Menü zu verwenden, genügt es die Zeile .PP .Vb 1 \& Green @epgsearch .Ve .PP 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 \*(L"Grün\*(R" aufrufen zu können, könnte man z.B. mein launcher-Plugin verwenden und die Zeile .PP .Vb 1 \& Green @launcher x .Ve .PP in die keymacros.conf schreiben, wobei x die Position von epgsearch innerhalb des launcher listings ist. .PP Ein weiterer Ansatz ist ein Patch gegen \s-1VDR,\s0 der das Standardmenü \&'Programm' gegen epgsearch austauscht. Hierzu \s-1VDR\s0 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 .PP .Vb 1 \& Green Schedule .Ve .PP heißen. Dieser Patch ist bereits in manchen Patchsammlungen, z.B. Bigpatch, enthalten. .SH "6. Addons" .IX Header "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): .IP "\- \fBepgsearchonly:\fR" 4 .IX Item "- 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 \*(L"Suche\*(R" erzeugt, der einen direkt in das Suchenmenü führt. Aktivierung im VDR-Startskript mit \*(L"\-Pepgsearchonly\*(R". .IP "\- \fBconflictcheckonly:\fR" 4 .IX Item "- 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 \*(L"\-Pconflictcheckonly\*(R". .PP Viel Spass! .PP Christian Wieninger .SH "Ausführliche Beschreibung" .IX Header "Ausführliche Beschreibung" Die ausführliche Beschreibung der internen Funktionen des Plugins findest Du in der Datei \s-1MANUAL,\s0 die dem Plugin beigelegt sein sollten. .PP Ob Du diese auf deinem System hast verrät dir .PP \&\f(CW\*(C`locate epgsearch*/MANUAL\*(C'\fR .PP Sollte Deine Distribution diese Dateien nicht enthalten, kannst Du sie dir online durchlesen .PP .PP .PP .SH "SIEHE AUCH" .IX Header "SIEHE AUCH" \&\f(CW\*(C`epgsearch.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchcats.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchcmds.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchdirs.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchmenu.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchuservars.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchdone.data(5)\*(C'\fR, \f(CW\*(C`epgsearchswitchtimer.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchblacklists.conf(5)\*(C'\fR, \f(CW\*(C`epgsearchchangrps.conf(5)\*(C'\fR .SH "DATEIEN" .IX Header "DATEIEN" \&\fIepgsearch.conf\fR .PP Enthält die Suchtimer. Siehe \f(CW\*(C`epgsearch.conf(5)\*(C'\fR. .PP \&\fIepgsearchcats.conf\fR .PP Enthält die Kategorien des erweiterten \s-1EPG.\s0 Siehe \f(CW\*(C`epgsearchcats.conf(5)\*(C'\fR. .PP \&\fIepgsearchcmds.conf\fR .PP Enthält Befehle ähnlich der commands.conf, die auf EPG\-Einträge angewandt werden können. Siehe \f(CW\*(C`epgsearchcmds.conf(5)\*(C'\fR. .PP \&\fIepgsearchdirs.conf\fR .PP Enthält Pfade die beim Bearbeiten eines Suchtimers ausgewählt werden können. Siehe \f(CW\*(C`epgsearchdirs.conf(5)\*(C'\fR. .PP \&\fIepgsearchmenu.conf\fR .PP Enthält die vom User gewählte Konfiguration der \s-1OSD\s0 Menüdarstellung. Siehe \f(CW\*(C`epgsearchmenu.conf(5)\*(C'\fR. .PP \&\fIepgsearchuservars.conf\fR .PP Enthält die User-Variablen. Siehe \f(CW\*(C`epgsearchuservars.conf(5)\*(C'\fR. .PP \&\fIepgsearchdone.data\fR .PP Enthält die done-Liste. Siehe \f(CW\*(C`epgsearchdone.data(5)\*(C'\fR. .PP \&\fIepgsearchswitchtimers.conf\fR .PP Enthält die Umschalttimer. Siehe \f(CW\*(C`epgsearchswitchtimer.conf(5)\*(C'\fR. .PP \&\fIepgsearchblacklists.conf\fR .PP Enthält die Ausschlussliste. Siehe \f(CW\*(C`epgsearchblacklists.conf(5)\*(C'\fR. .PP \&\fIepgsearchchangrps.conf\fR .PP Enthält die Kanalgruppen. Siehe \f(CW\*(C`epgsearchchangrps.conf(5)\*(C'\fR. .PP \&\fIepgsearchtemplates.conf\fR .PP Enthält die Vorlagen für Suchtimer. Siehe \f(CW\*(C`epgsearchtemplates.conf(5)\*(C'\fR. .SH "AUTOR (man pages)" .IX Header "AUTOR (man pages)" Mike Constabel .SH "FEHLER MELDEN" .IX Header "FEHLER MELDEN" Fehlerberichte bitte im Bugtracker. .PP .PP Mailinglist: .PP .SH "COPYRIGHT and LIZENZ" .IX Header "COPYRIGHT and LIZENZ" Copyright © 2004\-2010 Christian Wieninger .PP Dieses Programm ist freie Software. Sie können es unter den Bedingungen der \s-1GNU\s0 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. .PP Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es Ihnen von Nutzen sein wird, aber \s-1OHNE IRGENDEINE GARANTIE,\s0 sogar ohne die implizite Garantie der \s-1MARKTREIFE\s0 oder der \s-1VERWENDBARKEIT\s0 FÜR \s-1EINEN BESTIMMTEN ZWECK.\s0 Details finden Sie in der \s-1GNU\s0 General Public License. .PP Sie sollten ein Exemplar der \s-1GNU\s0 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, \s-1MA 02111\-1307, USA.\s0 Oder rufen Sie in Ihrem Browser http://www.gnu.org/licenses/old\-licenses/gpl\-2.0.html auf. .PP Der Author kann über cwieninger@gmx.de erreicht werden. .PP Die Projektseite ist http://winni.vdr\-developer.org/epgsearch .PP Der MD5\-Code ist abgeleitet aus dem Message-Digest Algorithm von \s-1RSA\s0 Data Security, Inc..