Epgsearch-plugin

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Beschreibung

Autor: Christian Wieninger

EPG-Search kann als Ersatz für die Standard-Programmanzeige verwendet werden. Es erweitert diese um viele zusätzliche Funktionen (z.B. Wiederholungen suchen), um ein Befehlsmenü für Programmeinträge sowie eine Suchfunktion zum Durchsuchen des EPG. Die Suche kann auch dafür verwendet werden, um automatisch im Hintergrund Timer anzulegen, wenn etwas Passendes gefunden wurde.

Diese Funktion nennt sich hier Suchtimer, ist ähnlich den Autotimern von Vdradmin, nur deutlich flexibler. Die Optik lässt sich außerdem durch einen Fortschrittsbalken etwas aufpeppen. Zusätzlich gibt es noch bis zu vier benutzerdefinierte Zeiten neben
Jetzt
und
Nächste
. Der Aufbau der einzelnen Menüs kann ebenfalls nach den eigenen Wünschen angepasst werden.

Desweiteren verfügt das Plugin über einen integrierten Konfliktcheck, der einen per OSD informiert wenn Sendungen aufgrund von Überschneidungen (und zu wenig Aufnahmegeräten) nicht vollständig aufgenommen werden können. In einem speziellen Konflikt-Menü können dann die Konflikte komfortabel gelöst werden.

Eine Benachrichtigung per EMail bei Timer-Updates und/oder Timer-Konflikten ist ebenso enthalten wie die Möglichkeit, mit User-Variablen und Skriptaufrufen auf die Suchtimer umfangreichen Einfluss nehmen zu können.

Status

Letztes Update 09/2011

Bilder

Bedienung

Das Plugin ist zu umfangreich, um alles in diesem Artikel zu beschreiben. Dem Plugin liegt aber eine umfangreiche Dokumentation in Form von Manpages bei, die auch online gelesen werden können:

  1. README.DE
  2. MANUAL


SVDRP Befehle

Parameter Beschreibung
LSTS [ID] Listet alle Suchen auf, oder, falls ID angegeben wurde, die Suche mit der ID [ID].

Die Ausgabe ist im selben Format wie der Inhalt der Datei epgsearch.conf.

NEWS <settings> Fügt eine neue Suche hinzu. Format der <settings> identisch mit epgsearch.conf. Hinweis: ID muss angegeben werden, wird aber intern ignoriert und durch die nächste freie ID ersetzt.
DELS <ID> Löscht die Suche mit der ID <ID>.
EDIS <settings> Modifiziert eine Suche.
UPDS [OSD] Ein Update der Suchtimer wird durchgeführt. Wenn optional OSD angegeben wird, erscheint am Ende des Updates eine OSD-Hinweis.
UPDD Liest die Datei epgsearchdone.data erneut ein. Sinnvoll wenn ein externes Tools diese geändert hat.
SETS <ON|OFF> Aktiviert oder deaktiviert den im Hintergrund laufenden Suchtimer-Thread.
FIND <settings> Sucht im EPG nach Events, die auf <settings> passen. Das Ergebnis wird direkt ausgegeben.

Dies ist nur ein Teil der möglichen SVDRP-Befehle. Die komplette Liste ist im MANUAL nachzulesen.


Softwareanforderungen

  • (P)erl-(c)ompatible (r)egular (e)xpression library, PCRE (optional)
  • TRE Bibliothek, für unbegrenzt tolerante Suche (optional)

Installation

Optionen im Makefile

#WITHOUT_EPGSEARCHONLY = 1 Entferne die # wenn das Mini-Plugin epgsearchonly nicht kompiliert werden soll.

epgsearchonly erstellt im Hauptmenü von VDR einen Eintrag "Suche" und dient somit als Abkürzung zum Menü der Suchtimer.

#WITHOUT_CONFLICTCHECKONLY = 1 Entferne die # wenn das Mini-Plugin conflictcheckonly nicht kompiliert werden soll.

conflictcheckonly erstellt im Hauptmenü von VDR einen Eintrag "Timerkonflikte" und dient somit als Abkürzung zum Menü der "Suchtimer/Aktionen/Prüfe Timerkonflikte".

#WITHOUT_QUICKSEARCH = 1 Entferne die # wenn das Mini-Plugin quicksearch nicht kompiliert werden soll.

quicksearch erstellt im Hauptmenü von VDR einen Eintrag "Schnellsuche" und dient zum schnellen Suchen im EPG ohne dazu einen Suchtimer anlegen zu müssen.

#HAVE_PCREPOSIX = 1 Entferne die # wenn Perl kompatible reguläre Ausdrücke (Perl compatible regular expressions, PCRE) verwendet werden sollen.
#HAVE_LIBTRE = 1 Entferne die # wenn libtre (für unbegrenzte tolerante Suche) installiert ist.

Konfiguration

timercmds

Um im normalen Timermenü nach Wiederholungen zu suchen, ist optional VDR zu patchen, näheres siehe README.

cd $SOURCEDIR/VDR
patch -p1 < PLUGINS/src/epgsearch/patches/timercmd-<VERSION>.diff

Danach wie gewohnt übersetzen.

createcats

createcats dient zum automatischen Erstellen der erweiterten EPG-Kategorien. Nähere Beschreibung im MANUAL.

