Update converters.

This commit is contained in:
Koen Kanters
2020-01-29 21:38:37 +01:00
parent 82fb79820a
commit 5488504809
6 changed files with 19 additions and 7 deletions
+2 -2
View File
@@ -168,7 +168,7 @@ class EntityPublish extends BaseExtension {
};
try {
if (topic.type === 'set' && converter && converter.convertSet) {
if (topic.type === 'set' && converter.convertSet) {
logger.debug(`Publishing '${topic.type}' '${key}' to '${entity.name}'`);
const result = await converter.convertSet(actualTarget, key, value, meta);
if (result && result.state) {
@@ -195,7 +195,7 @@ class EntityPublish extends BaseExtension {
) {
setTimeout(() => converter.convertGet(actualTarget, key, meta), result.readAfterWriteTime);
}
} else if (topic.type === 'get' && converter && converter.convertGet) {
} else if (topic.type === 'get' && converter.convertGet) {
logger.debug(`Publishing get '${topic.type}' '${key}' to '${entity.name}'`);
await converter.convertGet(actualTarget, key, meta);
} else {
+1
View File
@@ -1188,6 +1188,7 @@ const mapping = {
'BW-IS3': [cfg.binary_sensor_occupancy],
'SLR1b': [cfg.thermostat()],
'WPT1': [],
'4058075047853': [cfg.light_brightness_colortemp_colorxy],
};
Object.keys(mapping).forEach((key) => {
+3 -3
View File
@@ -13445,9 +13445,9 @@
}
},
"zigbee-herdsman-converters": {
"version": "12.0.10",
"resolved": "https://registry.npmjs.org/zigbee-herdsman-converters/-/zigbee-herdsman-converters-12.0.10.tgz",
"integrity": "sha512-I5qPtZ7VGULq4/3Vm2nY1lYQZW/ZREkwE+piWdN4zPLi21tLNpvjw23orlW1r2pqV4nr1OVDOyAvF4wkwGzKqg==",
"version": "12.0.11",
"resolved": "https://registry.npmjs.org/zigbee-herdsman-converters/-/zigbee-herdsman-converters-12.0.11.tgz",
"integrity": "sha512-kHByPFGHRfer3YZxdcMmOXpqAszP0VkaX1TEINwRLVsyaYL1IChpKBkUINfLNTOhIpsrR5kT8s6rc0oJBFF0Tw==",
"dependencies": {
"@babel/code-frame": {
"version": "7.5.5",
+1 -1
View File
@@ -46,7 +46,7 @@
"semver": "*",
"winston": "*",
"zigbee-herdsman": "0.12.42",
"zigbee-herdsman-converters": "12.0.10"
"zigbee-herdsman-converters": "12.0.11"
},
"devDependencies": {
"eslint": "*",
+1 -1
View File
@@ -242,7 +242,7 @@ describe('Device receive', () => {
await flushPromises();
expect(MQTT.publish).toHaveBeenCalledTimes(1);
expect(MQTT.publish.mock.calls[0][0]).toStrictEqual('zigbee2mqtt/occupancy_sensor');
expect(JSON.parse(MQTT.publish.mock.calls[0][1])).toStrictEqual({'battery': 100, 'illuminance': 381, 'voltage': 3045, linkquality: 10});
expect(JSON.parse(MQTT.publish.mock.calls[0][1])).toStrictEqual({'battery': 100, 'illuminance': 381, "illuminance_lux": 0, 'voltage': 3045, linkquality: 10});
expect(MQTT.publish.mock.calls[0][2]).toStrictEqual({"qos": 0, "retain": false});
});
+11
View File
@@ -948,4 +948,15 @@ describe('Entity publish', () => {
expect(MQTT.publish.mock.calls[0]).toEqual([ 'zigbee2mqtt/GL-S-007ZS', '{"state":"ON","brightness":20}', { qos: 0, retain: false }, expect.any(Function)]);
jest.useRealTimers();
});
it('Should log as error when setting property with no defined converter', async () => {
const device = zigbeeHerdsman.devices.bulb_color;
const endpoint = device.getEndpoint(1);
const payload = {'brightness_move': 20};
logger.error.mockClear();
await MQTT.events.message('zigbee2mqtt/bulb_color/get', JSON.stringify(payload));
await flushPromises();
expect(endpoint.command).toHaveBeenCalledTimes(0);
expect(logger.error).toHaveBeenCalledWith("No converter available for 'get' 'brightness_move' (20)");
});
});