Changes between Initial Version and Version 1 of de/External-Software-E2WebIfAPI


Ignore:
Timestamp:
Mar 4, 2014, 4:32:13 PM (12 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • de/External-Software-E2WebIfAPI

    v1 v1  
     1----
     2'''9.4 E2WebIfAPI''' [=#point9.4] ([wiki:Wiki-ge#point0 Inhaltsverzeichnis]) ([WikiStart#point0 Sprachauswahl])
     3----
     4
     5== Einführung ==
     6Enigma2 Webinterface (WebIf) API wurde für Dreambox definiert.
     7Es ist ein Protokoll, welches die Steuerung von Dreambox mittels HTTP-Anfragen erlaubt.
     8
     9Typische Steuerungsaufgaben sind:
     10
     11* Programmierung (Timer) und Wiedergabe von Aufnahmen
     12* Live-Streaming (TV und Radio)
     13* EPG-Funktionen (Anzeige, Suche)
     14* Fernbedienung (Remote Control)
     15
     16Einen guten Überblick zum Protokoll findet Ihr im [http://dream.reichholf.net/wiki/Enigma2:WebInterface DreamboxWIKI].
     17
     18== Motivation ==
     19
     20Für TitanNit wurde die Android-App [TiMote#point9.1 tiMote] entwickelt. Mit dieser App steht die oben beschriebene Funktionalität zur Verfügung. D.h. jeder der ein Android-Handy bzw. -Tablett besitzt, kann den TitanNit-Receiver steuern und sogar auf dem Handy fernsehen. Das ist eine coole Sache, oder?
     21
     22Dieses Glück hat jedoch der Besitzer eines iOS-Geräts (iPhone, iPad) nicht mehr.
     23Man kann zwar auch mit einem Web-Browser plattformunabhängig (Windows, Linux, Android, iOS) den Receiver steuern, dies ist aber nicht so komfortabel wie mit tiMote.
     24
     25Anderseits gibt es sowohl für iOS als auch Android schon fertige Apps für Dreambox-Receiver. Diese Apps basieren auf dem E2-WebIf-Protokoll. Könnte man nicht diese Apps ebenfalls für TitanNit-Receiver verwenden statt eine neue App für iOS zu entwickeln?
     26
     27== Die Lösung ==
     28TitanNit besitzt schon ein eigenes Protokoll, welches jedoch mit Enigma2 WebIf nicht kompatibel ist.
     29Nach kurzer Analyse wurde festgestellt, dass eine Konvertierung der E2-Anfragen auf TitanNit-Anfragen nicht so schwer ist.
     30Deswegen wurde ein E2-Web-Server (e2webserv) entwickelt, welches das Enigma2 WebIf implementiert. Dieser Server empfängt die E2-Anfragen, delegiert die Aufrufe zum lokalen TitanNit Web-Server und die TiatnNit-Antworten wandelt zurück ins XML-Format, welches vom E2-Client erwartet wird.
     31
     32Auf diese Weise wird die TitanNit-Box jetzt offen für die vorhandene E2-Clientsoftware.
     33
     34
     35== Voraussetzungen ==
     36
     37* Web-Server muss auf dem Receiver aktiviert werden
     38* e2webserv muss auf dem Receiver installiert werden
     39
     40== iOS-Apps ==
     41
     42Folgende Apps habe ich auf meinem iPad2:
     43* dreaMote
     44* dreaMote Lite
     45* e2RemoteHD
     46* Dreambox Live
     47
     48Falls Ihr im App-Store nichts kaufen wollt, dann kann ich dreaMote Lite empfehlen.
     49
     50Zusätzlich zu der App benötigt Ihr einen Player.
     51
     52Ich habe folgende Player ausprobiert, welche bei mir gut funktionieren:
     53* GoodPlayer
     54* BUZZ Player
     55* OPlayerHD Lite
     56* VLC Player
     57
     58VLC und OPlayerHD Lite sind frei.
     59
     60== XBMC ==
     61
     62Falls Ihr die Media-Center-Software [http://xbmc.org/ XBMC] im Einsatz habt, so könnt Ihr mittels Live-TV-Plugin VU+ Euren TitanNit-Receiver direkt einbinden.
     63XBMC läuft auf einem PC sowohl unter Windows als auch Linux, ist aber auch für Raspberry Pi verfügbar.
     64
     65== VLC ==
     66Mit dem installierten e2webserv könnt Ihr Live-Streaming nur mittels [http://www.videolan.org/vlc/ VLC] (ohne extra Software) auf einem PC (Windows oder Linux) genießen.
     67
     68Ihr braucht dafür nicht die Kanäle manuell umschalten, es passiert alles automatisch. Damit dies möglich wird, braucht Ihr eine M3U-Playliste. Solche Playliste könnt Ihr pro Favorit generieren lassen und auf dem PC speichern. Danach einfach M3U-Datei mit VLC öffnen und das gewünschte Programm anklicken.
     69
     70Wie exportiert man die M3U-Datei für eine bestimmte Favoritenliste?
     71
     72In einem Web-Browser einfach die gewünschte Adresse angeben.
     73
     74Beispiel (Favorit heißt "Polish"):
     75
     76[http://192.168.1.1:8080/web/services.m3u?bRef=Polish]
     77
     78Bei dem Link muss nur die eigene IP-Adresse angegeben werden und bei Namen mit Leerzeichen sollte man "%20" statt des Leerzeichen nehmen.
     79
     80Beispiel (Favorit heißt "Mein TV", Receiver-IP: 192.168.0.10):
     81
     82[http://192.168.0.10:8080/web/services.m3u?bRef=Mein%20TV]
     83
     84== Client-Konfiguration ==
     85Bitte bei dem E2-Client folgendes konfigurieren:
     86* IP-Adresse des Receivers
     87* Port: 8080
     88* Streaming Port: 8001
     89
     90Zu beachten ist, dass SSL nicht unterstützt wird.
     91
     92Unten sieht man eine Beispielkonfiguration für dreaMote.
     93
     94[[Image(DreaMote.png, 384px)]]
     95
     96== e2webserv.conf ==
     97
     98Die Konfiguration für den Server muss man bei Bedarf manuell anpassen.
     99Bei Standard-TitanNit-Konfiguration sollten keine Änderungen in e2webserv.conf notwendig sein.
     100
     101Bei einer Flash-Installation liegt die Konfigurationsdatei '''e2webserv.conf''' in dem Verzeichnis '''/mnt/swapextensions/etc'''
     102
     103Hier ist der Inhalt:
     104{{{
     105# e2 web port
     106port=8080
     107# e2 data port
     108dataPort=8001
     109# titan web port
     110titanPort=80
     111# titan data port
     112titanDataPort=22222
     113# titan host (change it if e2webserv is not running locally on the receiver)
     114titanHost=127.0.0.1
     115# automatic switching of channels
     116# It is useful if you don't want manually switch a channel on receiver with a single tuner.
     117# If it is set to false and you have a single tuner the you can stream only channels located
     118# on the same transponder as the current channel active on the receiver.
     119autoZap=true
     120# log output file
     121logFile=/tmp/e2webserv.log
     122# maximal log file size in KB. Set it to 0 (default 10KB) to disable logging (maximal allowed value is 1024).
     123# When the file limit is reached a backup of the current file is created.
     124# It means maximally 2 x maxLogSize KB will be used.
     125maxLogSize=10
     126# thread pool size (1..8)
     127threadPool=2
     128# Directory where the transponder and bouquet files are located.
     129# You don't need to specify it, it will be automatically discovered.
     130# But if you you start e2webserv not on the receiver (but e.g. on your Linux server or Windows computer) then you
     131# should copy the settings (channel, transponder, provider and all bouquets file) and specify here the location on the local computer.
     132titanDir=/mnt/settings
     133}}}
     134== Links ==
     135
     136* Enigma2 Web-API im [http://www.aaf-digital.info/forum/showthread.php?90948-Enigma2-Web-API-f%FCr-Titan AAF-Forum]
     137* Sources auf [https://github.com/gswiatek/e2api4titan GitHub]
     138 
     139[[br]]
     140[[br]]