Jump to content
HacMat

Commandline-Interface (Windows,Linux/Wine) für den RS

Recommended Posts

Klaus Heynen

Hi HacMat,

 

habe mal angefangen zu testen, folgendes Problem taucht auf:

---------------------------
Ausführungsfehler
---------------------------
Ungültiger Prozeduraufruf oder ungültiges Argument:

 

C:\Program Files\RS Requester\cfaddon.exe Requester="C:\Program Files\RS Requester\rsreq.exe" Konfiguration="C:\Program Files\RS Requester\cfaddon.cfg" Parameter="-request record -readfile "C:\Program Files\RS Requester\Requester.cfg"" Pos=1351557 SendungID="13488387" Sender="ServusTV" Beginn="201508032220" Dauer=115 Sendung="Rampart - Cop außer Kontrolle" Genre="Drama" Bild="N:\TV Movie ClickFinder\Hyperlinks\rampart-cop-ausser-kontrolle-8b1023d53e2cbdb2d.jpg"

 

Möchten Sie das AddOn entfernen ?
---------------------------
Ja Nein
---------------------------

 

Liegt das an mir, an XP oder vielleicht an Clickfinder 5.22a (5.3 ist aktuell)?

 

Anbei meine Add-On-Konfigurationsdatei (umbenannt als TXT)

 

Grüße Klauscfaddon.txt

Share this post


Link to post
HacMat

Hallo Klaus,

 

es liegt an XP. Ich habe das Add-on neu kompiliert. Jetzt ist es XP-kompatibel.

 

Hier kannst Du die neue Version downloaden: Clickfinder-Add-On 1.0.0.1b.zip

 

Getestet habe ich das Add-on nur mit dem Clickfinder in der Version 5.3. Vermutlich funktioniert es aber auch mit der Version 5.22a einwandfrei.

 

Viele Grüße,

 

HacMat

Share this post


Link to post
Klaus Heynen

Vielen Dank teste ich heute Abend.

Wenn ich meinen PC wieder hin kriege Netzteil hat aufgegeben.

Share this post


Link to post
shaupti

Guten Morgen,

 

So mal vorab, wenn man mit tvbrowser von 0 anfängt ist es ein ordentliches Stück zum einrichten.

 

Bin an ein paar Problemchen gestoßen.

 

1. Ich brauch mehr tuner zur Auswahl ;-)

 

2. Hab ich das mit den Sender strings noch nicht so ganz verstanden, da muss jeder Sender rein?

 

3. Ich kann mehrere configs machen und dort dann das Aufnahme Verzeichnis ändern?

 

4. Woher weißt das Programm auf welchem transponder welcher Sender liegt? Liest er es aus der channel liste?

 

5. Ich hab einigen Sendern gewisse tuner zu gewiesen, wird das auch berücksichtigt?

 

6. Das mit der Titel Vergabe hat nicht ganz funktioniert, hab das probiert was ihr ein paar Seiten zu vor reingestellt habt. Da ich auch viele Serien aufnehme ist die season Episoden Anzeige schon ganz wichtig für mich.

Bei mir kam immer nur der Titel und der Untertitel aber zeit Sender usw kam nicht.

Und natürlich durch die config so eingestellt das die epg Titel ignoriert werden.

 

So ich glaub das war es fürs erste.

 

Danke!

Edited by shaupti

Share this post


Link to post
HacMat

Hallo Shaupti,

 

1. Ich konnte mir einfach nicht vorstellen, dass jemand mehr als 9 Tuner hat. Nächste Woche werde ich vermutlich eine neue Version zum Download stellen, bei der Du mehr Tuner auswählen kannst.

 

2. Wenn Du mit Sender-Strings die Sender-Sektionen in der Konfigurationsdatei meinst: Nein Du musst nicht für jeden Sender eine Sender-Sektion anlegen. Die Sender-Sektionen dienen nur dazu die Aufnahme-Einstellungen für verschiedene Sender unterschiedlich festlegen zu können. Bei öffentlichen Sendern möchte man z.B. wahrscheinlich gerne PDC verwenden, damit man die Aufnahmen nicht mehr schneiden muss. Die privaten unterstützen kein PDC, deshalb muss in den Aufnahmeeinstellungen PDC deaktiviert sein.

Du könntest zum Beispiel die Standard-Einstellungen, die Dir am geeignetsten erscheinen über die Kommandozeile übergeben.

Für die öffentlichen Sendern legst Du dann jeweils eine Sektion an, in denen Du auf eine Sektion verweist, in denen Du die Einstellungen für die öffentlich rechtlichen Sender zusammenfasst.

In dieser Sektion kannst Du deine Standard-Einstellungen, die Du über die Kommandozeile (also bei Dir über die Aufnahmesteuerung des TV-Browsers) an den RS Requester übergibst überschreiben. Für Sender bei denen Du deine Default-Einstellungen beibehalten willst, kannst Du die Sender-Sektion auch weglassen.

 

Beispiel:

 

Parameter-String in der Aufnahmesteuerung:

 

-request record -readfile C:\\Program Files (x86)\\RS Requester\\Requester.cfg -title {title} -channel {channel_name_external} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute} -stop {end_hour}:{end_minute} -preroll 5 -postroll 10

 

Konfigurationsdatei:

 

...

 

[ARD und ZDF]

preroll = 2 <= überschreibt '-preroll 5'

postroll = 0 <= überschreibt '-preroll 10'

monitorPDC = on <= aktiviert PDC

monitor = EIT <= Für PDC soll der EIT Running-Status ausgewertet werden

PILsource = EPG <= Das PIL soll aus der EPG-Info zur Sendung gezogen werden.

useTimesEPG = on <= Die Start– und Endzeit aus dem EPG verwenden.

Folder = “D:\Aufnahmen mit PDC“

 

[ZDF HD (deu):record]

section = ARD und ZDF

 

[Das Erste HD (deu):record]

section = ARD und ZDF

 

[WDR HD (deu):record]

section = ARD und ZDF

 

...

 

