Servus zusammen
Ich habe nun auch mein erstes Add-on geschrieben und möchte euch das nicht vorenthalten.
Die Idee dazu ist nicht auf meinem Mist gewachsen sondern war mehr oder minder eine Anfrage von @grmlrckr aus diesem Thread hier:
Filme nach Zeit X automatisch als ungesehen markieren
Beschreibung:
Grundlegende Funktion ist, dass das Add-on beim Ausführen die Kodi JSON RPC abfragt. Als Ausgabe kommt eine JSON Antwort aller Filme. Dann wird in dieser Ausgabe geprüft ob ein "lastplayed"-Datum vorliegt. Damit dann entschieden werden kann ob der Gesehen-Status (der "playcount") sowie auch das "lastplayed"-Datum zurück gesetzt werden soll, wird geprüft ob der Film seit x-Tagen gesehen wurde. "x" ist dabei eine Anzahl von Tagen die frei konfiguriert werden kann.
Settings:
Das Add-on hat 4 Settings:
"Aktivieren":
Der Grund hierfür war, dass das Add-on erstmal nichts macht nachdem es installiert und blind ausgeführt wird. Es kommt ein Dialog, der dem User mitteilt, dass das Add-on nicht aktiv ist. Per default ist dieser Schalter deaktiviert und somit das Add-on inaktiv.
"Test-Modus":
Dieser Modus dient dazu sich einen Überblick zu verschaffen, welche Filme denn bei den vorgenommenen Einstellungen gefunden werden um dann zu entscheiden ob man das wirklich möchte oder nicht. Per Default ist dieser Schalter aktiv...auch zur Sicherheit
"Anzahl der Tage:"
Frei konfigurierbare Anzahl von Tagen, die ein Film gesehen sein soll bevor der Status und das "lastplayed"-Datum zurück gesetzt wird. Default ist "9999"...wieder nur zur Sicherheit
"Verstecke Dialoge:"
Wer nachher weiß, was er tut muss sich nicht von verschiedenen Dialogen belästigen lassen. Daher habe ich die Option eingebaut, dass man gewisse Dialoge nicht mehr angezeigt bekommt. Eine Liste der Filme, die zurück gesetzt wurden und auch die Meldung, dass das Script nicht aktiv ist, ist davon ausgeschlossen. Diese Dialoge werden immer angezeigt.
Möglichkeiten zur Automatisierung
Über den Autoexec-Service in Kodi: https://kodi.wiki/view/Autoexec_Service
Legt man sich diesen Service an und konfiguriert seine "autoexec.py" wie folgt:
Dann kann man die Filme bei jedem Start von Kodi automatisiert zurücksetzen lassen.
Ich habe mich bewusst dagegen entschieden das Add-on als Service zu schreiben (daher auch die Dialoge). Solche Services vergisst man leicht und dann wundert man sich ggf. warum manche Filme auf einmal nicht mehr als "gesehen" markiert sind. Auch wenn durch das Anzeigen eines Dialogs man immer wieder daran erinnert werden würde, fand ich es dennoch besser es als "Executable" zu schreiben.
Angedachte Verbesserungen:
Wirklich hübsch finde ich die Ausgabe noch nicht. Da muss ich nochmal ran. So ist es im Moment eher schlecht lesbar. Aber erstmal besser als nichts . Wer einen heißen Tip hat...ich nehme gerne Pull-Requests entgegen oder auch einfach nur Vorschläge hier im Thread
Erledigt: Aktuell in seiner jetzigen Form ist es nur für Kodi 20 lauffähig, da ich eine Funktion mit eingebaut habe, die es in Kodi 19 noch nicht gibt. Das werde ich aber heute Nachmittag noch ändern und dann ins Git pushen.
Wer es sich schonmal anschauen möchte und Kodi 20 verwendet, der darf das sehr gern tun:
https://github.com/DaVukovic/script.reset_watchedstate
Ich werde dann hier entsprechend editieren, wenn sich was am Add-on ändert.
Release Notes:
Version 0.0.3 :
- Python error bzgl "build" Nummer von Kodi gefixt. Nun wird auch "20.0-APLHA1" erkannt
- Settings angepasst, so dass Abhängigkeiten enstehen
Version 0.0.2 :
- Kompatibilität zu Kodi v19 und v20