[Release] NFO Watchedstate Updater

  • Steffen95:
    Der Thread ist bei mir leider etwas in Vergessenheit geraten :)

    Kannst du noch mal ein logfile mit aktiviertem Debug-Logging hochladen, wobei du die Fehler nochmal reproduzierst? Das kannst du am einfachsten machen, indem du (am besten bei verschiedenen Filmen) mit "w" den watchedstate toggelst. Die Funktionsweise ist ja eigentlich so, dass sobald sich der Status in XBMC ändert im Anschluss die nfo aktualisiert wird. Daher geht diese Variante am schnellsten...

  • Bei mir funktionierts leider auch nicht?
    Wie sollte der watchedstate überhaupt in die nfo geschrieben werden?
    Ich habe mit Media Browser die watchedstates geschrieben da siehts dann so aus <watched>true</watched>
    Das addon schreibt aber nichts in die nfo?!

    Greetz Stealth

  • Nur am Rande: Steffen und ich hatten in der Zwischenzeit das Problem per PN geklärt und hatten festgestellt, dass das Addon nicht ganz das Richtige für sein Vorhaben war... Bei dieser Gelegenheit hatte ich das Addon auch noch einmal kurz unter XBMC 13.2 (Win7) getestet und es lief hier einwandfei. Ich musste nach der Installation des Addons, wie Libelle mal angemerkt hatte, auch die Steuerung entfernter Programme zulassen und XBMC neu starten. Habe es jetzt mal im ersten Post korrigiert.

    Ich habe mit Media Browser die watchedstates geschrieben da siehts dann so aus <watched>true</watched>

    ?( Hmmh... Da kann ich so leider nicht viel zu sagen, da ich Media Browser nicht nutze bzw kenne...
    Nutzen die für ihre Medien-Info-Dateien auch die Dateiendung ".nfo" bzw sind die Dateien inkl Tags XBMC kompatibel?
    XBMC nutzt für die Kennzeichnung des watchedstates standardmäßig den <playcount></playcount>-Tag mit den Werten 0 (ungesehen) und >0 (gesehen)


    Gruß
    4

  • Danke für die Antwort :)
    Habs gerade selber rausgefunden. Hehe! ;)
    Leider geht das plugin nicht hier bei mir. Script Fehler?!?
    Ich will doch nur meine watched states up to date halten.
    Für trakt bin ich irgendwie zu doof, bring das trakt plugin nicht dazu meine Datenbank von kodi zu syncen?!? Arghhhh
    Greetz Stealth

  • Wenn du das Addon installiert hast, die Einstellungen (wie im ersten Post beschrieben) gesetzt hast und XBMC einmal neu startest, sollte das Ganze schon funktionieren... Es gab bei OE mal einen Bug mit einer XBMC Funktion die ich auch in dem Addon verwende, jedoch sollte dieser mittlerweile behoben sein und damit auch nicht mehr relevant sein...
    Kannst du mir trotzdem mal ein [definition='1','0']log[/definition] mit dem Fehler schicken?

  • Werde mal morgen sehen ob ich ans [definition='1','0']log[/definition] komme.
    Json muss ich ja nix ändern wenn ich nichts verstellt habe und ip vom localhost ist ja die wo standart eingetragen ist oder?
    Theoretisch müsste es ja hinhauen. Na ja mal sehen ob ichs hinbekomme.
    Werden eigentlich alle bestehenden states in die nfos geschrieben oder nur die ab dem installationszeitraum neu gesetzten?
    Greetz Stealth

  • Json muss ich ja nix ändern wenn ich nichts verstellt habe und ip vom localhost ist ja die wo standart eingetragen ist oder?


    :thumbup:

    Werden eigentlich alle bestehenden states in die nfos geschrieben oder nur die ab dem installationszeitraum neu gesetzten?


    Die States werden nur in der nfo aktualisiert, wenn diese sich in XBMC ändern (dies gilt ab dem Installationszeitpunkt)... Also nur dann, wenn du einen Film oder eine Serie/Staffel/Episode von Hand markierst oder etwas bis zum Ende anschaust (in diesem Fall macht XBMC das ja automatisch)

  • Hey 4lb3rtO,

    danke für das Addon - genau sowas suche ich. :)


    Habe gerade ein paar Tests gemacht (Gotham) und wenn ein Film zu Ende läuft wird die .nfo korrekt updated. Super!


    ABER beim manuellen "mark as watched" über das Kontext-Menü gibt es Situationen, wo das Script nicht tätig wird:

    Beispiel 1:
    Ich gehe in die Movie-Library und wähle über das Kontext-Menü bei einem Film "mark as watched"
    ERGEBNIS: .nfo wird korrekt updated

    Beispiel 2:
    Ich gehe in den ganz normalen File-Browser (nicht Library) in einen Filmordner und wähle über das Kontext-Menü "mark as watched"
    ERGEBNIS: .nfo wird nicht geändert.


    Da ich die Library-Ansicht "Movies" quasi nicht benutze (aus verschiedenen Gründen) und immer per Favoriten einfach in Filmordner reinspringe wäre ein Fix sehr toll, falls machbar. :)


    Danke und Grüße :)

    Edit:
    Nach etwas Recherche könnte das Problem vielleicht sein, dass "VideoLibrary.OnUpdate" komischerweise in Beispiel 2 nicht "ausgelöst" wird? Könnte also eher eine Kodi-Eigenheit oder gar Bug sein?
    Siehe ähnliches Problem hier
    http://forum.kodi.tv/showthread.php?tid=197858

  • Danke für die Info! :)

    Ich habe das Script minimal modifiziert:

    Zum einen wird jetzt auch das tag "watched" true/false geschrieben, falls playcount 0 oder halt >0. Ich weiß, dass playcount eigentlich reichen würde. Da Tiny Media Manager jedoch ein watched-Tag setzt, hab ichs zwecks Kompatibelität ergänzt.

    Zum anderen habe ich bei der Formatierung der XML-Datei als Einrückung jetzt 4 statt 2 Leerzeichen verwendet (Tiny Media Manager scheint die .nfo nicht einlesen zu wollen, wenn 2 statt 4 Leerzeichen verwendet werden)

    Falls Interesse besteht, einfach Bescheid geben.

  • Kann gut sein. :) Ich nutze wie gesagt TMM 8und gelegentlich MediaElch). Ein wirkliches "Problem" hat TMM mit dem playcount nicht, er ignoriert ihn halt und da ist das dort genutzte "watched" als Legacy-Tag ganz praktisch, da man sonst haufenweise .nfo-Dateien mit "watched" false und playcount 1 hat, was ja irgendwie nicht so schön ist. Bis sich bei TMM was ändert, werde ich dann erstmal beim Mod bleiben. Zumal es performance-technisch keinen Unterschied macht.


    Edit 1:

    Habe MediaElch nochmal getestet und auch dort wird immer auch "watched" zusätzlich gesetzt, selbst wenn das Tag vorher nicht in der .nfo vorhanden war.
    Die Nutzung von "watched" als Legacy-Zusatz scheint sich somit nicht auf TMM zu beschränken.

    4lb3rtO
    Vorschlag:

    Habe unter dem bestehenden "root = tree.getroot()" (Zeile 83) ergänzt

    Code
    # set watched BEGIN
            	elemWatched = root.find('watched')
            	if elemWatched is None:
                	elemWatched = ET.SubElement(root, 'watched')
            	if playcount > 0:
                	elemWatched.text = "true"
            	else:
                	elemWatched.text = "false"
            	# set watched END


    Edit 2
    (ganz anderes Thema!):

    Habe den TMM-Entwickler zusätzlich noch wegen dem anderen Problem kontaktiert (von "NFO Watchedstate Updater"geänderte .nfo Dateien konnten von TMM nicht mehr gelesen werden.)
    Das Problem in diesem Fall lag an TMM und wird in TMM gefixt.


    Gruß! :)

Jetzt mitmachen!

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