[Announce] restfulapi 0.2.1.1

  • Ich habe heute Morgen mal einen Test mit tvscraper durchgeführt und hatte keine Probleme. Da wollt ich mal fragen, ob du vielleicht eine ältere Version verwendet hast.


    Danke

    Grüße


    Hannemann

  • Zur Vorgeschichte siehe [ANNOUNCE] Mobil Browser gestütztes Frontend für VDR oder Restfulapi Client ff.


    Es gibt keine explizite tvscraper Unterstützung in Restfulapi. Es wird das Plugin genau so geholt, wie im Codeschnipsel von Louis zu sehen.


    Ich stimme zu, das die Installation der Kombi epgd und scraper2vdr im Gegenstz zu tvscraper recht aufwändig ist.
    Ich sehe im Moment auch keinen Grund, warum ich den tvscraper Support droppen sollte. Es gibt genau eine Klasse, die auf die Serviceschnittstelle beider Plugins zugreift. Je nach dem was installiert wurde.


    Die Verarbeitung der Daten findet jeweils in den selben Methoden statt. Daher kann ich mir fast nur vorstellen, das es sich um ein Problem mit den Daten handelt. UTF-8 oder so?
    Dafür spricht auch, das ich keinerlei Probleme habe, wenn ich meinen Test VDR mit TVScraper starte. Ich kann die App ohne Einschränkungen benutzen und bekomme für die Aufnahmen auch zusätzliche Daten.

    Grüße


    Hannemann


  • Die Verarbeitung der Daten findet jeweils in den selben Methoden statt. Daher kann ich mir fast nur vorstellen, das es sich um ein Problem mit den Daten handelt. UTF-8 oder so?
    Dafür spricht auch, das ich keinerlei Probleme habe, wenn ich meinen Test VDR mit TVScraper starte. Ich kann die App ohne Einschränkungen benutzen und bekomme für die Aufnahmen auch zusätzliche Daten.


    Hast Du bei deinen Tests mit tvscraper auch daran gedacht, scraper2vdr vorher zu deaktivieren?


    Ich habe das ganze jetzt mal etwas eingegrenzt


    Wenn ich sc.getMedia auskommentiere, dann läuft http://192.168.1.104:8002/recordings.json durch, ansonsten hängt es.


    Morgen werde ich mich mal weiter vorarbeiten.


    Grüße, Peter

    KODI, tvh, arch x86_64, Octopus net 2 x Duoflex C/C2/T2 , NUC7i3BNH, Crucial MX300 2TB, LG LM 669S

    Linux is the best OS I have ever seen -- Albert Einstein

  • Klar... Dann holt er keine Media Daten für die Aufnahmen.


    Das ganze findest du in scraper2vdr.cpp allerdings werden zum holen von Aufnahmen oder Events die selben Methoden benutzt. Egal ob du tvscraper verwendest oder scraper2vdr und wie gesagt funktioniert das ganze bei mir.
    Ich habe vorhin mal tvscraper aktiviert und scraper2vdr sowie epg2vdr natürlich deaktiviert. Dann habe ich ihn die Aufnahmen und die Events scrapen lassen -> läuft... keine Probleme. Nicht beim holen von Aufnahmen und auch nicht beim Scrollen durch das EPG


    Versuch doch male, deine Aufnahmen in hunderter oder kleineren Blöcken mit dem Browser zu laden:


    http://192.168.1.104:8002/recordings.json?start=0&limit=100


    Wenn du einzelne Blöcke laden kannst, dann grätscht eine bestimmte Aufnahme dazwischen und du kannst die so isolieren. Dann könnten wir uns mal die Daten zu dieser Aufnahme ansehen.

    Grüße


    Hannemann

  • hannemann


    Weiss jetzt woran es liegt: Ich hatte in der conf von restfulapi den Parameter "epgimages" nicht gesetzt (habe keine epgimages ...)


    Dann hängt er in scraper2vdr.cpp hier


    Code
    string Scraper2VdrService::cleanImagePath(string path) {
      esyslog("restfulapi: pj enter cleanImagePath");
      path = StringExtension::replace(path, epgImagesDir, "");
      path.erase(0, path.find_first_not_of("/"));
      esyslog("restfulapi: pj leave cleanImagePath");
      return path;
    };


    Nachdem ich epgimages gesetzt habe, gibts keine Probleme mehr. Ich schätze, so kannst Du den Fehler nachstellen, wenn Du nicht so schon siehst wo es da klemmt ...


    Grüße, Peter

    KODI, tvh, arch x86_64, Octopus net 2 x Duoflex C/C2/T2 , NUC7i3BNH, Crucial MX300 2TB, LG LM 669S

    Linux is the best OS I have ever seen -- Albert Einstein

  • .... sagen wir mal so: ".... keine Probleme mehr" war etwas optimistisch.


    Der VDR hängt sich nicht mehr auf, und die vdr-Webapp läuft. Leider kann sie die Mediadateien trotzem nicht laden, weil der Pfad irgendwie falsch zusammengesetzt wird:


    Code
    Feb 18 21:45:15 darkstar vdr[2863]: [2901] restfulapi Scraper: image request url /scraper/image/var/cache/vdr/plugins/tvscraper//movies/76640_backdrop.jpg
    Feb 18 21:45:15 darkstar vdr[2863]: [2901] restfulapi: FileExtension: requested path /usr/local/share/var/cache/vdr/plugins/tvscraper//movies/76640_backdrop.jpg
    Feb 18 21:45:15 darkstar vdr[2863]: [2901] restfulapi: FileExtension: realpath (null)
    Feb 18 21:45:15 darkstar vdr[2863]: [2901] restfulapi: realpath does not match requested path
    Feb 18 21:45:15 darkstar vdr[2863]: [2901] restfulapi Scraper: image /scraper/image/var/cache/vdr/plugins/tvscraper//movies/76640_backdrop.jpg does not exist


    Der richtige Pfad zum o.g. jpg lautet /var/cache/vdr/plugins/tvscraper/movies/76640_backdrop.jpg


    Irgendwie wurde noch ein /usr/local/share davorgesetzt ... ?

    KODI, tvh, arch x86_64, Octopus net 2 x Duoflex C/C2/T2 , NUC7i3BNH, Crucial MX300 2TB, LG LM 669S

    Linux is the best OS I have ever seen -- Albert Einstein

  • Hallo lostinspc,


    gut das die API schon mal läuft. Ich kann das Verhalten nur leider immer noch nicht reproduzieren.
    Kam der Parameter --epgimages in deiner Datei gar nicht vor oder war er leer? Poste doch bitte mal, wie die config aussah, als es nicht lief.


    Das mit dem falsch ausgelieferten Pfad kriege ich in den Griff... Ich frage mich bloss, wo das /usr/local/share herkommt...
    Wie sieht denn die conf für tvscraper aus? Oder hast du gar keine?

    Grüße


    Hannemann

  • Nicht funktionierende restfulapi.conf:


    Code
    cat 50-restfulapi.conf 
    [restfulapi]
    #--ip=192.168.1.104
    --channellogos=/usr/local/share/vdr/logos/


    funktionierende restfulapi.conf

    Code
    cat 50-restfulapi.conf 
    [restfulapi]
    #--ip=192.168.1.104
    --channellogos=/usr/local/share/vdr/logos/
    --epgimages=/usr/local/share/


    .... ok, und damit klärt sich auch, wo das /usr/local/share herkommt :-))))
    Hatte ich da eingetragen, um irgendeinen gültigen Pfad drin zu haben.


    Meine tvscraper.conf


    Code
    cat 50-tvscraper.conf 
    [tvscraper]
    #--dir=<CACHEDIR>
    #    Set directory where database and images are stored
    --dir=/var/cache/vdr/plugins/tvscraper/

    KODI, tvh, arch x86_64, Octopus net 2 x Duoflex C/C2/T2 , NUC7i3BNH, Crucial MX300 2TB, LG LM 669S

    Linux is the best OS I have ever seen -- Albert Einstein

  • So macht es Sinn... Ich glaube es braucht einen weiteren Parameter für den Pfad zu den Scraperimages.


    Ich bau mal was...

    Grüße


    Hannemann

  • So macht es Sinn... Ich glaube es braucht einen weiteren Parameter für den Pfad zu den Scraperimages.


    Da war übrigens noch ein entscheidender Hinweis versteckt:


    Code
    cat 50-restfulapi.conf 
    [restfulapi]
    #--ip=192.168.1.104
    --channellogos=/usr/local/share/vdr/logos/
    --epgimages=/var/cache/vdr/plugins/tvscraper/


    So klappts bei mir auch mit der aktuellen Version mit den Bildern.


    Sieht absolut Klasse aus :-)))

    KODI, tvh, arch x86_64, Octopus net 2 x Duoflex C/C2/T2 , NUC7i3BNH, Crucial MX300 2TB, LG LM 669S

    Linux is the best OS I have ever seen -- Albert Einstein

  • Was mich immer noch wundert, ist das für epgimages ein default gesetzt wird, falls der config Parameter nicht vorhanden ist. So verstehe ich jedenfalls den Code ;)
    Das kann also eigentlich gar nicht die Ursache sein. Eher das das Verzeichnis /var/cache/vdr/epgimages (der default) bei dir nicht existiert?
    Allerdings habe ich bereits mit einem nicht existierenden Verzeichnis getestet. Kein Problem...
    Irgendwas läuft da nach wie vor schief.


    Konfiguration für ScraperImages Pfad habe ich bereits eingebaut, kriege es aber nicht mehr hin, das noch vor dem Schlafengehen vernünftig zu testen. Sorry...


    Aber so lange funktioniert es bei dir ja erst mal.

    Grüße


    Hannemann

  • Was mich immer noch wundert, ist das für epgimages ein default gesetzt wird, falls der config Parameter nicht vorhanden ist. So verstehe ich jedenfalls den Code ;)
    Das kann also eigentlich gar nicht die Ursache sein. Eher das das Verzeichnis /var/cache/vdr/epgimages (der default) bei dir nicht existiert?
    Allerdings habe ich bereits mit einem nicht existierenden Verzeichnis getestet. Kein Problem...
    Irgendwas läuft da nach wie vor schief.


    Das Verzeichnis /var/cache/vdr/epgimages gab es bei mir tatsächlich nicht.


    Damit hängt es dann nicht mehr, auch wenn der Pfad --epgimages in der restfulapi.conf nicht explizit gesetzt wird.


    Scraper Content anzeigen funktioniert damit dann aber nicht:


    Code
    Feb 19 07:42:11 darkstar vdr[531]: [579] restfulapi Scraper: image request url /scraper/image/var/cache/vdr/plugins/tvscraper//movies/23168_backdrop.jpg
    Feb 19 07:42:11 darkstar vdr[531]: [579] restfulapi: FileExtension: requested path /var/cache/vdr/epgimages/var/cache/vdr/plugins/tvscraper//movies/23168_backdrop.jpg
    Feb 19 07:42:11 darkstar vdr[531]: [579] restfulapi: FileExtension: realpath (null)
    Feb 19 07:42:11 darkstar vdr[531]: [579] restfulapi: realpath does not match requested path
    Feb 19 07:42:11 darkstar vdr[531]: [579] restfulapi Scraper: image /scraper/image/var/cache/vdr/plugins/tvscraper//movies/23168_backdrop.jpg does not exist

    KODI, tvh, arch x86_64, Octopus net 2 x Duoflex C/C2/T2 , NUC7i3BNH, Crucial MX300 2TB, LG LM 669S

    Linux is the best OS I have ever seen -- Albert Einstein

  • Ok, restfulapi sucht in dem Verzeichnis für epgimages nach den Scraper Bildern und wenn das Verzeichnis nicht existiert, dann knallt es.


    Konnte ich zwar so nicht reproduzieren aber das scheint ja die Ursache zu sein.

    Grüße


    Hannemann

Jetzt mitmachen!

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