Control-plugin

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Beschreibung

Autor: Jan Rieger

Stellt das OSD in einer Telnet-Session dar. Damit kann der VDR von jedem telnet-fähigen Rechner aus ferngesteuert werden.

Status

Letztes Update Letzter Patch 05/2012

Bilder

Telnet - Kanäle
Telnet - EPG

Softwareanforderungen

  • telnet (Aufruf z. B.: telnet localhost 2002) oder jedes andere telnet-fähige Programm, z. B. PuTTY.

Konfiguration

svdrphosts.conf

Es muss noch in der Datei $VDRCONFIG/svdrphosts.conf der Rechner oder das Subnetz freigeschaltet werden, von dem aus die Telnet-Session eröffnet werden soll, z. B. durch Einfügen von 192.168.0.76 für einen Rechner mit dieser IP. Andernfalls erscheint lediglich die Meldung "access denied" im Telnet-Client.


Parameter

Parameter (kurz) Parameter (lang) Beschreibung
-t <TTY> --terminal=<TTY> VDR über ein virtuelles Terminal steuern (Standard: keins)
-p <PORT> --port=<PORT> TCP-Port auf dem die Verbindungen ankommen sollen (Standard: 2002)

Sonstiges

Patch gegen Absturz beim Beenden des VDR

[Link]

diff -Nru control-0.0.2a-kw3/control.c control-0.0.2a-kw3_0/control.c
--- control-0.0.2a-kw3/control.c	2008-09-26 16:19:29.000000000 +0200
+++ control-0.0.2a-kw3_0/control.c	2012-08-04 12:17:08.000000000 +0200
@@ -32,6 +32,7 @@
 class cPluginControl : public cPlugin {
 private:
   // Add any member variables or functions you may need here.
+  cCtrlState* _pState;
   cCtrlGateways* _pReceivers;
   cCtrlGateway*  _pTerminal;
 
@@ -67,6 +68,7 @@
 cPluginControl::~cPluginControl()
 {
   // Clean up after yourself!
+  delete(_pState);
   delete(_pReceivers);
   delete(_pTerminal);
 }
@@ -120,7 +122,7 @@
   // Start any background activities the plugin shall perform.
 
   if (glParPort || glParTerminal && *glParTerminal)
-    new cCtrlState();
+    _pState = new cCtrlState();
 
   if (glParPort) {
     _pReceivers = new cCtrlGateways();

Tipps

  • Zugriff mit PuTTY
Beim Zugriff auf die Konsole mittels PuTTY muss beachtet werden, dass die Funktionstasten im Linux-Format gesendet werden. Die benötigten Einstellungen finden sich im Konfigurationsdialog der Verbindung unter Terminal -> Keyboard und dort "The Function keys and keypad" auf "Linux" stellen.
  • Wenn man normale Kommandos von einer Shell aus (also ohne SVDRP) an den vdr senden will, kann man cat > /proc/`pidof vdr`/fd/0 verwenden. Siehe auch Artikel im englischen VDRWiki


Versionen

Aktuelle Version

Links

  1. Homepage des Plugins
  2. verbesserte Version
In anderen Sprachen