MQTT Topic in Rule auswerten ?
Verfasst: 26. Mär 2023 18:59
Moin,
Ich möchte mit einem MQTT Befehl einen Switch in OH3 schalten.
MQTT Broker (extern, Mosquitto) ist eingebunden und funktioniert schon "ewig" reibungslos mit anderen Topics...
Mein Testbefehl "blink" wird im passenden Topic (led/schaltung) veröffentlicht und ist in MQTT.fx zu sehen.
In OH3, im neu angelegten "Test Topic fuer MQTT" Channel und im "String Item" sind alle Befehle die auf "led/schaltung" veröffentlicht werden, auch zu sehen.
Der Broker Name in der Rule (mosquitto_argon) ist auch richtig, denn eine andere Rule: Test_Schalter_A schaltet und veröffentlicht dadurch einen Befehl im entsprechenden Topic, funktioniert reibungslos!
Soweit scheint alles okay ...
Was ist an meiner Rule, die den Test_Schalter_B einschalten soll wenn der String "blink" empfangen wird, nicht richtig?
Danke und einen schönen Abend noch...
Ich möchte mit einem MQTT Befehl einen Switch in OH3 schalten.
MQTT Broker (extern, Mosquitto) ist eingebunden und funktioniert schon "ewig" reibungslos mit anderen Topics...
Mein Testbefehl "blink" wird im passenden Topic (led/schaltung) veröffentlicht und ist in MQTT.fx zu sehen.
In OH3, im neu angelegten "Test Topic fuer MQTT" Channel und im "String Item" sind alle Befehle die auf "led/schaltung" veröffentlicht werden, auch zu sehen.
Der Broker Name in der Rule (mosquitto_argon) ist auch richtig, denn eine andere Rule: Test_Schalter_A schaltet und veröffentlicht dadurch einen Befehl im entsprechenden Topic, funktioniert reibungslos!
Soweit scheint alles okay ...

Was ist an meiner Rule, die den Test_Schalter_B einschalten soll wenn der String "blink" empfangen wird, nicht richtig?
Code: Alles auswählen
rule "MQTT Schaltung empfangen"
when
Channel 'mqtt:broker:mosquitto_argon:led/schaltung' triggered
then
val command = receivedEvent.getCommand.toString
if(command == "blink") {
Test_Schalter_B.sendCommand(ON)
}
end