UPDATE: v1.0.2 25.01.25
Hallo zusammen,
ich möchte euch mein Kodi-Skript vorstellen, das die Automatisierung der Favoriten-Synchronisation übernimmt. Damit könnt ihr eure Favoriten bequem über mehrere Geräte hinweg aktuell halten – besonders praktisch für alle, die oft zwischen verschiedenen Kodi-Installationen wechseln. Zusätzlich könnt ihr damit auch addon_data (also die Einstellungen diverser Add-ons) synchronisieren und Hintergrundbilder rotieren lassen.
Da ich dieses Skript im privaten Bereich für Freunde und Bekannte nutze, ist es vor allem als Hilfe zur Selbsthilfe gedacht. Jeder kann selbst entscheiden, wie er es einsetzen möchte. Besonders Kodi-Build-Ersteller könnten zusätzliche Möglichkeiten daraus ziehen, um ihre Builds konsistent zu halten.
Im Folgenden findet ihr eine detaillierte Beschreibung der einzelnen Funktionen und Einstellungen, die in der Benutzeroberfläche des Add-ons sichtbar sind. Viel Spaß beim Ausprobieren!
Erklärung des Skripts: Auto FTP Sync
Spoiler anzeigen
Dieses Skript hilft dir, deine Kodi-Favoriten (sowohl Standard- als auch statische Ordner-Favoriten) und den Ordner addon_data automatisch mit einem FTP-Server zu synchronisieren. Damit kannst du bequem Einstellungen, Favoriten und diverse Addon-Konfigurationen über mehrere Geräte hinweg aktuell halten.
1. Standard-Favoriten
Was sind Standard-Favoriten?
Standard-Favoriten sind die Favoriten, die in der Datei favourites.xml im userdata-Ordner deines Kodi-Systems gespeichert sind.
Wie funktioniert die Synchronisation?
- Das Skript prüft, ob ein benutzerdefinierter Ordnername in den Einstellungen angegeben wurde.
- Anschließend kontrolliert es, ob dieser Ordner auf dem FTP-Server existiert. Ist das nicht der Fall, erfolgt eine Fehlermeldung.
- Das Skript lädt die favourites.xml vom FTP-Server herunter und vergleicht sie mit der lokalen favourites.xml.
- Die Favoriten werden zusammengeführt („Merge“): Neue Favoriten werden hinzugefügt, gelöschte Favoriten entfernt.
- Schließlich wird die aktualisierte favourites.xml zurück auf den FTP-Server hochgeladen.
2. Statische Ordner-Favoriten
Was sind Statische Ordner-Favoriten?
Dies sind Favoriten, die in speziellen Ordnern (z. B. Anime, Horror, Marvel, Goat) liegen und vom Add-on plugin.program.super.favourites verwaltet werden. Du kannst die Ordnerliste in den Einstellungen anpassen.
Wie funktioniert die Synchronisation?
- Das Skript liest die Liste der statischen Ordner aus den Einstellungen.
- Für jeden Ordner prüft es, ob der entsprechende Ordner auf dem FTP-Server (innerhalb deines benutzerdefinierten Ordners) vorhanden ist. Fehlt er, erscheint eine Fehlermeldung.
- Je nach Einstellung „Server-Priorität“:
- Aktiviert:
- Das Skript lädt die favourites.xml vom Server herunter und überschreibt damit die lokale Datei.
- Anschließend wird die lokale (aktualisierte) favourites.xml erneut auf den FTP-Server hochgeladen.
- Deaktiviert:
- Das Skript lädt die favourites.xml vom FTP-Server herunter und führt sie mit der lokalen Datei zusammen.
- Danach wird die zusammengeführte Fassung wieder hochgeladen.
- Aktiviert:
3. Addon-Data-Synchronisation
Was ist addon_data?
Im Ordner addon_data von Kodi speichern viele Add-ons ihre Konfigurationen, Einstellungen und andere Daten.
Wie funktioniert die Synchronisation?
- Hauptsystem:
- Das Skript erstellt automatisch eine ZIP-Datei deines lokalen addon_data-Ordners und lädt sie auf den FTP-Server hoch.
- Nicht-Hauptsystem:
- Das Skript lädt die ZIP-Datei vom FTP-Server herunter, entpackt sie in den lokalen addon_data-Ordner und kann ihn dadurch aktualisieren.
Damit bleiben nicht nur deine Favoriten synchron, sondern auch wichtige Addon-Einstellungen auf allen verwendeten Kodi-Geräten.
Synchronisation zwischen zwei Systemen
Spoiler anzeigen
- System 1 fügt einen Favoriten hinzu
- Wenn du auf System 1 einen neuen Favoriten hinzufügst und Kodi neu startest, vergleicht das Skript deine lokale favourites.xml mit der Datei auf dem FTP-Server.
- Der neue Favorit wird zur favourites.xml auf dem FTP-Server hinzugefügt.
- Anschließend wird die aktualisierte favourites.xml zurück auf den FTP-Server hochgeladen.
- System 2 entfernt einen Favoriten
- Wenn du auf System 2 einen Favoriten entfernst und Kodi neu startest, führt das Skript wieder einen Vergleich zwischen lokaler und Server-favourites.xml durch.
- Der entfernte Favorit wird aus der favourites.xml auf dem FTP-Server gelöscht.
- Danach lädt das Skript die aktualisierte favourites.xml auf den FTP-Server hoch.
- Synchronisation bei jedem Start
- Jedes Mal, wenn Kodi startet, wird die aktuelle favourites.xml vom FTP-Server heruntergeladen und mit deiner lokalen Datei verglichen.
- Neue Favoriten, die lokal existieren und nicht auf dem Server zu finden sind, werden hinzugefügt.
- Favoriten, die nur auf dem Server vorhanden sind, lokal aber fehlen, werden entfernt.
- Am Ende wird die aktualisierte favourites.xml wieder zum FTP-Server hochgeladen.
Schritt-für-Schritt-Beispiel
- System 1 (Neuer Favorit)
- Du fügst einen neuen Favoriten hinzu.
- Beim nächsten Kodi-Start erkennt das Skript den neuen Eintrag und fügt ihn in die Server-favourites.xml ein.
- Die aktualisierte Datei wird hochgeladen.
- System 2 (Favorit entfernen)
- Du entfernst einen Favoriten.
- Beim nächsten Kodi-Start wird der gelöschte Eintrag auch aus der Server-favourites.xml entfernt.
- Die aktualisierte Datei wird hochgeladen.
- System 1 und System 2 (Synchronisation)
- Beim nächsten Start auf beiden Systemen lädt Kodi jeweils die Server-favourites.xml herunter.
- Beide Geräte erhalten nun denselben Stand:
- Der neue Favorit von System 1 ist überall vorhanden.
- Der gelöschte Favorit von System 2 ist überall entfernt.
- So bleibt die Favoritenliste auf allen Systemen immer identisch, ganz egal, wo du zuletzt etwas geändert hast.
Funktionen und Einstellungen:
Spoiler anzeigen
- Synchronisation aktivieren
- Beschreibung: Schaltet die gesamte Synchronisation ein oder aus.
- Wichtig: Diese Option muss aktiviert sein, damit das Skript überhaupt ausgeführt wird.
- Benutzerdefinierter Ordnername
- Beschreibung: Ein eindeutiger Ordnername, der auf dem FTP-Server angelegt wird, um Deine Standard-Favoriten zu speichern.
- Wichtig: Existiert dieser Ordner bereits, erhältst Du eine Benachrichtigung. Wähle den Ordnernamen daher sorgfältig.
- Standard-Favoriten synchronisieren
- Beschreibung: Steuert die Synchronisation der Haupt-Favoritenliste (favourites.xml).
- Wichtig: Wenn aktiv, werden Deine Standard-Favoriten automatisch beim Skriptlauf abgeglichen.
- Statische Ordner synchronisieren (z.B. Anime, Horror, Marvel, Goat)
- Beschreibung: Aktiviert die Synchronisation zusätzlicher Favoritenordner, die in plugin.program.super.favourites liegen.
- Wichtig: Diese Ordner werden nur dann gemerged bzw. überschrieben, wenn die Option eingeschaltet ist.
- Statische Ordner (durch Kommas getrennt)
- Beschreibung: Eine Liste von Ordnernamen, die als „Statisch“ behandelt werden sollen. Beispiel: Anime, Horror, Marvel, Goat.
- Wichtig: Die Ordnernamen hier müssen exakt den Ordnernamen auf dem FTP-Server entsprechen.
- FTP-Basisverzeichnis
- Beschreibung: Das Hauptverzeichnis auf dem FTP-Server, in dem Deine Favoriten (und ggf. addon_data) gespeichert werden.
- Wichtig: Stelle sicher, dass Du dort Lese‐/Schreibrechte hast.
- FTP-Host
- Beschreibung: Hostname oder IP-Adresse Deines FTP-Servers.
- Wichtig: Das Skript verbindet sich über diesen Host mit dem Server.
- FTP-Benutzer
- Beschreibung: Benutzername für den FTP-Server.
- Wichtig: Du benötigst einen gültigen Account, der Zugriff auf das gewünschte Verzeichnis hat.
- FTP-Passwort
- Beschreibung: Passwort zu Deinem FTP-Benutzer.
- Wichtig: Achte auf sichere Credentials – das Skript speichert sie in seinen Einstellungen.
- Server-Priorität für statische Ordner
- Beschreibung: Legt fest, ob die vom Server geholten Favoriten die lokalen Favoriten überschreiben sollen (nur für statische Ordner!).
- Wichtig: Hat keinen Einfluss auf die Standard-Favoriten. Ist diese Option aktiviert, überschreiben die Ordnerinhalte vom Server die lokalen Ordner.
- 'addon_data' Sync
- Beschreibung: Wenn aktiviert, wird zusätzlich der komplette addon_data-Ordner beim Hauptsystem als ZIP auf den FTP-Server hochgeladen und von den Nicht-Hauptsystemen heruntergeladen. Dadurch kannst Du Addon-Einstellungen auf allen Geräten abgleichen.
- Wichtig: Stelle sicher, dass in addon_data keine kritischen oder zu großen Dateien liegen, die Du nicht synchronisieren möchtest.
Durch korrektes Konfigurieren all dieser Optionen gewährleistest Du eine reibungslose Synchronisation Deiner Favoriten sowie Deines addon_data-Ordners über den FTP-Server.
Verwendung:
Spoiler anzeigen
- Konfiguration
- Trage alle FTP-Einstellungen (Host, Benutzername, Passwort, Basisverzeichnis) korrekt in den Add-on-Einstellungen ein.
- Aktiviere die Synchronisation (Enable Sync), damit das Skript überhaupt ausgeführt wird.
- Ordnerstruktur
Auf dem FTP-Server sollte folgende Struktur verfügbar sein:
- {custom_folder}: Der in den Add-on-Einstellungen festgelegte, benutzerdefinierte Ordnername.
- {folder}: Vordefinierte Ordnernamen wie Anime, Horror, Marvel, Goat (oder andere, die Du in den Einstellungen angegeben hast).
- Synchronisationsoptionen
- Lege in den Add-on-Einstellungen fest, ob Du Standard-Favoriten, statische Ordner (z. B. Anime, Horror, Marvel, Goat) und ggf. 'addon_data' synchronisieren möchtest.
- Passe bei Bedarf weitere Optionen an, wie z. B. Server-Priorität für statische Ordner.
- Sobald alles korrekt eingerichtet ist, lädt das Skript beim Start von Kodi Deine Favoriten (und optional Dein addon_data) hoch bzw. herunter und hält sie auf allen Geräten synchron.
Changelog:
Spoiler anzeigen
v1.0.2
- Texte, Bilder und Addon-Beschreibung überarbeitet
- Code-Optimierungen
- Neu: `addon_data`-Synchronisation integriert
v1.0.1
- Code-Verbesserungen
- Statische Ordner werden nun korrekt aus den Einstellungen übernommen
Beste Grüße, DK