# Playtube – Stream Dock Plugin Plugin für **Stream Dock** (Ajazz AKP153E und andere Mirabox/HotSpot-Geräte), mit dem du [Playtube](https://git.fojadrachi.de/admin/Playtube) steuern kannst: Wiedergabe, Lautstärke (lauter/leiser/stumm), Playlist-Auswahl, Cover und Titel auf den Tasten. ## Voraussetzungen - Stream Dock Software ab 3.10.188 (Windows), Gerät z. B. Ajazz AKP153E. - **Playtube ab 4.5.1** (oder Playtube Edge), denn erst ab dieser Version gibt es die lokale Fernsteuerung. Das Plugin verbindet sich über eine Named Pipe (`\\.\pipe\Playtube.Remote.`, nur dein Windows-Benutzer) – kein Netzwerk, kein Konto. - Ohne laufendes Playtube zeigen die Tasten „Playtube offline". ## Installieren ```powershell powershell -ExecutionPolicy Bypass -File install.ps1 ``` Danach Stream Dock komplett beenden (Tray-Symbol → Beenden) und neu starten. Die Aktionen findest du in der Kategorie **Playtube**. Das Skript installiert auch das Icon-Pack. ## Aktionen | Aktion | Was sie tut | |---|---| | Wiedergabe/Pause | Umschalten, Symbol zeigt den Zustand | | Vorheriger / Nächster Titel | Titel springen | | Zurück-/Vorspulen | ± Sekunden (einstellbar) | | Lauter / Leiser | Schrittweite einstellbar, gedrückt halten wiederholt | | Lautstärke setzen | Feste Lautstärke | | Stumm | Ton aus/ein, zeigt die Lautstärke | | Aktueller Titel | Cover und Titel; auf dem Info-Display eine große Karte mit Interpret und Fortschritt | | Gefällt mir, Zufall, Wiederholen | Umschalten, Symbol zeigt den Zustand | | Playlist abspielen | Playlist aus YouTube Music wählen (Liste wird von Playtube geladen) | | Tab wechseln / Playtube anzeigen | YouTube ↔ YouTube Music, Fenster nach vorn | Pro Taste einstellbar: Ziel-Tab (automatisch = aktiver Tab, YouTube oder YouTube Music), je nach Aktion Schrittweite, Sekunden, Lautstärke, Playlist, Titelanzeige. Alle Aktionen sind auch auf den Info-Feldern rechts am Gerät nutzbar. ## Icon-Pack `iconpack/com.fojadrachi.playtube.sdIconPack` enthält 75 Symbole im Playtube-Look (Verlauf violett → pink): Ordner, Pfeile, Einstellungen, Player-Symbole und vereinfachte App-Symbole (Chrome, Discord, Steam, …; eigene Zeichnungen, keine Original-Logos). Zwei Varianten: `gradient_*` und `dark_*`. In der Stream-Dock-Software über das Bild einer Taste auswählbar. ## Entwicklung ```bash npm install npm test # 40 Tests (Node >= 20) npm run build # bündelt src/ nach com.fojadrachi.playtube.sdPlugin/plugin/index.js npm run assets # erzeugt manifest.json, Übersetzungen und Tasten-Icons npm run iconpack # erzeugt das Icon-Pack (+ Zip in dist/) npm run package # Zip des Plugins in dist/ ``` Aufbau: `src/playtubeClient.js` (Pipe-Protokoll), `src/actions.js` (Aktionen, reine Funktionen), `src/controller.js` (Tasten ↔ Playtube), `src/infoPanel.js` (Karte fürs Info-Display), `src/host.js` (Stream-Dock-WebSocket), `tools/` (Icon-Generator). Das gebündelte `plugin/index.js` liegt im Repo, damit `install.ps1` ohne Build funktioniert.