CSV-Datei-Filterkomponente

Aus TV-Browser Wiki
Version vom 14. Mai 2015, 10:31 Uhr von Sheldon2012⧼word-separator⧽⧼parentheses⧽ ⧼parentheses⧽
⧼revision-nav⧽
Wechseln zu: Navigation⧼comma-separator⧽Suche

Allgemeines

Dieses Plugin ermöglicht die Erstellung einer Filterkomponente, deren Filterinformationen aus einer CSV-Datei gelesen werden. Die resultierende Filterkomponente stellt somit eine offnen Schnittstelle für beliebige Fremdsysteme dar.

Diese Filterkomponente basiert auf den Überlegungen, die im Artikel BeanShell-Filter unter dem Punkt Dynamischer BeanShell-Filter als CSV-File-Interface ausgeführt werden. Die hier vorgestellte Filterkomponente stellt eine erweiterte und hinsichtlich der Performance optimierte Variante des dort vorgestellten BeanShell-Skriptes in Form eines Plugins dar.

Funktionsweise

Die CSV-Datei-Filterkomponente ließt die Informationen Sendungstitel und Episodentitel aus dem Datensatz einer CSV-Datei aus und vergleicht diese mit den entsprechnden Informationen einer Sendung im Datenbestand des TV-Browsers.

Installation

Für die Installation des Plugins folgt man den diesbezüglichen Anweisungen im Artikel Plugin.

Erstellung einer CSV-Datei-Filterkomponente

Die Erstellung einer CSV-Datei-Filterkomponente erfolgt gemäß der Beschreibung zur Erstellung von Filterregeln. Hierzu muss aus der entsprechenden Liste der Typ CSV-Datei ausgewählt und anschließend der Pfad zur jeweiligen CSV-Datei angegeben werden. Das folgende Schaubild verdeutlicht diese Konfiguration an einem Beispiel.


Schaubild - Erstellung einer CSV-Datei-Filterkomponente.jpg


Nach einen Doppelklick mit der linken Maustaste auf das Eingabefeld öffnet sich ein Fenster für die Auswahl einer CSV-Datei. Die Bestätigung der Auswahl erfolgt über den Schalter Öffnen.


Auswahl der CSV-Datei.jpg


Relativer Pfad zur CSV-Datei

Die Pfade zu den jeweiligen CSV-Dateien werden als relative Pfade bezüglich des TV-Browser-Hauptverzeichnisses angelegt.

Konventionen

Bei der Bereitstellung einer CSV-Datei, die von der CSV-Filter-Komponente eingelesen werden soll, sind bestimmte Konventionen zu beachten.

Kodierung der CSV-Datei

Bei der Erstellung der CSV-Datei muß die Kodierung UTF-8 verwendet werden.

Aufbau der CSV-Datei

Die CSV-Datei-Filterkomponente erwartet eine CSV-Datei mit einem definierten Aufbau.

Separator:

In der CSV-Datei werden die Datenfelder durch ein Semikolon ";" getrennt. Zeilen ohne den Trenner Semikolon werden ignoriert.

Datenfelder:

Die CSV-Datei enthält die Datenfelder Sendungstitel und Episodentitel.

Datensätze:

Ein Datensatz in der CSV-Datei wird von der CSV-Datei-Filterkomponente in folgender Form erwartet.


Sendungstitel;Episodentitel

Informationen in einem Datensatz

Die CSV-Datei-Filterkomponente behandelt alle Sendungen wie eine Episode einer Serie. Gehört eine Sendung zu einer Serie, so enthält sie standardmäßig die Informationen Sendungstitel1 und Episodentitel1. Auf diesbezügliche Ausnahmen wird im folgenden Abschnitt eingegangen. Eine solche Sendung wird standardmäßig in der CSV-Datei wie folgt hinterlegt.


Sendungstitel1;Episodentitel1

