From c22f8b36ba05e55749c4ee8dacf7a377b00f277c Mon Sep 17 00:00:00 2001 From: sebastianheierhoff <6094238+sebastianheierhoff@users.noreply.github.com> Date: Fri, 31 Aug 2018 12:34:59 +0200 Subject: [PATCH] Fix issue #306: Sending config msg works only with default topic --- lib/controller.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/controller.js b/lib/controller.js index 40fd1446b..29369f413 100644 --- a/lib/controller.js +++ b/lib/controller.js @@ -355,7 +355,7 @@ class Controller { } handleMQTTMessageConfig(topic, message) { - const option = topic.split('/')[3]; + const option = topic.split('/').slice(-1)[0]; if (option === 'permit_join') { this.zigbee.permitJoin(message.toString().toLowerCase() === 'true'); @@ -459,8 +459,8 @@ class Controller { } handleMQTTMessageDevice(topic, message, withPrefix) { - const friendlyName = topic.split('/')[1]; - const topicPrefix = withPrefix ? topic.split('/')[2] : ''; + const friendlyName = topic.split('/').slice(-2)[0]; + const topicPrefix = withPrefix ? topic.split('/').slice(-3)[0] : ''; // Map friendlyName to deviceID. const deviceID = settings.getIDByFriendlyName(friendlyName);