[Announce] restfulapi 0.2.1.1

  • Hallo,


    pünktlich zum Erscheinen von vdr-2.1.9 gibt es auch eine neue Version der Restfulapi.


    Neue Features:


    - Wirbelscan Steuerung
    - Webapp Service, eure Webapps können jetzt direkt von der API ausgeliefert werden. So hat man keinen CORS und Webserver Stress mehr
    - Femon Service
    - Scraper2Vdr Service (den gibt es schon etwas länger, wurde aber nie richtig angekündigt) Danke an Saman :)
    - der Remote Service kann jetzt Keyboard eingaben und sogar ganze Zeichenketten entgegennehmen
    - diverse Bugfixes


    Vielen Dank an alle, die mitgewirkt haben

    Grüße


    Hannemann

  • Noch nicht getestet, dennoch ein dank von mir an dich und Saman!


    Na ja, die Wirbelscan Steuerung ist von mir.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Na dann will ich dich nicht vergessen. Auch ein Danke an dich gda und an alle die mitgewirkt haben.


    Leider muss ich gleich ein Problem melden.
    Ich habe den Parameter --webapp probiert und die index Seite wird auch angezeigt, leider alle Unterordner ala css, js usw nicht.
    Der Browser meldet 404... Jemand eine Idee?


    edit:


    Aus dem logfile


    Code
    Feb 10 19:55:21 ionix vdr: [5560] restfulapi: FileExtension: requested path /var/lib/vdr/plugins/restfulapi/webapp//res/icons/Recordings.png
    Feb 10 19:55:21 ionix vdr: [5560] restfulapi: FileExtension: realpath /var/lib/vdr/plugins/restfulapi/webapp/res/icons/Recordings.png

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

  • Sorry, das ist ein Bug... Ich denk mir gerade einen Fix aus.

    Grüße


    Hannemann

  • Sooo... Ich habe einen fix im Branch webapp-fix gepushed. Hast Du Lust den auszuchecken und zu testen?


    Meine App komprimiere ich immer in eine Datei. Da ist mir der Bug wohl leider beim testen durchgerutscht. Die index.html liefert er ja trotzdem aus. Sorry...


    Requests auf /webapp werden jetzt per Location Header und Moved Permanently umgeleitet zu /webapp/ und der Dateiname im Filesystem hoffentlich sicher gebildet. Kannst ja mal schauen in webapp.cpp Zeile 56 ff.


    Ich habe bei mir mal mit der unkomprimierten Geschichte getestet (insgesamt 190 JS und CSS Dateien) und er hat alles klaglos nachgeladen. Caches geleert, nochmal getestet usw... Sollte also funktionieren

    Grüße


    Hannemann

  • Funktioniert.


    Leider hängt es jetzt an einer anderen Stelle.
    Setze ich den Request /events/S19.2E-1-1019-10301.json?timespan=11000 ab, bekomme ich json zurück. Erhöhe ich aber die timestamp hört er nicht auf zu laden und ich bekomme keinen response. Konnte es mir noch nicht genauer anschauen und werde heute auch nicht mehr dazu kommen. Wenn ich morgen Zeit habe teste ich mal ausgiebiger.


    edit:
    Die Sendung die er nicht mehr anzeigen will ist "Herr Ober!"
    Probleme mit den Ausrufezeichen?

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

  • Hmmm... so ein Problem kann ich bei mir nicht nachvollziehen. Ich kann problemlos events für einen ganzen Tag holen.


    z.B. http://192.168.3.2:8002/events/C-1-1051-11100.json?from=1423887180&start=0&timespan=86400


    Poste bitte mal beide Requests, wenn wieder Zeit ist.

    Grüße


    Hannemann

  • Bin noch nicht wirklich weiter gekommen. Habe gerade das Repo von Saman probiert und da geht der request durch...

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

  • Gib doch mal die Requests rüber, damit ich mir das anschauen kann. Ich kann bei mir nichts feststellen.


    Ein paar Eckdaten wären auch nicht schlecht... Browser, Ajax, jQuery benutzt usw.


    Edit:
    Ach ja... sag auch mal, welcher Sender. Ich hab ja Kabel. Nutzt du epgd oder xmltv2vdr?

    Grüße


    Hannemann

  • Also bei mir lädt er die Sendung "Herr Ober!" auf BFS Süd ohne Probleme und auch noch mehr...

    Grüße


    Hannemann

  • Ja, war wohl etwas kurz gehalten meine Antwort.
    System ist ein Debian Wheezy mit gepatchedem cxxtools (ein anderes Problem welches den VDR zum Absturz bringt, wurde hier auch schon im Forum besprochen). Dazu ein vanilla VDR 2.1.6.
    Der request wurde erst über meine webapp, später dann direkt über die url in chrome abgesetzt. (http://ionix:8002/events/S19.2…10301.json?timespan=11000) Der Sender war ARD HD, macht sich aber auch auf anderen Sendern bemerkbar. So wie es gestern aussah hängt es an dem event. Habe mich langsam an den Fehler per timestamp ran getastet und konnte das Verhalten reproduzieren. War der timestamp zB 10000 (kleiner als Sendebeginn) kam es zu einer Antwort. Habe ich ein paar Sekunden gewartet (größer Sendebeginn) lief der request ins unendliche. Die EPG Daten kamen direkt vom DVB-Stream.
    Habe heute zum vergleich mal die Sourcen von saman gezogen und dort bekomme ich die kompletten Daten. Hatte heute auch schon cxxtools direkt aus den Sourcen gebaut, daran liegt es aber nicht.
    Kann es vielleicht mit der Behandlung von Sonderzeichen zu tun haben?
    Ach ja, wenn ich html anstatt von json angefordert habe ging es auch, dabei werden aber nur die Titel der Sendung übertragen.

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

  • Poste mal einen Request und die Antwort, den du ohne App abgesetzt hast.


    Hast du scraper2vdr oder tvscraper am laufen? Obwohl es bei mir auch ohne eines der Plugins funktioniert...

    Grüße


    Hannemann

  • Kann morgen erst weiter testen. Der VDR ist gerade besetzt.
    Was ich aber schon sagen kann ist, dass kein response zurück kommt. Chrome meldet nur "Pending" und der VDR erzeugt ordentlich Last. Tvscraper war aktiv.
    Melde mich morgen wieder.

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

  • Wie gesagt, ich kann den Fehler nicht nachvollziehen. Möglicherweise eine Fehlfunktion in Verbindung mit TVScraper. Kannst Du den mal deaktivieren und noch mal testen?


    Wenn das auch nicht klappt dann check doch bitte mal Commit a2641bb7aaba68a7ef2cdcc822b422a3e7aba94a aus und probier es damit. Dann müssen wir uns da ein wenig rantasten.

    Grüße


    Hannemann

  • Gerade alles mal aktualisiert und den tvscraper entfernt. Mit und ohne epg2vdr/scraper2vdr läuft es jetzt. Keine Ahnung wieso. Vielleicht wirklich ein Problem mit tvscraper bzw. alter vdr Version.


    Gibt noch ein Problem mit den Bildern bei mir. In additional_media bekomme ich folgenden Pfad: poster: "var/cache/vdr/plugins/scraper2vdr/movies/109424/poster.jpg".
    Die Anfrage geht nach: http://ionix:8002/scraper/imag…/movies/109424/poster.jpg

    Code
    Feb 12 13:44:06 ionix vdr: [7556] restfulapi Scraper: image request url /scraper/image/var/cache/vdr/plugins/scraper2vdr/movies/109424/poster.jpg
    Feb 12 13:44:06 ionix vdr: [7556] restfulapi: FileExtension: requested path /var/cache/vdr/epgimages/var/cache/vdr/plugins/scraper2vdr/movies/109424/poster.jpg
    Feb 12 13:44:06 ionix vdr: [7556] restfulapi Scraper: image /scraper/image/var/cache/vdr/plugins/scraper2vdr/movies/109424/poster.jpg does not exist

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

  • Hi Oberlon,


    Sorry für die späte Antwort. Hatte eine Verabredung mit einem Kumpel...


    Der Pfad in additional_media ist so nicht richtig. Richtig muss er lauten: movies/109424/poster.jpg
    Bei mir macht er das auch so. Wie sieht denn deine /etv/vdr/plugins/plugin.restfulapi.conf aus? Bei mir sieht das so aus: --epgimages=/var/cache/vdr/epgimages (ohne Slash am Ende)


    In scraper2vdr.cpp gibt es die Methode cleanImagePath, die den Teil aus der Config aus dem Pfad entfernen soll, was sie bei dir scheinbar nicht tut.
    Ich habe in mein Repo mal eine Version mit Debug ausgaben gepushed. Kannst Du die bitte mal kompilieren den entsprechenden Teil des Logs posten? Dann kann ich die Methode noch mal verbessern.
    Eigentlich müsstest du auch sofort sehen, wo es hakt...


    so dieht das bei mir aus:

    Code
    Feb 12 22:47:11 hannemann-desktop vdr: [10570] restfulapi: cleanImagePath ==================================================================
    Feb 12 22:47:11 hannemann-desktop vdr: [10570] restfulapi: cleanImagePath path to clean /var/cache/vdr/epgimages//movies/actors/actor_136895.jpg
    Feb 12 22:47:11 hannemann-desktop vdr: [10570] restfulapi: cleanImagePath path to replace /var/cache/vdr/epgimages
    Feb 12 22:47:11 hannemann-desktop vdr: [10570] restfulapi: cleanImagePath path with epgimagesdir replaced //movies/actors/actor_136895.jpg
    Feb 12 22:47:11 hannemann-desktop vdr: [10570] restfulapi: cleanImagePath result with leading slashes trimmed movies/actors/actor_136895.jpg
    Feb 12 22:47:11 hannemann-desktop vdr: [10570] restfulapi: cleanImagePath ==================================================================


    https://github.com/hannemann/v…stfulapi/tree/image-debug


    Das die API scheinbar mit tvscraper nicht gut läuft könnte ich noch mal überarbeiten. Da das Plugin nicht mehr gepflegt wird, frage ich mich aber ob sich der Aufwand lohnt.
    Ich habe es daher auch schon länger nicht mehr am laufen und auch wenig damit getestet, Nutzt Du es noch oder hast Du jetzt auf epgd umgesattelt?


    Hat noch jemand eine Meinung dazu? Soll ich die Unterstützung fortführen oder brauchen wir das nicht mehr?

    Grüße


    Hannemann

  • Kam mir doch bekannt vor das Thema.
    Nach dem wechsel von tvscraper zu scraper2vdr war bei mir der Pfad von epgimages ein anderer als von scraper2vdr. Lege ich den movies und series Ordner von scraper2vdr mit nach epgimages wird der Pfad gekürzt und die Bilder geladen.
    Support für tvscraper ist für mich nicht notwendig. Wollte eh schon lange wechseln (auf meinen cubietruck läuft es ja schon eine weile) da tvscraper einige eventids durcheinander bringt.


    Danke dir für deine Hilfe. Werde die neuen Funktionen am WE mal testen.

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

  • Moin Oberlon,


    welche Version von tvscraper lief bei dir?

    Grüße


    Hannemann

  • Sry, war den ganzen Tag beschäftigt. tvscraper war die Version aus dem git. Da hat sich schon eine Weile nichts mehr getan.

    HD-VDR:
    HW: ZOTAC D2550-ITX | Mystique SaTiX-S2 Sky Xpress DUAL
    SW: Debian Stretch | vdr-2.3.8

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!