3. Kannst Du. Du kannst aber auch in den Sender-Sektionen den Sendern unterschiedliche Aufnahmeverzeichnisse zuordnen. Im obigen Beispiel habe ich den Aufnahmen auf den öffentlich-rechtlichen Sendern ein eigenes Aufnahmeverzeichnis zugeordnet. So weiß man direkt, dass man diese Aufnahmen nicht mehr schneiden braucht.

Man könnte auch jedem Sender ein gesondertes Aufnahmeverzeichnis zu ordnen z.B 'D:\ZDF' oder 'E:\Pro Sieben'.

 

Wenn Du unterschiedliche Konfigurationsdateien verwenden willst, musst Du dafür zusätzlich Aufnahmegeräte im TV-Browser einrichten und mit '-readfile' an den RS Requester übergeben.

 

4. Das weiß der RS Requester leider nicht; ich habe auch keine Möglichkeit gefunden die Transponder-Nummer vom Recording Service abzurufen. Deshalb habe ich den Schlüssel StreamID eingeführt. Sender denen die gleiche StreamID zugeordnet sind betrachtet der RS Requester als simultan aufnehmbar, d.h auch wenn alle Tuner bereits belegt sind, wird der Aufnahmeauftrag nicht zurückgewiesen, falls für die Aufnahmezeit bereits Aufnahmeaufträge vorliegen, deren Sender die gleiche Stream-ID verenden, wie der Sender des neuen zusätzlichen Aufnahme-Auftrags. Bei mehr als 9 Tunern sollte es aber auch ohne die Angabe von Stream-Ids gehen.

 

5. Die Tuner werden vom Recording Service zugewiesen, nicht vom RS Requester. Soweit mir bekannt ist die Tunerwahl weder über die API noch über das Web-Interface beinflussbar.

 

6. Da sich über die API des RS viele Funktionen des RS Requesters nicht realisieren ließen, habe ich teilweise auf die Requests des Web-Interface zurückgegriffen.

Leider dient bei denen der Sendengstitel nur als Bezeichner für den Timer. Den Titel zur Generierung des Dateinamens greift sich der RS grundsätzlich immer aus dem EPG. Vielleicht verhält sich die neuste Version da anders. Ich bin bisher noch nicht dazu gekommen sie auszuprobieren. Bei der neuen Version wurde auch die API erweitert, sodass ich eventuell auf die Requests des Web-Interfaces verzichten kann und das Problem damit erledigt wäre.

 

Ich hoffe ich habe Deine Fragen richtig verstanden und konnte Dir weiterhelfen.

 

VG,

 

HacMat

Share this post


Link to post
shaupti

Hallo HacMat,

 

1. Ich habe 12 , hat sich mit der Zeit entwickelt, 4 für die freien und 8 für verschlüsselte, damit sich da keiner in die quere kommt.

 

2. Also setzte ich einfach in meinem Fall einen String, da ich alles gleich aufnehme, vertraue dem anderem nicht.

 

3. Die Aufnahmeverzeichnisse sind eher auf die Suchen gesetzt, also Serie 1 in Ordner 1 usw.

 

4. und 5. Ist sogesehen ja doch ein Punkt, geht ja darum, das die Timer gesetzt werden und RecService dann sagt

z.b. Aufnahme freier Sender Tuner 1-4 und Verschlüsselte Sender Tuner 5 - 12.

Damit die Zuordnung der Sendergruppen dann noch passt.

 

6. Ok, dann hab ich das ein wenig falsch Verstanden.

Hab gedacht durch den TV-Browser könnte man den Titel so wie man ihn will übergeben und im Rec-Service in den Optionen

nur den Titel auswählen ohne Zusätze.

Da ich das so gerne hätte:

Bei Serien --- Bitten_S01-E07_Jäger und Gejagte_SIXX ---

bei Filmen --- Faster_Genre Actionthriller Date 2010 - 2015-08-02 - 22-55-00_ProSieben ---

oder so in der Art.

 

7. Kommt noch ein Punkt dazu, und zwar, kann ich in der config sagen, setze alle Timer egal ob eine überschneidung etc vorhanden ist.

Da ich momentan auch jedesmal über die Aufnahmen drüber schaue, bzw schauen muss, da das automatische auslassen etc nicht funktiioniert.

Also würde ich das so beibehalten, das alle Timer für eine Woche gesetzt werden und ich drüber schaue was ich dann behalten will.

 

Gruß shaupti

Edited by shaupti

Share this post


Link to post
HacMat

2. Also setzte ich einfach in meinem Fall einen String, da ich alles gleich aufnehme, vertraue dem anderem nicht.

 

PDC funktioniert bei den meisten Sendern nahezu perfekt. Es gibt Ausnahmen wie z.B. Phoenix. Bei Phoenix scheinen sie der Meinung zu sein, dass der Phoenix-Seher unbedingt auch immer die Programmvorschauen mit aufzeichnen möchten. Bei ZDF neo kam es bei mir häufiger vor, dass PDC vollkommen fehlschlug.

 

Wenn Du PDC für zu unzuverlässig hältst gibt es noch die Möglichkeit automatisch auch immer einen Timer ohne PDC zu erzeugen. Die Sendung wird dann zweimal aufgenommen, einmal mit fester Start- und Endzeit und einmal durch PDC gesteuert. Hat die Aufnahme mit PDC funktioniert, löschst Du die 'Sicherheits-Aufnahme' einfach wieder. Auf PDC ganz verzichten würde ich nicht.

 

Für ZDF_neo könntest Du das z.B. so bewerkstelligen:

 

[zdf_neo HD (deu):record]

execOnSuccess = C:\Program Files (x86)\RS Requester\rsreq.exe -request record -verbose -folder D:\Aufnahmen ohne PDC -host {host} -port {port} -https {https} -title {title} -channel {channel} -date {date} -start {start} -stop {stop} -monitor nothing -monitorPDC disabled -preroll 5 -postroll 10 -window disabled -autoExit if successful

 

[zdf_neo HD (deu):delete]

execOnSuccess = C:\Program Files (x86)\RS Requester\rsreq.exe -request delete -folder D:\Aufnahmen ohne PDC -host {host} -port {port} -https {https} -title {title} -channel {channel} -date {date} -start {start} -preroll 5 -postroll 10 -window disabled -autoExit if successful

 

 

