Wapd-plugin

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Links)
 
Zeile 7: Zeile 7:
 
==Bilder==
 
==Bilder==
 
[[Bild:wapd-plugin-00.jpg|thumb|none|''kurze beschreibung'']]
 
[[Bild:wapd-plugin-00.jpg|thumb|none|''kurze beschreibung'']]
 
 
<!-- ==Bedienung== -->
 
<!-- ==Bedienung== -->
 
<!-- ===[[SVDRP]] Befehle=== -->
 
<!-- ===[[SVDRP]] Befehle=== -->
Zeile 15: Zeile 14:
 
<!-- ===Optionen=== -->
 
<!-- ===Optionen=== -->
 
<!-- ===Patches=== -->
 
<!-- ===Patches=== -->
 
 
==Konfiguration ohne Webserver==
 
==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.  
 
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.
 
Wichtig sind die '''[[wapaccess]]''' und '''[[waphosts]]''' im Plugin-Verzeichnis.
 
Die Datei '''[[wapaccess]]''' erstellt man mit  
 
Die Datei '''[[wapaccess]]''' erstellt man mit  
Zeile 25: Zeile 22:
 
</pre>
 
</pre>
 
wappasswd ist im Verzeichnis des Plugins.
 
wappasswd ist im Verzeichnis des Plugins.
 
 
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 mit vorgeschaltenem Webserver==
 
==Konfiguration mit vorgeschaltenem Webserver==
 
Wichtig sind die beiden Dateien im Plugin-Verzeichnis.
 
Wichtig sind die beiden Dateien im Plugin-Verzeichnis.
Zeile 37: Zeile 32:
 
</pre>
 
</pre>
 
dann das 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===
 
===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:
 
'''Internet''' -> 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.
 
Der Apache-Webserver muss das Modul mod_proxy geladen haben.
 
 
Nun in der Datei '''vhost.conf''' diese Zeilen hinzufügen:
 
Nun in der Datei '''vhost.conf''' diese Zeilen hinzufügen:
 
{{Box Datei| /etc/apache2/conf/vhost/vhost.conf|
 
{{Box Datei| /etc/apache2/conf/vhost/vhost.conf|
Zeile 66: Zeile 55:
 
</pre>
 
</pre>
 
}}
 
}}
 
 
'''DYNDNSDOMAIN''' ist z.b.
 
'''DYNDNSDOMAIN''' ist z.b.
 
 
<pre>
 
<pre>
 
meinesuperlinuxmaschine.dyndns.org
 
meinesuperlinuxmaschine.dyndns.org
 
</pre>
 
</pre>
 
 
'''VDRIP''' ist z.b.  
 
'''VDRIP''' ist z.b.  
 
 
<pre>
 
<pre>
 
192.168.0.187
 
192.168.0.187
 
</pre>
 
</pre>
 
 
Nach einem Neustart des Apache-Webservers kann wapd via '''vdr.DYNDNSDOMAIN''' von jedem Wap-Handy erreicht werden.
 
Nach einem Neustart des Apache-Webservers kann wapd via '''vdr.DYNDNSDOMAIN''' von jedem Wap-Handy erreicht werden.
 
 
<!-- ===Einstellungen=== -->
 
<!-- ===Einstellungen=== -->
 
===Parameter===
 
===Parameter===
Zeile 91: Zeile 74:
 
|  -p ''<PORT>'' || --port=''<PORT>'' ||  use PORT for WAP (default: 8888)
 
|  -p ''<PORT>'' || --port=''<PORT>'' ||  use PORT for WAP (default: 8888)
 
|}
 
|}
 
 
<!-- ==Sonstiges== -->
 
<!-- ==Sonstiges== -->
 
===Probleme===
 
===Probleme===
 
 
Manche Mobilfunk-Provider (z.B. E-Plus) lassen nicht alle Ports zu.
 
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
 
Dadurch kann man auf z.B. Port 8888 nicht zugreifen. Man erhält aber dabei leider
 
keine vernünftige Fehlermeldung.
 
keine vernünftige Fehlermeldung.
 
 
Abhilfe: Als Port erstmal 80 einstellen (siehe Parameter).
 
Abhilfe: Als Port erstmal 80 einstellen (siehe Parameter).
 
Wenn das geht, entweder dabei bleiben, weitere Ports ausprobieren oder beim Provider nachfragen.
 
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.
 
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.
 
Dann muss man den wapd nicht umstellen und bekommt trotzdem Zugang per Handy.
 
 
===Tipps===
 
===Tipps===
 
 
Man kann die WAP-Ausgabe auch erstmal ohne Handy testen.
 
Man kann die WAP-Ausgabe auch erstmal ohne Handy testen.
 
Für den Web-Browser Firefox gibt es ein Add-On "wmlbrowser".
 
Für den Web-Browser Firefox gibt es ein Add-On "wmlbrowser".
 
Damit kann man dann testen ob wapd funktioniert.
 
Damit kann man dann testen ob wapd funktioniert.
 
 
<!-- ===Wunschliste=== -->
 
<!-- ===Wunschliste=== -->
 
<!-- ===Snapshot=== -->
 
<!-- ===Snapshot=== -->
 
 
==Anpassung für VDR 1.4==
 
==Anpassung für VDR 1.4==
 
 
Das Plugin braucht eine Anpassung für den VDR 1.4.  
 
Das Plugin braucht eine Anpassung für den VDR 1.4.  
 
 
'''1. Problem mit der APIVERSION'''
 
'''1. Problem mit der APIVERSION'''
 
 
   sed -i -e s/VDRVERSION/APIVERSION/g Makefile
 
   sed -i -e s/VDRVERSION/APIVERSION/g Makefile
 
 
im Verzeichnis des Plugins
 
im Verzeichnis des Plugins
 
 
'''2. Änderung im Interface'''
 
'''2. Änderung im Interface'''
 
 
In ca. Zeile 697 von server.c gehört der Inhalt der Klammer gelöscht
 
In ca. Zeile 697 von server.c gehört der Inhalt der Klammer gelöscht
 
 
   //Schedule->GetPresentEvent(channel->Number() == cDevice::CurrentChannel()); // Original
 
   //Schedule->GetPresentEvent(channel->Number() == cDevice::CurrentChannel()); // Original
 
               Schedule->GetPresentEvent();  //Anpassungsversuch auf 1.4
 
               Schedule->GetPresentEvent();  //Anpassungsversuch auf 1.4

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