NEWS
MQTT sendTo aktiviert alle Schalter o.O
-
Hallo zusammen, als Neuling im Forum hoffe ich auf eure Hilfe. Ich habe ein Problem, das ich mir einfach nicht erklären kann. Über ein Javascript rufe ich die folgende sendTo Funktion um sonoff Schalter zu schalten:
sendTo('mqtt.0', 'sendMessage2Client', {topic: '/home/cmnd/POWER', message: 'on'}); //Licht einschalten
Und jetzt wird es verrückt, anstatt des Schalters in der Topic /home gehen einfach alle Sonoff Geräte gleichzeitig an wobei die Topic zu diesen z.B. diese ist: SmartHome/Wohnzimmer/WLANSteckdose1. Kann sich einer von euch darauf einen Reim machen? Sobald ich den folgenden Befehl rufe,
sendTo('mqtt.0', 'sendMessage2Client', {topic: '/POWER', message: 'on'});
ist es völlig egal, was ich vor /POWER schreibe, es werden alle Lampen eingeschaltet o.O Wenn ich die Payload per MQTT.fx an den Schalter sende, funktioniert alles wie erwartet und nur der angesprochene Schalter wird aktiviert. Ist mein Syntax falsch? Ich bin mit meinem Latein gerade am Ende.
Vielen Dank für eure Hilfe!
-
Ich habe gerade eine Lösung gefunden, bin mir aber nicht sicher, ob das "state of the art" ist. Der sendTo Befehl ist hier wahrscheinlich ungeeignet. Mit dem setState Befehl kann das oben geschilderte Problem wie folgt gelöst werden:
setState('mqtt.0.home.cmnd.POWER','on');
Geht das besser oder muss das so?
Beste Grüße
xotox -