3. Die Aufnahmeverzeichnisse sind eher auf die Suchen gesetzt, also Serie 1 in Ordner 1 usw.

 

Ich könnte eine Funktion implementieren, bei denen der RS Requester den Timern das Aufnahmeverzeichnis zuordnet, bei dem die größte Ähnlichkeit zwischen Verzeichnisname und Titel der Sendung besteht.

 

Beispiel:

 

Aufnahmeverzeichnis:

 

d:\TV-Aufnahmen

 

Unterverzeichnisse:

 

d:\TV-Aufnahmen\Serie A

d:\TV-Aufnahmen\Serie B

d:\TV-Aufnahmen\Serie C

 

Titel der Sendung:

 

Serie B Season 1 Episode 34

 

Größte Ähnlichkeit besteht zwischen „Serie B Season 1 Episode 34“ und „Serie B“ => Der RS Requester übergibt d:\TV-Aufnahmen\Serie B als Aufnahmeverzeichnis an den Recording Service.

 

Wäre eine solche Funktion für Dich praktikabel ?

 

 

4. und 5. Ist sogesehen ja doch ein Punkt, geht ja darum, das die Timer gesetzt werden und RecService dann sagt

z.b. Aufnahme freier Sender Tuner 1-4 und Verschlüsselte Sender Tuner 5 - 12.

Damit die Zuordnung der Sendergruppen dann noch passt.

 

Vielleicht verstehe ich nicht richtig was Du meinst. Wenn Du mir die mit 'http://.../api/getchannelsxml.html' im Browser angezeigte Senderliste zukommen ließest, verstünde ich vielleicht mehr.

 

 

6. Ok, dann hab ich das ein wenig falsch Verstanden.

Hab gedacht durch den TV-Browser könnte man den Titel so wie man ihn will übergeben und im Rec-Service in den Optionen

nur den Titel auswählen ohne Zusätze.

Da ich das so gerne hätte:

Bei Serien --- Bitten_S01-E07_Jäger und Gejagte_SIXX ---

bei Filmen --- Faster_Genre Actionthriller Date 2010 - 2015-08-02 - 22-55-00_ProSieben ---

oder so in der Art.

 

Du hast das schon ganz richtig verstanden. So wie Du sagst sollte es auch funktionieren. Das Problem ist nur das der RS den übergebenen Titel nur als Name für den Timer betrachtet nicht aber als Sendungstitel, den er zur Bildung des Dateinamens verwendet. Ich denke das ist ein Bug im RS. Den Namen des Timers im Web-Interface ändern zu können, ohne dass dieser als Titel im Dateinamen verwendet wird, macht für mich keinen Sinn.

 

 

7. Kommt noch ein Punkt dazu, und zwar, kann ich in der config sagen, setze alle Timer egal ob eine überschneidung etc vorhanden ist.

Da ich momentan auch jedesmal über die Aufnahmen drüber schaue, bzw schauen muss, da das automatische auslassen etc nicht funktiioniert.

Also würde ich das so beibehalten, das alle Timer für eine Woche gesetzt werden und ich drüber schaue was ich dann behalten will.

 

Der RS Requester wird in der nächsten Version alle Requests an den RS weiter leiten, wenn Du 'devices' den Wert 0 zuweist.

 

Share this post


Link to post
shaupti

Erstmal großen respeckt zu deinem Support!!!

 

 

Bei der Hitze wirst echt zum Hirsch.....

 

3. Aufnahmestrucktur

 

TV-EINGANG-REC --- Hauptverzeichnis

- Schatz ---- alles für Schatzi, GZSZ usw.

- FILME ---- wie der Name schon sagt

- Stefan --- alles für mich ;)

- tv-eingang-rec ---- der Rest von den Aufnahmen

 

und diese Ordner würde ich gerne auswählen können.

 

Das andere was du vorgschlagen hast, hatte ich mir mal überlegt, wird aber dann echt unübersichtlich.

 

Hab mich da leider falsch ausgedrückt.

 

4. ist angehängt.

hast ja geschrieben das die Sender-Gruppen vom rec-service verwaltet werden.

 

6. heist dann wohl noch ein bisschen testen.

 

7. Super :)

 

Gruß

getchannelsxml.html.xml

Edited by shaupti

Share this post


Link to post
HacMat

Hallo Shaupti,

 

Ich würde einfach 4 Aufnahmegeräte in der Aufnahmesteuerung des TV-Browsers einrichten und diese folgender Maßen benennen:

 

für Schatzi

Film

für Stefan

restliche Aufnahmen

 

Als Parameter-Strings verwendest Du z.B.:

 

in Aufnahmegerät „für Schatzi“:

 

Parameter für Aufnahme:

 

-request record -folder “D:\tv-eingang-rec\Schatz“ -readfile “C:\\Program Files (x86)\\RS Requester\\Requester.cfg“ -title "{TITLE}" -channelID {channel_name_external} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute} -stop {end_hour}:{end_minute}

 

Parameter für Löschen:

 

-request delete -folder “D:\tv-eingang-rec\Schatz“ -readfile C:\\Program Files (x86)\\RS Requester\\Requester.cfg -channelID {channel_name_external} -title {title} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute}

 

in Aufnahmegerät „Film“:

 

Parameter für Aufnahme:

 

-request record -folder “D:\tv-eingang-rec\FILME “ -readfile “C:\\Program Files (x86)\\RS Requester\\Requester.cfg“ -title "{TITLE}" -channelID {channel_name_external} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute} -stop {end_hour}:{end_minute}

 

Parameter für Löschen:

 

-request delete -folder “D:\tv-eingang-rec\FILME “ -readfile C:\\Program Files (x86)\\RS Requester\\Requester.cfg -channelID {channel_name_external} -title {title} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute}

 

in Aufnahmegerät „für Stefan“:

 

Parameter für Aufnahme:

 

