mirror of
https://github.com/Koenkk/zigbee2mqtt.git
synced 2026-08-28 23:00:55 +00:00
Update converters.
This commit is contained in:
@@ -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 {
|
||||
|
||||
@@ -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) => {
|
||||
|
||||
Generated
+3
-3
@@ -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
@@ -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": "*",
|
||||
|
||||
@@ -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});
|
||||
});
|
||||
|
||||
|
||||
@@ -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)");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user