@homebridge-plugins/homebridge-tuya 2.3.0-beta.2 → 2.3.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -277,6 +277,55 @@
277
277
  "condition": {
278
278
  "functionBody": "return (model.options && model.options.deviceOverrides && model.options.deviceOverrides[arrayIndices[0]].schema);"
279
279
  }
280
+ },
281
+ "extraRawSwitch": {
282
+ "title": "RawDataSwitches",
283
+ "type": "array",
284
+ "description": "Add switches for updating the byte‑code data.",
285
+ "condition": {
286
+ "functionBody": "return (model.options && model.options.deviceOverrides && model.options.deviceOverrides[arrayIndices[0]].schema && model.options.deviceOverrides[arrayIndices[0]].schema[arrayIndices[1]].type === 'Raw' && !model.options.deviceOverrides[arrayIndices[0]].schema[arrayIndices[1]].hidden && model.options.deviceOverrides[arrayIndices[0]].schema[arrayIndices[1]].extra);"
287
+ },
288
+ "items": {
289
+ "type": "object",
290
+ "required": ["configuredName", "notation", "value", "byteIndex"],
291
+ "properties": {
292
+ "configuredName": {
293
+ "title": "Name",
294
+ "type": "string"
295
+ },
296
+ "notation": {
297
+ "title": "Notation",
298
+ "type": "string",
299
+ "default": "base64",
300
+ "oneOf": [
301
+ {
302
+ "title": "Base64",
303
+ "enum": [
304
+ "base64"
305
+ ]
306
+ },
307
+ {
308
+ "title": "Hexadecimal",
309
+ "enum": [
310
+ "hex"
311
+ ]
312
+ }
313
+ ]
314
+ },
315
+ "value": {
316
+ "title": "Value",
317
+ "type": "string",
318
+ "placeholder": "0x01",
319
+ "pattern": "^0x([0-9a-fA-F]{2})+$"
320
+ },
321
+ "byteIndex": {
322
+ "title": "ByteIndex",
323
+ "type": "integer",
324
+ "default": 0,
325
+ "minimum": 0
326
+ }
327
+ }
328
+ }
280
329
  }
281
330
  }
282
331
  },
@@ -504,6 +553,26 @@
504
553
  ]
505
554
  }
506
555
  ]
556
+ },
557
+ {
558
+ "key": "options.deviceOverrides[].schema[].extraRawSwitch",
559
+ "type": "array",
560
+ "items": [
561
+ {
562
+ "type": "fieldset",
563
+ "items": [
564
+ { "key": "options.deviceOverrides[].schema[].extraRawSwitch[].configuredName" },
565
+ {
566
+ "type": "flex",
567
+ "flex-flow": "row wrap",
568
+ "items": [
569
+ { "key": "options.deviceOverrides[].schema[].extraRawSwitch[].byteIndex", "flex-basis": "min-content" },
570
+ { "key": "options.deviceOverrides[].schema[].extraRawSwitch[].value" }
571
+ ]
572
+ }
573
+ ]
574
+ }
575
+ ]
507
576
  }
508
577
  ]
509
578
  }
