@dreistein 1.)Es sind unterschiedliche Datenpunkte für Status und Kommando
2.) Läßt sich mit dem Lampenadapter aber bewerkstelligen, da der separate Id's zum Steuern für An und Aus hat, die auf denselben Datenpunkt verweisen. Allerdings kann die Leuchte auch von Hand eingeschaltet werden und dann kann sie vom iobroker nicht wieder ausgeschaltet werden, da der mqtt nur bei Statuswechsel des Komandopunktes ein publish durchführt. Also im Kommando steht ein OFF, die Lampe wird per Hand eingeschaltet und kann mit einem erneuten OFF nicht ausgeschaltet werden.
Habe ich jetzt so gelöst, daß zwei Datenpunkte im Userbereich für eine Anforderung zum Ein- oder Ausschalten gesetzt werden. E. Jscript fragt die Datenpunkte ab, setzt bei gesetztem Punkt ein publish ab und setzt die Punkte wieder auf 0.
on('0_userdata.0.JN_OG.Server.Lupe.EIN', function (obj) {
if (!obj.state.ack && obj.state.val) {
sendTo("mqtt.0", "sendMessage2Client", {
"topic": 'Lampe_ServerRaum/cmnd/POWER', "message": 'ON'});
setState('0_userdata.0.JN_OG.Server.Lupe.EIN', '' );
} });
on('0_userdata.0.JN_OG.Server.Lupe.AUS', function (obj) {
if (!obj.state.ack && obj.state.val) {
sendTo("mqtt.0", "sendMessage2Client", {
"topic": 'Lampe_ServerRaum/cmnd/POWER', "message": 'OFF'});
setState('0_userdata.0.JN_OG.Server.Lupe.AUS', '' );
} });
Damit funktioniert es einwandfrei.