-request record -folder “D:\tv-eingang-rec\Stefan “ -readfile “C:\\Program Files (x86)\\RS Requester\\Requester.cfg“ -title "{TITLE}" -channelID {channel_name_external} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute} -stop {end_hour}:{end_minute}

 

Parameter für Löschen:

 

-request delete -folder “D:\tv-eingang-rec\ Stefan “ -readfile C:\\Program Files (x86)\\RS Requester\\Requester.cfg -channelID {channel_name_external} -title {title} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute}

 

in Aufnahmegerät „sonstige Aufnahmen“:

 

Parameter für Aufnahme:

 

-request record -folder “D:\tv-eingang-rec“ -readfile “C:\\Program Files (x86)\\RS Requester\\Requester.cfg“ -title "{TITLE}" -channelID {channel_name_external} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute} -stop {end_hour}:{end_minute}

 

Parameter für Löschen:

 

-request delete -folder “D:\tv-eingang-rec“ -readfile C:\\Program Files (x86)\\RS Requester\\Requester.cfg -channelID {channel_name_external} -title {title} -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute}

 

Am besten übergibst Du mit channelID die Sender-ID anstatt des Sendernamens. Die ist auch in Deinem komplexen Anwendungsfall immer eindeutig. Wenn die Spezifizierung des Senders für den RS Requester nicht eindeutig ist, gibt er eine Fehlermeldung aus. Unter Einstellungen/Sender in der Aufnahmesteuerung musst Du dann als Sendernamen die Sender-IDs eintragen und nicht den Sendernamen. Die Sender-Ids findest Du in der XML-Senderliste, die Du hochgeladen hast.

 

Soweit die Theorie. Leider ist die Version 1.0.4.0 so dermaßen verbugt, dass es so noch nicht funktioniert. Die Verwendung von Sender-Ids zusammen mit den entsprechenden Sender-Id-Sektionen in der Konfigurationsdatei, führt unter Umständen zu einem Absturz des RS Requesters.

 

Deshalb lass erst mal weitere Tests, bis ich in der nächsten Woche eine fehlerbereinigte und erweiterte Version des RS Requesters veröffentlicht habe.

 

Bitte melde Dich dann wieder, falls Du noch Probleme hast und lass mich wissen, wenn die obige Lösung für Dich nicht praktikabel ist.

 

VG und schönes Wochenende,

 

HacMat

Share this post


Link to post
shaupti

So etwas in der art habe ich mir vorgestellt.

 

Das probieren ist kein Problem, wird auf einem PC gemacht der zum testen da ist und nicht der hauptserver.

 

Gruß

Share this post


Link to post
Klaus Heynen

@ HacMat

 

Habe meinen Rechner wieder flott bekommen.

 

Bekomme nun bei Aufnahme programieren sowie beim Löschen:

 

Fehler Code: 12002

 

Habe das mal auf einen Server 2012 Essential mit Clickfinder 5.3 getestet dort geht es.

 

Was besagt der Fehler?

 

Grüße Klaus

Share this post


Link to post
HacMat

@Klaus Heynen

 

Das hat nichts mit der Clickfinder zu tun.

Der Fehlercode 12002 steht für Internet Timeout.

Läuft der Recording Service auf dem selben Rechner wie der RS Requester ? Wenn nicht, dann musst Du mit 'host' den Rechnernamen oder die IP angeben. Ansonsten geht der RS Requester davon aus, dass der RS auf dem lokalen Rechner läuft, enstpricht 'host = 127.0.0.1'. Auch wenn der Port nicht stimmt, kann dieser Fehler auftreten. Wenn Du nicht explizit einen Port zuweist, verwendet Der Requester als Vorgabe 8089. Ansonsten kannst Du noch mit 'timeout' die Zeitspanne bis zum Timeout (Vorgabe 2000 ms) hochsetzen.

 

 

VG,

 

HacMat

Edited by HacMat

Share this post


Link to post
Klaus Heynen

Hi HacMat,

 

geht jetzt aber neue Fehlermeldung:

 

"DVB recording service 1.9.7.0

Version nicht unterstützt."

 

Ich denke seit einem DVBViewer up date zeigt mein RS diese Version an obwohl ich die letzte Version 1.31.0 installiert habe.

 

Grüße Klaus

Share this post


Link to post
HacMat

@Klaus Heynen

 

Du verwendest die Version 1.31.0.0 mit dem RS Requester 1.0.4.0.

Als ich diese Version herausbrachte war Version 1.30.1.0 des RS aktuell. Diese Meldung bedeutet nur, dass der RS Requester 1.0.4.0. mit der von Dir eingesetzten Version des RS eventuell inkompatibel ist. Das muss aber nicht der Fall sein. Verwende einfach den Parameter -verbose und die an den RS gesendeten Http-Requests werden mit ausgeben. Quittiert der RS diese alle mit „OK (200)“ stehen die Chance recht gut das alles funktioniert. Allerdings sollte da nicht „1.9.7.0“ stehen , sondern „1.31.0.0“. Wird Dir diese Version nur im Fenster des RS Requesters angezeigt oder auch an anderer Stelle, wie z.B. im Web-Interface des RS ?

Share this post


Link to post
Klaus Heynen

Web interface zeigt auch 1.9.7.0

 

- verbose zeigt nach:

"DVB recording service 1.9.7.0

Version nicht unterstützt."

 

<<Not found 404

 

ich glaube die letzte RS Version verwendet andere Seitenbezeichnungen zB. was früher "PRORAMM" hieß heist nun "TV Guide" vielleicht liegt es daran.

Zu dem wird bei Benutzung von IE9 eine Inkompatibilität an gemahnt, IE9 geht aber trotzdem.

Share this post


Link to post
nuts

1.9.7 dürfte doch uralt sein?

Vielleicht nochmal die neuste Version drüber installieren?

Share this post


Link to post
Klaus Heynen

danke, läuft gerade ne Aufnahme, danach werde ich noch mal drüber installieren.

Share this post


Link to post
HacMat

@Klaus Heynen

 

Wenn die Entwickler des RS auch nur den Namen eines einzigen Parameters ändern, der mit einem HTTP-GET-Request an den RS übermittelt wird, führt das schon zum Http-Fehler „Not found (404)“.

