peertube-plugin-okas-dev
v1.0.34
Published
PeerTube plugin to add author data for videos.
Maintainers
Readme
PeerTube Plugin OKAS
Ein Plugin für PeerTube, das das Feld "Sendeverantwortung" (Verantwortlicher für die Sendung) und ein verstecktes Feld mit der Video-Nummer hinzufügt.
Funktionen
- Sichtbares Feld "Sendeverantwortung": Wird auf der Video-Ansichtsseite angezeigt mit der Möglichkeit zur Gruppierung nach Autor
- Verstecktes Feld "Video-Nummer": Nur über die API zugänglich
- API für Datenabruf: Endpunkt zum Abrufen der Video-Nummer
- Korrekte Gruppierung: Beim Klick auf den Autorennamen öffnet sich die Suche nach allen Videos dieses Autors
Installation
Automatische Installation (empfohlen)
- Melden Sie sich im PeerTube Admin-Panel an
- Gehen Sie zu "Plugins/Themes" → "Suchen"
- Suchen Sie nach "okas-dev" und klicken Sie auf "Installieren"
Manuelle Installation
- Repository klonen:
git clone https://github.com/yarkolife/peertube-plugin-ok.git
cd peertube-plugin-ok- Build-Abhängigkeiten installieren:
npm install esbuild --save-dev- Plugin erstellen:
npm run build- In PeerTube installieren:
- Gehen Sie zum Admin-Panel
- "Plugins/Themes" → "Lokal"
- Laden Sie das ZIP-Archiv des Plugins hoch
Verwendung
Hinzufügen von Daten zu Videos
Beim Hochladen oder Bearbeiten von Videos sehen Sie:
- Auf dem Haupt-Tab: Feld "Sendeverantwortung" für den Namen des Autors
- In den Plugin-Einstellungen: Feld "Video-Nummer" für die interne Nummer
Anzeige im Frontend
Auf der Video-Ansichtsseite wird angezeigt:
- Feld "Sendeverantwortung" mit klickbarem Link zur Suche aller Videos des Autors
- Die Video-Nummer wird NICHT angezeigt
API
Wichtig: Alle API-Endpunkte des Plugins verwenden den Präfix /router/ (Standard in PeerTube).
Video nach ID abrufen (UUID oder Nummer)
GET /plugins/okas-dev/router/videos/:id?channel=channelNameBeispiel-Anfrage:
# Nach Nummer (wenn id nicht UUID-Format hat)
curl -H "Accept: application/json" \
"https://lokalmedial.de/plugins/okas-dev/router/videos/17911?channel=okmq"
# Nach UUID (wird an Standard-API weitergeleitet)
curl -H "Accept: application/json" \
"https://lokalmedial.de/plugins/okas-dev/router/videos/d14a4d6e-9bff-4af7-804b-d37c75583873"Antwort:
{
"uuid": "d14a4d6e-9bff-4af7-804b-d37c75583873",
"name": "Video-Titel",
"url": "https://lokalmedial.de/videos/watch/d14a4d6e-9bff-4af7-804b-d37c75583873",
"pluginData": {
"videoNumber": "17911",
"senderResponsible": "Max Mustermann"
},
...
}Video-Nummer abrufen
GET /plugins/okas-dev/router/video/:uuid/numberBeispiel-Anfrage:
curl -H "Accept: application/json" \
"https://lokalmedial.de/plugins/okas-dev/router/video/d14a4d6e-9bff-4af7-804b-d37c75583873/number"Antwort:
{
"videoNumber": "17911"
}Video nach Nummer abrufen
GET /plugins/okas-dev/router/videos/by-number/:number?channel=channelNameBeispiel-Anfrage:
# Suche in allen Videos
curl -H "Accept: application/json" \
"https://lokalmedial.de/plugins/okas-dev/router/videos/by-number/17911"
# Suche in spezifischem Kanal (empfohlen für bessere Performance)
curl -H "Accept: application/json" \
"https://lokalmedial.de/plugins/okas-dev/router/videos/by-number/17911?channel=okmq"Antwort:
{
"uuid": "d14a4d6e-9bff-4af7-804b-d37c75583873",
"name": "Video-Titel",
"url": "https://lokalmedial.de/videos/watch/d14a4d6e-9bff-4af7-804b-d37c75583873",
"pluginData": {
"videoNumber": "17911",
"senderResponsible": "Max Mustermann"
},
...
}API-Fehler
404: Video-Nummer nicht gefunden500: Interner Server-Fehler
Hinweis
In PeerTube werden alle Plugin-Routen automatisch mit dem Präfix /router/ versehen. Dies ist das Standard-Verhalten und kann nicht geändert werden. Der korrekte Pfad ist immer /plugins/{plugin-name}/router/{route}.
Anforderungen
- PeerTube Version 5.2.0 oder höher
- Node.js zum Erstellen (falls Installation aus Quellcode)
Lizenz
GNU Affero General Public License v3.0
Support
Bei Fragen oder Vorschlägen erstellen Sie bitte ein Issue in diesem Repository.
Entwicklung
Plugin-Struktur
main.js- Server-seitige Plugin-Logikclient/video-edit-client-plugin.js- Formular-Felder für Video-Upload/Bearbeitungclient/video-watch-client-plugin.js- Anzeige der Metadaten auf der Video-Seitedist/- Kompilierte Client-Skripte
Lokale Entwicklung
- Repository klonen
npm installnpm run build- Plugin in PeerTube-Entwicklungsumgebung testen
