Vdradmin

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Beschreibung

Vdradmin ist ein Daemon welcher mit dem VDR kommuniziert und Informationen in einem Internet-Browser zur Verfügung stellt. Er wird aufgerufen mit der Adresse des VDR-Rechners unter Hinzufügung der Portnummer 8001. In der Konfigurationsdatei kann eingestellt werden, welche Rechner Zugriff auf den Vdradmin erhalten. Eine Authentifizierung ist ebenfalls notwendig, die aber nach Einspielen eines Patch für verschiedene Rechner abgeschaltet werden kann.

Bilder

What's on?
Channels
Timers
Recordings
Configuration
Remote Control

Hardwareanforderungen

Keine besondere Hardware erforderlich.

Softwareanforderungen

Browser auf der Client Seite.

Für Vdradmin selbst ist perl erforderlich, sowie das Modul perl-Compress-Zlib.

Der VDR muss per Netzwerk erreichbar sein. Im Normalfall, bei Installation auf derselben Maschine, erreicht Vdradmin den VDR über die IP 127.0.0.1 mit dem Port 2001.

Installation

perl-Compress-Zlib sollte jede Distri beinhalten, falls nicht kann man es bequem mittels MCPAN installieren:

perl -MCPAN -e 'install Template'

Oder per Source:

cd $SOURCEDIR
tar zxvf Compress-Zlib-<VERSION>.tar.gz
cd  Compress-Zlib-<VERSION>
perl Makefile.PL
make
make test
make install

Möchte man die erweiterte Vdradmin Version http://xpix.dieserver.de nutzen, wird zusätzlich Template benötigt.

Wie gehabt:

perl -MCPAN -e 'install Template'

Source:

cd $SOURCEDIR
tar zxvf Template-Toolkit-<VERSION>.tar.gz
cd  Compress-Zlib-<VERSION>
perl Makefile.PL
make
make test
make install

Weiter geht es mit Vdradmin:

cd $SOURCEDIR
tar xvz vdradmin-<VERSION>.tar.gz
mv vdradmin-<VERSION> vdradmin
cd vdradmin
touch vdradmind.conf
./vdradmind.pl -c
# What's your VDR hostname (e.g video.intra.net)? [localhost]:
# What's the port VDR listen to SVDRP query's? [2001]:
# On which address should vdradmin listen (0.0.0.0 for any)? [0.0.0.0]:
# On which port should vdradmin answer? [8001]:
# Username? [linvdr]: ente
# Password? [linvdr]: ************
# Config file sucessfull written.

Probleme

CPU Last

Während Vdradmin die Daten via Svdrp lädt, steigt die CPU Last bis zu 99%, VDR ist während dieser Phase nicht mehr bedienbar.

Abhilfe schaffte hier bisher schon die EPG-Scan=1 Einstellung, die man durch einen entsprechenden Patch ergänzen konnte. Dadurch wurden auch Aufnahmefehler während der VDRadmin Aktivität reduziert/beseitigt, indem der VDRadmin den VDR veranlaßte direkt auf die EPG-Datei zuzugreifen.

Seit Version 0.97-am3.0p1 scheint diese "CPU-Thematik" nochmals deutlich verbessert worden zu sein.

Downloadseite VDRadmin 0.97-am3.0

Keine EPG-Daten

Es werden trotz gut gefüllter EPG-Datei keine Programme oder nur einige angezeigt. Aber nach einer Weile geht es!

Das liegt daran, das der Vdradmin selbst erst nach dem Start von VDR gestartet werden darf, sonst geht es erst so nach 10 Minuten. Durch Einbindung in die runvdr (Startprozedur für den VDR) kann das Problem der Startreihenfolge gelöst werden.

Eine Möglichkeit wäre, den Start von Admin zu verzögern, Z.B. vor der "while (true) do" -Schleife diese Zeile in /usr/local/bin/runvdr einzufügen.

echo "su vdr -c /usr/local/bin/vdradmind.pl" | at now + 2 minutes

Dies führt nach 2 Minuten als User "vdr" das vdradmin-Script aus.

Fehlende Aufnahmeverzeichnisse

Fehler beim Aufruf von Vdradmin

vdrserver vdradmin # ./vdradmind.pl
Compress::Zlib object version 1.22 does not match bootstrap parameter 1.33 at ⌐
/usr/lib/perl5/5.8.4/i686-linux/DynaLoader.pm line 253.
Compilation failed in require at ./vdradmind.pl line 139.
BEGIN failed--compilation aborted at ./vdradmind.pl line 139.

In diesem Falle hilft ein einfaches:

vdrserver vdradmin # cpan update Compress::Zlib

Tipps

Aufruf von Vdradmin

Man kann sich für den Aufruf von Vdradmin eine Verknüpfung auf den Desktop legen.
Aber der größte Vorteil ist das man so mit die User/Pass abfrage umgehen kann.
Bei mir sieht der Link so aus:

http://linvdr:linvdr@192.168.0.2:8001

Aus dem Internet erreichen

Sicherstellen, dass das Proxy-Modul geladen wird

# LoadModule proxy_module /usr/lib/apache/1.3/libproxy.so

in

LoadModule proxy_module /usr/lib/apache/1.3/libproxy.so

ändern


Bei installiertem Apache in der httpd.conf diese Zeilen hinzugefügen:

ProxyPass        /vdr/vdradmin/ http://VDRip:8001/
ProxyPassReverse /vdr/vdradmin/ http://VDRip:8001/

httpd2.conf (Mandrake 10.1: /etc/httpd/conf/httpd2.conf):

<IfModule mod_proxy.c>
  ProxyRequests On
  ProxyPass /vdradmin/ http://127.0.0.1:8001/
</IfModule>

Mandrake 10.1: /etc/httpd/conf.d/30_mod_proxy.conf

<Proxy *>
    Order deny,allow
    Deny from all
#    Allow from .your-domain.com
# diesen Eintrag den eigenen Gegebenheiten anpassen
    Allow from 192.168.1
</Proxy>

Links

[1] http://template-toolkit.org/download.html Perl::Template
[2] http://www.cpan.org/modules/by-module/Compress Perl::Compress::Zlib
[3] http://linvdr.org/download/vdradmin Homepage Vdradmin
[4] http://xpix.dieserver.de Erweiterungen für Vdradmin
[5] http://andreas.vdr-developer.org gepatchte Version
[6] http://sites.inka.de/~bigred/sw/vdr.html Vdrepg -> Vdradmin alternative (benötigt JDK 1.4)