Nach dem Kompilieren createcats in den $PATH linken.

ln -s $SOURCEDIR/VDR/PLUGINS/src/epgsearch/createcats /usr/local/bin

Aufruf kann über die $VDRCONFIG/plugins/epgsearch/epgsearchcmds.conf erfolgen (siehe letzter Eintrag).

Parameter

Parameter (kurz) Parameter (lang) Beschreibung
-f <DATEI> --svdrpsendcmd=<DATEI> Der Pfad zum Script svdrpsend.pl für die externe SVDRP Kommunikation. Standard ist interne Kommunikation.
-c <DIR> --config=<DIR> Pfad zu den Konfigurations-Dateien von epgsearch. Standard ist $VDRCONFIG/plugins/epgsearch/
-l <DATEI> --logfile=<DATEI> Logfile für epgsearch. Standard ist $VDRCONFIG/plugins/epgsearch/epgsearch.log
-v <n> --verbose=<n> Level der Logausgaben:
  • 1 Allgemeine Meldungen
  • 2 Detaillierte Meldungen
  • 3 Sehr detaillierte Meldungen für Debugging
-r --reloadmenuconf Neuladen der epgsearchmenu.conf bei jedem Aufruf des Plugins
-m <CMD> --mailcmd=<CMD> Alternatives Mail-Script für die Timer-Update- und Konflikt-Benachrichtigung per EMail

Sonstiges

Hinweis
Hinweis

Mit der Version 0.9.18 hat sich der Speicherort der Konfigurationsdateien geändert! Bitte die HISTORY lesen.


Tipps

Zur allgemeinen Bedienung 
Einige Farbtasten sind doppelt belegt. In diesem Fall
0
drücken um auf die andere Belegung zu wechseln.
Zum Aufruf 
Die verwendete Taste zum Aufrufen des Plugins kann in der keymacros.conf konfiguriert werden. Um das Plugin zum Beispiel mit
Grün
aufzurufen:
# Remote control key macros for VDR
#
# Format:
#
# macrokey  key1 key2 key3...
# macrokey  @plugin key1 key2 key3...
#
# See man vdr(5)

Red       @pilot
Green     @epgsearch
^^^^^^^^^^^^^^^^^^^^^
Blue      Timers
Yellow    @prefermenu


Alternativ über einen "User Key":

User1     @epgsearch

Es ist auch möglich, das Menü des Plugins um eigene Befehle zu erweitern. Dazu ist die epgsearchcmds.conf anzupassen.

Falls diese noch nicht existiert, einfach als $VDRCONFIG/plugins/epgsearch/epgsearchcmds.conf erstellen.

Alles weitere und Beispielskripte befinden sich in den Sourcen des Plugins.

Was tun, wenn Suchtimer keine Timer erzeugen?

  • Prüfen, ob der Suchtimer überhaupt etwas findet.
  • Im Setup von Epgsearch unter "Suche und Suchtimer" prüfen, ob diese überhaupt aktiv sind.
  • Epgsearch programmiert Timer per SVDRP, also in der Shell erstmal testen, ob das funktioniert, z.B. (ab vdr-1.7.15, bei alten Systemen svdrpsend.pl)
    svdrpsend plug epgsearch LSTS
    eine Liste aller Suchtimer auswerfen. Falls nicht, dann sollte geprüft werden, ob im Setup von epgsearch der gleiche Port (Standard ist 2001 bzw. 6419 ab vdr-1.7.15) für SVDRP hinterlegt ist, den auch VDR benutzt. Und schließlich kann es sein, dass Einträge in der svdrphosts.conf fehlen.
  • Standardmäßig programmiert Epgsearch einen Timer nur einmalig, d.h. wird ein Timer manuell gelöscht, wird er beim nächsten Suchtimer-Update nicht neu programmiert. Will man das nicht, kann man im Epgsearch-Setup unter "Suche und Suchtimer" die Option "Timer nach Löschen neu programmieren" aktivieren. Andernfalls: Verliert man also seine Timer aus irgendeinem Grund, muss man die Epgsearch-interne Liste der erledigten Timer entfernen. Am einfachsten im Verzeichnis $VDRCONFIG/plugins/epgsearch/
    rm timersdone.conf
    . Alternativ geht das auch per OSD: Menü "Suche/Aktionen/Zeige erstellte Timer", hier dann entweder alle löschen oder nur die von einzelnen Suchtimern.
  • Eventuell verhindert die Suchtimer-Option "Wiederholung vermeiden" eine Programmierung, weil die Sendung früher schon aufgenommen wurde. Dies kann man im OSD unter "Suche/Aktionen/Zeige erledigte Aufnahmen" kontrollieren. Dort also eventuell Löschen oder die Option deaktivieren.

Erweiterungen

Web-Frontends

Zum Erstellen und Bearbeiten von Suchtimern:

Versions-Historie

Version Datum Beschreibung Link
1.0.1.beta5 29.03.2013 1.0.1.beta5
1.0.0 (Aktuelle Version) 11.09.2011 1.0.0

Bugs und Wünsche

Aktuelle Version

Version 1.0.0

Links

  1. Homepage des Plugins
  2. Perl-compatible regular expression library
  3. GIT-Repository