Top
Nein, in Gladys ist nichts nur für eine einzige Integration reserviert, alles ist entwickelt, um 100% offen zu sein.
Du kannst die MQTT-Integration verwenden, um ein „virtuelles“ Musikgerät zu erstellen:
Du kannst natürlich alle Funktionen hinzufügen, die mit Musik zusammenhängen. Derzeit unterstützen wir:
- Play → „Push“-Funktion, deren einziger akzeptierter Zustand „1“ ist
- Pause → „Push“-Funktion, deren einziger akzeptierter Zustand „1“ ist
- Vorheriger → „Push“-Funktion, deren einziger akzeptierter Zustand „1“ ist
- Nächster → „Push“-Funktion, deren einziger akzeptierter Zustand „1“ ist
- Wiedergabestatus → Zwei mögliche Zustände:
- „1“ = wird abgespielt
- „0“ = pausiert
Anschließend musst du in deinem Heimserver den Wiedergabestatus an Gladys weiterleiten und auf eine Änderung bei Gladys hören.
Wiedergabestatus weiterleiten
Ich weiß nicht, in welcher Sprache dein Heimserver programmiert ist. Wenn es Node.js wäre, könntest du folgendes tun:
const mqtt = require("mqtt");
const client = mqtt.connect("mqtt://192.168.1.10", {
username: 'gladys',
password: 'aaaaaaaaa'
});
const PLAYBACK_TOPIC = "gladys/master/device/mqtt:serveur-mpd-musique/feature/mqtt:serveur-mpd-etat-lecture/state";
client.on("connect", () => {
// Beispiel beim Abspielen
client.publish(PLAYBACK_TOPIC, "1");
// Beispiel bei Pause
client.publish(PLAYBACK_TOPIC, "0");
});
Ich habe ein Video zum Thema MQTT-Integration gemacht: https://www.youtube.com/watch?v=o5yn_FnYtkc
Befehl an den MPD-Server senden
Anschließend gibt es zwei Optionen, um einen Befehl von Gladys aus zu senden:
- Per MQTT
- Per HTTP über eine Szene
Wenn dein Server ein MQTT-Topic abhören kann, kannst du einfach jedes Topic jedes Befehls (Play, Pause, etc.) abhören und auf jede Nachricht reagieren. Das ist meiner Meinung nach am praktischsten und effizientesten.
Andernfalls, wenn du es lieber per HTTP machen möchtest, kannst du eine Szene erstellen, die die Zustandsänderung jedes Knopfes abhört (du musst eine Szene pro Knopf erstellen, das ist weniger komfortabel als per MQTT):
Aber meiner Meinung nach kannst du das alles in wenigen Minuten integrieren 
Zögere nicht, wenn du Hilfe brauchst, wir können uns sogar anrufen, wenn du das mit mir debuggen möchtest.