Ich lass den RS Requester Requests schicken, die ich mir aus dem Quelltext des Web-Interface gezogen habe, weil die Möglichkeiten der API nicht ausreichten. Da ich nicht erwarten kann, dass diese Requests niemals geändert werden, habe ich diesen Versions-Check eingebaut. Wenn also nur ein einziger Request mit einem „Not found“ quittiert wird, heißt das, dass der RS Requester mit der eingesetzten RS-Version nicht richtig funktioniert. Dann bleibt Dir nur die Möglichleit wieder die RS-Version 1.30.1.0 zu installieren oder auf die nächste Requester-Version zu warten, die ich hoffentlich bis spätestens zum Ende der nächsten Woche fertig habe.

Share this post


Link to post
nuts

Wenn du Zeit und Lust hast kannst du ja mal zusammentragen was an der API fehlt.

Sollte das überzeugend sein bestehen Chancen, dass die API erweitert wird. ;)

Share this post


Link to post
Klaus Heynen

Danke, guter Tipp, drüber installiert und funktioniert.

 

Nun muss ich die config noch trimmen!

 

EIne tolle Arbeit von dir, Hut ab, einfach Klasse!

 

Eine Frage noch hast Du das mit dem "-execOnError" zum Abfangen von Fehlern schon implementiert?

 

Viele Grüße Klaus

Share this post


Link to post
Klaus Heynen

Vielleicht sehe ich Gespenster aber nun haben ich bei fast allen Sendern <deu> am Anfang des EPG Titels stehen.

 

Heute auf Super RTL um 22:155 zB. <deu>Snapped - Wenn Frauen töten auf

Share this post


Link to post
Klaus Heynen

Hab, nix getrunken, die Geister sind wieder weg alles wieder normal!

 

Heute auf Super RTL um 22:155 jetzt wieder: Snapped - Wenn Frauen töten auf

 

Share this post


Link to post
HacMat

@nuts

 

Die API habt ihr ja in der neuen Version erweitert und verbessert. Überwiegend verwende ich auch die API-Requests. Ich weiß momentan nicht mehr genau, was für mich an der API fehlte, vielleicht habe ich auch nur etwas übersehen. Die Dokumentation der API ist auch etwas zerstückelt. Ich werde mal versuchen in der übernächsten Version des RS Requesters ausschließlich API-Requests einzusetzen und falls es nicht geht, sag ich Euch warum.

 

 

 

 

@Klaus Heynen

 

„execOnError“ funktioniert in der Version 1.0.4.0 nicht richtig, deshalb besser nicht verwenden.

 

 

Vielleicht sehe ich Gespenster aber nun haben ich bei fast allen Sendern <deu> am Anfang des EPG Titels stehen.

 

Heute auf Super RTL um 22:155 zB. <deu>Snapped - Wenn Frauen töten auf

 

 

Das sollte so nicht sein. Ist das auch so, wenn Du den Timer über das Web-Interface erzeugst ? Welche RS Version verwendest Du jetzt ?

Share this post


Link to post
HacMat

@Klaus Heynen

 

Ok, waren wohl tatsächlich nur Geister.

Sollten sie wieder auftauchen und dich verängstigen, lass es mich wissen. ;)

 

Viele Grüße,

 

HacMat

Share this post


Link to post
nuts

Ok bin gespannt.

Die API kann nur verbessert werden wenn aktive Entwickler wie du konkrete Dinge ansprechen und begründen wieso das nützlich ist.

Im DVBViewer Team fehlt etwas der Überblick was da sinnvoll sein könnte, aber wenn du mich überzeugt hast versuche ich Griga zu überzeugen und meistens wird das dann was. ;)

Share this post


Link to post
shaupti

@HacMat

 

Mir kam da noch so ne blöde Idee... Könntest du auch inaktive Timer an den RS schicken?

 

Hab gesehen, das du mit der Datenbank vergleichen kannst....

 

Dann würde man genau sehen was für timer gesendet wurden und ob man die nochmal aufnehmen wollen würde. Fals durch irgendwelche gründe die damalige Aufnahme schlecht war.

Share this post


Link to post
Klaus Heynen

@HatMac,

 

Geister sind wieder da, habe nun 1.31.0 auf den Server 2012R2 Essential gespielt.

 

Der selber Klamauk es wir immer die Sprache <deu>, <eng> usw. vor dem Sendungsnamen angezeigt.

Ist echt doof, so kann man nichts mehr wieder finden.

 

Grüße

 

KlausH

Share this post


Link to post
HacMat

@shaupti

 

Ich verstehe zwar nicht so richtig, was Du meinst, diese Funktion kann ich aber trotzdem implementieren. Das ist kein großer Aufwand. Ich werde versuchen Deinen Wunsch noch zu berücksichtigen.

 

 

 

@Klaus Heynen

 

Ich brauche mehr Informationen, um die Quelle Deines Problems zu lokalisieren.

Die Ursache kann in deinem Fall beim Clickfinder-Addon, beim RS Requester oder beim RS liegen.

Bitte stoße mal eine Aufnahme direkt über das Web-Interface an.

Hast Du das Problem dann immer noch liegt es am RS. Vielleicht solltest Du in diesem Fall eine saubere Neu-Installation des RS in Erwägung ziehen. Das Problem mit der falschen Versionsnummer war ja schon recht merkwürdig.

Wenn das Problem aber nicht auftritt, ist der nächste Schritt einen Timer aus dem TV-Browser heraus zu erzeugen, d.h ohne den Umweg über das Clickfinder-Addon. Den TV-Browser hattest Du dir ja zu Testzwecken installiert. Tritt der Fehler dann auch nicht auf, liegt es am Clickfinder-Addon, ansonsten am RS Requester.

Share this post


Link to post
HacMat

@Klaus Heynen

 

