diff --git a/plugins/hal-mqtt/src/se/hal/plugin/mqtt/detector/Zigbee2mqttDetector.java b/plugins/hal-mqtt/src/se/hal/plugin/mqtt/detector/Zigbee2mqttDetector.java index c66b00de..33042fb9 100644 --- a/plugins/hal-mqtt/src/se/hal/plugin/mqtt/detector/Zigbee2mqttDetector.java +++ b/plugins/hal-mqtt/src/se/hal/plugin/mqtt/detector/Zigbee2mqttDetector.java @@ -31,7 +31,7 @@ public class Zigbee2mqttDetector implements HalMqttDetector { if (json.getString("state") != null) { HalMqttOnOffEventConfig event = new HalMqttOnOffEventConfig(topic, "$.state"); - event.setWriteTopicName(topic + "/set"); + event.setWriteTopicName(topic + "/set/state"); event.setValueOnString("ON"); event.setValueOffString("OFF"); detectedDeviceConfigs.add(event); diff --git a/plugins/hal-mqtt/test/se/hal/plugin/mqtt/detector/Zigbee2mqttDetectorTest.java b/plugins/hal-mqtt/test/se/hal/plugin/mqtt/detector/Zigbee2mqttDetectorTest.java index c4d816c6..417852f6 100644 --- a/plugins/hal-mqtt/test/se/hal/plugin/mqtt/detector/Zigbee2mqttDetectorTest.java +++ b/plugins/hal-mqtt/test/se/hal/plugin/mqtt/detector/Zigbee2mqttDetectorTest.java @@ -25,8 +25,10 @@ public class Zigbee2mqttDetectorTest { assertEquals(0, devices.size()); devices = detector.parseTopic("zigbee2mqtt/Kitchen Plant Light", "{\"power\":10.48,\"state\":\"ON\"}".getBytes(StandardCharsets.UTF_8)); + HalMqttOnOffEventConfig actualOnOff = new HalMqttOnOffEventConfig("zigbee2mqtt/Kitchen Plant Light", "$.state"); + actualOnOff.setWriteTopicName("zigbee2mqtt/Kitchen Plant Light/set"); assertEquals(1, devices.size()); - assertEquals(new HalMqttOnOffEventConfig("zigbee2mqtt/Kitchen Plant Light", "$.state"), devices.get(0)); + assertEquals(actualOnOff, devices.get(0)); } /*