Update docs

This commit is contained in:
2026-02-01 18:06:46 +01:00
parent f9d353dcfd
commit 90ba3d0fa2
2 changed files with 12 additions and 7 deletions

View File

@@ -4,7 +4,7 @@ Dieses Dokument beschreibt, wie das Plugin-System von **ViewIt** funktioniert un
### Überblick
ViewIt lädt Provider-Integrationen dynamisch aus `source/kodi_addon/plugins/*.py`. Jede Datei enthält eine Klasse, die von `BasisPlugin` erbt. Beim Start werden alle Plugins instanziiert und nur aktiv genutzt, wenn sie verfügbar sind.
ViewIt lädt Provider-Integrationen dynamisch aus `addon/plugins/*.py`. Jede Datei enthält eine Klasse, die von `BasisPlugin` erbt. Beim Start werden alle Plugins instanziiert und nur aktiv genutzt, wenn sie verfügbar sind.
### Aktuelle Plugins
@@ -16,9 +16,9 @@ ViewIt lädt Provider-Integrationen dynamisch aus `source/kodi_addon/plugins/*.p
### Plugin-Discovery (Ladeprozess)
Der Loader in `source/kodi_addon/default.py`:
Der Loader in `addon/default.py`:
1. Sucht alle `*.py` in `source/kodi_addon/plugins/`
1. Sucht alle `*.py` in `addon/plugins/`
2. Überspringt Dateien, die mit `_` beginnen
3. Lädt Module dynamisch
4. Instanziert Klassen, die von `BasisPlugin` erben
@@ -28,7 +28,7 @@ Damit bleiben fehlerhafte Plugins isoliert und blockieren nicht das gesamte Add-
### BasisPlugin verpflichtende Methoden
Definiert in `source/kodi_addon/plugin_interface.py`:
Definiert in `addon/plugin_interface.py`:
- `async search_titles(query: str) -> list[str]`
- `seasons_for(title: str) -> list[str]`
@@ -59,12 +59,12 @@ Eine Integration sollte typischerweise bieten:
- `stream_link_for()` optional für direkte Playback-Links
- Optional: `available_hosters_for()` oder Provider-spezifische Helfer
Als Startpunkt dient `source/kodi_addon/plugins/_template_plugin.py`.
Als Startpunkt dient `addon/plugins/_template_plugin.py`.
### Community-Erweiterungen (Workflow)
1. Fork/Branch erstellen
2. Neue Datei unter `source/kodi_addon/plugins/` hinzufügen (z.B. `meinprovider_plugin.py`)
2. Neue Datei unter `addon/plugins/` hinzufügen (z.B. `meinprovider_plugin.py`)
3. Klasse erstellen, die `BasisPlugin` implementiert
4. In Kodi testen (ZIP bauen, installieren)
5. PR öffnen
@@ -88,4 +88,4 @@ Provider sollten URL-Logging optional halten (Settings).
./scripts/build_kodi_zip.sh
```
Das ZIP liegt anschließend unter `install/plugin.video.viewit-<version>.zip`.
Das ZIP liegt anschließend unter `dist/plugin.video.viewit-<version>.zip`.