From 6a2c15500d3bd7a44ac66bfca49cb7bbc80fe3cf Mon Sep 17 00:00:00 2001 From: Dennis Gunia Date: Wed, 14 Aug 2024 17:44:12 +0200 Subject: [PATCH] fix topic filter --- src/modules/luminea_nx_4458.js | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src/modules/luminea_nx_4458.js b/src/modules/luminea_nx_4458.js index 64e02ce..8061f03 100644 --- a/src/modules/luminea_nx_4458.js +++ b/src/modules/luminea_nx_4458.js @@ -38,26 +38,27 @@ class Lineplug extends DeviceBase { // monitor queue this.mqtt.on('message', (topic, message) => { // message is Buffer - let payload = message.toString() - this.logger.debug(`input ${topic}: ${payload}`) - - try { - const jsonpayload = JSON.parse(payload) - if (jsonpayload.value != undefined) { - this.logger.info(`Change status to ${jsonpayload.value}`) - this.device.set({ set: jsonpayload.value }).then(el => { - this.device.refresh() - }) + if (topic == this.topic_set) { // verify that the topic is correct + let payload = message.toString() + this.logger.debug(`input ${topic}: ${payload}`) + try { + const jsonpayload = JSON.parse(payload) + if (jsonpayload.value != undefined) { + this.logger.info(`Change status to ${jsonpayload.value}`) + this.device.set({ set: jsonpayload.value }).then(el => { + this.device.refresh() + }) + } + } catch (error) { + this.logger.warn(`Error parsing malformatted JSON message via mqtt`) + this.logger.trace(payload) + this.logger.trace(error) } - } catch (error) { - this.logger.warn(`Error parsing malformatted JSON message via mqtt`) - this.logger.trace(payload) - this.logger.trace(error) } }) } - stopWatcher(){ + stopWatcher() { clearInterval(this.timer) }