diff --git a/lib/extension/bridgeConfig.js b/lib/extension/bridgeConfig.js index ffd8a221..0cbf71a2 100644 --- a/lib/extension/bridgeConfig.js +++ b/lib/extension/bridgeConfig.js @@ -150,6 +150,8 @@ class BridgeConfig extends BaseExtension { const mappedDevice = zigbeeHerdsmanConverters.findByZigbeeModel(device.modelID); const friendlyDevice = settings.getDevice(device.ieeeAddr); payload.model = mappedDevice ? mappedDevice.model : device.modelID; + payload.vendor = mappedDevice ? mappedDevice.vendor : '-'; + payload.description = mappedDevice ? mappedDevice.description : '-'; payload.friendly_name = friendlyDevice ? friendlyDevice.friendly_name : device.ieeeAddr; payload.manufacturerID = device.manufacturerID; payload.manufacturerName = device.manufacturerName; diff --git a/test/bridgeConfig.test.js b/test/bridgeConfig.test.js index bee5bd5f..b25200c0 100644 --- a/test/bridgeConfig.test.js +++ b/test/bridgeConfig.test.js @@ -162,7 +162,7 @@ describe('Bridge config', () => { const payload = JSON.parse(MQTT.publish.mock.calls[0][1]); expect(payload.length).toStrictEqual(Object.values(zigbeeHerdsman.devices).length); expect(payload[0]).toStrictEqual({"ieeeAddr": "0x00124b00120144ae", "type": "Coordinator", "dateCode": "20190425", "friendly_name": "Coordinator", networkAddress: 0, softwareBuildID: "z-Stack", lastSeen: 100}); - expect(payload[1]).toStrictEqual({"dateCode": null, "friendly_name": "bulb", "ieeeAddr": "0x000b57fffec6a5b2", "lastSeen": 1000, "manufacturerID": 4476, "model": "LED1545G12", "modelID": "TRADFRI bulb E27 WS opal 980lm", "networkAddress": 40369, "powerSource": "Mains (single phase)", "type": "Router"}); + expect(payload[1]).toStrictEqual({"dateCode": null, "friendly_name": "bulb", "ieeeAddr": "0x000b57fffec6a5b2", "lastSeen": 1000, "manufacturerID": 4476, "model": "LED1545G12", "modelID": "TRADFRI bulb E27 WS opal 980lm", "networkAddress": 40369, "powerSource": "Mains (single phase)", "type": "Router", "description": "TRADFRI LED bulb E26/E27 980 lumen, dimmable, white spectrum, opal white", "vendor": "IKEA"}); Date.now = now; });