Gehört eine Sendung nicht zu einer Serie (z. B. Spielfilm, Dokumentation etc.), so enthält sie nur die Informationen Sendungstitel2. Eine solche Sendung wird von der CSV-Filter-Komponente als Serie mit nur einer Episode interpretiert. Somit entspricht im Standardfall der Episodentitel dem Sendungstitel. Auf diesbezügliche Ausnahmen wird im folgenden Abschnitt eingegangen. Die Hinterlegung einer solchen Sendung erfolgt in der CSV-Datei standardmäßig auf folgende Weise.


Sendungstitel2;Sendungstitel2

Hinweis:

Die CSV-Datei-Filterkomponnete berücksichtigt auch den Ausnahmefall, in dem eine Serie im TV-Browser nicht explizit als Serie gekennzeichnet ist

Gleicher Sendungstitel für Serie und Film

In Ausnahmefällen kann ein Sendungstitel sowohl eine Serie als auch einen Film repräsentieren. Die CSV-Datei-Filterkomponente erkennt eine solche Situation und unterscheidet automatisch zwischen der Serie und dem Film. In diesem Fall können die entsprechenden Sendungen in der CSV-Datei folgendermaßen hinterlegt werden:


Sendungstitel3;Episodentitel3
Sendungstitel3;Episodentitel4 
Sendungstitel3;Sendungstitel3

Informationen in den Datenfeldern

Die Datenfelder in der CSV-Datei werden von der CSV-Datei-Filterkomponnete mit den entsprechnden Feldern im TV-Browser abgeglichen. Dies ist bei der Erstellung der CSV-Datei zu beachten.

Informationen im Datenfeld Sendungstitel

Das Feld Sendungstitel in der CSV-Datei entspricht dem Feld TITLE_TYPE bzw. ORIGINAL_TITLE_TYPEim TV-Browser. Diese enthalten als Information den Titel bzw. den Originaltitel der Sendung.

Episoden-Nummer im Sendungstitel

Handelt es sich bei einer Sendung um eine Episode einer Serie, so kann es im Ausnahmefall vorkommen, daß für diese Sendung neben der Titel-Episoden-Nummer n im Sendungstitel keine weiteren verwertbaren Informationen im TV-Browser hinterlegt sind. Der Sendungstitel hat dann die Form


Serientitel(n) mit der Titel-Episoden-Nummer n, wobei n die Zeichen 0,...,9,-,/,+ enthalten kann   

Eine solche Sendung kann in der CVS-Datei in mehreren Varianten hinterlegt werden.

Variante 1: Hinterlegung mit Sendungstitel und Sendngstitel:


Sendungstitel;Sendngstitel 

Variante 2: Hinterlegung mit Sendungstitel und Titel-Episoden-Nummer:


Sendungstitel;n

Variante 3: Hinterlegung mit Serientitel und Sendngstitel:


Serientitel;Sendngstitel 

Variante 4: Hinterlegung mit Serientitel und Titel-Episoden-Nummer:


Serientitel;n

Sind für diese Sendung jedoch weitere verwertbare Informationen (z. B. der Episodentitel) im TV-Browser hinterlegt, so erfolgt die Hinterlegung in der CSV-Datei gemäß der Übersicht der Hinterlegungen mit dem Titel bzw. Originaltitel Serientitel(n). Um mehrfache Hinterlegungen zu vermeiden, wird auch die Hinterlegung mittels des Titels bzw. Originaltitels ohne Episoden-Nummer unterstützt. Dies gilt auch für den Fall des Episodentitels in der Beschreibung.

Beispiele für Episoden-Nummern:

172

32-33

2/4

32-38/179

45+46/137

Informationen im Datenfeld Episodentitel

Das Feld Episodentitel in der CSV-Datei entspricht im Standardfall dem Feld EPISODE_TYPE bzw. ORIGINAL_EPISODE_TYPE im TV-Browser. Diese enthalten als Information den Titel bzw. den Originaltitel der Episode.

Episodentitel in der Kurzbeschreibung