@@ -57,7 +57,7 @@ class SwitchAccessory extends BaseAccessory_1.default {
57
57
  if (!schema || schema.type !== TuyaDevice_1.TuyaDeviceSchemaType.String) {
58
58
  return;
59
59
  }
60
- const service = this.accessory.getService(schema.code)
60
+ const service = this.accessory.getServiceById(schema.code, schema.code)
61
61
  || this.accessory.addService(this.Service.Switch, schema.code, schema.code);
62
62
  (0, Name_1.configureName)(this, service, schema.code);
63
63
  service.getCharacteristic(this.Characteristic.On)
@@ -1 +1 @@
1
- {"version":3,"file":"SwitchAccessory.js","sourceRoot":"","sources":["../../src/accessory/SwitchAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SwitchAccessory.js","sourceRoot":"","sources":["../../src/accessory/SwitchAccessory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.configureEnumOn = configureEnumOn;
4
+ const TuyaDevice_1 = require("../../device/TuyaDevice");
4
5
  const Name_1 = require("./Name");
5
6
  function configureEnumOn(accessory, schema) {
6
- if (!schema || schema.type !== 'Enum') {
7
+ if (!schema || schema.type !== TuyaDevice_1.TuyaDeviceSchemaType.Enum) {
7
8
  return {};
8
9
  }
9
10
  const enumCodes = schema.property.range;
@@ -1 +1 @@
1
- {"version":3,"file":"EnumOn.js","sourceRoot":"","sources":["../../../src/accessory/characteristic/EnumOn.ts"],"names":[],"mappings":";;AAKA,0CAyCC;AA3CD,iCAAuC;AAEvC,SAAgB,eAAe,CAAC,SAAwB,EAAE,MAAwB;IAChF,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACtC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,SAAS,GAAI,MAAM,CAAC,QAAyC,CAAC,KAAK,CAAC;IAC1E,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAE5C,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;eAC/E,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEnF,IAAA,oBAAa,EAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;QAC7D,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;aACnD,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC;wBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,KAAK,EAAE,QAAQ;qBAChB,CAAC,EAAE,IAAI,CAAC,CAAC;gBACV,mDAAmD;gBACnD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;oBAClD,IAAI,GAAG,KAAK,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;wBACjD,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;wBAC9E,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC;4BACzB,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;wBACpC,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,SAAS,CAAC,iBAAiB,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC;YACjD,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC;QACnC,CAAC,CAAC,CAAC;QAEL,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;IAC7B,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAwB,EAAE,QAAgB;IACpE,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"EnumOn.js","sourceRoot":"","sources":["../../../src/accessory/characteristic/EnumOn.ts"],"names":[],"mappings":";;AAKA,0CAyCC;AA7CD,wDAA+G;AAE/G,iCAAuC;AAEvC,SAAgB,eAAe,CAAC,SAAwB,EAAE,MAAwB;IAChF,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,iCAAoB,CAAC,IAAI,EAAE,CAAC;QACzD,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,SAAS,GAAI,MAAM,CAAC,QAAyC,CAAC,KAAK,CAAC;IAC1E,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAE5C,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;eAC/E,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEnF,IAAA,oBAAa,EAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;QAC7D,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;aACnD,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC;wBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,KAAK,EAAE,QAAQ;qBAChB,CAAC,EAAE,IAAI,CAAC,CAAC;gBACV,mDAAmD;gBACnD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;oBAClD,IAAI,GAAG,KAAK,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;wBACjD,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;wBAC9E,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC;4BACzB,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;wBACpC,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,SAAS,CAAC,iBAAiB,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC;YACjD,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC;QACnC,CAAC,CAAC,CAAC;QAEL,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;IAC7B,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAwB,EAAE,QAAgB;IACpE,OAAO,GAAG,MAAM,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;AACtC,CAAC"}
@@ -7,6 +7,7 @@ const Name_1 = require("./Name");
7
7
  const On_1 = require("./On");
8
8
  const EnumOn_1 = require("./EnumOn");
9
9
  const util_1 = require("../../util/util");
10
+ const RawOn_1 = require("./RawOn");
10
11
  function configureExtraCharactersitcs(accessory, schema) {
11
12
  const schemaConfig = accessory.platform.getDeviceConfig(accessory.device)?.schema?.find(item => {
12
13
  return item.code === schema.code;
@@ -23,6 +24,9 @@ function configureExtraCharactersitcs(accessory, schema) {
23
24
  else if (isExtraSlider(accessory, schema)) {
24
25
  createExtraSlider(accessory, schema);
25
26
  }
27
+ else if (isExtraRawSwitch(accessory, schema)) {
28
+ createExtraRawSwitch(accessory, schema);
29
+ }
26
30
  }
27
31
  function isExtraSchema(accessory, schema) {
28
32
  const schemaConfig = accessory.platform.getDeviceConfig(accessory.device)?.schema?.find(item => {
@@ -57,11 +61,20 @@ function isExtraCharacteristic(device, schemaConfig) {
57
61
  console.log('isExtraSchema oldSchema:' + JSON.stringify(oldSchema) + ', newSchema:' + JSON.stringify(newSchema));
58
62
  return !oldSchema && newSchema;
59
63
  }
64
+ function isExtraRawSwitch(accessory, schema) {
65
+ if (schema.mode !== 'rw') {
66
+ return false;
67
+ }
68
+ if (schema.type !== TuyaDevice_1.TuyaDeviceSchemaType.Raw) {
69
+ return false;
70
+ }
71
+ return isExtraSchema(accessory, schema);
72
+ }
60
73
  function isExtraEnumSwitch(accessory, schema) {
61
74
  if (schema.mode !== 'rw') {
62
75
  return false;
63
76
  }
64
- if (schema.type !== 'Enum') {
77
+ if (schema.type !== TuyaDevice_1.TuyaDeviceSchemaType.Enum) {
65
78
  return false;
66
79
  }
67
80
  return isExtraSchema(accessory, schema);
@@ -70,7 +83,7 @@ function isExtraSlider(accessory, schema) {
70
83
  if (schema.mode !== 'rw') {
71
84
  return false;
72
85
  }
73
- if (schema.type !== 'Integer') {
86
+ if (schema.type !== TuyaDevice_1.TuyaDeviceSchemaType.Integer) {
74
87
  return false;
75
88
  }
76
89
  return isExtraSchema(accessory, schema);
@@ -79,19 +92,38 @@ function isExtraSwitch(accessory, schema) {
79
92
  if (schema.mode !== 'rw') {
80
93
  return false;
81
94
  }
82
- if (schema.type !== 'Boolean') {
95
+ if (schema.type !== TuyaDevice_1.TuyaDeviceSchemaType.Boolean) {
83
96
  return false;
84
97
  }
85
98
  return isExtraSchema(accessory, schema);
86
99
  }
87
100
  function createExtraSwitch(accessory, schema) {
88
- const service = accessory.accessory.getService(schema.code)
101
+ const service = accessory.accessory.getServiceById(schema.code, schema.code)
89
102
  || accessory.accessory.addService(accessory.Service.Switch, schema.code, schema.code);
90
103
  (0, Name_1.configureName)(accessory, service, service.displayName);
91
104
  (0, On_1.configureOn)(accessory, service, schema);
92
105
  accessory.log.info('add extra switch:' + schema.code
93
106
  + ', index:' + accessory.accessory.services.indexOf(service));
94
107
  }
108
+ function createExtraRawSwitch(accessory, schema) {
109
+ const schemaConfig = accessory.platform.getDeviceConfig(accessory.device)?.schema?.find(item => {
110
+ return item.code === schema.code;
111
+ });
112
+ const switches = (0, RawOn_1.configureRawOn)(accessory, schema, schemaConfig?.extraRawSwitch ?? []);
113
+ Object.entries(switches).forEach(([key, value]) => {
114
+ const schemaConfig = accessory.platform.getDeviceConfig(accessory.device)?.schema?.find(item => {
115
+ return item.code === key;
116
+ });
117
+ if (schemaConfig && schemaConfig.hidden) {
118
+ accessory.accessory.removeService(value);
119
+ }
120
+ else {
121
+ accessory.log.info('add extra raw switch:' + schema.code
122
+ + ', enum DP:' + key
123
+ + ', index:' + accessory.accessory.services.indexOf(value));
124
+ }
125
+ });
126
+ }
95
127
  function createExtraEnumSwitch(accessory, schema) {
96
128
  const switches = (0, EnumOn_1.configureEnumOn)(accessory, accessory.getSchema(schema.code) ?? schema);
97
129
  Object.entries(switches).forEach(([key, value]) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ExtraCharacteristicAdapter.js","sourceRoot":"","sources":["../../../src/accessory/characteristic/ExtraCharacteristicAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtraCharacteristicAdapter.js","sourceRoot":"","sources":["../../../src/accessory/characteristic/ExtraCharacteristicAdapter.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ function configureOn(accessory, service, schema) {
6
6
  return;
7
7
  }
8
8
  if (!service) {
9
- service = accessory.accessory.getService(schema.code)
9
+ service = accessory.accessory.getServiceById(schema.code, schema.code)
10
10
  || accessory.accessory.addService(accessory.Service.Switch, schema.code, schema.code);
11
11
  }
12
12
  service.getCharacteristic(accessory.Characteristic.On)
@@ -1 +1 @@
1
- {"version":3,"file":"On.js","sourceRoot":"","sources":["../../../src/accessory/characteristic/On.ts"],"names":[],"mappings":";;AAIA,kCAsBC;AAtBD,SAAgB,WAAW,CAAC,SAAwB,EAAE,OAAiB,EAAE,MAAyB;IAChG,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;eAChD,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;SACnD,KAAK,CAAC,GAAG,EAAE;QACV,SAAS,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC;QACjD,OAAO,MAAM,CAAC,KAAgB,CAAC;IACjC,CAAC,CAAC;SACD,KAAK,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;QACnB,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC;gBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,KAAgB;aACxB,CAAC,EAAE,IAAI,CAAC,CAAC;IACZ,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"On.js","sourceRoot":"","sources":["../../../src/accessory/characteristic/On.ts"],"names":[],"mappings":";;AAIA,kCAsBC;AAtBD,SAAgB,WAAW,CAAC,SAAwB,EAAE,OAAiB,EAAE,MAAyB;IAChG,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;eACjE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;SACnD,KAAK,CAAC,GAAG,EAAE;QACV,SAAS,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC;QACjD,OAAO,MAAM,CAAC,KAAgB,CAAC;IACjC,CAAC,CAAC;SACD,KAAK,CAAC,KAAK,EAAC,KAAK,EAAC,EAAE;QACnB,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC;gBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,KAAgB;aACxB,CAAC,EAAE,IAAI,CAAC,CAAC;IACZ,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.configureRawOn = configureRawOn;
4
+ const TuyaDevice_1 = require("../../device/TuyaDevice");
5
+ const Name_1 = require("./Name");
6
+ const util_1 = require("../../util/util");
7
+ function configureRawOn(accessory, schema, rawSwitchConfigs) {
8
+ if (!schema || schema.type !== TuyaDevice_1.TuyaDeviceSchemaType.Raw) {
9
+ return {};
10
+ }
11
+ const switches = {};
12
+ for (const index in rawSwitchConfigs) {
13
+ const rawSwitchConfig = rawSwitchConfigs[index];
14
+ const dp = createRawOnDPCode(schema, index);
15
+ const service = accessory.accessory.getServiceById(accessory.Service.Switch, dp)
16
+ || accessory.accessory.addService(accessory.Service.Switch, rawSwitchConfig.configuredName, dp);
17
+ (0, Name_1.configureName)(accessory, service, rawSwitchConfig.configuredName);
18
+ service.getCharacteristic(accessory.Characteristic.On)
19
+ .onSet(async (value) => {
20
+ if (value === true) {
21
+ const status = accessory.getStatus(schema.code);
22
+ let after;
23
+ if (status.value) {
24
+ accessory.log.debug(`before:${Buffer.from(status.value, 'base64').toString('hex')}`);
25
+ after = createRawData(status.value, rawSwitchConfig);
26
+ accessory.log.debug(`after :${Buffer.from(after, 'base64').toString('hex')}`);
27
+ await accessory.sendCommands([{
28
+ code: schema.code,
29
+ value: after,
30
+ }], true);
31
+ }
32
+ else {
33
+ accessory.log.warn(`${rawSwitchConfig.configuredName} status is undefined.`);
34
+ // create dummy bytes
35
+ const dummy = Buffer.alloc(rawSwitchConfig.byteIndex + 1).toString('base64');
36
+ accessory.log.debug(`before:${Buffer.from(dummy, 'base64').toString('hex')}`);
37
+ after = createRawData(dummy, rawSwitchConfig);
38
+ accessory.log.debug(`after :${Buffer.from(after, 'base64').toString('hex')}`);
39
+ await accessory.sendCommands([{
40
+ code: schema.code,
41
+ value: after,
42
+ }], true);
43
+ }
44
+ // Turn off the conflicting switch.
45
+ Object.values(switches).forEach((service, i) => {
46
+ const conf = rawSwitchConfigs[i];
47
+ const tempAfter = createRawData(after, conf);
48
+ if (tempAfter !== after) {
49
+ const characteristic = service.getCharacteristic(accessory.Characteristic.On);
50
+ if (characteristic.value) {
51
+ characteristic.updateValue(false);
52
+ }
53
+ }
54
+ });
55
+ }
56
+ else {
57
+ // RawOn switch can only be turned on.
58
+ service.updateCharacteristic(accessory.Characteristic.On, true);
59
+ }
60
+ })
61
+ .onGet(() => {
62
+ accessory.checkOnlineStatus();
63
+ const status = accessory.getStatus(schema.code);
64
+ if (status.value) {
65
+ const after = createRawData(status.value, rawSwitchConfig);
66
+ return status.value === after;
67
+ }
68
+ else {
69
+ return false;
70
+ }
71
+ });
72
+ switches[dp] = service;
73
+ }
74
+ return switches;
75
+ }
76
+ function createRawOnDPCode(schema, index) {
77
+ return `${schema.code}-${index}`;
78
+ }
79
+ function createRawData(src, rawSwitchConfig) {
80
+ let dst;
81
+ switch (rawSwitchConfig.notation) {
82
+ case 'base64':
83
+ dst = (0, util_1.updateBase64)(src, rawSwitchConfig.byteIndex, Buffer.from(rawSwitchConfig.value.replace(/^0x/, ''), 'hex'));
84
+ break;
85
+ case 'hex':
86
+ dst = (0, util_1.updateHex)(src, rawSwitchConfig.byteIndex, Buffer.from(rawSwitchConfig.value.replace(/^0x/, ''), 'hex'));
87
+ break;
88
+ default:
89
+ throw new Error(`unsupported notation:${rawSwitchConfig.notation}`);
90
+ }
91
+ return dst;
92
+ }
93
+ //# sourceMappingURL=RawOn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RawOn.js","sourceRoot":"","sources":["../../../src/accessory/characteristic/RawOn.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;AAuEa,QAAA,mBAAmB,GAAG;IACjC,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC3D,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,eAAe,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QACpC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC1B,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KACjC;CACF,CAAC;AAEW,QAAA,iBAAiB,GAAG;IAC/B,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE;QAC3C,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QAChE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,SAAS,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC/C,aAAa,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QAClC,eAAe,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QACpC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC1B,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KACjC;CACF,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;AAwEa,QAAA,mBAAmB,GAAG;IACjC,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC3D,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,eAAe,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QACpC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC1B,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KACjC;CACF,CAAC;AAEW,QAAA,iBAAiB,GAAG;IAC/B,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE;QAC3C,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QAChE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5C,SAAS,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC/C,aAAa,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QAClC,eAAe,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QACpC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC1B,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KACjC;CACF,CAAC"}
package/dist/util/util.js CHANGED
@@ -4,6 +4,8 @@ exports.remap = remap;
4
4
  exports.limit = limit;
5
5
  exports.toHapProperty = toHapProperty;
6
6
  exports.sanitizeName = sanitizeName;
7
+ exports.updateBase64 = updateBase64;
8
+ exports.updateHex = updateHex;
7
9
  function remap(value, srcStart, srcEnd, dstStart, dstEnd) {
8
10
  const percent = (value - srcStart) / (srcEnd - srcStart);
9
11
  const result = percent * (dstEnd - dstStart) + dstStart;
@@ -60,4 +62,31 @@ function sanitizeName(name) {
60
62
  }
61
63
  return s;
62
64
  }
65
+ function updateBase64(base64, byteIndex, value) {
66
+ const buf = Buffer.from(base64, 'base64');
67
+ return updateBuffer(buf, byteIndex, value).toString('base64');
68
+ }
69
+ function updateHex(hex, byteIndex, value) {
70
+ const buf = Buffer.from(hex.replace(/^0x/, ''), 'hex');
71
+ return updateBuffer(buf, byteIndex, value).toString('hex');
72
+ }
73
+ function updateBuffer(buf, byteIndex, value) {
74
+ let valueBuf;
75
+ if (typeof value === 'number') {
76
+ const byteLength = Math.ceil(Math.log2(value + 1) / 8) || 1;
77
+ valueBuf = Buffer.alloc(byteLength);
78
+ valueBuf.writeUIntBE(value, 0, byteLength);
79
+ }
80
+ else if (Buffer.isBuffer(value)) {
81
+ valueBuf = value;
82
+ }
83
+ else if (Array.isArray(value)) {
84
+ valueBuf = Buffer.from(value);
85
+ }
86
+ else {
87
+ throw new Error('value is not number / Buffer / byte array');
88
+ }
89
+ valueBuf.copy(buf, byteIndex);
90
+ return buf;
91
+ }
63
92
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util/util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@homebridge-plugins/homebridge-tuya",
3
3
  "displayName": "Homebridge Tuya",
4
- "version": "2.3.0-beta.2",
4
+ "version": "2.3.0-beta.3",
5
5
  "description": "Forked from 0x5e/homebridge-tuya-platform, with a focus on fixing bugs and adding new device support.",
6
6
  "license": "MIT",
7
7
  "repository": {