Aufnahmesteuerung: Feld "Reihe"?

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.

BBCode ist eingeschaltet
[img] ist eingeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Ansicht erweitern Die letzten Beiträge des Themas: Aufnahmesteuerung: Feld "Reihe"?

Re: Aufnahmesteuerung: Feld "Reihe"?

von Agrivaine » 02 Mai 2016, 15:02

:mrgreen:
Ich finde es in Java ja auch viel besser...

Ich hatte so eine ähnliche Lösung bis vor ein paar Monaten selbst im Einsatz. Man muss nur eine passende Seite finden, da gibt es dann u.a. wunderbare APIs, die alles schön in XML-Tags liefern...
Allerdings war das bei mir auch nicht ZDFinfo :wink:

Re: Aufnahmesteuerung: Feld "Reihe"?

von Hospes » 02 Mai 2016, 14:45

Agrivaine hat geschrieben:Du brauchst nicht zwangsläufig den URL-Parameter, mit Startdatum, Sendername und Sendezeit klappt es viel besser, brauchst ja nicht das gesamt Programm "anzeigen", sondern nur die gewünschte Sendung.
Richtig, dennoch muss ich dann für (fast) jede Sender-Seite einen eigenen Parsing-Algorithmus schreiben, da die Informationen dort nicht alle standardisiert sind.
Ich habe das auch gerade mal an meinem Eingangs-Beispiel getestet. Erst einmal musste ich mich durch die Homepage von ZDFinfo zum Programm navigieren, was mich dann in die Programmtabelle auf ZDF.de umgeleitet hat, wo ich dann nach dem Titel zwar suchen kann, dann aber auf der Seite von Terra X gelandet bin. Mal ganz abgesehen davon, dass ich dies jetzt als Mensch gemacht habe und nicht als Bot. :roll:

Du siehst, bis ich das programmiert habe, habe ich doch schneller Java gelernt – was ich auch noch vorher machen muss.
(Na, ja, als alter Programmierer ist das nicht so wild, eine neue Sprache zu lernen. Bash habe ich mir auch erst vor vier Wochen angeschaut.) :mrgreen:

Re: Aufnahmesteuerung: Feld "Reihe"?

von Agrivaine » 02 Mai 2016, 14:14

Das ist mir auch erst nach deinem Post aufgefallen, deswegen "bei genauerer Betrachtung..." :)
Mir ist bis dato nicht aufgefallen ( :oops: ), dass es ein Feld "Beliebige Information" tatsächlich gibt (so weit scroll ich bei mir nie runter :wink: ) und ich habe im Zusammenhang mit {custom} als Parameter das als "Benutzerdefiniert" interpretiert. Man müsste also einfach bspw. ###PLATZHALTER### verwenden, oder halt einfach etwas was normalerweise im Text etc. so nicht vorkommt.
(bezogen auf ds10, da mir gerade Hospes "dazwischenkam")

Du brauchst nicht zwangsläufig den URL-Parameter, mit Startdatum, Sendername und Sendezeit klappt es viel besser, brauchst ja nicht das gesamt Programm "anzeigen", sondern nur die gewünschte Sendung.

Dient auch mehr als Info für Mitleser/Suchende, nicht jeder kann Java (me too)...

Re: Aufnahmesteuerung: Feld "Reihe"?

von Hospes » 02 Mai 2016, 14:09

ds10 hat geschrieben:Das würde aber nicht funktionieren, da {custom} gar nicht beim Skript ankommt, denn TV-Browser ersetzt {custom} mit dem Inhalt des Datenfeldes "Beliebige Informationen".
Das wollte ich auch gerade sagen :wink:

Ich habe mein Skript in Bash geschrieben. Da bleibt es nicht aus, einige externe Werkzeuge zu nehmen.
Allerdings – das habe ich eben nochmal getestet – funktioniert der Umweg über die Webseite nicht. Denn dazu müsste der {url}-Parameter ja auch etwas liefern, was aber seltenst verfügbar ist.
Hier müsste ich dann für jeden Sender einen richtig komplexen Parser schreiben. Da lern' ich doch lieber gleich Java. :!:

Aber trotzdem vielen Dank für die interessante Idee.

Re: Aufnahmesteuerung: Feld "Reihe"?

von ds10 » 02 Mai 2016, 13:54

Das würde aber nicht funktionieren, da {custom} gar nicht beim Skript ankommt, denn TV-Browser ersetzt {custom} mit dem Inhalt des Datenfeldes "Beliebige Informationen".

Re: Aufnahmesteuerung: Feld "Reihe"?

von Agrivaine » 02 Mai 2016, 13:50

Der Weg über Java ist natürlich der wesentlich elegantere, trotzdem möchte ich die Antwort auf
Hospes hat geschrieben:...Und wie kann ich das dann über "externe" Quellen parsen und in diesen {custom}-Parameter einfügen? (wenn ich das jetzt richtig verstanden habe) :?:
nicht schuldig bleiben:

Voraussetzung wäre der Umgang mit Shell-Skripten und bspw. Kenntnisse von sed, cut, awk, wget, curl etc.
In der Aufnahmesteuerung wird der gewünschte String erzeugt mit {custom} an der Stelle wo später "Reihe" hin soll (dient quasi nur als Platzhalter, wobei er eigentlich leer sein sollte. Bei genauerer Betrachtung würde ich nun aber einen anderen vorziehen). Die Aufnahmesteuerung ruft nun ein Shell-Skript auf welches die Infos mittels wget oder curl von einer Webseite ausliest (für den eigenen Privatgebrauch erlaubt). Nun parst das Shell-Skript aus der Seite die gewünschten Infos und ersetzt im Aufnahmestring "{custom}" mit der geparsten Info und ruft abschließend was auch immer auf :)

