Control-plugin

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Probleme)
 
(62 dazwischenliegende Versionen von 29 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
 
'''Autor:''' Jan Rieger
 
'''Autor:''' Jan Rieger
  
Stellt das OSD in einer Konsole dar.
+
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==
[[Bild:control-plugin.jpg|thumb|none|]]
+
<gallery>
 +
Bild:control-plugin-00.jpg|''Telnet - Kanäle''
 +
Bild:control-plugin-01.jpg|''Telnet - EPG''
 +
</gallery>
  
==Hardwareanforderungen==
+
==Konfiguration==
==Softwareanforderungen==
+
===svdrphosts.conf===  
* Telnet (Aufruf durch: telnet ip 2002)
+
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.
==Installation==
+
Andernfalls erscheint lediglich die Meldung "access denied" im Telnet-Client.
  
==Probleme==
+
===Parameter===
 
+
{| class="wikitable"
Es muss noch in der Datei /etc/vdr/svdrphosts.conf der Rechner oder das Subnetz freigeschlaltet werden, von dem  aus die telnet session eröffnet wird, z.B. die Zeile 192.168.0.76 (für eine spezielle IP) einfügen.
+
|-
Andernfalls erscheint lediglich die Meldung "access denied" im telnet client.
+
 
+
==Parameter==
+
{| border=1 cellpadding=2 cellspacing=0
+
|- bgcolor=#efefef
+
 
!Parameter (kurz)
 
!Parameter (kurz)
 
!Parameter (lang)
 
!Parameter (lang)
 
!Beschreibung
 
!Beschreibung
 
|-
 
|-
| -t TTY  || --terminal=TTY || tty to control vdr per virtual terminal (default: none)
+
| -t ''<TTY>'' || --terminal=''<TTY>'' || VDR über ein virtuelles Terminal steuern (Standard: keins)
 
|-
 
|-
| -p PORT || --port=PORT   || port to receive remote connections (default: 2002)
+
| -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]
| [1]
+
# [http://www.u32.de/vdr.html#control verbesserte Version]
| http://ricomp.de/vdr
+
 
| Homepage des Plugins
+
[[Kategorie:Plugins]]
|}[[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

[Bearbeiten] Versionen

[Bearbeiten] Aktuelle Version

[Bearbeiten] Links

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