wiki:ru/External-Software-E2WebIfAPI

Version 7 (modified by trac, 11 days ago) (diff)

--

9.4 E2WebIfAPI (Contents) (Main page)

Introduction

Enigma2 Web Interface ( WebIf ) API was defined for Dreambox . It is a protocol that allows you to control a Dreambox via HTTP requests.

Typical control tasks are :

  • Programming (timer) and playing back recordings
  • Live streaming (TV and radio)
  • EPG functions (display, search)
  • Remote control (Remote Control)

You can find a good overview of the E2WebIFAPI in the DreamboxWIKI.

Motivation

For TitanNit the Android App 9.1 TiMote was developed. Anybody with an Android Smart-Phone or Tablet with this software installed can control their receiver or watch TV on the Android device. Isn't that cool?

But owners of an iOS-device (i-Phone or i-Pad) are unlucky as there is no iOS TitanNit compatable web client such as TiMote. You can control your receiver via http protocol (same as Web Interface) but you wont be able to use all advantages like tiMote on an Android Platform.

On the other hand iOS and Android Apps already exist for Dreambox receivers. These Apps are based on the Enigma2 protocol. Couldn't one just use that App on iOS instead of developing a new App?

The solution

TitanNit has its own protocol but is not compatible to the Enigma2 WebIf. Following a short analysis it was discovered that converting E2 requests to Titan didn't seem so difficult. Therefore, an E2 web server (e2webserv) was developed, which implements the Enigma2 WebIf. This server receives the E2 requests, delegates the calls to TitanNit web server and the responses is converted back into the XML format, which is expected from the E2 client.

This way the TitanNit receiver is able to correspond to existing E2 - client software.

Requirements

  • The Web server must be enabled on the receiver
  • The E2webserv must be installed on the receiver

IOS Apps

The following apps are installed on my iPad2:

  • dreaMote
  • DreaMote Lite
  • e2RemoteHD
  • Dreambox Live

Should you not want to purchase any apps from the Apps-Store I can recommend dreaMote Lite .

In addition to the app you need a player.

I have tried the following players, which work well for me:

  • Good Player
  • BUZZ Player
  • OPlayerHD Lite
  • VLC Player

VLC and OPlayerHD Lite are free.

XBMC

If you are running the Media Center software XBMC or XBMC4XBOX, you can connect your Titan receiver via the Live-TV-Plugin VU+. XBMC runs on Windows PCs aswell as Linux and is also available for Raspberry Pi and the Xbox.

VLC

Having installed the e2webserv you can enjoy Live-Streaming on your Windows or Linux PC using VLC (no further software needed).

You do not have to switch channels manually it all happens automatically. In order for this to take place you need an M3U playlist. You can easily generate the playlist by your Favourites and save to your PC. Having done so you only need to open the M3U list in VLC and select the desired channel.

How do you export a particular favourites list into an M3U file?

Enter the address in your Web browser.

Example (favourite is "Polish"):

http://192.168.1.1:8080/web/services.m3u?bRef=Polish

Enter your receivers IP address and where names of Favourites have spaces within these spaces must be replaced with "%20".

Example (favourite is "My TV" Receiver - IP: 192.168.0.10):

http://192.168.0.10:8080/web/services.m3u?bRef=Mein%20TV

Client Configuration == == Please configure the E2-clientas accordingly:

  • IP address of the receiver
  • Port: 8080
  • Streaming Port: 8001

Please note that SSL is not supported.

Below you see an example configuration for dreaMote.

No image "DreaMote.png" attached to ru/External-Software-E2WebIfAPI

E2webserv.conf

You must alter the server configuration manually. Using standard configured TitanNit no alterration on the e2webserv.conf should be neccessary.

Should you have installed the plugin to Flash the configuration file e2webserv.conf lies in the directory /mnt/swapextensions/etc

Here is the content:

# E2 web port
port = 8080
# E2 data port
data port = 8001
# Titan web port
titanium- port = 80
# Titan data port
titan data port = 22222
# Titan host (change it if e2webserv is not running locally on the receiver)
titan host = 127.0.0.1
# Automatic switching of channels
# It is useful if you do not want manually switch a channel on receiver with a single tuner.
# If it is set to false and you have a single tuner you can stream the only channels located
# On the same transponder as the current channel active on the receiver .
Autozap = true
# Log output file
logFile = /tmp/e2webserv.log
# Maximum log file size in KB. Set it to 0 (default 10KB) to disable logging (maximum allowed value is 1024).
# When the file limit is reached a backup of the current file is created .
# It Means maximally 2 x MaxLogSize KB will be used.
MaxLogSize = 10
# Thread pool size (1 through 8)
threadpool = 2
# Directory where the transponder and bouquet files are located.
# You do not need to Specify it, it will be Automatically Discovered .
# But if you you start e2webserv not on the receiver (but eg on your Linux server or Windows computer) then you
# Shoulderstand copy the settings (channel, transponder, provider and all bouquets file) and here Specify the location on the local computer .
titanDir = /mnt/settings