In Ausnahmefällen wird die Information über den Episodentitel im TV-Browser in der Kurzbeschreibung hinterlegt. Die CSV-Datei-Filterkomponente erkennt dies und gleicht in diesem Fall das Feld Episodentitel mit dem Feld SHORT_DESCRIPTION_TYPE im TV-Browser ab. Hierbei reicht es bereits aus, wenn der in der CSV-Datei hinterlegte Episodentitel in der Kurzbeschreibung enthalten ist.

Hinweis:

Somit ist es möglich, in der CSV-Datei die Kurzbeschreibung im Feld Episoedentitel zu hinterlegen. Dies kann im Einzelfall hilfreich sein, wenn kein expliziter Episodentitel verfügbar ist.

Beispiel:

Die Episoden der Sendung Disco haben keinen expliziten Titel, sondern werden über das Datum der Erstausstrahlung identifiziert. Dieses wird im TV-Browser in der Kurzbeschreibung hinterlegt.

Episodentitel in der Beschreibung

Ist für eine Sendung die Episoden-Nummer im Sendungstitel hinterlegt, so kann im Ausnahmefall der Episodentitel Teil der Beschreibung der Sendung sein. Der Sendungstitel hat dann die Form


Serientitel(n) mit der Episoden-Nummer n, wobei n die Zeichen 0,...,9,-,/ enthalten kann    

Eine solche Sendung kann in der CSV-Datei folgendermaßen hinterlegt werden.


Serientitel;Episodentitel 

Episodentitel im Sendungstitel

Ist für eine Sendung im TV-Browser kein epliziter Episodentitel hinterlegt, so kann im Ausnahmefall der Episodentitel Teil des Sendungstitels sein. Der Sendungstitel hat dann die Form


Serientitel:Episodentitel

Eine solche Sendung ist dann im TV-Browser nicht als Serie deklariert und kann in der CSV-Datei entweder gemäß dem Standard in der Form


Sendungstitel;Sendungstitel 

oder vereinfacht wie folgt hinterlegt werden.


Serientitel;Episodentitel 

Beispiel:

Diese Form der Hinterlegung tritt im TV-Browser z. B. bei allen Folgen der Serie Tatort auf.

Staffel-Episoden-Nummer als Episodentitel

Ist eine Sendung eine Episode einer Serie und sind für diese Sendung im TV-Browser nur die Staffel-Nummer m im Feld SEASON_NUMBER_TYPE und die Episoden-Nummer n im Feld EPISODE_NUMBER_TYPE hinterlegt, so kann für diese Sendung die Staffel-Episoden-Nummer SmEn als Kombination dieser beiden Parameter in der CSV-Datei im Feld Episodentitel hinterlegt werden. Hierbei ist die Staffel-Episoden-Nummer folgendermaßen aufgebaut:


SmEn mit m,n = 00, 01, 02, ..., 09, 10, 11, ..., 99  

Einstellige Werte von m und n werden also mit führenden Nullen dargestellt.

Beispiele:

S01E01: 1. Staffel, 1. Episode

S01E15: 1. Staffel, 15. Episode

S11E03: 11. Staffel, 3. Episode

S12E14: 12. Staffel, 14. Episode

Staffel-Episoden-Nummer in der Beschreibung

Im Ausnahmefall wird die Information zur Staffel-Episoden-Nummer im TV-Browser in der Beschreibung der Sendung aufgeführt.

Die Beschreibung hat dann die Form

m. Staffel, Folge n mit m,n = 1, 2, ..., 9, 10, 11, ..., 99  

Die CSV-Datei-Filterkomponnete erkennt dies und konstruiert hieraus die Staffel-Episoden-Nummer.

Filme mit gleichem Titel aus verschiedenen Produktionsjahren

Falls Filme mit gleichem Titel aus verschiedenen Produktionsjahren stammen, kann für diese in der CSV-Datei das Produktionsjahr im Feld Episodentitel hinterlegt werden. Das Produktionsjahr entspricht im TV-Browser dem Feld PRODUCTION_YEAR_TYPE. Die CSV-Datei-Filterkomponent erkennt diese Situation automatisch.

Übersicht der Hinterlegungen

