Control-plugin
Aus VDR Wiki
(Unterschied zwischen Versionen)
Wirbel (Diskussion | Beiträge) |
|||
(46 dazwischenliegende Versionen von 20 Benutzern werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
'''Autor:''' Jan Rieger | '''Autor:''' Jan Rieger | ||
− | Stellt das OSD in einer | + | Stellt das OSD in einer {{wikipedia|Telnet}}-Session dar. |
+ | Damit kann der VDR von jedem telnet-fähigen Rechner aus ferngesteuert werden. | ||
+ | |||
+ | ===Status=== | ||
+ | * Letztes Update 09/2008 | ||
+ | * Letzter Patch 05/2012 | ||
− | |||
==Bilder== | ==Bilder== | ||
− | + | <gallery> | |
− | + | Bild:control-plugin-00.jpg|''Telnet - Kanäle'' | |
− | + | Bild:control-plugin-01.jpg|''Telnet - EPG'' | |
− | + | </gallery> | |
− | + | ||
− | + | ||
− | < | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
==Konfiguration== | ==Konfiguration== | ||
===svdrphosts.conf=== | ===svdrphosts.conf=== | ||
− | Es muss noch in der Datei ''' | + | Es muss noch in der Datei '''[[Struktur|$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 | + | Andernfalls erscheint lediglich die Meldung "access denied" im Telnet-Client. |
− | + | ===Parameter=== | |
− | + | {| class="wikitable" | |
− | + | |- | |
− | {| | + | |
− | |- | + | |
!Parameter (kurz) | !Parameter (kurz) | ||
!Parameter (lang) | !Parameter (lang) | ||
!Beschreibung | !Beschreibung | ||
|- | |- | ||
− | | -t TTY || --terminal=TTY || | + | | -t ''<TTY>'' || --terminal=''<TTY>'' || VDR über ein virtuelles Terminal steuern (Standard: keins) |
|- | |- | ||
− | | -p PORT || --port=PORT | + | | -p ''<PORT>'' || --port=''<PORT>'' || TCP-Port auf dem die Verbindungen ankommen sollen (Standard: ''2002'') |
|} | |} | ||
− | + | ==Patches== | |
− | + | [[http://www.vdr-portal.de/board1-news/board101-news-archiv/114203-vdr-control-ohne-absturz-beenden Link]] | |
− | + | <pre>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(); | ||
+ | </pre> | ||
− | + | ===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 [http://www.linuxtv.org/vdrwiki/index.php/Using_an_xterm_to_control_VDR Artikel im englischen VDRWiki] | ||
+ | |||
+ | ==Versionen== | ||
+ | * [http://ricomp.de/vdr/vdr-control-0.0.2.tgz 0.0.2] | ||
+ | * [http://ricomp.de/vdr/vdr-control-0.0.2a.tgz 0.0.2a] | ||
+ | |||
+ | ==Aktuelle Version== | ||
+ | * [http://www.u32.de/download/vdr-control-0.0.2a-kw3.tar.gz 0.0.2a_kw3] | ||
+ | * [http://www.vdr-portal.de/board1-news/board101-news-archiv/114203-vdr-control-ohne-absturz-beenden empfohlener Patch] | ||
==Links== | ==Links== | ||
− | + | # [http://ricomp.de/vdr Homepage des Plugins] | |
− | + | # [http://www.u32.de/vdr.html#control verbesserte Version] | |
− | + | ||
− | + | [[Kategorie:Plugins]] | |
− | + | [[Kategorie:Fernbedienungen]] | |
+ | [[Kategorie:Admin-Plugins]] | ||
+ | {{i18n|control-plugin}} |
Aktuelle Version vom 30. November 2013, 12:05 Uhr
Inhaltsverzeichnis |
[Bearbeiten] 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.
[Bearbeiten] Status
- Letztes Update 09/2008
- Letzter Patch 05/2012
[Bearbeiten] Bilder
[Bearbeiten] Konfiguration
[Bearbeiten] 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.
[Bearbeiten] 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) |
[Bearbeiten] Patches
[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();
[Bearbeiten] 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