Wapd-plugin

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
 
(28 dazwischenliegende Versionen von 23 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
==Beschreibung==
 
==Beschreibung==
 +
'''Autor:''' Thomas Heiligenmann
 +
 
Das Plugin stellt einen WAP-Server bereit, der es ermöglicht, Timer mittels eines WAP-fähigen Mobiltelefons zu erzeugen und zu bearbeiten oder zu löschen. Damit das Plugin funktioniert, muss der Rechner aus dem Internet erreichbar sein.
 
Das Plugin stellt einen WAP-Server bereit, der es ermöglicht, Timer mittels eines WAP-fähigen Mobiltelefons zu erzeugen und zu bearbeiten oder zu löschen. Damit das Plugin funktioniert, muss der Rechner aus dem Internet erreichbar sein.
[[Bild:wapd-plugin.jpg|thumb|none|]]
 
==Hardwareanforderungen==
 
==Softwareanforderungen==
 
==Installation==
 
Siehe [[Plugin Installation]].
 
  
==Konfiguration==
+
<!-- ===Status=== -->
 +
==Bilder==
 +
[[Bild:wapd-plugin-00.jpg|thumb|none|''kurze beschreibung'']]
 +
<!-- ==Bedienung== -->
 +
<!-- ===[[SVDRP]] Befehle=== -->
 +
<!-- ==Hardwareanforderungen== -->
 +
<!-- ==Softwareanforderungen== -->
 +
<!-- ==Installation== -->
 +
<!-- ===Optionen=== -->
 +
<!-- ===Patches=== -->
 +
==Konfiguration ohne Webserver==
 +
Da muß der VDR direkt aus dem Internet erreichbar sein. Meist braucht man ein Router der die Anfrage auf den Port des VDR weiterleitet.
 +
Wichtig sind die '''[[wapaccess]]''' und '''[[waphosts]]''' im Plugin-Verzeichnis.
 +
Die Datei '''[[wapaccess]]''' erstellt man mit
 +
<pre>
 +
wappasswd username password >> /video/plugins/wapaccess
 +
</pre>
 +
wappasswd ist im Verzeichnis des Plugins.
 +
Die zweite Datei '''[[waphosts]]''' ist genauso aufgebaut wie die Datei [[svdrphosts.conf]].
 +
==Konfiguration mit vorgeschaltenem Webserver==
 
Wichtig sind die beiden Dateien im Plugin-Verzeichnis.
 
Wichtig sind die beiden Dateien im Plugin-Verzeichnis.
Die Datei wapaccess errstellt Ihr am besten auf dem Webserver der das Proxying zum vdr-Rechner macht.
+
Die Datei '''[[wapaccess]]''' erstellt Ihr am besten auf dem Webserver, der das Proxying zum vdr-Rechner macht.
 
Hierzu verwenden wir das htpasswd-utility des apache-webservers.
 
Hierzu verwenden wir das htpasswd-utility des apache-webservers.
 
Auf der Konsole:
 
Auf der Konsole:
 
<pre>
 
<pre>
shell> htpasswd -c wapaccess USER
+
htpasswd -c wapaccess USER
 
</pre>
 
</pre>
dann Passwort eingeben.
+
dann das Passwort eingeben.
 
+
 
Somit haben wir die Datei wapaccess. Kopiert die nun ins Plugins-Dir.
 
Somit haben wir die Datei wapaccess. Kopiert die nun ins Plugins-Dir.
 
+
Die zweite Datei '''[[waphosts]]''' ist genauso aufgebaut wie die Datei [[svdrphosts.conf]].
Die zweite Datei waphosts ist genauso aufgebaut wie die Datei [[svdrphosts.conf]].
+
===Konfiguration vom Apache-Webserver===
<pre>
+
127.0.0.1            # loopback localhost
+
192.168.100.0/24    # ein lokales Netz (eventuell euer Netz)
+
204.152.189.113      # ein spezieller Host
+
0.0.0.0/0            # Jeder Host (Vorsichtig damit!)
+
</pre>
+
==Konfiguration vom Apache-Webserver==
+
 
Es wird davon ausgegangen, dass eine dyndns Domain besteht, bei der Wildcard aktiviert ist.
 
Es wird davon ausgegangen, dass eine dyndns Domain besteht, bei der Wildcard aktiviert ist.
 
 
So nun schaut das so aus:
 
So nun schaut das so aus:
'''Internt''' -> Linux-Server mit Apache (DYNDNSDOMAIN) -> '''Intranet''' -> VDR (vdr.DYNDNSDOMAIN)
+
'''Internet''' -> Linux-Server mit Apache (DYNDNSDOMAIN) -> '''Intranet''' -> VDR (vdr.DYNDNSDOMAIN)
 
+
Der Apache-Webserver muss das Modul mod_proxy geladen haben.
Nun in der Datei '''/etc/apache2/conf/vhost/vhost.conf''' diese Zeilen hinzufügen:
+
Nun in der Datei '''vhost.conf''' diese Zeilen hinzufügen:
 +
{{Box Datei| /etc/apache2/conf/vhost/vhost.conf|
 
<pre>
 
<pre>
 
<VirtualHost *:80>
 
<VirtualHost *:80>
 
ServerName DYNDNSDOMAIN
 
ServerName DYNDNSDOMAIN
DocumentRoot /var/www/localhost/htdocs (Bitte anpassen)
+
DocumentRoot /var/www/localhost/htdocs     #(Bitte anpassen)
 
</VirtualHost>
 
</VirtualHost>
  
<VirtualHost vdr.DYNDNSDOMAIN>
+
<VirtualHost *:80>
 
ServerName vdr.DYNDNSDOMAIN
 
ServerName vdr.DYNDNSDOMAIN
ServerAlias vdr
+
ServerAlias vdr       # kann auch weggelassen werden
 
ProxyPass / http://VDRIP:8888/
 
ProxyPass / http://VDRIP:8888/
 
ProxyPassReverse / VDRIP:8888/
 
ProxyPassReverse / VDRIP:8888/
</VirtualHost></pre>
+
</VirtualHost>
DYNDNSDOMAIN ist z.b.
+
</pre>
<pre>meinesuperlinuxmaschiene.dyndns.org</pre>
+
}}
VDRIP ist z.b.  
+
'''DYNDNSDOMAIN''' ist z.b.
<pre>192.168.0.187</pre>
+
<pre>
Nach einem Neustart des Apache-Webservers kann wapd via vdr.DYNDNSDOMAIN von
+
meinesuperlinuxmaschine.dyndns.org
jedem Wap-Handy erreicht werden.
+
</pre>
 
+
'''VDRIP''' ist z.b.  
==Probleme==
+
<pre>
==Parameter==
+
192.168.0.187
{| border=1 cellpadding=2 cellspacing=0
+
</pre>
|- bgcolor=#efefef
+
Nach einem Neustart des Apache-Webservers kann wapd via '''vdr.DYNDNSDOMAIN''' von jedem Wap-Handy erreicht werden.
 +
<!-- ===Einstellungen=== -->
 +
===Parameter===
 +
{| class="wikitable"
 +
|-
 
!Parameter (kurz)
 
!Parameter (kurz)
 
!Parameter (lang)
 
!Parameter (lang)
 
!Beschreibung
 
!Beschreibung
 
|-
 
|-
|  -p PORT || --port=PORT ||  use PORT for WAP (default: 8888)
+
|  -p ''<PORT>'' || --port=''<PORT>'' ||  use PORT for WAP (default: 8888)
 
|}
 
|}
 +
<!-- ==Sonstiges== -->
 +
===Probleme===
 +
Manche Mobilfunk-Provider (z.B. E-Plus) lassen nicht alle Ports zu.
 +
Dadurch kann man auf z.B. Port 8888 nicht zugreifen. Man erhält aber dabei leider
 +
keine vernünftige Fehlermeldung.
 +
Abhilfe: Als Port erstmal 80 einstellen (siehe Parameter).
 +
Wenn das geht, entweder dabei bleiben, weitere Ports ausprobieren oder beim Provider nachfragen.
 +
Man kann auch den Port belassen und am Router von Port 80 auf Port 8888 weiterleiten.
 +
Dann muss man den wapd nicht umstellen und bekommt trotzdem Zugang per Handy.
 +
===Tipps===
 +
Man kann die WAP-Ausgabe auch erstmal ohne Handy testen.
 +
Für den Web-Browser Firefox gibt es ein Add-On "wmlbrowser".
 +
Damit kann man dann testen ob wapd funktioniert.
 +
<!-- ===Wunschliste=== -->
 +
<!-- ===Snapshot=== -->
 +
==Anpassung für VDR 1.4==
 +
Das Plugin braucht eine Anpassung für den VDR 1.4.
 +
'''1. Problem mit der APIVERSION'''
 +
  sed -i -e s/VDRVERSION/APIVERSION/g Makefile
 +
im Verzeichnis des Plugins
 +
'''2. Änderung im Interface'''
 +
In ca. Zeile 697 von server.c gehört der Inhalt der Klammer gelöscht
 +
  //Schedule->GetPresentEvent(channel->Number() == cDevice::CurrentChannel()); // Original
 +
              Schedule->GetPresentEvent();  //Anpassungsversuch auf 1.4
 +
==Aktuelle Version==
 +
[http://www.heiligenmann.de/vdr/download/vdr-wapd-0.9.tgz 0.0.9]
 
==Links==
 
==Links==
{|
+
# [http://www.heiligenmann.de/vdr/download Homepage des Plugin]
| [1]
+
[[Kategorie:Veraltete Plugins]]
| http://vdr.heiligenmann.de/download
+
{{i18n|wapd-plugin}}
| Homepage des Plugins
+
|}[[Kategorie:Plugins]]
+

Aktuelle Version vom 7. August 2013, 10:53 Uhr

Inhaltsverzeichnis

[Bearbeiten] Beschreibung

Autor: Thomas Heiligenmann

Das Plugin stellt einen WAP-Server bereit, der es ermöglicht, Timer mittels eines WAP-fähigen Mobiltelefons zu erzeugen und zu bearbeiten oder zu löschen. Damit das Plugin funktioniert, muss der Rechner aus dem Internet erreichbar sein.

[Bearbeiten] Bilder

kurze beschreibung

[Bearbeiten] Konfiguration ohne Webserver

Da muß der VDR direkt aus dem Internet erreichbar sein. Meist braucht man ein Router der die Anfrage auf den Port des VDR weiterleitet. Wichtig sind die wapaccess und waphosts im Plugin-Verzeichnis. Die Datei wapaccess erstellt man mit

wappasswd username password >> /video/plugins/wapaccess

wappasswd ist im Verzeichnis des Plugins. Die zweite Datei waphosts ist genauso aufgebaut wie die Datei svdrphosts.conf.

[Bearbeiten] Konfiguration mit vorgeschaltenem Webserver

Wichtig sind die beiden Dateien im Plugin-Verzeichnis. Die Datei wapaccess erstellt Ihr am besten auf dem Webserver, der das Proxying zum vdr-Rechner macht. Hierzu verwenden wir das htpasswd-utility des apache-webservers. Auf der Konsole:

htpasswd -c wapaccess USER

dann das Passwort eingeben. Somit haben wir die Datei wapaccess. Kopiert die nun ins Plugins-Dir. Die zweite Datei waphosts ist genauso aufgebaut wie die Datei svdrphosts.conf.

[Bearbeiten] Konfiguration vom Apache-Webserver

Es wird davon ausgegangen, dass eine dyndns Domain besteht, bei der Wildcard aktiviert ist. So nun schaut das so aus: Internet -> Linux-Server mit Apache (DYNDNSDOMAIN) -> Intranet -> VDR (vdr.DYNDNSDOMAIN) Der Apache-Webserver muss das Modul mod_proxy geladen haben. Nun in der Datei vhost.conf diese Zeilen hinzufügen:

Datei
/etc/apache2/conf/vhost/vhost.conf
<VirtualHost *:80>
ServerName DYNDNSDOMAIN
DocumentRoot /var/www/localhost/htdocs     #(Bitte anpassen)
</VirtualHost>

<VirtualHost *:80>
ServerName vdr.DYNDNSDOMAIN
ServerAlias vdr        # kann auch weggelassen werden
ProxyPass / http://VDRIP:8888/
ProxyPassReverse / VDRIP:8888/
</VirtualHost>


DYNDNSDOMAIN ist z.b.

meinesuperlinuxmaschine.dyndns.org

VDRIP ist z.b.

192.168.0.187

Nach einem Neustart des Apache-Webservers kann wapd via vdr.DYNDNSDOMAIN von jedem Wap-Handy erreicht werden.

[Bearbeiten] Parameter

Parameter (kurz) Parameter (lang) Beschreibung
-p <PORT> --port=<PORT> use PORT for WAP (default: 8888)

[Bearbeiten] Probleme

Manche Mobilfunk-Provider (z.B. E-Plus) lassen nicht alle Ports zu. Dadurch kann man auf z.B. Port 8888 nicht zugreifen. Man erhält aber dabei leider keine vernünftige Fehlermeldung. Abhilfe: Als Port erstmal 80 einstellen (siehe Parameter). Wenn das geht, entweder dabei bleiben, weitere Ports ausprobieren oder beim Provider nachfragen. Man kann auch den Port belassen und am Router von Port 80 auf Port 8888 weiterleiten. Dann muss man den wapd nicht umstellen und bekommt trotzdem Zugang per Handy.

[Bearbeiten] Tipps

Man kann die WAP-Ausgabe auch erstmal ohne Handy testen. Für den Web-Browser Firefox gibt es ein Add-On "wmlbrowser". Damit kann man dann testen ob wapd funktioniert.

[Bearbeiten] Anpassung für VDR 1.4

Das Plugin braucht eine Anpassung für den VDR 1.4. 1. Problem mit der APIVERSION

  sed -i -e s/VDRVERSION/APIVERSION/g Makefile

im Verzeichnis des Plugins 2. Änderung im Interface In ca. Zeile 697 von server.c gehört der Inhalt der Klammer gelöscht

  //Schedule->GetPresentEvent(channel->Number() == cDevice::CurrentChannel()); // Original
             Schedule->GetPresentEvent();  //Anpassungsversuch auf 1.4

[Bearbeiten] Aktuelle Version

0.0.9

[Bearbeiten] Links

  1. Homepage des Plugin
In anderen Sprachen