TvbInfoServer

Aus TV-Browser Wiki
Version vom 20. Januar 2013, 21:51 Uhr von Ds10⧼word-separator⧽⧼parentheses⧽ ⧼parentheses⧽
⧼revision-nav⧽
Wechseln zu: Navigation⧼comma-separator⧽Suche

TV-Browser Info Server

Das TV-Browser-Info-Server-Plugin dient zur Abfrage von Programmen per Netzwerkverbindung. Die Kommunikation ist dabei auf localhost beschränkt, da kein Zugriff von außerhalb des Rechners auf dem TV-Browser läuft möglich sein soll.

Funktionsweise

Das Plugin stellt einen HTTP-Server zur Verfügung, an den bestimmte Anfragen gerichtet werden können. Das Plugin antwortet dann entweder mit einem Text oder in speziellen Fällen mit Bildern. Das Plugin läuft standardmäßig auf dem Port 8080. Soll also eine Anfrage gesendet werden, so ist diese an http://localhost:8080 zu richten.

Tools

Für den Unity-Desktop ist eine Lens verfügbar, die über den TV-Browser-Info-Server Suchen in TV-Browser durchführt. Diese kann hier heruntergeladen werden: tvbrowser-lens_0.1.0-1_all.deb

Nach Installation muss man sich ausloggen und wieder einloggen, damit die TV-Browser-Lens in Unity verfügbar wird.

Für Entwickler

Befehlsreferenz

Die möglichen Anfragen sind folgenden:

  • /search=
  • /searchFavorites=
  • /searchReminder=
  • /searchForMarkerId=
  • /searchTime=
  • /channelIcon=
  • /picture=

Die Anfragen werden einfach hinter der Serverbasis angegeben, z.B. http://localhost:8080/search=abc.

/search=

Der /search=-Befehl ist der mächtigste Befehl, den der TV-Browser-Info-Server beherrscht. Mit ihm können Abfragen der Typen /searchFavorites=, /searchReminder=, /searchTime= ersetzt werden. Dazu werden dem Suchbegriff hinter dem Gleichheitszeichen Steuerzeichen vorangestellt. Die Steuerzeichen haben folgende Bedeutung:

  • \ bedeutet: Suche nach den laufenden Sendungen und den zwei darauf folgenden auf den Sendern mit dem Suchbegriff im Namen, der auf \ folgt.
  • \\ bedeutet: Suche nach laufenden Sendungen in der Zeit die nach dem \\ folgt. Dabei kann die Zeit aus zwei Zahlen bestehen, dann werden diese als Stunden interpretiert (d.h. führende Nullen notwendig) oder aus vier Zahlen, diese werden als Stunden und Minuten interpretiert (auch führende Nullen notwendig).
  • + bedeutet: Suche nach den Lieblingssendungen, folgt auf das + nichts werden alle Lieblingssendungen aufgelistet, sonst nur die, bei denen im Titel der Suchbegriff vorkommt.
  • ++ bedeutet: Suche nach den Erinnerungen, folgt auf das + nichts werden alle Erinnerungen aufgelistet, sonst nur die, bei denen im Titel der Suchbegriff vorkommt.

Wird hinter dem = kein Steuerzeichen angegeben, wird nach allen Sendungen heute und morgen gesucht, die im Titel den Suchbegriff haben. Die Befehle /searchFavorites=, /searchReminder= und /searchTime= verhalten sich analog zu den angegebenen Steuerzeichen.

/searchForMarkerId=

Hiermit kann nach Sendungen gesucht werden, die von einem Plugin mit einer bestimmten ID markiert sind. Dabei wird nach dem Gleichheitszeichen die ID des Plugins und nach diesem durch ein & getrennt der Suchbegriff übergeben.

/channelIcon=

Hiermit kann ein Symbol für den Sender mit der hinter dem Gleichheitszeichen übergebenen ID angefordert werden. Es wird ChannelIcon als ID verwendet. ChannelIcon wird bei Suchanfragen zurückgeliefert. Das Symbol wird immer in der Größe 64x64 zurückgegeben.

/picture=

Hiermit kann ein Bild zu der Sendung mit der übergebenen ID angefordert werden. Es wird die UniqueID als ID verwendet. Die UniqueID wird bei Suchanfragen zurückgeliefert. Nur wenn das Feld Picture true enthält ist auch ein Bild für die Sendung verfügbar. Das Bild wird in der Quellgröße zurückgegeben. Es kann aber durch ein & getrennt eine Breite angegeben werden, auf die das Bild skaliert wird.

Rückgaben

Das Plugin gibt eine XML-Liste mit den gefundenen Sendungen zurück, die Texte, die Umlaute enthalten können, werden mit UTF-8 URL encodiert. Eine Rückgabe sieht beispielsweise folgendermaßen aus:

<?xml version="1.0"?>
<TvbSearch>
<Item>
  <UniqueID>tvbrowserdataservice.TvBrowserDataService_main_de_ard_2013-01-20_17:30:60</UniqueID>
  <Title>Landtagswahl+Niedersachsen</Title>
  <ShortDescription>Wahl+2013</ShortDescription>
  <StartDate>So, 20. Jan</StartDate>
  <StartTime>17:30</StartTime>
  <EndTime>19:30</EndTime>
  <Channel>Das+Erste+%28ARD%29</Channel>
  <ChannelIcon>tvbrowserdataservice.TvBrowserDataService_main_de_ard</ChannelIcon>
  <Picture>false</Picture>
</Item>
<Item>
  <UniqueID>tvbrowserdataservice.TvBrowserDataService_main_de_zdf_2013-01-20_17:45:60</UniqueID>
  <Title>Wahl+in+Niedersachsen</Title>
  <ShortDescription>Wahl+2013+im+ZDF+-+mit+Bettina+Schausten</ShortDescription>
  <StartDate>So, 20. Jan</StartDate>
  <StartTime>17:45</StartTime>
  <EndTime>19:00</EndTime>
  <Channel>ZDF</Channel>
  <ChannelIcon>tvbrowserdataservice.TvBrowserDataService_main_de_zdf</ChannelIcon>
  <Picture>false</Picture>
</Item>
</TvbSearch>