Ich habe gerade gesehen, dass Du zu deinem Problem einen eigenen Thread aufgemacht hast und das es sich auf die EPG-Titel im Web-Interface bezieht. Ich dachte es bezieht sich auf die Titel der Aufnahmen, die Du über das Clickfinder-Addon bzw. den RS Requester angestoßen hast. Das Problem liegt also vermutlich beim RS. Ich würde an Deiner Stelle den RS erst einmal deinstallieren und anschließend eine saubere Neu-Installation durchführen. Vielleicht hilft das.

 

VG,

 

HacMat

Edited by HacMat

Share this post


Link to post
HacMat

@alle

 

Das Release der neuen Version verschiebt sich leider noch etwas.

Ich bin aber ganz sicher, dass ich sie spätestens Mittwoch hochladen werde.

 

VG

 

HacMat

Share this post


Link to post
shaupti

Keinen Streß....

 

Soweit läuft ja alles.

Share this post


Link to post
HacMat

Neue Version: RS Requester 1.0.5.0


Behoben:

Der Parameter/Schlüssel "execOnError" funktionierte nicht und konnte zum Absturz des RS Requesters führen.

Sender, deren Sendernamen ohne zusätzliche Angabe der Sendergruppe nicht eindeutig sind, wie z.B RTL2 auf Astra 19.2° Ost, wurden auch bei Angabe der Sendergruppe nicht gefunden.


Änderungen:

Der Parameter/Schlüssel 'group' wurde in channelGroup umbenannt.

Die Spezifikation des Senders wurde vereinfacht:
Die Parameter/Schlüssel 'channelID' wurde in 'channel' integriert. 'channelID' wurde entfernt.
Der RS Requester interpretiert jetzt eine 19-stellige ganze Zahl wie. z.B '2359890719833223217' automatisch als Sender-ID.
Alles andere zählt als Sendername.

Der Wertebereich für den Parameter/Schlüssel 'devices' wurde von 1-9 auf 0-99 erweitert. Der Wert 0 steht hier ausnahmsweise mal für unendlich, und sollte nur verwendet werden, wenn der RS mehr als 99 Aufnahmegeräte zur Verfügung hat.

Neue Funktionen:

Der Parameter 'duration' wurde hinzugefügt. 'duration' kann alternativ zum Parameter 'stop' verwendet werden. Als Argument benötigt 'duration' die Sendungs-Dauer in Minuten.

Der Parameter/Schlüssel "activateTimer" wurde hinzugefügt. Damit lässt sich jetzt bestimmen, ob ein aktivierter oder deaktivierter Timer erstellt werden soll. Wenn 'activateTimer' nicht benutzt wird, wird der zu erstellende Timer grundsätzlich aktiviert.

Der Parameter/Schlüssel 'versionWarning' wurde hinzugefügt. Mit '(-)versionWarning (=) off' lässt sich die Kompatibilitätswarnung unterdrücken, die normalerweise ausgegeben wird, wenn der RS Requester mit einer ihm unbekannten RS-Version kommuniziert.
Erste Tests mit dem Recording Service in der Version 1.31.0.0 offenbarten keine Kompatibilitätsprobleme. Trotzdem sind die Tests noch nicht abgeschlossen, sodass beim RS Requester 1.0.5.0 weiterhin eine Kompatibilitätswarnung ausgegeben wird.
Diese Warnung ist nicht als Fehlermeldung zu interpretieren. Es ist gut möglich, dass alles funktioniert. Wen sie dennoch stört, kann sie abschalten.

Der Parameter/Schlüssel 'channelScan' wurde hinzugefügt. 'channelScan' dient wie 'channelGroup' (vormals 'group') der genaueren Spezifizierung des Senders.
Mit 'channelScan' lässt sich festlegen in welchem Element 'root', in der Senderliste des RS, der Sender gesucht werden soll.
Die Senderliste lässt sich mit 'http://<Host>:<Port>/api/getchannelsxml.html' vom RS abrufen.
'channelGroup' und 'channelScan' sind optional und werden nur selten benötigt. Ist die Senderpezifizierung nicht eindeutig, gibt der RS Requester eine Fehlermeldung aus, bei der alle Sender gelistet werden, auf denen die unzureichende Spezifizierung zutrifft. Dabei werden auch die Sendergruppen, die Sender-Scans, sowie die Sender-IDs mit aufgeführt, sodass man alle Informationen zur genaueren Spezifizierung direkt zur Verfügung hat.
Für den Sender kann man, sofern noch nicht vorhanden, eine Sender-Sektion in der Konfigurationsdatei anlegen. In dieser lässt sich mit 'channelGroup' und/oder 'channelScan' der Sender genauer festlegen.
Einfacher ist es mit 'channel' nicht den Sendernamen, sondern die immer eindeutige Sender-ID anzugeben. 'channelGroup' und/oder 'channelScan' werden dann nicht benötigt.

Die Variable '{ReturnCode}' wurde eingeführt. Mit '{ReturnCode}' lässt sich jetzt auch der Rückgabe-Code des RS-Requesters an den aufzurufenden Prozess übergeben.
'{ReturnCode}' lässt sich nur im Argument von 'execOnError' und 'execOnSuccess' verwenden. Im Argument von 'wolExec' wird '{ReturnCode}' nicht substituiert, da der Rückgabe-Code zur Zeit des Prozess-Aufrufs noch nicht festliegt.


Clickfinder-Add-on:

Wer den RS Requester 1.0.5.0 zusammen mit dem Clickfinder einsetzen möchte, sollte sich auch das neue Clickfinder-Add-on 1.0.0.2 herunterladen. Bei den beiden älteren Versionen lassen sich keine Sender-Ids zusammen mit der neuen Requester-Version verwenden.
Es ist nicht nötig das neue Add-on mit 'setaddon.exe' erneut zu installieren. Es reicht aus, wenn man die alte 'cfaddon.exe' durch die neue ersetzt.

 

Download:

RS Requester: RS Requester 1.0.5.0.zip


Clickfinder Add-on: Clickfinder Add-on 1.0.0.2.zip


Bugs und Erweiterungswünsche bitte schnellstmöglich melden.

VG

HacMat






Share this post


Link to post
shaupti

Hat sich einiges getan :-)

 

Dann kann man anfangen das grobe weiter zu testen.

 

Danke

