diff --git a/lib/extension/devicePublish.js b/lib/extension/devicePublish.js index 006860b65..dcc57d9e1 100644 --- a/lib/extension/devicePublish.js +++ b/lib/extension/devicePublish.js @@ -123,7 +123,7 @@ class DevicePublish { msg[_key] = converted.cmd.toUpperCase(); } else if (brightnessConverters.includes(converter)) { msg[_key] = 'ON'; - msg['brightness'] = converted.zclData.level; + msg['brightness'] = Number(converted.zclData.level); } this.publishEntityState(entity.ID, msg, true); diff --git a/test/devicePublish.test.js b/test/devicePublish.test.js index 25c627449..c829b2c09 100644 --- a/test/devicePublish.test.js +++ b/test/devicePublish.test.js @@ -55,7 +55,7 @@ describe('DevicePublish', () => { chai.assert.deepEqual(zigbee.publish.getCall(0).args[7], null); chai.assert.isTrue(publishEntityState.calledOnce); chai.assert.strictEqual(publishEntityState.getCall(0).args[0], '0x12345678'); - chai.assert.deepEqual(publishEntityState.getCall(0).args[1], {state: 'ON'}); + chai.assert.deepEqual(publishEntityState.getCall(0).args[1], {state: 'ON', brightness: 200}); chai.assert.strictEqual(publishEntityState.getCall(0).args[2], true); });