Re: Aufnahmesteuerung: Feld "Reihe"?

von ds10 » 02 Mai 2016, 12:17

Außer den [wiki=%C3%9Cbersicht_Pluginentwicklung]Regeln zur Plugin-Entwicklung[/wiki], muss man nichts weiter beachten.

Re: Aufnahmesteuerung: Feld "Reihe"?

von Hospes » 02 Mai 2016, 11:53

Ah, ja, das hört sich doch recht einfach an. Das werde ich mal ausprobieren. Herzlichen Dank für die Hilfe!

Ich habe bisher noch nicht mit Eclipse gearbeitet, aber wie ich gerade sehen konnte, gibt es das unter Kubuntu über die Programmverwaltung und es scheint auch sehr klein zu sein.
– Verdammt, dass ist unter Ubuntu so geil mit den Programm-Installationen – so absolut winzig im Vergleich mit Windows !!! – :mrgreen:

Gibt es trotzdem irgend etwas, dass ich mit Eclipse für TVB beachten sollte?

Re: Aufnahmesteuerung: Feld "Reihe"?

von ds10 » 02 Mai 2016, 11:39

Ja, mit Eclipse geht das (ein Java-Projekt erstellen, dem als Library die tvbrowser.jar hinzugefügt wird und dann ein Paket und eine Klasse erstellen, die von devplugin.Plugin erbt). Es ist auch gar nicht wirklich schwierig, lade dir einfach das DescriptionInfoTextEraserPlugin herunter entpacke das dann, darin befindet sich die Datei DescriptionInfoTextEraserPlugin.java, in der kann man sehen, wie das gemacht wird, musst du halt nur etwas anpassen, um die Felder series und custom zu verwenden:

Code: Alles auswählen

String series = getTextField(ProgramFieldType.SERIES_TYPE);

if(series != null) {
  ((MutableProgram)program).setTextField(ProgramFieldType.CUSTOM_TYPE, series);
}

Re: Aufnahmesteuerung: Feld "Reihe"?

von Hospes » 02 Mai 2016, 10:56

Oh, wie schade.
Die Programmierung eines Pluins müsste ich dann wohl mit Eclipse machen, oder?

Re: Aufnahmesteuerung: Feld "Reihe"?

von ds10 » 02 Mai 2016, 10:46

Du kommst an die Information der Reihe nicht heran, da es dafür keinen Parameter gibt. Der {custom}-Parameter dient zum Auslesen genau dieses Feldes. Ohne TV-Browser umzuprogrammieren gäbe es nur die Möglichkeit ein Plugin zu schreiben, was während eines Datenupdates das Feld Reihe ausliest und dann in das Feld Beliebige Informationen schreibt, dann würde die Aufnahmesteuerung über den {custom}-Parameter auch die Reihe verwenden können.

Re: Aufnahmesteuerung: Feld "Reihe"?

von Hospes » 02 Mai 2016, 10:35

Ja, über den {custom}-Parameter habe ich mich schon gewundert.

Und wie kann ich das dann über "externe" Quellen parsen und in diesen {custom}-Parameter einfügen? (wenn ich das jetzt richtig verstanden habe) :?:

Re: Aufnahmesteuerung: Feld "Reihe"?

von Agrivaine » 02 Mai 2016, 10:28

Wusste ich doch, dass ich es falsch verstehe... :wink:
An die Info kommst du leider nur dran, wenn auch ein Parameter dafür vorhanden ist. Ohne Java-Kenntnisse und Änderung am Quellcode bliebe höchstens der "externe" Weg: die Daten von einer externen Quelle parsen und dann z.B. per {custom}-Parameter hinzufügen.

Re: Aufnahmesteuerung: Feld "Reihe"?

von Hospes » 02 Mai 2016, 10:16

Nein, Ich meine das Feld mit der Bezeichnung "Reihe", wie es im Info-Dialog erscheint.
z.B.:
heute · Mo, 2. Mai · 19:30-20:15 · ZDFinfo [=> Zeit/Sender]
Terra X [=> Reihe]
Jagd nach dem Himmelsfeuer [=> Titel]

Dieses Feld kann man auch in den Einstellungen zu "Infos zur Sendung" über den Button "Ansicht konfigurieren" (unten links) konfigurieren

Leider erscheint dieses Feld nicht als Parameter-Variable in der Hilfe-Liste. Ich hatte gehofft, dass man da irgendwie anders dran käme.

Re: Aufnahmesteuerung: Feld "Reihe"?

von Agrivaine » 02 Mai 2016, 10:04

Hi,
wahrscheinlich verstehe ich "Reihe" auch falsch, aber meinst du die Season-/Episodennummer? Falls doch, wäre {episode_number} der Weg zum Ziel (zumindest sofern die Daten auch vom Sender geliefert werden) oder dann ggf. nach meinem Verständnis ev. noch {genre}
Eine Liste aller unterstützten Parameter erhältst du übrigens wenn du in der Aufnahmesteuerung den "Standard-Treiber" auswählst --> Reiter "Parameter" --> "Hilfe"-Button

Nach oben