Share this post


Link to post
shaupti

So mal kurz angetestet....

 

Die Tuner anzahl funktioiert wunderbar, sowie die Sache mit den Inaktiven Timern, Sehr schön.

 

Die ID zuordnung passt auch soweit, wenn man aus dem Sender-Editor die ID mit Strg+C rauskopiert bekommt man ja so etwas

 

2359890883042094819|RTL Television

 

Aber mit dem kommt Sender nicht gefunden.

 

Wenn nur die ID oder der Sendernahme da steht funktioniert es.

 

Ist das so gewollt?

 

Das zweite Thema ist die Namensvergabe/Timer Titel vergabe, da muss ich noch ein wenig Testen, das tut noch nicht so wie ich es gerne hätte.

 

Gruß

Share this post


Link to post
HacMat
Die ID zuordnung passt auch soweit, wenn man aus dem Sender-Editor die ID mit Strg+C rauskopiert bekommt man ja so etwas

 

2359890883042094819|RTL Television

 

Aber mit dem kommt Sender nicht gefunden.

 

Wenn nur die ID oder der Sendernahme da steht funktioniert es.

 

Ist das so gewollt?

 

Nach meinem Verständnis handelt es sich bei der ID nur um die 19-stellige Zahl vor dem Trennstrich. Der Sendername dient nur als ergänzende Information, ist also eine Art Kommentar. Auch ohne die zusätzliche Angabe des Sendernamens ist die ID eindeutig.

In der Senderliste, abgerufen mit 'http://<Host>:<Port>/api/getchannelsxml.html' steht unter dem Channel-Attribut 'ID' auch nur die 19-stellige Zahl.

Der Zusatz '|RTL Television' in Deinem Beispiel, wäre also ohne Funktion. Aber vielleicht sollte ich die Verwendung einer um den Sendernamen erweitertenen ID mit der nächsten Version trotzdem zu lassen, damit man den Namenszusatz nicht immer entfernen muss, falls man die ID mit Strg+C aus dem Sender-Editor kopiert hat.

 

 

Das zweite Thema ist die Namensvergabe/Timer Titel vergabe, da muss ich noch ein wenig Testen, das tut noch nicht so wie ich es gerne hätte.

 

Der RS Requester erzeugt die Timer über einen Request des Web-Interfaces. Das Web-Interface gibt Dir leider nicht die Möglichkeit den Titel frei zu wählen. Der Sendungstitel bleibt immer der EPG-Titel. Dieser wird auch bei der Konstruktion des Dateinames verwendet. Wenn Du im Web-Interface den Namen des Timers änderst, hat das leider absolut keinen Einfluss auf den Titel-Abschnitt des Dateinamens.

Um den Sendungstitel im Dateinamen ändern zu können, müsste ich den Timer über die API erzeugen. Leider musste ich aber auf die Nutzung der API verzichten, weil aufgrund eines Bugs PDC (VPS) nicht richtig funktionieren wollte.

 

Näheres dazu findest Du hier: http://www.DVBViewer.tv/forum/topic/54402-keine-aufnahme-bei-nutzung-der-api-und-uberwachung-des-eit/

 

Mein damaliges Posting bezog sich auf die Version 1.28.0.0.

Es kann deshalb sein, dass der Fehler in der API mittlerweile behoben wurde. Vielleicht habe ich auch nur etwas falsch gemacht. Ich werde mich mit der API nochmals beschäftigen, vielleicht finde ich ja jetzt eine Lösung für das Problem.

 

 

VG,

 

HacMat

Share this post


Link to post
HacMat

@shaupti

Ich habe jetzt die Ursache dafür gefunden, warum der Name des Timers nicht im Dateinamen verwendet wird. Es liegt weder ein Fehler im RS noch im RS Requester vor. Ich habe nur das von mir selbst verfasste Manual zum RS Requester nicht gründlich genug gelesen:

 

-nameScheme Dateinamen-Schema

Mit 'nameScheme' lässt sich die Zusammensetzung des Dateinamens festlegen.

Variablen:
%year = Jahr
%date = Monat und Tag
%time = Uhrzeit
%station = Sender
%event = Sendung
%title = (Sub)Titel der Sendung (falls vorhanden)
%tshort = (Sub)Titel der Sendung (falls vorhanden) auf 80 Zeichen begrenzt
%name = Name des Timers, der beim erstellen eingegeben wird
%series = unter Serie in der EPG Suche eingetragener Wert
%m = Monat
%d = Tag (das Monats)
%h = Uhrzeit Stunde
%M = Uhrzeit Minute
%g = das Genre (wenn vorhanden)
%D = Tag der Woche (Mo, Di etc)

 

Näheres dazu bitte der Dokumentation zum RS entnehmen.

Beispiel (Konfigurationsdatei): nameScheme = %event_%title_%station_%year-%date_%time

 

 

Wenn man im Namensschema anstatt der Variable '%event' die Variable '%name' verwendet, sollte, vorrausgesetzt 'useTitleEPG' steht auf disabled, der an den RS Requester übergebene Titel immer unverändert als Bestandteil des Dateinamens herangezogen werden.
Wenn 'nameScheme' nur '%name' zugewiesen wird, wird der an den RS Requester übergebene Titel, wenn man mal von der Dateinamenserweiterung absieht, 1 zu 1 als Dateiname übernommen.
Du brauchst 'nameScheme' nicht verwenden, sondern kannst das Dateinamensschema auch in den Konfigurationseinstellungen des RS anpassen. 'nameScheme' verändert nie das Default-Namensschema in den Konfigurationseinstellungen des RS. Verwendest Du 'nameScheme' benutzt der RS das zugehörige Argument als Namensschema, ansonsten nimmt er das Default-Namensschema.

Edited by HacMat

Share this post


Link to post
shaupti

So mal ein Beispiel,

 

Der String ist, den den du mal gegeben hast...

 

