Hallo,
ich habe MQTT mit Mosquitto als Broker am Laufen.
Was mich als erstes wundert ist, dass entgegen der Dokumentation (https://doc.homegear.eu/data/homegear/communication_protocols.html#variable-changes) die Infos im Topic …/event/… ankommen und nicht in den Topics …/plain/…, …/json/… und …/jsonobj/…:
homegear/1234-5678-9abc/event/6/2/POWER [0]
homegear/1234-5678-9abc/event/6/2/VOLTAGE [230.3]
...
Ich habe nun eine Variable in Homegear angelegt:
was auch ein entsprechendes Topic erzeugt:
homegear/1234-5678-9abc/event/0/-1/Kinomode [true]
Und auch mein OpenHab reagiert entsprechend der Items-Konfiguration (Switch ändert seinen Zustand):
Switch TestKinomode {mqtt=">[mosquitto:homegear/1234-5678-9abc/set/0/-1/Kinomode:command:*:MAP(mqtt.map)],
<[mosquitto:homegear/1234-5678-9abc/event/0/-1/Kinomode:state:MAP(mqtt.map)]" }
mqtt.map sieht folgendermaßen aus:
[false]=OFF
[true]=ON
OFF=[false]
ON=[true]
Nur habe ich beim Setzen von OpenHab Probleme. Das Topic, welches bei Mosquitto ankommt sieht richtig aus:
homegear/1234-5678-9abc/set/0/-1/Kinomode [false]
Doch Homegear bekommt davon nichts mit. Ich bekomme für die Variable immer nur den Wert 1:
homegear -e rc 'print($hg->getSystemVariable("Kinomode"));'
1
Hat jemand eine Idee, warum Homegear nicht auf das Topic reagiert?