In den vorhergehenden Abschnitten wurden die möglichen Hinterlegungen für die Felder Sendungstitel und Episodentitel in der CSV-Datei in Abhängigkeit von der Hinterlegung der Sendung im TV-Browser ausführlich behandelt. Die folgende Aufstellung fasst diese Hinterlegungen zur besseren Übersicht zusammen. Dies soll zur Erleichterung der korrekten Hinterlegung in der CSV-Datei beitragen. Hierbei entspricht die Reihenfolge der Fälle der des in der CSV-Datei-Filterkomponente verwendeten Matching-Modells mit den entsprechnden Matching-Modi..

Sendungstyp Modus TV-Browser CSV-Datei
Episode einer Serie ohne expliziten Episodentitel 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Kurzbeschriebung
Episode einer Serie mit Episodentitel in der Kurzbeschreibung 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Kurzbeschreibung
Episode einer Serie mit Episodentitel als Teil der Kurzbeschreibung 1 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Teil der Kurzbeschreibung
Episode einer Serie (**) 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Titel der Episode (*) (Feld EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Titel der Episode
Episode einer Serie, die im TV-Browser nicht als Serie deklariert ist 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Titel der Episode (*) (Feld EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = FALSE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Titel der Episode
Episode einer Serie, bei der der Episodentitel vom Original abweicht 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Originaltitel der Episode (Feld ORIGINAL_EPISODE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Originaltitel der Episode
Episode einer Serie, für die im TV-Browser nur die Staffel-Nummer und die Episoden-Nummer hinterlegt sind (***) 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Staffel-Nummer (Feld SEASON_NUMBER_TYPE)
  • Episoden-Nummer (Feld EPISODE_NUMBER_TYPE)
Folgende Parameter sind zu hinterlegen:
Film, Dokumentation etc. (**) 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Feld INFO_CATEGORIE_SERIE = FALSE
  • Ein anderes INFO_CATEGORIE-Feld ist TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Titel der Sendung
Film mit gleichem Titel aus verschiedenen Produktionsjahren 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Produktionsjahr (Feld PRODUKTION_YEAR_TYPE)
  • Feld INFO_CATEGORIE_MOVIE = TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Produktionsjahr der Sendung
Episode einer Serie, für die im TV-Browser nur die Episoden-Nummer im Sendungstitel hinterlegt ist (Variante 1) 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Titel der Sendung
Episode einer Serie, für die im TV-Browser nur die Episoden-Nummer im Sendungstitel hinterlegt ist (Variante 2) 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
Episode einer Serie, für die im TV-Browser nur die Episoden-Nummer im Sendungstitel hinterlegt ist (Variante 3) 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung ohne Episoden-Nummer
  • Feld EPISODENTITEL: Titel der Sendung
Episode einer Serie, für die im TV-Browser nur die Episoden-Nummer im Sendungstitel hinterlegt ist (Variante 4) 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
Episode einer Serie ohne expliziten Episodentitel mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung ohne Episdeon-Nummer
  • Feld EPISODENTITEL: Kurzbeschreibung
Episode einer Serie mit Episodentitel in der Kurzbeschreibung und Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung ohne Episdeon-Nummer
  • Feld EPISODENTITEL: Kurzbeschreibung
Episode einer Serie mit Episodentitel als Teil der Beschreibung und Episoden-Nummer im Sendungstitel 1 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Kurzbeschriebung (Feld DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung ohne Episdeon-Nummer
  • Feld EPISODENTITEL: Teil der Beschreibung
Episode einer Serie (**) mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Titel der Episode (*) (Feld EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung ohne Episdeon-Nummer
  • Feld EPISODENTITEL: Titel der Episode
Episode einer Serie, die im TV-Browser nicht als Serie deklariert ist, mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Titel der Episode (*) (Feld EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = FALSE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung ohne Episdeon-Nummer
  • Feld EPISODENTITEL: Titel der Episode
Episode einer Serie, bei der der Episodentitel vom Original abweicht, mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
  • Originaltitel der Episode (Feld ORIGINAL_EPISODE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung ohne Episdeon-Nummer
  • Feld EPISODENTITEL: Originaltitel der Episode
Episode einer Serie mit dem Episodentitel im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Titel der Sendung
  • Feld EPISODENTITEL: Titel der Episode
Episode einer Serie mit Originaltitel ohne expliziten Episodentitel 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Kurzbeschreibung
Episode einer Serie mit Originaltitel und Episodentitel in der Kurzbeschreibung 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Kurzbeschreibung
Episode einer Serie mit Originaltitel mit Episodentitel als Teil der Kurzbeschreibung 1 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Teil der Kurzbeschreibung
Episode einer Serie mit Originaltitel (**) 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL:TITLE_TYPE)
  • Originaltitel der Episode (Feld ORIGINAL_EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Originaltitel der Episode
Episode einer Serie mit Originaltitel, die im TV-Browser nicht als Serie deklariert ist 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Originaltitel der Episode (Feld ORIGINAL_EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = FALSE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Originaltitel der Episode
Episode einer Serie mit Originaltitel, bei der der Episodentitel vom Original abweicht 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Titel der Episode (*) (Feld EPISODE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Titel der Episode
Episode einer Serie mit Originaltitel, für die im TV-Browser nur die Staffel-Nummer und die Episoden-Nummer hinterlegt sind (***) 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Staffel-Nummer (Feld SEASON_NUMBER_TYPE)
  • Episoden-Nummer (Feld EPISODE_NUMBER_TYPE)
Folgende Parameter sind zu hinterlegen:
Film, Dokumentation etc. mit Originaltitel (**) 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Feld INFO_CATEGORIE_SERIE = FALSE
  • Ein anderes INFO_CATEGORIE-Feld ist TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Originaltitel der Sendung
Film mit gleichem Originaltitel aus verschiedenen Produktionsjahren 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Produktionsjahr (Feld PRODUKTION_YEAR_TYPE)
  • Feld INFO_CATEGORIE_MOVIE = TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Produktionsjahr der Sendung
Episode einer Serie mit Originaltitel, für die im TV-Browser nur die Episoden-Nummer im Originaltitel der Sendung hinterlegt ist (Variante 1) 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Originaltitel der Sendung
Episode einer Serie mit Originaltitel, für die im TV-Browser nur die Episoden-Nummer im Originaltitel der Sendung hinterlegt ist (Variante 2) 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
Episode einer Serie mit Originaltitel, für die im TV-Browser nur die Episoden-Nummer im Originaltitel der Sendung hinterlegt ist (Variante 3) 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung ohne Episoden-Nummer
  • Feld EPISODENTITEL: Originaltitel der Sendung
Episode einer Serie mit Originaltitel, für die im TV-Browser nur die Episoden-Nummer im Originaltitel der Sendung hinterlegt ist (Variante 4) 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
Episode einer Serie mit Originaltitel ohne expliziten Episodentitel mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung ohne Episoden-Nummer
  • Feld EPISODENTITEL: Kurzbeschreibung
Episode einer Serie mit Originaltitel und Episodentitel in der Kurzbeschreibung mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Kurzbeschriebung (Feld SHORT_DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung ohne Episoden-Nummer
  • Feld EPISODENTITEL: Kurzbeschreibung
Episode einer Serie mit Originaltitel und Episodentitel als Teil der Beschreibung und Episoden-Nummer im Sendungstitel 1 Folgende Parameter sind hinterlegt:
  • Titel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Kurzbeschriebung (Feld DESCRIPTION_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung ohne Episdeon-Nummer
  • Feld EPISODENTITEL: Teil der Beschreibung
Episode einer Serie mit Originaltitel (**) mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL:TITLE_TYPE)
  • Originaltitel der Episode (Feld ORIGINAL_EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = TRUE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung ohne Episoden-Nummer
  • Feld EPISODENTITEL: Originaltitel der Episode
Episode einer Serie mit Originaltitel, die im TV-Browser nicht als Serie deklariert ist, mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Originaltitel der Episode (Feld ORIGINAL_EPISODE_TYPE)
  • Feld INFO_CATEGORIE_SERIES = FALSE
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung ohne Episoden-Nummer
  • Feld EPISODENTITEL: Originaltitel der Episode
Episode einer Serie mit Originaltitel, bei der der Episodentitel vom Original abweicht, mit Episoden-Nummer im Sendungstitel 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
  • Titel der Episode (*) (Feld EPISODE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung ohne Episoden-Nummer
  • Feld EPISODENTITEL: Titel der Episode
Episode einer Serie mit dem Episodentitel im Originaltitel der Sendung 0 Folgende Parameter sind hinterlegt:
  • Originaltitel der Sendung (Feld ORIGINAL_TITLE_TYPE)
Folgende Parameter sind zu hinterlegen:
  • Feld SENDUNGSTITEL: Originaltitel der Sendung
  • Feld EPISODENTITEL: Titel der Episode

Legende:

(*) Der Episodentitel wird im TV-Browser in der Detailansicht der Sendung direkt unterhalb des Sendungstitels angezeigt.

(**) Eine Sendung, deren Sendungstitel sowohl eine Serie als auch einen Film repräsentiert, kann je nach Situation als Serie oder Film hinterlegt werden.

(***) Die Staffel-Nummer wird im TV-Browser in der Detailansicht der Sendung unter Nummer der Staffel aufgeführt. Die Episoden-Nummer wird im TV-Browser in der Detailansicht der Sendung direkt unterhalb des Sendungstitels angezeigt.

Hierbei werden die folgenden Matching-Modi unterstützt.

Modus Beschreibung
0 Der Inhalt des Feldes in der CSV-Datei entspricht exakt dem Inhalt des Feldes im TV-Browser.
1 Der Inhalt des Feldes in der CSV-Datei ist ein zusammenhängender Teil des Inhaltes des Feldes im TV-Browser.

Beispiel einer CSV-Datei

Eine gemäß den obigen Konventionen bereitgestellte CSV-Datei sieht wie folgt aus.


Sendungstitel1;Episodentitel1   <-- Die Sendung gehört zu einer Serie
Sendungstitel1;Episodentitel2
Sendungstitel2;Sendungstitel2   <-- Die Sendung gehört nicht zu einer Serie (z. B. Spielfilm, Dokumentation etc.)
Sendungstitel3;Episodentitel3   <--|
Sendungstitel3;Episodentitel4   <--|--- Der Sendungstitel gehört sowohl zu einer Serie als auch zu einem Film
Sendungstitel3;Sendungstitel3   <--|
Sendungstitel4;Episodentitel5
Sendungstitel4;Episodentitel6  
Sendungstitel4;Episodentitel7  

Anwendung

In diesem Abschnitt werden einige Möglichkeiten zur Anwendung der CSV-Datei-Filterkomponenrte aufgezeigt.

Hinweis:

Bei der Verwendung einer CSV-Datei-Filterkomponente in einem Filter ist, nach einer Modifikation der zu Grunde liegenden CSV-Datei, für die Aktualisierung der Darstellung der Filterinfomationen im TV-Browser eventuell ein Neustart des TV-Browsers erforderlch.

Offene bidirektionale Schnittstelle

Die vorgestellte CSV-Datei-Filterkomponente kann in Kombination mit den Plugins Filter-Info-Icons und SwitchPlugin zur Konfiguration einer offenen bidirektionalen Schnittstelle verwendet werden.

Informationen zu Sendungen bereitstellen

Im Beispiel zur Konfiguration einer offenen bidirektionalen Schnittstelle, wird aus einer CSV-Datei die Information bereitgestellt, ob eine Sendung in einer Mediathek enthalten ist oder nicht. Über die CSV-Datei-Filterkomponente können aber auch andere Informationsmerkmale zu Sendungen bereitgestellt werden. Hierzu muß eine CSV-Datei mit den Sendungen gefüllt werden, die das Merrkmal tragen. Anschließend folgt man der im Artikel Konfiguration einer offenen bidirektionalen Schnittstelle vorgestellten Vorgehensweise. Das folgende Beispiel soll helfen, dies zu verdeutlichen.

Erstausstrahlungen und Wiederholungen

Um anzuzeigen, ob eine Sendung eine Erstausstrahlung ist, wird Im TV-Browser die zusätzliche Informtaion Neu verwendet. Die Information, ob eine Sendung eine Wiederholung ist, wird über den ProgramFieldType im Feld REPETITION_OF_TYPE angezeigt. Leider sind diese Informationen nicht immer für alle Sendungen verfügbar. Daher läßt sich im TV-Browser nicht immer eindeutig bestimmen, ob eine Sendung eine Erstausstrahlung bzw. Wiederholung ist oder nicht.

Dieses Problem kann mittels der CSV-Datei-Filterkomponente gelößt werden. Hierzu muß eine CSV-Datei mit den Sendungen gefüllt werden, deren Erstausstrahlungsdatum in der Zukunft liegt. Die Sendungen, die nicht in dieser Datei aufgeführt werden, sind folglich Wiederholungen. Das Datum der Erstausstrahlung einer Sendung kann hierzu aus einer externen Datenquelle wie z. B. der freien Datenbank TheTVDB ausgelesen werden. Zur Anzeige im TV-Browser folgt man wieder der übliche Vorgehensweise.

Anbindung an externe Datenquellen

Die CSV-Datei-Filterkomponente kann zur Anbindung des TV-Browsers an externe Datenquellen genutzt werden. Hierbei sind inbesondere freie Datenbanken wie z. B. TheTVDB, AniDB oder TVRage von Interesse, da diese umfangreiche TV-Daten verwalten. Für die Kommunkation mit diesen Datenbanken kann z. B. das FileBot CLI verwendet werden.

Performance

Dieses Plugin wurde hinsichtlich der Performance optimiert. Diese Optimierung wurde aus technischer Sicht hauptsächlich durch die Minimierung der Lesezugriffe auf die CSV-Datei und das Laden der Daten aus der CSV-Datei in den Arbeitspeicher erreicht. Somit kommt es bei der Arbeit mit CSV-Dateien, die eine große Anzahl von Datensätzen enthalten, zu einer erhöhten Auslastung des Arbeitsspeichers. Daher ist die Performance vom vefügbaren Arbeitsspeicher abhängig. Für Details sei auf den Quellcode im Plugin-Paket verwiesen.

Diesbezügliche Tests wurden mit Dateien durchgeführt, die bis zu 100.000 Datensätzen enthielten. Diese Tests führten bei einem Arbeitsspeicher von 3 GB zu guten Ergebnissen.

Versionen

Die folgende Tabelle zeigt den Versionsverlauf des Plugins.

Version Kommentar Typ Datum
1.0.1.0 Für diese Version wurden folgende Punkte implementiert: Entwicklungsversion 02.03.2015
1.0.2.0 Für diese Version wurden folgende Punkte implementiert: Entwicklungsversion 03.03.2015
1.0.3.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 06.03.2015
1.0.4.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 29.03.2015
1.0.5.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 01.04.2015
1.0.6.0 Für diese Version wurden folgende Punkte implementiert:
  • Einlesen der CSV-Datei mit dem Zeichensatz UTF-8
  • Korrektur der Konvertierung der Sonderzeichen "ä", "ö", "ü" und "ß"
Offizielle Version 05.04.2015
1.0.7.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 08.04.2015
1.0.8.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 19.04.2015
1.0.9.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 22.04.2015
1.1.0.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 26.04.2015
1.1.0.1 Für diese Version wurden folgende Punkte implementiert:
  • Nach einem Doppelklick auf das leere Eingabefeld für die CSV-Datei wird ein Auswahlfenster für die CSV-Datei geöffnet.
Offizielle Version 27.04.2015
1.1.0.2 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 28.04.2015
1.1.1.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 03.05.2015
1.1.2.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version 10.05.2015
1.1.3.0 Für diese Version wurden folgende Punkte implementiert: Offizielle Version --