-request record -readfile C:\\Program Files (x86)\\RS Requester\\Requester.cfg -title "{maxlength(concat(title,cleanLess(testparam(episode," - ",testparam(original_title," - "))),cleanLess(testparam(episode,testparam(episode_number,concat(leadingZero(episode_number,"3")," - ",episode),episode),original_title)),cleanLess(testparam(original_episode," - ")),cleanLess(original_episode)),"75")}" -channel "{channel_name_external}" -date {start_day}.{start_month}.{start_year} -start {start_hour}:{start_minute} -stop {end_hour}:{end_minute} -endaction none

 

 

im EPG sieht es so aus

 

post-21486-0-95157400-1440010821_thumb.jpg

 

 

Der Timer sieht so aus

 

post-21486-0-06705600-1440010845_thumb.jpg

 

 

Die aufnahme sieht so aus wie es im EPG aussieht.

 

Vielleicht versteh ich das immer noch nicht ganz mit der Namensgebung.

 

Das zufügen von Inaktiven Timern ermöglicht es mir auf dem TV_Server die ganze Geschichte zu testen ohne, das die schon vorhandenen Timer etc. in Mitleidenschaft gezogen werden.

 

Anbei auch noch die Config, vielleicht passt da was nicht.

 

Es kann ja natürlich auch sein, das der REC-Service nur den vordersten Teil als Titel nimmt und das dahinter als "was weis ich was" zählt.

 

Gruß

 

Requester - Kopie.txt

Share this post


Link to post
shaupti

Hab deinen zweiten Post ers jetzt gelesen.

 

Das wird übergeben...

 

post-21486-0-28247500-1440011597_thumb.jpg

Share this post


Link to post
HacMat

@shaupti

 

Es gibt leider noch ein Problem:

 

Der RS Requester nutzt den übergebenen Titel auch als Schlüssel, um die Sendung im EPG des Senders zu suchen, und gegebenenfalls den Aufnahmeauftrag zurückzuweisen, wenn er die Sendung nicht findet. Das soll verhindern, das fehlerhafte Programmdaten vom TV-Browser oder anderen Quellen dazu führen, dass „falsche Timer“ gesetzt werden. Bei einer starken Verfremdung des übergebenen Sendungstitels steigt somit die Wahrscheinlichkeit, dass der Aufnahmeauftrag vom Requester nicht weitergeleitet wird, weil er die Sendung im EPG nicht findet.

Du kannst dieses Verhalten gänzlich unterbinden, in dem Du 'minTitelSim' 0 zuweist.

Das hat wiederum die Folge, das falsche Programm-Daten aus externen Quellen nicht mehr als solche erkannt werden. Da das eher selten vorkommt, wäre das zumindest eine Zwischenlösung.

Eine bessere Lösung wäre es, einen neuen optionalen Parameter einzuführen, z.B. 'fileName' mit dem der Namensbestandteil, der anstelle von '%name' verwendet werden soll, explizit übergeben wird.

'title' würde dann auf die reine Schlüsselfunktion reduziert. Mit der nächsten Version werde ich den Parameter 'fileName' einführen, falls mir nicht noch eine bessere Lösung einfällt.

 

Bei Deinem Screenshot ist mir noch aufgefallen, dass der EPG Titel der gezeigten Sendung, von dem EPG-Titel zur Sendung bei mir leicht abweicht. Verwendest eine externe EPG-Quelle im RS ? Ich wusste gar nicht, dass das geht.

Share this post


Link to post
Klaus Heynen

@ HacMat

 

habe nun die neuen Versioen vom Clickfinder Plug-in und RS Requester getestet.

 

Läuft sowohl auf XP als auch auf Sever 2012R2 Essentials. Muss wohl noch die .cfg anpassen das gibt's einen Konflikt bei ZDF auf Astra und Hotbird.

 

Grüsse Klaus

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • callibsoffm
      By callibsoffm
      Hallo,
       
      Meine Konfiguration: Win 10 64bit, DVBViewer 5.6.2, TVgenial, TVgenial Plugin dvbv_tvg_1.2.3, Recording Service 1.33.
       
      Seit dem Update auf den Recording Service 1.33 können via Script Engine von Tvgenial keine Timer mehr erzeugt werden, wenn der DVBViewer nicht läuft! Vor dem Update war das problemlos möglich. Wenn man bei laufendem DVBViewer aus TVgenial heraus einen Timer erstellt wird dieser korrekt in die Timerliste des Recording Service eingetragen und auch aufgenommen. Bei lediglich wartendem Recording Service passiert einfach gar nichts. Hier mal ein Support.zip.
       
      Vielen Dank schon mal für die Hilfe.
       
      Alexander
      support.zip
    • uhu2001de
      By uhu2001de
      Moin,
       
      ich habe auf meinem Windows 200R2 Server den DVBViewer Recording Service laufen. Es werden über SAT>IP 3 Kanäle zur Verfügung gestellt und aufgezeichnet. Aufnahmedaten werden über TV-Genial über dvbv_tvg.exe an den Recording Service übergeben. Funktioniert einwandfrei.
       
      Aber ! Wenn eine Aufnahme gelöscht werden soll, wird dieses nicht durchgeführt! Ich muss die Aufnahmen manuell löschen. Ich habe aber das Problem, dass die Sender den Start der Sendung mehrfach in der Woche ändern und ich nicht jedesmal in der Timerliste nachsehe ob und was sich geändert hat. Dadurch wird z..T. eine Sendung bis zu 3 mal aufgezeichnet und die weitere Sendung auf einem anderen Sender wird dann nicht aufgezeichnet.
       
      Hier ein Beispiel der Programmierung der Aufnahme und der Löschung:
       
      record call: C:\Programme\DVBViewer\dvbv_tvg.exe -d "Fringe - Grenzfälle des FBI" -c 17501 -e 20.05.14 -s 01:05 -p 02:05 -xsvc "Imperator:8089"
      delete call: C:\Programme\DVBViewer\dvbv_tvg.exe -d "Fringe - Grenzfälle des FBI" -c 17501 -e 20.05.14 -s 01:05 -p 02:05 -xsvc "Imperator:8089" -r
       
      Was ist in der 2. Zeile falsch, dass er die Daten nicht löscht ?
       
      MFG
      uhu2001de
       
×
×
  • Create New...