xmltv2vdr Plugin - nur die erste Quelle wird berücksichtigt

  • Hallo,


    Kurzfassung: Ich benutze das xmltv2vdr-Plugin mit zwei Quellen. Aber nur die Daten der Quelle, die in der Konfiguration des Plugins unter "EPG-Quellen" oben steht, landen in der Datenbank. Warum?


    Ich habe für meinen VDR Server (Debian Stretch, vdr 2.2.0-6+b1) aus den aktuellen Quellen ein Paket für das xmltv2vdr-Plugin mit Version 0.2.1+git20170320 gebaut. Die XMLTV-Daten für zwei bzw. drei Sender liefern zwei selbstgeschriebene Grabber. Deren Ausgaben habe ich mit tv_validate_file überprüft.


    Mit dem noEPG-Plugin sorge ich dafür, dass VDR für die Kanäle keine EPG-Daten sammelt. In der Konfiguration des Plugin ist für "EPG Quellkanal Optionen > Art der Bearbeitung" der Wert "erstellen" ausgewählt.


    Wenn ich die Aktualisierung der Daten mittels SVDRP mit plug xmltv2vdr updt force anstoße, treten zwar keine Fehler auf, doch werden nur die Daten einer Quelle übernommen:


    Mit plug xmltv2vdr deld habe ich auch kein anderes Ergebnis erreicht.


    Wenn ich die Reihenfolge der Quellen in der Konfiguration des Plugins unter "EPG-Quellen" vertausche, werden nur die Daten von quelle2 übernommen.


    Was mache ich da falsch?

  • Such mal hier im Forum, da gab es vor kurzem einen Thread wo dieser Fehler besprochen wurde und deine "Lösung" gezeigt wurde für zumindest zwei Quellen. Das Plugin selbst hat da ein "Problem"....

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR

  • [Leider funktioniert die automatische Benachrichtigung über neue Nachrichten nicht ... ]


    Danke für den Hinweis. Gesucht habe ich allerdings schon, bevor ich meine Frage gestellt habe. Mir fehlen vielleicht die richtigen Suchbegriffe. Aber wahrscheinlich meinst Du xmltv2vdr zickt? Den habe ich gerade durch Zufall gefunden, weil er auf der ersten Seite dieses Forums steht.


    Ich habe mittlerweile versucht, etwas in den Quellen des Plugins zu lesen. In cEPGExecutor::Action() in source.cpp ist mir eine Stelle aufgefallen, an der das Importieren der Quellen abgebrochen wird, sobald ein Import erfolgreich war. Diesen Abbruch habe ich versuchsweise auskommentiert:

    Code: source.cpp
    1. for (cEPGSource *epgs=sources->First(); epgs; epgs=sources->Next(epgs))
    2. {
    3. if (!epgs->LastRetCode())
    4. {
    5. epgs->Import(*this);
    6. //break; // only import from the first successful source!
    7. }
    8. }

    Nach der Änderung scheint das Plugin alle Quellen zu berücksichtign. Ob das Plugin aber wirklich macht, was ich gerne hätte, kann ich noch nicht mit Sicherheit sagen - manches am Verhalten des Plugins habe ich noch nicht so recht verstanden.


    Meine Änderung ist natürlich erstmal nur ein Versuch. Eine richtige Lösung müsste es erlauben, zwischen den beiden Funktionsweisen zu wählen.

  • Mir fehlen vielleicht die richtigen Suchbegriffe. Aber wahrscheinlich meinst Du xmltv2vdr zickt?

    Da helfen manchmal ein paar Tricks wie zwei " und darin die Suchanfrage platzieren, dann wird nur DAS gesucht. Ja, genau das war es :thumbup:

    Gruß utiltiy



    VDR Projekte EPGD EPG2VDR