Hilfe bei der MQTT-Konfiguration für QBUS-System benötigt

Hallo zusammen,

Ich habe eine Smart-Home-Installation in meinem Haus für alle Beleuchtungen. Ich komme aus Belgien und mit meinem Elektriker haben wir uns dafür entschieden, das QBUS-System zu installieren, das als relativ offen gilt. Sie stellen tatsächlich ein MQTT-Gateway (GitHub - Qbus-Koen/qbusMqtt · GitHub) bereit, das funktionsfähig ist und das ich bereits auf einem Raspberry laufen habe.

Das einzige Problem ist, dass QBUS niederländisch ist und noch nicht so weit verbreitet ist… Sie haben ein offizielles Plugin für Node Red und für OpenHab (siehe Link oben). Die flämische Community ist zum Glück sehr begeistert und auf dem QBUS-Forum haben Entwickler Skripte erstellt, um dies in Home Assistant zu implementieren:

Und das funktioniert super in Home Assistant, ich sehe alle meine Lampen, die ich über die Oberfläche ein- und ausschalten kann, und es synchronisiert gut mit den LEDs in meinen Schaltern und auch mit der offiziellen qbus-App, mit der ich ein- und ausschalten kann. Das zeigt mir, dass Home Assistant sowohl die Ein/Aus-Information empfangen als auch einen neuen Wert senden kann, der wiederum vom qbus mqtt-Gateway abgefangen wird, das die Information an die Steuerung senden kann. Bisher ist alles klar, ich verstehe die Funktionsweise :slight_smile:

Ich würde das gerne in Gladys implementieren, aber ich denke, ich bin der Erste, der diese Tür eintritt, denn sie scheinen Gladys im Norden des Landes nicht zu kennen :stuck_out_tongue:

Da ich einen Entwicklungs-Hintergrund habe, denke ich, dass es nicht sehr kompliziert sein sollte. Ich entdecke jedoch das MQTT-Protokoll komplett und habe noch ein wenig Schwierigkeiten zu verstehen, welche Art von Payload QBUS erwartet, um eine Lampe ein- oder auszuschalten. Vor allem, weil die Dokumentation fast nicht existiert, es ist nicht so, als gäbe es eine schöne dokumentierte API)

Ich brauche also ein wenig Hilfe :folded_hands:

Ich habe dieses Repo geforkt GitHub - nicojanssens/qbus-ha · GitHub, das in JS geschrieben ist und für mich daher einfach zu verstehen ist, aber ich stecke fest, denke ich, wegen meines schlechten Verständnisses.

Bisher kann ich mich zu einem Topic cloudapp/QBUSMQTTGW/config anmelden
Wenn ich dann ein Topic cloudapp/QBUSMQTTGW/getState sende
Erhalte ich die Liste meiner Geräte:

Ich nehme an, dass ich jedes Gerät in Gladys registrieren muss und eine Funktion « Hören des Wertes, den QBUS mir sendet » (wenn ich einen physischen Schalter verwende) und eine Funktion « Neuen Wert an QBUS senden » haben muss.
Aber wie kann ich Gladys sagen, dass Gerät X den Topic cloudapp/QBUSMQTTGW/UL1/UL41/state abhören muss, der dem Zustand meiner Lampe X entspricht?

Ein Beispiel für eine Konfiguration für eine Lampe in Gladys würde mir sehr helfen :smiley: Eine Lampe in Gladys, die sowohl die Information empfangen kann, ob sie ein- oder ausgeschaltet ist, als auch die Möglichkeit hat, sie von Gladys aus zu steuern.

In der von den flämischen Entwicklern vorkonfigurierten Home Assistant habe ich meine Lampe mit ihrem aktuellen Zustand und der Möglichkeit, sie ein- und auszuschalten

Und hier ist die Konfiguration dahinter, die ich finden konnte

Was ist diese Geschichte mit dem Template (Beispiel)?
Und wie kann man in Gladys eine Dimmerlampe steuern?

Wenn mir jemand sagen könnte, in welche Richtung ich gehen soll, wäre das super :slight_smile:

Vielen Dank im Voraus!

Hallo!

Schau dir mal dieses Live-Coding an: (59) Live coding : Une intégration Z-Wave en une journée ? - YouTube und diesen PR: Z-Wave JS UI integration by Pierre-Gilles · Pull Request #1982 · GladysAssistant/Gladys (github.com)

Genau das, was du verlangst, nur mit Z-Wave. Hier hast du ein Video zur Integration von Z-Wave über MQTT in Gladys: von der MQTT-Verbindung bis zur Integration eines Geräts in der Oberfläche.

Der reine QBUS-Teil: Da musst du nach Dokumentation suchen oder dich tatsächlich für das JS-Projekt interessieren, das du erwähnt hast.

Viel Spaß beim Entwickeln :wink:

Super danke! Ich werde das alles analysieren :slight_smile:

Wenn ich eine neue Gladys-Integration entwickle, wie kann ich sie in meine Gladys-Instanz laden, um sie zu testen?

Du musst ein Docker-Testimage erstellen:

Das du parallel (oder besser auf einer anderen Maschine) starten kannst

super danke!