iobroker.zigbee 1.7.5 → 1.8.0
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.
- package/LICENSE +1 -1
- package/README.md +22 -29
- package/admin/admin.js +494 -469
- package/admin/i18n/de/translations.json +108 -0
- package/admin/i18n/en/translations.json +108 -0
- package/admin/i18n/es/translations.json +102 -0
- package/admin/i18n/fr/translations.json +108 -0
- package/admin/i18n/it/translations.json +102 -0
- package/admin/i18n/nl/translations.json +108 -0
- package/admin/i18n/pl/translations.json +108 -0
- package/admin/i18n/pt/translations.json +102 -0
- package/admin/i18n/ru/translations.json +108 -0
- package/admin/i18n/uk/translations.json +108 -0
- package/admin/i18n/zh-cn/translations.json +102 -0
- package/admin/index_m.html +1 -1
- package/admin/tab_m.html +44 -3
- package/admin/words.js +107 -108
- package/io-package.json +326 -357
- package/lib/backup.js +2 -2
- package/lib/binding.js +23 -24
- package/lib/colors.js +16 -14
- package/lib/commands.js +89 -82
- package/lib/developer.js +6 -7
- package/lib/devices.js +145 -154
- package/lib/exclude.js +30 -36
- package/lib/exposes.js +106 -111
- package/lib/groups.js +53 -54
- package/lib/json.js +3 -4
- package/lib/networkmap.js +2 -2
- package/lib/ota.js +23 -15
- package/lib/rgb.js +47 -44
- package/lib/seriallist.js +21 -10
- package/lib/states.js +488 -498
- package/lib/statescontroller.js +170 -164
- package/lib/utils.js +22 -21
- package/lib/zbBaseExtension.js +4 -4
- package/lib/zbDelayedAction.js +5 -13
- package/lib/zbDeviceAvailability.js +47 -44
- package/lib/zbDeviceConfigure.js +18 -23
- package/lib/zbDeviceEvent.js +3 -4
- package/lib/zigbeecontroller.js +97 -100
- package/main.js +149 -133
- package/package.json +33 -19
- package/.eslintignore +0 -2
- package/.eslintrc.json +0 -37
- package/.github/FUNDING.yml +0 -3
- package/.github/stale.yml +0 -13
- package/.github/workflows/test-and-release.yml +0 -151
- package/.travis/wiki.sh +0 -28
- package/admin/adapter-settings.js +0 -244
package/lib/states.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
/*eslint no-unused-vars: ['off']*/
|
|
4
4
|
|
|
5
|
-
const rgb = require(
|
|
6
|
-
const utils = require(
|
|
7
|
-
const colors = require(
|
|
5
|
+
const rgb = require('./rgb.js');
|
|
6
|
+
const utils = require('./utils.js');
|
|
7
|
+
const colors = require('./colors.js');
|
|
8
8
|
|
|
9
9
|
/* states for device:
|
|
10
10
|
id - sysname of state, id
|
|
@@ -43,20 +43,20 @@ const nameLookup = {
|
|
|
43
43
|
|
|
44
44
|
const unitLookup = {
|
|
45
45
|
'temperature': 'C',
|
|
46
|
-
'humidity':'%',
|
|
47
|
-
'altitude':'m',
|
|
48
|
-
'pressure':'Pa',
|
|
49
|
-
'quality':'ppm',
|
|
50
|
-
'particle_size':'psize',
|
|
51
|
-
'voltage':'V',
|
|
52
|
-
'current':'A',
|
|
53
|
-
'energy':'Wh',
|
|
54
|
-
'power':'W',
|
|
55
|
-
'frequency':'Hz',
|
|
56
|
-
'power_factor':'pf',
|
|
57
|
-
'illuminance_lux':'lx',
|
|
58
|
-
|
|
46
|
+
'humidity': '%',
|
|
47
|
+
'altitude': 'm',
|
|
48
|
+
'pressure': 'Pa',
|
|
49
|
+
'quality': 'ppm',
|
|
50
|
+
'particle_size': 'psize',
|
|
51
|
+
'voltage': 'V',
|
|
52
|
+
'current': 'A',
|
|
53
|
+
'energy': 'Wh',
|
|
54
|
+
'power': 'W',
|
|
55
|
+
'frequency': 'Hz',
|
|
56
|
+
'power_factor': 'pf',
|
|
57
|
+
'illuminance_lux': 'lx',
|
|
59
58
|
};
|
|
59
|
+
|
|
60
60
|
const timers = {};
|
|
61
61
|
|
|
62
62
|
const states = {
|
|
@@ -140,7 +140,7 @@ const states = {
|
|
|
140
140
|
read: true,
|
|
141
141
|
type: 'boolean',
|
|
142
142
|
isEvent: true,
|
|
143
|
-
getter: payload =>
|
|
143
|
+
getter: payload => payload.click === 'single' ? true : undefined,
|
|
144
144
|
},
|
|
145
145
|
double_click: {
|
|
146
146
|
id: 'double_click',
|
|
@@ -152,7 +152,7 @@ const states = {
|
|
|
152
152
|
read: true,
|
|
153
153
|
type: 'boolean',
|
|
154
154
|
isEvent: true,
|
|
155
|
-
getter: payload =>
|
|
155
|
+
getter: payload => payload.click === 'double' ? true : undefined,
|
|
156
156
|
},
|
|
157
157
|
action: {
|
|
158
158
|
id: 'action',
|
|
@@ -173,7 +173,7 @@ const states = {
|
|
|
173
173
|
read: true,
|
|
174
174
|
type: 'boolean',
|
|
175
175
|
isEvent: true,
|
|
176
|
-
getter: payload =>
|
|
176
|
+
getter: payload => payload.action === 'single' ? true : undefined,
|
|
177
177
|
},
|
|
178
178
|
action_click: {
|
|
179
179
|
id: 'click',
|
|
@@ -185,7 +185,7 @@ const states = {
|
|
|
185
185
|
read: true,
|
|
186
186
|
type: 'boolean',
|
|
187
187
|
isEvent: true,
|
|
188
|
-
getter: payload =>
|
|
188
|
+
getter: payload => payload.action === 'click' ? true : undefined,
|
|
189
189
|
},
|
|
190
190
|
action_double_click: {
|
|
191
191
|
id: 'double_click',
|
|
@@ -197,7 +197,7 @@ const states = {
|
|
|
197
197
|
read: true,
|
|
198
198
|
type: 'boolean',
|
|
199
199
|
isEvent: true,
|
|
200
|
-
getter: payload =>
|
|
200
|
+
getter: payload => payload.action === 'double' ? true : undefined,
|
|
201
201
|
},
|
|
202
202
|
action_group: {
|
|
203
203
|
id: 'action_group',
|
|
@@ -218,7 +218,7 @@ const states = {
|
|
|
218
218
|
read: true,
|
|
219
219
|
type: 'boolean',
|
|
220
220
|
isEvent: true,
|
|
221
|
-
getter: payload =>
|
|
221
|
+
getter: payload => payload.click === 'triple' ? true : undefined,
|
|
222
222
|
},
|
|
223
223
|
quad_click: {
|
|
224
224
|
id: 'quad_click',
|
|
@@ -230,7 +230,7 @@ const states = {
|
|
|
230
230
|
read: true,
|
|
231
231
|
type: 'boolean',
|
|
232
232
|
isEvent: true,
|
|
233
|
-
getter: payload =>
|
|
233
|
+
getter: payload => payload.click === 'quadruple' ? true : undefined,
|
|
234
234
|
},
|
|
235
235
|
many_click: {
|
|
236
236
|
id: 'many_click',
|
|
@@ -242,7 +242,7 @@ const states = {
|
|
|
242
242
|
read: true,
|
|
243
243
|
type: 'boolean',
|
|
244
244
|
isEvent: true,
|
|
245
|
-
getter: payload =>
|
|
245
|
+
getter: payload => payload.click === 'many' ? true : undefined,
|
|
246
246
|
},
|
|
247
247
|
long_click: {
|
|
248
248
|
id: 'long_click',
|
|
@@ -254,7 +254,7 @@ const states = {
|
|
|
254
254
|
read: true,
|
|
255
255
|
type: 'boolean',
|
|
256
256
|
isEvent: true,
|
|
257
|
-
getter: payload =>
|
|
257
|
+
getter: payload => payload.click === 'long' ? true : undefined,
|
|
258
258
|
},
|
|
259
259
|
action_long_click: {
|
|
260
260
|
id: 'long_click',
|
|
@@ -266,7 +266,7 @@ const states = {
|
|
|
266
266
|
read: true,
|
|
267
267
|
type: 'boolean',
|
|
268
268
|
isEvent: true,
|
|
269
|
-
getter: payload =>
|
|
269
|
+
getter: payload => payload.action === 'long' ? true : undefined,
|
|
270
270
|
},
|
|
271
271
|
long_press: {
|
|
272
272
|
id: 'long_press',
|
|
@@ -277,7 +277,7 @@ const states = {
|
|
|
277
277
|
write: false,
|
|
278
278
|
read: true,
|
|
279
279
|
type: 'boolean',
|
|
280
|
-
getter: payload =>
|
|
280
|
+
getter: payload => payload.click === 'long' ? true : payload.click === 'long_release' ? false : undefined,
|
|
281
281
|
},
|
|
282
282
|
voltage: {
|
|
283
283
|
id: 'voltage',
|
|
@@ -324,7 +324,7 @@ const states = {
|
|
|
324
324
|
read: true,
|
|
325
325
|
type: 'boolean',
|
|
326
326
|
isEvent: true,
|
|
327
|
-
getter: payload =>
|
|
327
|
+
getter: payload => payload.click === 'left' ? true : undefined,
|
|
328
328
|
},
|
|
329
329
|
right_click: {
|
|
330
330
|
id: 'right_click',
|
|
@@ -336,7 +336,7 @@ const states = {
|
|
|
336
336
|
read: true,
|
|
337
337
|
type: 'boolean',
|
|
338
338
|
isEvent: true,
|
|
339
|
-
getter: payload =>
|
|
339
|
+
getter: payload => payload.click === 'right' ? true : undefined,
|
|
340
340
|
},
|
|
341
341
|
both_click: {
|
|
342
342
|
id: 'both_click',
|
|
@@ -348,7 +348,7 @@ const states = {
|
|
|
348
348
|
read: true,
|
|
349
349
|
type: 'boolean',
|
|
350
350
|
isEvent: true,
|
|
351
|
-
getter: payload =>
|
|
351
|
+
getter: payload => payload.click === 'both' ? true : undefined,
|
|
352
352
|
},
|
|
353
353
|
left_click_single: {
|
|
354
354
|
id: 'left_click',
|
|
@@ -360,7 +360,7 @@ const states = {
|
|
|
360
360
|
read: true,
|
|
361
361
|
type: 'boolean',
|
|
362
362
|
isEvent: true,
|
|
363
|
-
getter: payload =>
|
|
363
|
+
getter: payload => payload.click === 'left_single' ? true : undefined,
|
|
364
364
|
},
|
|
365
365
|
right_click_single: {
|
|
366
366
|
id: 'right_click',
|
|
@@ -372,7 +372,7 @@ const states = {
|
|
|
372
372
|
read: true,
|
|
373
373
|
type: 'boolean',
|
|
374
374
|
isEvent: true,
|
|
375
|
-
getter: payload =>
|
|
375
|
+
getter: payload => payload.click === 'right_single' ? true : undefined,
|
|
376
376
|
},
|
|
377
377
|
both_click_single: {
|
|
378
378
|
id: 'both_click',
|
|
@@ -384,7 +384,7 @@ const states = {
|
|
|
384
384
|
read: true,
|
|
385
385
|
type: 'boolean',
|
|
386
386
|
isEvent: true,
|
|
387
|
-
getter: payload =>
|
|
387
|
+
getter: payload => payload.click === 'both_single' ? true : undefined,
|
|
388
388
|
},
|
|
389
389
|
left_click_long: {
|
|
390
390
|
id: 'left_click_long',
|
|
@@ -396,7 +396,7 @@ const states = {
|
|
|
396
396
|
read: true,
|
|
397
397
|
type: 'boolean',
|
|
398
398
|
isEvent: true,
|
|
399
|
-
getter: payload =>
|
|
399
|
+
getter: payload => payload.click === 'left_long' ? true : undefined,
|
|
400
400
|
},
|
|
401
401
|
left_click_double: {
|
|
402
402
|
id: 'left_click_double',
|
|
@@ -408,7 +408,7 @@ const states = {
|
|
|
408
408
|
read: true,
|
|
409
409
|
type: 'boolean',
|
|
410
410
|
isEvent: true,
|
|
411
|
-
getter: payload =>
|
|
411
|
+
getter: payload => payload.click === 'left_double' ? true : undefined,
|
|
412
412
|
},
|
|
413
413
|
right_click_long: {
|
|
414
414
|
id: 'right_click_long',
|
|
@@ -420,7 +420,7 @@ const states = {
|
|
|
420
420
|
read: true,
|
|
421
421
|
type: 'boolean',
|
|
422
422
|
isEvent: true,
|
|
423
|
-
getter: payload =>
|
|
423
|
+
getter: payload => payload.click === 'right_long' ? true : undefined,
|
|
424
424
|
},
|
|
425
425
|
right_click_double: {
|
|
426
426
|
id: 'right_click_double',
|
|
@@ -432,7 +432,7 @@ const states = {
|
|
|
432
432
|
read: true,
|
|
433
433
|
type: 'boolean',
|
|
434
434
|
isEvent: true,
|
|
435
|
-
getter: payload =>
|
|
435
|
+
getter: payload => payload.click === 'right_double' ? true : undefined,
|
|
436
436
|
},
|
|
437
437
|
both_click_long: {
|
|
438
438
|
id: 'both_click_long',
|
|
@@ -444,7 +444,7 @@ const states = {
|
|
|
444
444
|
read: true,
|
|
445
445
|
type: 'boolean',
|
|
446
446
|
isEvent: true,
|
|
447
|
-
getter: payload =>
|
|
447
|
+
getter: payload => payload.click === 'both_long' ? true : undefined,
|
|
448
448
|
},
|
|
449
449
|
both_click_double: {
|
|
450
450
|
id: 'both_click_double',
|
|
@@ -456,7 +456,7 @@ const states = {
|
|
|
456
456
|
read: true,
|
|
457
457
|
type: 'boolean',
|
|
458
458
|
isEvent: true,
|
|
459
|
-
getter: payload =>
|
|
459
|
+
getter: payload => payload.click === 'both_double' ? true : undefined,
|
|
460
460
|
},
|
|
461
461
|
state: {
|
|
462
462
|
id: 'state',
|
|
@@ -466,10 +466,10 @@ const states = {
|
|
|
466
466
|
write: true,
|
|
467
467
|
read: true,
|
|
468
468
|
type: 'boolean',
|
|
469
|
-
getter: payload =>
|
|
470
|
-
setter:
|
|
469
|
+
getter: payload => payload.state === 'ON',
|
|
470
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
471
471
|
setterOpt: (value, options) => {
|
|
472
|
-
const stateValue =
|
|
472
|
+
const stateValue = value ? 'ON' : 'OFF';
|
|
473
473
|
return {...options, state: stateValue};
|
|
474
474
|
},
|
|
475
475
|
inOptions: true,
|
|
@@ -482,8 +482,8 @@ const states = {
|
|
|
482
482
|
write: true,
|
|
483
483
|
read: true,
|
|
484
484
|
type: 'boolean',
|
|
485
|
-
getter: payload =>
|
|
486
|
-
setter:
|
|
485
|
+
getter: payload => payload.state === 'ON',
|
|
486
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
487
487
|
epname: 'default',
|
|
488
488
|
},
|
|
489
489
|
left_state: {
|
|
@@ -495,8 +495,8 @@ const states = {
|
|
|
495
495
|
write: true,
|
|
496
496
|
read: true,
|
|
497
497
|
type: 'boolean',
|
|
498
|
-
getter: payload =>
|
|
499
|
-
setter:
|
|
498
|
+
getter: payload => payload.state_left === 'ON',
|
|
499
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
500
500
|
setattr: 'state',
|
|
501
501
|
epname: 'left',
|
|
502
502
|
},
|
|
@@ -509,8 +509,8 @@ const states = {
|
|
|
509
509
|
write: true,
|
|
510
510
|
read: true,
|
|
511
511
|
type: 'boolean',
|
|
512
|
-
getter: payload =>
|
|
513
|
-
setter:
|
|
512
|
+
getter: payload => payload.state_right === 'ON',
|
|
513
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
514
514
|
setattr: 'state',
|
|
515
515
|
epname: 'right',
|
|
516
516
|
},
|
|
@@ -523,8 +523,8 @@ const states = {
|
|
|
523
523
|
write: true,
|
|
524
524
|
read: true,
|
|
525
525
|
type: 'boolean',
|
|
526
|
-
getter: payload =>
|
|
527
|
-
setter:
|
|
526
|
+
getter: payload => payload.state_center === 'ON',
|
|
527
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
528
528
|
setattr: 'state',
|
|
529
529
|
epname: 'center',
|
|
530
530
|
},
|
|
@@ -537,7 +537,7 @@ const states = {
|
|
|
537
537
|
write: false,
|
|
538
538
|
read: true,
|
|
539
539
|
type: 'boolean',
|
|
540
|
-
getter: payload =>
|
|
540
|
+
getter: payload => payload.button_left === 'hold',
|
|
541
541
|
},
|
|
542
542
|
right_button: {
|
|
543
543
|
id: 'right_button',
|
|
@@ -548,7 +548,7 @@ const states = {
|
|
|
548
548
|
write: false,
|
|
549
549
|
read: true,
|
|
550
550
|
type: 'boolean',
|
|
551
|
-
getter: payload =>
|
|
551
|
+
getter: payload => payload.button_right === 'hold',
|
|
552
552
|
},
|
|
553
553
|
temperature: {
|
|
554
554
|
id: 'temperature',
|
|
@@ -784,7 +784,7 @@ const states = {
|
|
|
784
784
|
write: false,
|
|
785
785
|
read: true,
|
|
786
786
|
type: 'string',
|
|
787
|
-
getter: payload =>
|
|
787
|
+
getter: payload => payload.action !== 'armmode_disarm',
|
|
788
788
|
},
|
|
789
789
|
heiman_smart_controller_arm_mode: {
|
|
790
790
|
id: 'arm_mode',
|
|
@@ -795,7 +795,7 @@ const states = {
|
|
|
795
795
|
write: false,
|
|
796
796
|
read: true,
|
|
797
797
|
type: 'string',
|
|
798
|
-
getter: payload =>
|
|
798
|
+
getter: payload => payload.action === 'armmode_arm_all_zones' ? 'full' : 'partial',
|
|
799
799
|
},
|
|
800
800
|
heiman_smart_controller_emergency: {
|
|
801
801
|
id: 'emergency',
|
|
@@ -806,7 +806,7 @@ const states = {
|
|
|
806
806
|
write: false,
|
|
807
807
|
read: true,
|
|
808
808
|
type: 'boolean',
|
|
809
|
-
getter: payload =>
|
|
809
|
+
getter: payload => payload.action === 'emergency',
|
|
810
810
|
},
|
|
811
811
|
heiman_execute_warning: { // for HEIMAN HS2WD-E
|
|
812
812
|
id: 'execute_warning',
|
|
@@ -817,9 +817,7 @@ const states = {
|
|
|
817
817
|
write: true,
|
|
818
818
|
read: true,
|
|
819
819
|
type: 'number',
|
|
820
|
-
setter:
|
|
821
|
-
return {strobe: true, duration: value};
|
|
822
|
-
},
|
|
820
|
+
setter: value => ({strobe: true, duration: value}),
|
|
823
821
|
},
|
|
824
822
|
heiman_execute_warning_strobe_only: { // for HEIMAN HS2WD-E
|
|
825
823
|
id: 'execute_warning_strobe_only',
|
|
@@ -830,9 +828,7 @@ const states = {
|
|
|
830
828
|
write: true,
|
|
831
829
|
read: true,
|
|
832
830
|
type: 'number',
|
|
833
|
-
setter:
|
|
834
|
-
return {mode: 'stop', strobe: true, duration: value};
|
|
835
|
-
},
|
|
831
|
+
setter: value => ({mode: 'stop', strobe: true, duration: value}),
|
|
836
832
|
},
|
|
837
833
|
bitron_execute_warning: { // for Biton AV2010/24A
|
|
838
834
|
id: 'execute_warning',
|
|
@@ -843,9 +839,7 @@ const states = {
|
|
|
843
839
|
write: true,
|
|
844
840
|
read: true,
|
|
845
841
|
type: 'number',
|
|
846
|
-
setter:
|
|
847
|
-
return {strobe: false, duration: value};
|
|
848
|
-
},
|
|
842
|
+
setter: value => ({strobe: false, duration: value}),
|
|
849
843
|
},
|
|
850
844
|
shake: {
|
|
851
845
|
id: 'shake',
|
|
@@ -857,7 +851,7 @@ const states = {
|
|
|
857
851
|
read: true,
|
|
858
852
|
type: 'boolean',
|
|
859
853
|
isEvent: true,
|
|
860
|
-
getter: payload =>
|
|
854
|
+
getter: payload => payload.action === 'shake' ? true : undefined,
|
|
861
855
|
},
|
|
862
856
|
wakeup: {
|
|
863
857
|
id: 'wakeup',
|
|
@@ -869,7 +863,7 @@ const states = {
|
|
|
869
863
|
read: true,
|
|
870
864
|
type: 'boolean',
|
|
871
865
|
isEvent: true,
|
|
872
|
-
getter: payload =>
|
|
866
|
+
getter: payload => payload.action === 'wakeup' ? true : undefined,
|
|
873
867
|
},
|
|
874
868
|
fall: {
|
|
875
869
|
id: 'fall',
|
|
@@ -881,7 +875,7 @@ const states = {
|
|
|
881
875
|
read: true,
|
|
882
876
|
type: 'boolean',
|
|
883
877
|
isEvent: true,
|
|
884
|
-
getter: payload =>
|
|
878
|
+
getter: payload => payload.action === 'fall' ? true : undefined,
|
|
885
879
|
},
|
|
886
880
|
tap: {
|
|
887
881
|
id: 'tap',
|
|
@@ -893,7 +887,7 @@ const states = {
|
|
|
893
887
|
read: true,
|
|
894
888
|
type: 'boolean',
|
|
895
889
|
isEvent: true,
|
|
896
|
-
getter: payload =>
|
|
890
|
+
getter: payload => payload.action === 'tap' ? true : undefined,
|
|
897
891
|
},
|
|
898
892
|
tap_side: {
|
|
899
893
|
id: 'tap_side',
|
|
@@ -904,7 +898,7 @@ const states = {
|
|
|
904
898
|
write: false,
|
|
905
899
|
read: true,
|
|
906
900
|
type: 'number',
|
|
907
|
-
getter: payload =>
|
|
901
|
+
getter: payload => payload.action === 'tap' ? payload.side : undefined,
|
|
908
902
|
},
|
|
909
903
|
slide: {
|
|
910
904
|
id: 'slide',
|
|
@@ -916,7 +910,7 @@ const states = {
|
|
|
916
910
|
read: true,
|
|
917
911
|
type: 'boolean',
|
|
918
912
|
isEvent: true,
|
|
919
|
-
getter: payload =>
|
|
913
|
+
getter: payload => payload.action === 'slide' ? true : undefined,
|
|
920
914
|
},
|
|
921
915
|
slide_side: {
|
|
922
916
|
id: 'slide_side',
|
|
@@ -927,7 +921,7 @@ const states = {
|
|
|
927
921
|
write: false,
|
|
928
922
|
read: true,
|
|
929
923
|
type: 'number',
|
|
930
|
-
getter: payload =>
|
|
924
|
+
getter: payload => payload.action === 'slide' ? payload.side : undefined,
|
|
931
925
|
},
|
|
932
926
|
flip180: {
|
|
933
927
|
id: 'flip180',
|
|
@@ -939,7 +933,7 @@ const states = {
|
|
|
939
933
|
read: true,
|
|
940
934
|
type: 'boolean',
|
|
941
935
|
isEvent: true,
|
|
942
|
-
getter: payload =>
|
|
936
|
+
getter: payload => payload.action === 'flip180' ? true : undefined,
|
|
943
937
|
},
|
|
944
938
|
flip180_side: {
|
|
945
939
|
id: 'flip180_side',
|
|
@@ -950,7 +944,7 @@ const states = {
|
|
|
950
944
|
write: false,
|
|
951
945
|
read: true,
|
|
952
946
|
type: 'number',
|
|
953
|
-
getter: payload =>
|
|
947
|
+
getter: payload => payload.action === 'flip180' ? payload.side : undefined,
|
|
954
948
|
},
|
|
955
949
|
flip90: {
|
|
956
950
|
id: 'flip90',
|
|
@@ -962,7 +956,7 @@ const states = {
|
|
|
962
956
|
read: true,
|
|
963
957
|
type: 'boolean',
|
|
964
958
|
isEvent: true,
|
|
965
|
-
getter: payload =>
|
|
959
|
+
getter: payload => payload.action === 'flip90' ? true : undefined,
|
|
966
960
|
},
|
|
967
961
|
flip90_from: {
|
|
968
962
|
id: 'flip90_from',
|
|
@@ -973,7 +967,7 @@ const states = {
|
|
|
973
967
|
write: false,
|
|
974
968
|
read: true,
|
|
975
969
|
type: 'number',
|
|
976
|
-
getter: payload =>
|
|
970
|
+
getter: payload => payload.action === 'flip90' ? payload.from_side : undefined,
|
|
977
971
|
},
|
|
978
972
|
flip90_to: {
|
|
979
973
|
id: 'flip90_to',
|
|
@@ -984,7 +978,7 @@ const states = {
|
|
|
984
978
|
write: false,
|
|
985
979
|
read: true,
|
|
986
980
|
type: 'number',
|
|
987
|
-
getter: payload =>
|
|
981
|
+
getter: payload => payload.action === 'flip90' ? payload.to_side : undefined,
|
|
988
982
|
},
|
|
989
983
|
rotate_left: {
|
|
990
984
|
id: 'rotate_left',
|
|
@@ -996,7 +990,7 @@ const states = {
|
|
|
996
990
|
read: true,
|
|
997
991
|
type: 'boolean',
|
|
998
992
|
isEvent: true,
|
|
999
|
-
getter: payload =>
|
|
993
|
+
getter: payload => payload.action === 'rotate_left' ? true : undefined,
|
|
1000
994
|
},
|
|
1001
995
|
rotate_right: {
|
|
1002
996
|
id: 'rotate_right',
|
|
@@ -1008,7 +1002,7 @@ const states = {
|
|
|
1008
1002
|
read: true,
|
|
1009
1003
|
type: 'boolean',
|
|
1010
1004
|
isEvent: true,
|
|
1011
|
-
getter: payload =>
|
|
1005
|
+
getter: payload => payload.action === 'rotate_right' ? true : undefined,
|
|
1012
1006
|
},
|
|
1013
1007
|
rotate_stop: {
|
|
1014
1008
|
id: 'rotate_stop',
|
|
@@ -1020,7 +1014,7 @@ const states = {
|
|
|
1020
1014
|
read: true,
|
|
1021
1015
|
type: 'boolean',
|
|
1022
1016
|
isEvent: true,
|
|
1023
|
-
getter: payload =>
|
|
1017
|
+
getter: payload => payload.action === 'rotate_stop' ? true : undefined,
|
|
1024
1018
|
},
|
|
1025
1019
|
rotate_angle: {
|
|
1026
1020
|
id: 'rotate_angle',
|
|
@@ -1042,7 +1036,7 @@ const states = {
|
|
|
1042
1036
|
read: true,
|
|
1043
1037
|
type: 'boolean',
|
|
1044
1038
|
isEvent: true,
|
|
1045
|
-
getter: payload =>
|
|
1039
|
+
getter: payload => payload.action === 'play_pause' ? true : undefined,
|
|
1046
1040
|
},
|
|
1047
1041
|
load_power: {
|
|
1048
1042
|
id: 'load_power',
|
|
@@ -1151,9 +1145,7 @@ const states = {
|
|
|
1151
1145
|
unit: '',
|
|
1152
1146
|
min: 0,
|
|
1153
1147
|
max: 100,
|
|
1154
|
-
getter: payload =>
|
|
1155
|
-
return utils.bulbLevelToAdapterLevel(payload.brightness);
|
|
1156
|
-
},
|
|
1148
|
+
getter: payload => utils.bulbLevelToAdapterLevel(payload.brightness),
|
|
1157
1149
|
},
|
|
1158
1150
|
brightness: {
|
|
1159
1151
|
id: 'brightness',
|
|
@@ -1166,12 +1158,8 @@ const states = {
|
|
|
1166
1158
|
unit: '',
|
|
1167
1159
|
min: 0,
|
|
1168
1160
|
max: 100,
|
|
1169
|
-
getter: payload =>
|
|
1170
|
-
|
|
1171
|
-
},
|
|
1172
|
-
setter: (value, options) => {
|
|
1173
|
-
return utils.adapterLevelToBulbLevel(value);
|
|
1174
|
-
},
|
|
1161
|
+
getter: payload => utils.bulbLevelToAdapterLevel(payload.brightness),
|
|
1162
|
+
setter: (value, options) => utils.adapterLevelToBulbLevel(value),
|
|
1175
1163
|
setterOpt: (value, options) => {
|
|
1176
1164
|
const hasTransitionTime = options && options.hasOwnProperty('transition_time');
|
|
1177
1165
|
const transitionTime = hasTransitionTime ? options.transition_time : 0;
|
|
@@ -1179,7 +1167,7 @@ const states = {
|
|
|
1179
1167
|
preparedOptions.brightness = utils.adapterLevelToBulbLevel(value);
|
|
1180
1168
|
return preparedOptions;
|
|
1181
1169
|
},
|
|
1182
|
-
readResponse:
|
|
1170
|
+
readResponse: resp => {
|
|
1183
1171
|
const respObj = resp[0];
|
|
1184
1172
|
if (respObj.status === 0 && respObj.attrData != undefined) {
|
|
1185
1173
|
return utils.bulbLevelToAdapterLevel(respObj.attrData);
|
|
@@ -1195,7 +1183,7 @@ const states = {
|
|
|
1195
1183
|
write: true,
|
|
1196
1184
|
read: true,
|
|
1197
1185
|
type: 'number',
|
|
1198
|
-
setter:
|
|
1186
|
+
setter: value => {
|
|
1199
1187
|
return utils.toMired(value);
|
|
1200
1188
|
},
|
|
1201
1189
|
setterOpt: (value, options) => {
|
|
@@ -1214,7 +1202,7 @@ const states = {
|
|
|
1214
1202
|
write: true,
|
|
1215
1203
|
read: true,
|
|
1216
1204
|
type: 'string',
|
|
1217
|
-
setter:
|
|
1205
|
+
setter: value => {
|
|
1218
1206
|
|
|
1219
1207
|
// convert RGB to XY for set
|
|
1220
1208
|
// const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(value);
|
|
@@ -1243,7 +1231,7 @@ const states = {
|
|
|
1243
1231
|
getter: payload => {
|
|
1244
1232
|
if (payload.color && payload.color.hasOwnProperty('x') && payload.color.hasOwnProperty('y')) {
|
|
1245
1233
|
const colorval = rgb.cie_to_rgb(payload.color.x, payload.color.y);
|
|
1246
|
-
return
|
|
1234
|
+
return `#${utils.decimalToHex(colorval[0])}${utils.decimalToHex(colorval[1])}${utils.decimalToHex(colorval[2])}`;
|
|
1247
1235
|
} else {
|
|
1248
1236
|
return undefined;
|
|
1249
1237
|
}
|
|
@@ -1269,7 +1257,7 @@ const states = {
|
|
|
1269
1257
|
write: true,
|
|
1270
1258
|
read: true,
|
|
1271
1259
|
type: 'boolean',
|
|
1272
|
-
setter:
|
|
1260
|
+
setter: value => {
|
|
1273
1261
|
return {button: 'single', state: value ? 'decoupled' : 'control_relay'};
|
|
1274
1262
|
},
|
|
1275
1263
|
},
|
|
@@ -1282,7 +1270,7 @@ const states = {
|
|
|
1282
1270
|
write: true,
|
|
1283
1271
|
read: true,
|
|
1284
1272
|
type: 'boolean',
|
|
1285
|
-
setter:
|
|
1273
|
+
setter: value => {
|
|
1286
1274
|
return {button: 'left', state: value ? 'decoupled' : 'control_left_relay'};
|
|
1287
1275
|
},
|
|
1288
1276
|
},
|
|
@@ -1295,7 +1283,7 @@ const states = {
|
|
|
1295
1283
|
write: true,
|
|
1296
1284
|
read: true,
|
|
1297
1285
|
type: 'boolean',
|
|
1298
|
-
setter:
|
|
1286
|
+
setter: value => {
|
|
1299
1287
|
return {button: 'right', state: value ? 'decoupled' : 'control_right_relay'};
|
|
1300
1288
|
},
|
|
1301
1289
|
},
|
|
@@ -1345,7 +1333,7 @@ const states = {
|
|
|
1345
1333
|
write: false,
|
|
1346
1334
|
read: true,
|
|
1347
1335
|
type: 'string',
|
|
1348
|
-
getter: payload =>
|
|
1336
|
+
getter: payload => payload.action === 'circle_click' ? 'press' : payload.action === 'circle_hold' ? 'hold' : undefined,
|
|
1349
1337
|
},
|
|
1350
1338
|
switch_state: {
|
|
1351
1339
|
id: 'state',
|
|
@@ -1356,7 +1344,7 @@ const states = {
|
|
|
1356
1344
|
write: false,
|
|
1357
1345
|
read: true,
|
|
1358
1346
|
type: 'string',
|
|
1359
|
-
getter: payload =>
|
|
1347
|
+
getter: payload => payload.action === 'up' ? 'up' : payload.action === 'down' ? 'down' : payload.action === 'circle_click' ? 'circle' : undefined,
|
|
1360
1348
|
},
|
|
1361
1349
|
switch_hold: {
|
|
1362
1350
|
id: 'hold',
|
|
@@ -1367,7 +1355,7 @@ const states = {
|
|
|
1367
1355
|
write: false,
|
|
1368
1356
|
read: true,
|
|
1369
1357
|
type: 'string',
|
|
1370
|
-
getter: payload =>
|
|
1358
|
+
getter: payload => payload.action === 'up_hold' ? 'up' : payload.action === 'down_hold' ? 'down' : payload.action === 'circle_hold' ? 'circle': undefined,
|
|
1371
1359
|
},
|
|
1372
1360
|
switch_release: {
|
|
1373
1361
|
id: 'release',
|
|
@@ -1378,7 +1366,7 @@ const states = {
|
|
|
1378
1366
|
write: false,
|
|
1379
1367
|
read: true,
|
|
1380
1368
|
type: 'string',
|
|
1381
|
-
getter: payload =>
|
|
1369
|
+
getter: payload => payload.action === 'up_release' ? 'up' : payload.action === 'down_release' ? 'down' : payload.action === 'circle_release' ? 'circle': undefined,
|
|
1382
1370
|
},
|
|
1383
1371
|
// new RWL states
|
|
1384
1372
|
rwl_state: {
|
|
@@ -1390,7 +1378,7 @@ const states = {
|
|
|
1390
1378
|
write: false,
|
|
1391
1379
|
read: true,
|
|
1392
1380
|
type: 'boolean',
|
|
1393
|
-
getter: payload =>
|
|
1381
|
+
getter: payload => payload.action === 'on-press' ? true : payload.action === 'off-press' ? false : undefined,
|
|
1394
1382
|
},
|
|
1395
1383
|
rwl_up_button: {
|
|
1396
1384
|
id: 'up_button',
|
|
@@ -1402,7 +1390,7 @@ const states = {
|
|
|
1402
1390
|
read: true,
|
|
1403
1391
|
type: 'boolean',
|
|
1404
1392
|
isEvent: true,
|
|
1405
|
-
getter: payload =>
|
|
1393
|
+
getter: payload => payload.action === 'up-press' ? true : undefined
|
|
1406
1394
|
},
|
|
1407
1395
|
rwl_up_hold: {
|
|
1408
1396
|
id: 'up_hold',
|
|
@@ -1414,7 +1402,7 @@ const states = {
|
|
|
1414
1402
|
read: true,
|
|
1415
1403
|
type: 'boolean',
|
|
1416
1404
|
isEvent: true,
|
|
1417
|
-
getter: payload =>
|
|
1405
|
+
getter: payload => payload.action === 'up-hold' ? true : undefined
|
|
1418
1406
|
},
|
|
1419
1407
|
rwl_down_button: {
|
|
1420
1408
|
id: 'down_button',
|
|
@@ -1426,7 +1414,7 @@ const states = {
|
|
|
1426
1414
|
read: true,
|
|
1427
1415
|
type: 'boolean',
|
|
1428
1416
|
isEvent: true,
|
|
1429
|
-
getter: payload =>
|
|
1417
|
+
getter: payload => payload.action === 'down-press' ? true : undefined
|
|
1430
1418
|
},
|
|
1431
1419
|
rwl_down_hold: {
|
|
1432
1420
|
id: 'down_hold',
|
|
@@ -1438,7 +1426,7 @@ const states = {
|
|
|
1438
1426
|
read: true,
|
|
1439
1427
|
type: 'boolean',
|
|
1440
1428
|
isEvent: true,
|
|
1441
|
-
getter: payload =>
|
|
1429
|
+
getter: payload => payload.action === 'down-hold' ? true : undefined
|
|
1442
1430
|
},
|
|
1443
1431
|
rwl_counter: {
|
|
1444
1432
|
id: 'click_count',
|
|
@@ -1485,8 +1473,8 @@ const states = {
|
|
|
1485
1473
|
min: 0,
|
|
1486
1474
|
max: 2,
|
|
1487
1475
|
epname: 'ep2',
|
|
1488
|
-
getter:
|
|
1489
|
-
setter:
|
|
1476
|
+
getter: payload => ['low','medium','high'].indexOf(payload),
|
|
1477
|
+
setter: value => ['low','medium','high'][value],
|
|
1490
1478
|
},
|
|
1491
1479
|
*/
|
|
1492
1480
|
sml_sensitivity: {
|
|
@@ -1541,8 +1529,8 @@ const states = {
|
|
|
1541
1529
|
write: true,
|
|
1542
1530
|
read: true,
|
|
1543
1531
|
type: 'boolean',
|
|
1544
|
-
getter:
|
|
1545
|
-
setter:
|
|
1532
|
+
getter: payload => payload.state_left === 'ON',
|
|
1533
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
1546
1534
|
setattr: 'state',
|
|
1547
1535
|
epname: 'left',
|
|
1548
1536
|
},
|
|
@@ -1555,8 +1543,8 @@ const states = {
|
|
|
1555
1543
|
write: true,
|
|
1556
1544
|
read: true,
|
|
1557
1545
|
type: 'boolean',
|
|
1558
|
-
getter:
|
|
1559
|
-
setter:
|
|
1546
|
+
getter: payload => payload.state_right === 'ON',
|
|
1547
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
1560
1548
|
setattr: 'state',
|
|
1561
1549
|
epname: 'right',
|
|
1562
1550
|
},
|
|
@@ -1569,8 +1557,8 @@ const states = {
|
|
|
1569
1557
|
write: true,
|
|
1570
1558
|
read: true,
|
|
1571
1559
|
type: 'boolean',
|
|
1572
|
-
getter:
|
|
1573
|
-
setter:
|
|
1560
|
+
getter: payload => payload.state_center === 'ON',
|
|
1561
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
1574
1562
|
setattr: 'state',
|
|
1575
1563
|
epname: 'center',
|
|
1576
1564
|
},
|
|
@@ -1583,8 +1571,8 @@ const states = {
|
|
|
1583
1571
|
write: true,
|
|
1584
1572
|
read: true,
|
|
1585
1573
|
type: 'boolean',
|
|
1586
|
-
getter:
|
|
1587
|
-
setter:
|
|
1574
|
+
getter: payload => payload.state_bottom_left === 'ON',
|
|
1575
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
1588
1576
|
setattr: 'state',
|
|
1589
1577
|
epname: 'bottom_left',
|
|
1590
1578
|
},
|
|
@@ -1597,8 +1585,8 @@ const states = {
|
|
|
1597
1585
|
write: true,
|
|
1598
1586
|
read: true,
|
|
1599
1587
|
type: 'boolean',
|
|
1600
|
-
getter:
|
|
1601
|
-
setter:
|
|
1588
|
+
getter: payload => payload.state_bottom_right === 'ON',
|
|
1589
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
1602
1590
|
setattr: 'state',
|
|
1603
1591
|
epname: 'bottom_right',
|
|
1604
1592
|
},
|
|
@@ -1611,8 +1599,8 @@ const states = {
|
|
|
1611
1599
|
write: true,
|
|
1612
1600
|
read: true,
|
|
1613
1601
|
type: 'boolean',
|
|
1614
|
-
getter:
|
|
1615
|
-
setter:
|
|
1602
|
+
getter: payload => payload.state_top_left === 'ON',
|
|
1603
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
1616
1604
|
setattr: 'state',
|
|
1617
1605
|
epname: 'top_left',
|
|
1618
1606
|
},
|
|
@@ -1625,8 +1613,8 @@ const states = {
|
|
|
1625
1613
|
write: true,
|
|
1626
1614
|
read: true,
|
|
1627
1615
|
type: 'boolean',
|
|
1628
|
-
getter:
|
|
1629
|
-
setter:
|
|
1616
|
+
getter: payload => payload.state_top_right === 'ON',
|
|
1617
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
1630
1618
|
setattr: 'state',
|
|
1631
1619
|
epname: 'top_right',
|
|
1632
1620
|
},
|
|
@@ -1640,7 +1628,7 @@ const states = {
|
|
|
1640
1628
|
read: true,
|
|
1641
1629
|
type: 'boolean',
|
|
1642
1630
|
isEvent: true,
|
|
1643
|
-
getter: payload =>
|
|
1631
|
+
getter: payload => payload.action === 'vibration' ? true : undefined,
|
|
1644
1632
|
},
|
|
1645
1633
|
tilt_action: {
|
|
1646
1634
|
id: 'tilt',
|
|
@@ -1652,7 +1640,7 @@ const states = {
|
|
|
1652
1640
|
read: true,
|
|
1653
1641
|
type: 'boolean',
|
|
1654
1642
|
isEvent: true,
|
|
1655
|
-
getter: payload =>
|
|
1643
|
+
getter: payload => payload.action === 'tilt' ? true : undefined,
|
|
1656
1644
|
},
|
|
1657
1645
|
drop_action: {
|
|
1658
1646
|
id: 'drop',
|
|
@@ -1664,7 +1652,7 @@ const states = {
|
|
|
1664
1652
|
read: true,
|
|
1665
1653
|
type: 'boolean',
|
|
1666
1654
|
isEvent: true,
|
|
1667
|
-
getter: payload =>
|
|
1655
|
+
getter: payload => payload.action === 'drop' ? true : undefined,
|
|
1668
1656
|
},
|
|
1669
1657
|
tilt_angle: {
|
|
1670
1658
|
id: 'tilt_angle',
|
|
@@ -1736,7 +1724,7 @@ const states = {
|
|
|
1736
1724
|
read: true,
|
|
1737
1725
|
type: 'boolean',
|
|
1738
1726
|
isEvent: true,
|
|
1739
|
-
getter: payload =>
|
|
1727
|
+
getter: payload => payload.action === 'toggle' ? true : undefined,
|
|
1740
1728
|
},
|
|
1741
1729
|
E1524_hold: {
|
|
1742
1730
|
id: 'hold',
|
|
@@ -1748,7 +1736,7 @@ const states = {
|
|
|
1748
1736
|
read: true,
|
|
1749
1737
|
type: 'boolean',
|
|
1750
1738
|
isEvent: true,
|
|
1751
|
-
getter: payload =>
|
|
1739
|
+
getter: payload => payload.action === 'toggle_hold' ? true : undefined,
|
|
1752
1740
|
},
|
|
1753
1741
|
E1524_left_click: {
|
|
1754
1742
|
id: 'left_click',
|
|
@@ -1760,7 +1748,7 @@ const states = {
|
|
|
1760
1748
|
read: true,
|
|
1761
1749
|
type: 'boolean',
|
|
1762
1750
|
isEvent: true,
|
|
1763
|
-
getter: payload =>
|
|
1751
|
+
getter: payload => payload.action === 'arrow_left_click' ? true : undefined,
|
|
1764
1752
|
},
|
|
1765
1753
|
E1524_right_click: {
|
|
1766
1754
|
id: 'right_click',
|
|
@@ -1772,7 +1760,7 @@ const states = {
|
|
|
1772
1760
|
read: true,
|
|
1773
1761
|
type: 'boolean',
|
|
1774
1762
|
isEvent: true,
|
|
1775
|
-
getter: payload =>
|
|
1763
|
+
getter: payload => payload.action === 'arrow_right_click' ? true : undefined,
|
|
1776
1764
|
},
|
|
1777
1765
|
E1524_left_button: {
|
|
1778
1766
|
id: 'left_button',
|
|
@@ -1783,7 +1771,7 @@ const states = {
|
|
|
1783
1771
|
write: false,
|
|
1784
1772
|
read: true,
|
|
1785
1773
|
type: 'boolean',
|
|
1786
|
-
getter: payload =>
|
|
1774
|
+
getter: payload => payload.action === 'arrow_left_hold' ? true : payload.action === 'arrow_left_release' ? false : undefined,
|
|
1787
1775
|
},
|
|
1788
1776
|
E1524_right_button: {
|
|
1789
1777
|
id: 'right_button',
|
|
@@ -1794,7 +1782,7 @@ const states = {
|
|
|
1794
1782
|
write: false,
|
|
1795
1783
|
read: true,
|
|
1796
1784
|
type: 'boolean',
|
|
1797
|
-
getter: payload =>
|
|
1785
|
+
getter: payload => payload.action === 'arrow_right_hold' ? true : payload.action === 'arrow_right_release' ? false : undefined,
|
|
1798
1786
|
},
|
|
1799
1787
|
|
|
1800
1788
|
E1524_up_click: {
|
|
@@ -1807,7 +1795,7 @@ const states = {
|
|
|
1807
1795
|
read: true,
|
|
1808
1796
|
type: 'boolean',
|
|
1809
1797
|
isEvent: true,
|
|
1810
|
-
getter: payload =>
|
|
1798
|
+
getter: payload => payload.action === 'brightness_up_click' ? true : undefined,
|
|
1811
1799
|
},
|
|
1812
1800
|
E1524_down_click: {
|
|
1813
1801
|
id: 'down_click',
|
|
@@ -1819,7 +1807,7 @@ const states = {
|
|
|
1819
1807
|
read: true,
|
|
1820
1808
|
type: 'boolean',
|
|
1821
1809
|
isEvent: true,
|
|
1822
|
-
getter: payload =>
|
|
1810
|
+
getter: payload => payload.action === 'brightness_down_click' ? true : undefined,
|
|
1823
1811
|
},
|
|
1824
1812
|
E1524_up_button: {
|
|
1825
1813
|
id: 'up_button',
|
|
@@ -1830,7 +1818,7 @@ const states = {
|
|
|
1830
1818
|
write: false,
|
|
1831
1819
|
read: true,
|
|
1832
1820
|
type: 'boolean',
|
|
1833
|
-
getter: payload =>
|
|
1821
|
+
getter: payload => payload.action === 'brightness_up_hold' ? true : payload.action === 'brightness_up_release' ? false : undefined,
|
|
1834
1822
|
},
|
|
1835
1823
|
E1743_onoff: {
|
|
1836
1824
|
id: 'state',
|
|
@@ -1841,7 +1829,7 @@ const states = {
|
|
|
1841
1829
|
write: false,
|
|
1842
1830
|
read: true,
|
|
1843
1831
|
type: 'boolean',
|
|
1844
|
-
getter: payload =>
|
|
1832
|
+
getter: payload => payload.click === 'on' ? true : (payload.click === 'off' ? false : undefined),
|
|
1845
1833
|
},
|
|
1846
1834
|
E1743_up_button: {
|
|
1847
1835
|
id: 'up_button',
|
|
@@ -1852,7 +1840,7 @@ const states = {
|
|
|
1852
1840
|
write: false,
|
|
1853
1841
|
read: true,
|
|
1854
1842
|
type: 'boolean',
|
|
1855
|
-
getter: payload =>
|
|
1843
|
+
getter: payload => payload.click === 'brightness_up' ? true : (payload.click === 'brightness_stop' ? false : undefined),
|
|
1856
1844
|
},
|
|
1857
1845
|
E1743_down_button: {
|
|
1858
1846
|
id: 'down_button',
|
|
@@ -1863,7 +1851,7 @@ const states = {
|
|
|
1863
1851
|
write: false,
|
|
1864
1852
|
read: true,
|
|
1865
1853
|
type: 'boolean',
|
|
1866
|
-
getter: payload =>
|
|
1854
|
+
getter: payload => payload.click === 'brightness_down' ? true : (payload.click === 'brightness_stop' ? false : undefined),
|
|
1867
1855
|
},
|
|
1868
1856
|
E1524_down_button: {
|
|
1869
1857
|
id: 'down_button',
|
|
@@ -1874,7 +1862,7 @@ const states = {
|
|
|
1874
1862
|
write: false,
|
|
1875
1863
|
read: true,
|
|
1876
1864
|
type: 'boolean',
|
|
1877
|
-
getter: payload =>
|
|
1865
|
+
getter: payload => payload.action === 'brightness_down_hold' ? true : payload.action === 'brightness_down_release' ? false : undefined,
|
|
1878
1866
|
},
|
|
1879
1867
|
tint404011_onoff: {
|
|
1880
1868
|
id: 'state',
|
|
@@ -1885,7 +1873,7 @@ const states = {
|
|
|
1885
1873
|
write: false,
|
|
1886
1874
|
read: true,
|
|
1887
1875
|
type: 'boolean',
|
|
1888
|
-
getter: payload =>
|
|
1876
|
+
getter: payload => payload.action === 'on' ? true : (payload.action === 'off' ? false : undefined),
|
|
1889
1877
|
},
|
|
1890
1878
|
tint404011_brightness_up_click: {
|
|
1891
1879
|
id: 'brightness_up_click',
|
|
@@ -1897,7 +1885,7 @@ const states = {
|
|
|
1897
1885
|
read: true,
|
|
1898
1886
|
type: 'boolean',
|
|
1899
1887
|
isEvent: true,
|
|
1900
|
-
getter: payload =>
|
|
1888
|
+
getter: payload => payload.action === 'brightness_up_click' ? true : undefined,
|
|
1901
1889
|
},
|
|
1902
1890
|
tint404011_brightness_up_hold: {
|
|
1903
1891
|
id: 'brightness_up_hold',
|
|
@@ -1909,7 +1897,7 @@ const states = {
|
|
|
1909
1897
|
read: true,
|
|
1910
1898
|
type: 'boolean',
|
|
1911
1899
|
isEvent: false,
|
|
1912
|
-
getter: payload =>
|
|
1900
|
+
getter: payload => payload.action === 'brightness_up_hold' ? true : payload.action === 'brightness_up_release' ? false : undefined,
|
|
1913
1901
|
},
|
|
1914
1902
|
tint404011_brightness_down_click: {
|
|
1915
1903
|
id: 'brightness_down_click',
|
|
@@ -1921,7 +1909,7 @@ const states = {
|
|
|
1921
1909
|
read: true,
|
|
1922
1910
|
type: 'boolean',
|
|
1923
1911
|
isEvent: true,
|
|
1924
|
-
getter: payload =>
|
|
1912
|
+
getter: payload => payload.action === 'brightness_down_click' ? true : undefined,
|
|
1925
1913
|
},
|
|
1926
1914
|
tint404011_brightness_down_hold: {
|
|
1927
1915
|
id: 'brightness_down_hold',
|
|
@@ -1933,7 +1921,7 @@ const states = {
|
|
|
1933
1921
|
read: true,
|
|
1934
1922
|
type: 'boolean',
|
|
1935
1923
|
isEvent: false,
|
|
1936
|
-
getter: payload =>
|
|
1924
|
+
getter: payload => payload.action === 'brightness_down_hold' ? true : payload.action === 'brightness_down_release' ? false : undefined,
|
|
1937
1925
|
},
|
|
1938
1926
|
tint404011_colortemp_read: {
|
|
1939
1927
|
id: 'colortemp',
|
|
@@ -1944,7 +1932,7 @@ const states = {
|
|
|
1944
1932
|
write: false,
|
|
1945
1933
|
read: true,
|
|
1946
1934
|
type: 'number',
|
|
1947
|
-
getter: payload =>
|
|
1935
|
+
getter: payload => payload.action === 'color_temp' ? payload.action_color_temperature : undefined,
|
|
1948
1936
|
},
|
|
1949
1937
|
tint404011_color_read: {
|
|
1950
1938
|
id: 'color',
|
|
@@ -1955,7 +1943,7 @@ const states = {
|
|
|
1955
1943
|
write: false,
|
|
1956
1944
|
read: true,
|
|
1957
1945
|
type: 'string',
|
|
1958
|
-
getter:
|
|
1946
|
+
getter: payload => {
|
|
1959
1947
|
if( payload.action === 'color_wheel') {
|
|
1960
1948
|
const colorval = rgb.cie_to_rgb(payload.action_color.x, payload.action_color.y);
|
|
1961
1949
|
return '#' + utils.decimalToHex(colorval[0]) + utils.decimalToHex(colorval[1]) + utils.decimalToHex(colorval[2]);
|
|
@@ -1975,7 +1963,7 @@ const states = {
|
|
|
1975
1963
|
read: true,
|
|
1976
1964
|
type: 'boolean',
|
|
1977
1965
|
isEvent: true,
|
|
1978
|
-
getter: payload =>
|
|
1966
|
+
getter: payload => payload.action === 'scene_3' ? true : undefined,
|
|
1979
1967
|
},
|
|
1980
1968
|
tint404011_scene_sunset: {
|
|
1981
1969
|
// starting with warm-white light at 50% brightness then dims after 15 minutes.
|
|
@@ -1989,7 +1977,7 @@ const states = {
|
|
|
1989
1977
|
read: true,
|
|
1990
1978
|
type: 'boolean',
|
|
1991
1979
|
isEvent: true,
|
|
1992
|
-
getter: payload =>
|
|
1980
|
+
getter: payload => payload.action === 'scene_1' ? true : undefined,
|
|
1993
1981
|
},
|
|
1994
1982
|
tint404011_scene_party: {
|
|
1995
1983
|
// colourful continuous change of light color
|
|
@@ -2002,7 +1990,7 @@ const states = {
|
|
|
2002
1990
|
read: true,
|
|
2003
1991
|
type: 'boolean',
|
|
2004
1992
|
isEvent: true,
|
|
2005
|
-
getter: payload =>
|
|
1993
|
+
getter: payload => payload.action === 'scene_2' ? true : undefined,
|
|
2006
1994
|
},
|
|
2007
1995
|
tint404011_scene_nightlight: {
|
|
2008
1996
|
// warm-white light dimmed to 5%
|
|
@@ -2015,7 +2003,7 @@ const states = {
|
|
|
2015
2003
|
read: true,
|
|
2016
2004
|
type: 'boolean',
|
|
2017
2005
|
isEvent: true,
|
|
2018
|
-
getter: payload =>
|
|
2006
|
+
getter: payload => payload.action === 'scene_6' ? true : undefined,
|
|
2019
2007
|
},
|
|
2020
2008
|
tint404011_scene_bonfire: {
|
|
2021
2009
|
// simulates a bonfire with flickering colours between orange, red and white
|
|
@@ -2028,7 +2016,7 @@ const states = {
|
|
|
2028
2016
|
read: true,
|
|
2029
2017
|
type: 'boolean',
|
|
2030
2018
|
isEvent: true,
|
|
2031
|
-
getter: payload =>
|
|
2019
|
+
getter: payload => payload.action === 'scene_4' ? true : undefined,
|
|
2032
2020
|
},
|
|
2033
2021
|
tint404011_scene_romance: {
|
|
2034
2022
|
// constantly transitioning colours between red, violet and pink
|
|
@@ -2041,7 +2029,7 @@ const states = {
|
|
|
2041
2029
|
read: true,
|
|
2042
2030
|
type: 'boolean',
|
|
2043
2031
|
isEvent: true,
|
|
2044
|
-
getter: payload =>
|
|
2032
|
+
getter: payload => payload.action === 'scene_5' ? true : undefined,
|
|
2045
2033
|
},
|
|
2046
2034
|
button_action_on: {
|
|
2047
2035
|
// generic on button with 'action=on' as payload
|
|
@@ -2054,7 +2042,7 @@ const states = {
|
|
|
2054
2042
|
read: true,
|
|
2055
2043
|
type: 'boolean',
|
|
2056
2044
|
isEvent: true,
|
|
2057
|
-
getter: payload =>
|
|
2045
|
+
getter: payload => payload.action === 'on' ? true : undefined,
|
|
2058
2046
|
},
|
|
2059
2047
|
button_action_off: {
|
|
2060
2048
|
// generic on button with 'action=on' as payload
|
|
@@ -2067,7 +2055,7 @@ const states = {
|
|
|
2067
2055
|
read: true,
|
|
2068
2056
|
type: 'boolean',
|
|
2069
2057
|
isEvent: true,
|
|
2070
|
-
getter: payload =>
|
|
2058
|
+
getter: payload => payload.action === 'off' ? true : undefined,
|
|
2071
2059
|
},
|
|
2072
2060
|
button_action_skip_forward: {
|
|
2073
2061
|
// generic on button with 'action=on' as payload
|
|
@@ -2080,7 +2068,7 @@ const states = {
|
|
|
2080
2068
|
read: true,
|
|
2081
2069
|
type: 'boolean',
|
|
2082
2070
|
isEvent: true,
|
|
2083
|
-
getter: payload =>
|
|
2071
|
+
getter: payload => payload.action === 'skip_forward' ? true : undefined,
|
|
2084
2072
|
},
|
|
2085
2073
|
button_action_skip_back: {
|
|
2086
2074
|
// generic on button with 'action=on' as payload
|
|
@@ -2093,7 +2081,7 @@ const states = {
|
|
|
2093
2081
|
read: true,
|
|
2094
2082
|
type: 'boolean',
|
|
2095
2083
|
isEvent: true,
|
|
2096
|
-
getter: payload =>
|
|
2084
|
+
getter: payload => payload.action === 'skip_backward' ? true : undefined,
|
|
2097
2085
|
},
|
|
2098
2086
|
button_action_press: {
|
|
2099
2087
|
id: 'button_press',
|
|
@@ -2105,7 +2093,7 @@ const states = {
|
|
|
2105
2093
|
read: true,
|
|
2106
2094
|
type: 'boolean',
|
|
2107
2095
|
isEvent: false,
|
|
2108
|
-
getter: payload =>
|
|
2096
|
+
getter: payload => payload.action === 'press' ? true : undefined,
|
|
2109
2097
|
},
|
|
2110
2098
|
button_action_hold: {
|
|
2111
2099
|
id: 'button_hold',
|
|
@@ -2117,7 +2105,7 @@ const states = {
|
|
|
2117
2105
|
read: true,
|
|
2118
2106
|
type: 'boolean',
|
|
2119
2107
|
isEvent: false,
|
|
2120
|
-
getter: payload =>
|
|
2108
|
+
getter: payload => payload.action === 'hold' ? true : undefined,
|
|
2121
2109
|
},
|
|
2122
2110
|
button_action_release: {
|
|
2123
2111
|
id: 'button_release',
|
|
@@ -2129,7 +2117,7 @@ const states = {
|
|
|
2129
2117
|
read: true,
|
|
2130
2118
|
type: 'boolean',
|
|
2131
2119
|
isEvent: false,
|
|
2132
|
-
getter: payload =>
|
|
2120
|
+
getter: payload => payload.action === 'release' ? true : undefined,
|
|
2133
2121
|
},
|
|
2134
2122
|
|
|
2135
2123
|
// hvac Thermostat cluster - generic states
|
|
@@ -2195,8 +2183,8 @@ const states = {
|
|
|
2195
2183
|
write: false,
|
|
2196
2184
|
read: true,
|
|
2197
2185
|
type: 'boolean',
|
|
2198
|
-
getter:
|
|
2199
|
-
setter:
|
|
2186
|
+
getter: payload => payload.occupancy % 1 === 1,
|
|
2187
|
+
setter: value => value ? 1 : 0,
|
|
2200
2188
|
setattr: 'state',
|
|
2201
2189
|
epname: 'left',
|
|
2202
2190
|
},
|
|
@@ -2381,8 +2369,8 @@ const states = {
|
|
|
2381
2369
|
min: 0,
|
|
2382
2370
|
max: 100,
|
|
2383
2371
|
unit: '%',
|
|
2384
|
-
setter: value =>
|
|
2385
|
-
getter: payload =>
|
|
2372
|
+
setter: value => Math.round(value * 2.55),
|
|
2373
|
+
getter: payload => Math.round(payload.eurotronic_valve_position / 2.55),
|
|
2386
2374
|
},
|
|
2387
2375
|
SPBZ0001_current_heating_setpoint: { //0x4003
|
|
2388
2376
|
id: 'heating_setpnt_current',
|
|
@@ -2401,13 +2389,17 @@ const states = {
|
|
|
2401
2389
|
// 1 = manual valve control
|
|
2402
2390
|
// 2 = auto (default)
|
|
2403
2391
|
id: 'spz_trv_mode',
|
|
2404
|
-
name: 'TRV Mode
|
|
2392
|
+
name: 'TRV Mode',
|
|
2405
2393
|
prop: 'eurotronic_trv_mode',
|
|
2406
2394
|
icon: undefined,
|
|
2407
|
-
role: '
|
|
2395
|
+
role: 'state',
|
|
2408
2396
|
write: true,
|
|
2409
2397
|
read: true,
|
|
2410
2398
|
type: 'number',
|
|
2399
|
+
states: {
|
|
2400
|
+
1: 'manual',
|
|
2401
|
+
2: 'automatic'
|
|
2402
|
+
}
|
|
2411
2403
|
},
|
|
2412
2404
|
SPBZ0001_system_mode: { //0x4008
|
|
2413
2405
|
// for compatibility only, bits accessible as own states via eurotronic_host_flags
|
|
@@ -2484,12 +2476,8 @@ const states = {
|
|
|
2484
2476
|
read: true,
|
|
2485
2477
|
type: 'boolean',
|
|
2486
2478
|
inOptions: true,
|
|
2487
|
-
setter: (value, options) => {
|
|
2488
|
-
|
|
2489
|
-
},
|
|
2490
|
-
setterOpt: (value, options) => {
|
|
2491
|
-
return {state: {eurotronic_host_flags: {...options, child_protection: !value}}};
|
|
2492
|
-
},
|
|
2479
|
+
setter: (value, options) => ({child_protection: value}),
|
|
2480
|
+
setterOpt: (value, options) => ({state: {eurotronic_host_flags: {...options, child_protection: !value}}}),
|
|
2493
2481
|
getter: payload => payload.eurotronic_host_flags.child_protection,
|
|
2494
2482
|
},
|
|
2495
2483
|
|
|
@@ -2503,12 +2491,8 @@ const states = {
|
|
|
2503
2491
|
read: true,
|
|
2504
2492
|
type: 'boolean',
|
|
2505
2493
|
inOptions: true,
|
|
2506
|
-
setter: (value, options) => {
|
|
2507
|
-
|
|
2508
|
-
},
|
|
2509
|
-
setterOpt: (value, options) => {
|
|
2510
|
-
return {state: {eurotronic_host_flags: {...options, mirror_display: !value}}};
|
|
2511
|
-
},
|
|
2494
|
+
setter: (value, options) => ({mirror_display: value}),
|
|
2495
|
+
setterOpt: (value, options) => ({state: {eurotronic_host_flags: {...options, mirror_display: !value}}}),
|
|
2512
2496
|
getter: payload => payload.eurotronic_host_flags.mirror_display,
|
|
2513
2497
|
},
|
|
2514
2498
|
danfoss_window_open: {
|
|
@@ -2582,7 +2566,7 @@ const states = {
|
|
|
2582
2566
|
write: false,
|
|
2583
2567
|
read: true,
|
|
2584
2568
|
type: 'string',
|
|
2585
|
-
getter: payload =>
|
|
2569
|
+
getter: payload => payload.mounted_mode ? 'not Mounted' : 'Mounted',
|
|
2586
2570
|
},
|
|
2587
2571
|
danfoss_algorithm_scale: {
|
|
2588
2572
|
id: 'algorithm_scale_factor',
|
|
@@ -2709,7 +2693,7 @@ const states = {
|
|
|
2709
2693
|
write: false,
|
|
2710
2694
|
read: true,
|
|
2711
2695
|
type: 'number',
|
|
2712
|
-
getter: payload =>
|
|
2696
|
+
getter: payload => payload.inserted === 'unknown' ? -1 : (payload.inserted === undefined ? null : parseInt(payload.inserted, 10)),
|
|
2713
2697
|
},
|
|
2714
2698
|
forgotten: {
|
|
2715
2699
|
id: 'forgotten',
|
|
@@ -2720,7 +2704,7 @@ const states = {
|
|
|
2720
2704
|
write: false,
|
|
2721
2705
|
read: true,
|
|
2722
2706
|
type: 'number',
|
|
2723
|
-
getter: payload =>
|
|
2707
|
+
getter: payload => payload.forgotten === undefined ? null : parseInt(payload.forgotten),
|
|
2724
2708
|
},
|
|
2725
2709
|
key_error: {
|
|
2726
2710
|
id: 'key_error',
|
|
@@ -2742,8 +2726,8 @@ const states = {
|
|
|
2742
2726
|
write: true,
|
|
2743
2727
|
read: true,
|
|
2744
2728
|
type: 'boolean',
|
|
2745
|
-
getter: payload =>
|
|
2746
|
-
setter:
|
|
2729
|
+
getter: payload => payload.state_l1 === 'ON',
|
|
2730
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
2747
2731
|
setattr: 'state',
|
|
2748
2732
|
epname: 'l1',
|
|
2749
2733
|
},
|
|
@@ -2756,8 +2740,8 @@ const states = {
|
|
|
2756
2740
|
write: true,
|
|
2757
2741
|
read: true,
|
|
2758
2742
|
type: 'boolean',
|
|
2759
|
-
getter: payload =>
|
|
2760
|
-
setter:
|
|
2743
|
+
getter: payload => payload.state_l2 === 'ON',
|
|
2744
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
2761
2745
|
setattr: 'state',
|
|
2762
2746
|
epname: 'l2',
|
|
2763
2747
|
},
|
|
@@ -2770,8 +2754,8 @@ const states = {
|
|
|
2770
2754
|
write: true,
|
|
2771
2755
|
read: true,
|
|
2772
2756
|
type: 'boolean',
|
|
2773
|
-
getter: payload =>
|
|
2774
|
-
setter:
|
|
2757
|
+
getter: payload => payload.state_l1 === 'ON',
|
|
2758
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
2775
2759
|
setattr: 'state',
|
|
2776
2760
|
epname: 'l1',
|
|
2777
2761
|
},
|
|
@@ -2784,8 +2768,8 @@ const states = {
|
|
|
2784
2768
|
write: true,
|
|
2785
2769
|
read: true,
|
|
2786
2770
|
type: 'boolean',
|
|
2787
|
-
getter: payload =>
|
|
2788
|
-
setter:
|
|
2771
|
+
getter: payload => payload.state_l2 === 'ON',
|
|
2772
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
2789
2773
|
setattr: 'state',
|
|
2790
2774
|
epname: 'l2',
|
|
2791
2775
|
},
|
|
@@ -2798,8 +2782,8 @@ const states = {
|
|
|
2798
2782
|
write: true,
|
|
2799
2783
|
read: true,
|
|
2800
2784
|
type: 'boolean',
|
|
2801
|
-
getter: payload =>
|
|
2802
|
-
setter:
|
|
2785
|
+
getter: payload => payload.state_l3 === 'ON',
|
|
2786
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
2803
2787
|
setattr: 'state',
|
|
2804
2788
|
epname: 'l3',
|
|
2805
2789
|
},
|
|
@@ -2812,7 +2796,7 @@ const states = {
|
|
|
2812
2796
|
write: true,
|
|
2813
2797
|
read: true,
|
|
2814
2798
|
type: 'string',
|
|
2815
|
-
getter: payload =>
|
|
2799
|
+
getter: payload => payload.state === 'LOCK' ? 'locked' : payload.state === 'UNLOCK' ? 'unlocked' : undefined,
|
|
2816
2800
|
},
|
|
2817
2801
|
DIYRUZ_buzzer: {
|
|
2818
2802
|
id: 'buzzer',
|
|
@@ -2823,8 +2807,8 @@ const states = {
|
|
|
2823
2807
|
write: true,
|
|
2824
2808
|
read: true,
|
|
2825
2809
|
type: 'boolean',
|
|
2826
|
-
getter:
|
|
2827
|
-
setter:
|
|
2810
|
+
getter: payload => payload.state_center === 'ON',
|
|
2811
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
2828
2812
|
setattr: 'state',
|
|
2829
2813
|
epname: 'center',
|
|
2830
2814
|
},
|
|
@@ -2923,7 +2907,7 @@ const states = {
|
|
|
2923
2907
|
min: 0,
|
|
2924
2908
|
max: 100,
|
|
2925
2909
|
unit: '%',
|
|
2926
|
-
getter: payload =>
|
|
2910
|
+
getter: payload => payload.position !== null && !isNaN(payload.position) ? payload.position : undefined,
|
|
2927
2911
|
},
|
|
2928
2912
|
curtain_stop: {
|
|
2929
2913
|
id: 'stop',
|
|
@@ -2935,7 +2919,7 @@ const states = {
|
|
|
2935
2919
|
read: true,
|
|
2936
2920
|
type: 'boolean',
|
|
2937
2921
|
isEvent: true,
|
|
2938
|
-
setter: value => {
|
|
2922
|
+
setter: value => ({state: 'stop'}),
|
|
2939
2923
|
},
|
|
2940
2924
|
curtain_reverse_direction: {
|
|
2941
2925
|
id: 'reverse_direction',
|
|
@@ -2947,9 +2931,7 @@ const states = {
|
|
|
2947
2931
|
read: true,
|
|
2948
2932
|
type: 'boolean',
|
|
2949
2933
|
isEvent: true,
|
|
2950
|
-
setterOpt: (value, options) => {
|
|
2951
|
-
return {...options, reverse_direction: value};
|
|
2952
|
-
},
|
|
2934
|
+
setterOpt: (value, options) => ({...options, reverse_direction: value}),
|
|
2953
2935
|
},
|
|
2954
2936
|
curtain_xiaomi_reverse_direction: {
|
|
2955
2937
|
id: 'reverse_direction',
|
|
@@ -2961,13 +2943,9 @@ const states = {
|
|
|
2961
2943
|
read: true,
|
|
2962
2944
|
type: 'boolean',
|
|
2963
2945
|
inOptions: true,
|
|
2964
|
-
getter: payload =>
|
|
2965
|
-
setterOpt: (value, options) => {
|
|
2966
|
-
|
|
2967
|
-
},
|
|
2968
|
-
setter: (value, options) => {
|
|
2969
|
-
return {...options, reverse_direction: value};
|
|
2970
|
-
},
|
|
2946
|
+
getter: payload => payload.options !== null && payload.options.hasOwnProperty('reverse_direction') && !isNaN(payload.options.reverse_direction) ? payload.options.reverse_direction : undefined,
|
|
2947
|
+
setterOpt: (value, options) => ({...options, reverse_direction: value}),
|
|
2948
|
+
setter: (value, options) => ({...options, reverse_direction: value}),
|
|
2971
2949
|
},
|
|
2972
2950
|
curtain_xiaomi_hand_open: {
|
|
2973
2951
|
id: 'hand_open',
|
|
@@ -2979,13 +2957,9 @@ const states = {
|
|
|
2979
2957
|
read: true,
|
|
2980
2958
|
type: 'boolean',
|
|
2981
2959
|
inOptions: true,
|
|
2982
|
-
getter: payload =>
|
|
2983
|
-
setterOpt: (value, options) => {
|
|
2984
|
-
|
|
2985
|
-
},
|
|
2986
|
-
setter: (value, options) => {
|
|
2987
|
-
return {...options, hand_open: value};
|
|
2988
|
-
},
|
|
2960
|
+
getter: payload => payload.options !== null && payload.options.hasOwnProperty('hand_open') && !isNaN(payload.options.hand_open) ? payload.options.hand_open : undefined,
|
|
2961
|
+
setterOpt: (value, options) => ({...options, hand_open: value}),
|
|
2962
|
+
setter: (value, options) => ({...options, hand_open: value}),
|
|
2989
2963
|
},
|
|
2990
2964
|
curtain_xiaomi_reset_limits: {
|
|
2991
2965
|
id: 'reset_limits',
|
|
@@ -2995,11 +2969,9 @@ const states = {
|
|
|
2995
2969
|
write: true,
|
|
2996
2970
|
read: true,
|
|
2997
2971
|
type: 'boolean',
|
|
2998
|
-
getter: payload =>
|
|
2972
|
+
getter: payload => undefined,
|
|
2999
2973
|
inOptions: true,
|
|
3000
|
-
setter: (value, options) => {
|
|
3001
|
-
return {...options, reset_limits: value};
|
|
3002
|
-
},
|
|
2974
|
+
setter: (value, options) => ({...options, reset_limits: value}),
|
|
3003
2975
|
},
|
|
3004
2976
|
blind_position: {
|
|
3005
2977
|
id: 'position',
|
|
@@ -3013,7 +2985,7 @@ const states = {
|
|
|
3013
2985
|
min: 0,
|
|
3014
2986
|
max: 100,
|
|
3015
2987
|
unit: '%',
|
|
3016
|
-
getter: payload =>
|
|
2988
|
+
getter: payload => payload.position !== null && !isNaN(payload.position) ? payload.position : undefined,
|
|
3017
2989
|
},
|
|
3018
2990
|
blind_stop: {
|
|
3019
2991
|
id: 'stop',
|
|
@@ -3025,7 +2997,7 @@ const states = {
|
|
|
3025
2997
|
read: true,
|
|
3026
2998
|
type: 'boolean',
|
|
3027
2999
|
isEvent: true,
|
|
3028
|
-
setter: value =>
|
|
3000
|
+
setter: value => 'STOP',
|
|
3029
3001
|
},
|
|
3030
3002
|
blind_open: {
|
|
3031
3003
|
id: 'open',
|
|
@@ -3037,7 +3009,7 @@ const states = {
|
|
|
3037
3009
|
read: true,
|
|
3038
3010
|
type: 'boolean',
|
|
3039
3011
|
isEvent: true,
|
|
3040
|
-
setter: value =>
|
|
3012
|
+
setter: value => 'OPEN',
|
|
3041
3013
|
},
|
|
3042
3014
|
blind_close: {
|
|
3043
3015
|
id: 'close',
|
|
@@ -3049,7 +3021,7 @@ const states = {
|
|
|
3049
3021
|
read: true,
|
|
3050
3022
|
type: 'boolean',
|
|
3051
3023
|
isEvent: true,
|
|
3052
|
-
setter: value =>
|
|
3024
|
+
setter: value => 'CLOSE',
|
|
3053
3025
|
},
|
|
3054
3026
|
hold: {
|
|
3055
3027
|
id: 'hold',
|
|
@@ -3060,7 +3032,7 @@ const states = {
|
|
|
3060
3032
|
write: false,
|
|
3061
3033
|
read: true,
|
|
3062
3034
|
type: 'boolean',
|
|
3063
|
-
getter: payload =>
|
|
3035
|
+
getter: payload => payload.action === 'hold' ? true : payload.action === 'release' ? false : undefined,
|
|
3064
3036
|
},
|
|
3065
3037
|
keypad_btn1: {
|
|
3066
3038
|
id: 'btn_1',
|
|
@@ -3082,7 +3054,7 @@ const states = {
|
|
|
3082
3054
|
read: true,
|
|
3083
3055
|
type: 'boolean',
|
|
3084
3056
|
isEvent: true,
|
|
3085
|
-
getter: payload =>
|
|
3057
|
+
getter: payload => payload.action === 'stop',
|
|
3086
3058
|
},
|
|
3087
3059
|
ZYCT202_on: {
|
|
3088
3060
|
id: 'off',
|
|
@@ -3094,7 +3066,7 @@ const states = {
|
|
|
3094
3066
|
read: true,
|
|
3095
3067
|
type: 'boolean',
|
|
3096
3068
|
isEvent: true,
|
|
3097
|
-
getter: payload =>
|
|
3069
|
+
getter: payload => payload.action === 'on',
|
|
3098
3070
|
},
|
|
3099
3071
|
ZYCT202_off: {
|
|
3100
3072
|
id: 'off',
|
|
@@ -3106,7 +3078,7 @@ const states = {
|
|
|
3106
3078
|
read: true,
|
|
3107
3079
|
type: 'boolean',
|
|
3108
3080
|
isEvent: true,
|
|
3109
|
-
getter: payload =>
|
|
3081
|
+
getter: payload => payload.action === 'off',
|
|
3110
3082
|
},
|
|
3111
3083
|
ZYCT202_up: {
|
|
3112
3084
|
id: 'up',
|
|
@@ -3118,7 +3090,7 @@ const states = {
|
|
|
3118
3090
|
read: true,
|
|
3119
3091
|
type: 'boolean',
|
|
3120
3092
|
isEvent: true,
|
|
3121
|
-
getter: payload =>
|
|
3093
|
+
getter: payload => payload.action === 'up-press',
|
|
3122
3094
|
},
|
|
3123
3095
|
ZYCT202_down: {
|
|
3124
3096
|
id: 'down',
|
|
@@ -3130,7 +3102,7 @@ const states = {
|
|
|
3130
3102
|
read: true,
|
|
3131
3103
|
type: 'boolean',
|
|
3132
3104
|
isEvent: true,
|
|
3133
|
-
getter: payload =>
|
|
3105
|
+
getter: payload => payload.action === 'down-press',
|
|
3134
3106
|
},
|
|
3135
3107
|
keypad_btn2: {
|
|
3136
3108
|
id: 'btn_2',
|
|
@@ -3331,7 +3303,7 @@ const states = {
|
|
|
3331
3303
|
write: false,
|
|
3332
3304
|
read: true,
|
|
3333
3305
|
type: 'string',
|
|
3334
|
-
getter: payload =>
|
|
3306
|
+
getter: payload => payload.occupancy === true ? payload.side : undefined,
|
|
3335
3307
|
},
|
|
3336
3308
|
btn1_pressed: {
|
|
3337
3309
|
id: 'btn_1_pressed',
|
|
@@ -3342,7 +3314,7 @@ const states = {
|
|
|
3342
3314
|
write: false,
|
|
3343
3315
|
read: true,
|
|
3344
3316
|
type: 'boolean',
|
|
3345
|
-
getter: payload =>
|
|
3317
|
+
getter: payload => payload.btn_1 === 'hold' ? true : payload.btn_1 === 'release' ? false : undefined,
|
|
3346
3318
|
},
|
|
3347
3319
|
btn1_click: {
|
|
3348
3320
|
id: 'btn_1',
|
|
@@ -3352,7 +3324,7 @@ const states = {
|
|
|
3352
3324
|
write: false,
|
|
3353
3325
|
read: true,
|
|
3354
3326
|
type: 'boolean',
|
|
3355
|
-
getter: payload =>
|
|
3327
|
+
getter: payload => payload.btn_1 === 'click' ? true : undefined,
|
|
3356
3328
|
isEvent: true,
|
|
3357
3329
|
},
|
|
3358
3330
|
btn2_pressed: {
|
|
@@ -3364,7 +3336,7 @@ const states = {
|
|
|
3364
3336
|
write: false,
|
|
3365
3337
|
read: true,
|
|
3366
3338
|
type: 'boolean',
|
|
3367
|
-
getter: payload =>
|
|
3339
|
+
getter: payload => payload.btn_2 === 'hold' ? true : payload.btn_2 === 'release' ? false : undefined,
|
|
3368
3340
|
},
|
|
3369
3341
|
btn2_click: {
|
|
3370
3342
|
id: 'btn_2',
|
|
@@ -3374,7 +3346,7 @@ const states = {
|
|
|
3374
3346
|
write: false,
|
|
3375
3347
|
read: true,
|
|
3376
3348
|
type: 'boolean',
|
|
3377
|
-
getter: payload =>
|
|
3349
|
+
getter: payload => payload.btn_2 === 'click' ? true : undefined,
|
|
3378
3350
|
isEvent: true,
|
|
3379
3351
|
},
|
|
3380
3352
|
btn3_pressed: {
|
|
@@ -3386,7 +3358,7 @@ const states = {
|
|
|
3386
3358
|
write: false,
|
|
3387
3359
|
read: true,
|
|
3388
3360
|
type: 'boolean',
|
|
3389
|
-
getter: payload =>
|
|
3361
|
+
getter: payload => payload.btn_3 === 'hold' ? true : payload.btn_3 === 'release' ? false : undefined,
|
|
3390
3362
|
},
|
|
3391
3363
|
btn3_click: {
|
|
3392
3364
|
id: 'btn_3',
|
|
@@ -3396,7 +3368,7 @@ const states = {
|
|
|
3396
3368
|
write: false,
|
|
3397
3369
|
read: true,
|
|
3398
3370
|
type: 'boolean',
|
|
3399
|
-
getter: payload =>
|
|
3371
|
+
getter: payload => payload.btn_3 === 'click' ? true : undefined,
|
|
3400
3372
|
isEvent: true,
|
|
3401
3373
|
},
|
|
3402
3374
|
btn4_pressed: {
|
|
@@ -3408,7 +3380,7 @@ const states = {
|
|
|
3408
3380
|
write: false,
|
|
3409
3381
|
read: true,
|
|
3410
3382
|
type: 'boolean',
|
|
3411
|
-
getter: payload =>
|
|
3383
|
+
getter: payload => payload.btn_4 === 'hold' ? true : payload.btn_4 === 'release' ? false : undefined,
|
|
3412
3384
|
},
|
|
3413
3385
|
btn4_click: {
|
|
3414
3386
|
id: 'btn_4',
|
|
@@ -3418,7 +3390,7 @@ const states = {
|
|
|
3418
3390
|
write: false,
|
|
3419
3391
|
read: true,
|
|
3420
3392
|
type: 'boolean',
|
|
3421
|
-
getter: payload =>
|
|
3393
|
+
getter: payload => payload.btn_4 === 'click' ? true : undefined,
|
|
3422
3394
|
isEvent: true,
|
|
3423
3395
|
},
|
|
3424
3396
|
aqara_opple_1: {
|
|
@@ -3430,7 +3402,7 @@ const states = {
|
|
|
3430
3402
|
write: false,
|
|
3431
3403
|
read: true,
|
|
3432
3404
|
type: 'boolean',
|
|
3433
|
-
getter: payload =>
|
|
3405
|
+
getter: payload => payload.action === 'button_1_single' ? true : undefined,
|
|
3434
3406
|
isEvent: true,
|
|
3435
3407
|
},
|
|
3436
3408
|
aqara_opple_1_double: {
|
|
@@ -3442,7 +3414,7 @@ const states = {
|
|
|
3442
3414
|
write: false,
|
|
3443
3415
|
read: true,
|
|
3444
3416
|
type: 'boolean',
|
|
3445
|
-
getter: payload =>
|
|
3417
|
+
getter: payload => payload.action === 'button_1_double' ? true : undefined,
|
|
3446
3418
|
isEvent: true,
|
|
3447
3419
|
},
|
|
3448
3420
|
aqara_opple_1_triple: {
|
|
@@ -3454,7 +3426,7 @@ const states = {
|
|
|
3454
3426
|
write: false,
|
|
3455
3427
|
read: true,
|
|
3456
3428
|
type: 'boolean',
|
|
3457
|
-
getter: payload =>
|
|
3429
|
+
getter: payload => payload.action === 'button_1_triple' ? true : undefined,
|
|
3458
3430
|
isEvent: true,
|
|
3459
3431
|
},
|
|
3460
3432
|
aqara_opple_1_hold: {
|
|
@@ -3466,7 +3438,7 @@ const states = {
|
|
|
3466
3438
|
write: false,
|
|
3467
3439
|
read: true,
|
|
3468
3440
|
type: 'boolean',
|
|
3469
|
-
getter: payload =>
|
|
3441
|
+
getter: payload => payload.action === 'button_1_hold' ? true : payload.action === 'button_1_release' ? false : undefined,
|
|
3470
3442
|
},
|
|
3471
3443
|
aqara_opple_2: {
|
|
3472
3444
|
id: 'button_2_click',
|
|
@@ -3477,7 +3449,7 @@ const states = {
|
|
|
3477
3449
|
write: false,
|
|
3478
3450
|
read: true,
|
|
3479
3451
|
type: 'boolean',
|
|
3480
|
-
getter: payload =>
|
|
3452
|
+
getter: payload => payload.action === 'button_2_single' ? true : undefined,
|
|
3481
3453
|
isEvent: true,
|
|
3482
3454
|
},
|
|
3483
3455
|
aqara_opple_2_double: {
|
|
@@ -3489,7 +3461,7 @@ const states = {
|
|
|
3489
3461
|
write: false,
|
|
3490
3462
|
read: true,
|
|
3491
3463
|
type: 'boolean',
|
|
3492
|
-
getter: payload =>
|
|
3464
|
+
getter: payload => payload.action === 'button_2_double' ? true : undefined,
|
|
3493
3465
|
isEvent: true,
|
|
3494
3466
|
},
|
|
3495
3467
|
aqara_opple_2_triple: {
|
|
@@ -3501,7 +3473,7 @@ const states = {
|
|
|
3501
3473
|
write: false,
|
|
3502
3474
|
read: true,
|
|
3503
3475
|
type: 'boolean',
|
|
3504
|
-
getter: payload =>
|
|
3476
|
+
getter: payload => payload.action === 'button_2_triple' ? true : undefined,
|
|
3505
3477
|
isEvent: true,
|
|
3506
3478
|
},
|
|
3507
3479
|
aqara_opple_2_hold: {
|
|
@@ -3513,7 +3485,7 @@ const states = {
|
|
|
3513
3485
|
write: false,
|
|
3514
3486
|
read: true,
|
|
3515
3487
|
type: 'boolean',
|
|
3516
|
-
getter: payload =>
|
|
3488
|
+
getter: payload => payload.action === 'button_2_hold' ? true : payload.action === 'button_2_release' ? false : undefined,
|
|
3517
3489
|
},
|
|
3518
3490
|
aqara_opple_3: {
|
|
3519
3491
|
id: 'button_3_click',
|
|
@@ -3524,7 +3496,7 @@ const states = {
|
|
|
3524
3496
|
write: false,
|
|
3525
3497
|
read: true,
|
|
3526
3498
|
type: 'boolean',
|
|
3527
|
-
getter: payload =>
|
|
3499
|
+
getter: payload => payload.action === 'button_3_single' ? true : undefined,
|
|
3528
3500
|
isEvent: true,
|
|
3529
3501
|
},
|
|
3530
3502
|
aqara_opple_3_double: {
|
|
@@ -3536,7 +3508,7 @@ const states = {
|
|
|
3536
3508
|
write: false,
|
|
3537
3509
|
read: true,
|
|
3538
3510
|
type: 'boolean',
|
|
3539
|
-
getter: payload =>
|
|
3511
|
+
getter: payload => payload.action === 'button_3_double' ? true : undefined,
|
|
3540
3512
|
isEvent: true,
|
|
3541
3513
|
},
|
|
3542
3514
|
aqara_opple_3_triple: {
|
|
@@ -3548,7 +3520,7 @@ const states = {
|
|
|
3548
3520
|
write: false,
|
|
3549
3521
|
read: true,
|
|
3550
3522
|
type: 'boolean',
|
|
3551
|
-
getter: payload =>
|
|
3523
|
+
getter: payload => payload.action === 'button_3_triple' ? true : undefined,
|
|
3552
3524
|
isEvent: true,
|
|
3553
3525
|
},
|
|
3554
3526
|
aqara_opple_3_hold: {
|
|
@@ -3560,7 +3532,7 @@ const states = {
|
|
|
3560
3532
|
write: false,
|
|
3561
3533
|
read: true,
|
|
3562
3534
|
type: 'boolean',
|
|
3563
|
-
getter: payload =>
|
|
3535
|
+
getter: payload => payload.action === 'button_3_hold' ? true : payload.action === 'button_3_release' ? false : undefined,
|
|
3564
3536
|
},
|
|
3565
3537
|
aqara_opple_4: {
|
|
3566
3538
|
id: 'button_4_click',
|
|
@@ -3571,7 +3543,7 @@ const states = {
|
|
|
3571
3543
|
write: false,
|
|
3572
3544
|
read: true,
|
|
3573
3545
|
type: 'boolean',
|
|
3574
|
-
getter: payload =>
|
|
3546
|
+
getter: payload => payload.action === 'button_4_single' ? true : undefined,
|
|
3575
3547
|
isEvent: true,
|
|
3576
3548
|
},
|
|
3577
3549
|
aqara_opple_4_double: {
|
|
@@ -3583,7 +3555,7 @@ const states = {
|
|
|
3583
3555
|
write: false,
|
|
3584
3556
|
read: true,
|
|
3585
3557
|
type: 'boolean',
|
|
3586
|
-
getter: payload =>
|
|
3558
|
+
getter: payload => payload.action === 'button_4_double' ? true : undefined,
|
|
3587
3559
|
isEvent: true,
|
|
3588
3560
|
},
|
|
3589
3561
|
aqara_opple_4_triple: {
|
|
@@ -3595,7 +3567,7 @@ const states = {
|
|
|
3595
3567
|
write: false,
|
|
3596
3568
|
read: true,
|
|
3597
3569
|
type: 'boolean',
|
|
3598
|
-
getter: payload =>
|
|
3570
|
+
getter: payload => payload.action === 'button_4_triple' ? true : undefined,
|
|
3599
3571
|
isEvent: true,
|
|
3600
3572
|
},
|
|
3601
3573
|
aqara_opple_4_hold: {
|
|
@@ -3607,7 +3579,7 @@ const states = {
|
|
|
3607
3579
|
write: false,
|
|
3608
3580
|
read: true,
|
|
3609
3581
|
type: 'boolean',
|
|
3610
|
-
getter: payload =>
|
|
3582
|
+
getter: payload => payload.action === 'button_4_hold' ? true : payload.action === 'button_4_release' ? false : undefined,
|
|
3611
3583
|
},
|
|
3612
3584
|
aqara_opple_5: {
|
|
3613
3585
|
id: 'button_5_click',
|
|
@@ -3618,7 +3590,7 @@ const states = {
|
|
|
3618
3590
|
write: false,
|
|
3619
3591
|
read: true,
|
|
3620
3592
|
type: 'boolean',
|
|
3621
|
-
getter: payload =>
|
|
3593
|
+
getter: payload => payload.action === 'button_5_single' ? true : undefined,
|
|
3622
3594
|
isEvent: true,
|
|
3623
3595
|
},
|
|
3624
3596
|
aqara_opple_5_double: {
|
|
@@ -3630,7 +3602,7 @@ const states = {
|
|
|
3630
3602
|
write: false,
|
|
3631
3603
|
read: true,
|
|
3632
3604
|
type: 'boolean',
|
|
3633
|
-
getter: payload =>
|
|
3605
|
+
getter: payload => payload.action === 'button_5_double' ? true : undefined,
|
|
3634
3606
|
isEvent: true,
|
|
3635
3607
|
},
|
|
3636
3608
|
aqara_opple_5_triple: {
|
|
@@ -3642,7 +3614,7 @@ const states = {
|
|
|
3642
3614
|
write: false,
|
|
3643
3615
|
read: true,
|
|
3644
3616
|
type: 'boolean',
|
|
3645
|
-
getter: payload =>
|
|
3617
|
+
getter: payload => payload.action === 'button_5_triple' ? true : undefined,
|
|
3646
3618
|
isEvent: true,
|
|
3647
3619
|
},
|
|
3648
3620
|
aqara_opple_5_hold: {
|
|
@@ -3654,7 +3626,7 @@ const states = {
|
|
|
3654
3626
|
write: false,
|
|
3655
3627
|
read: true,
|
|
3656
3628
|
type: 'boolean',
|
|
3657
|
-
getter: payload =>
|
|
3629
|
+
getter: payload => payload.action === 'button_5_hold' ? true : payload.action === 'button_5_release' ? false : undefined,
|
|
3658
3630
|
},
|
|
3659
3631
|
aqara_opple_6: {
|
|
3660
3632
|
id: 'button_6_click',
|
|
@@ -3665,7 +3637,7 @@ const states = {
|
|
|
3665
3637
|
write: false,
|
|
3666
3638
|
read: true,
|
|
3667
3639
|
type: 'boolean',
|
|
3668
|
-
getter: payload =>
|
|
3640
|
+
getter: payload => payload.action === 'button_6_single' ? true : undefined,
|
|
3669
3641
|
isEvent: true,
|
|
3670
3642
|
},
|
|
3671
3643
|
aqara_opple_6_double: {
|
|
@@ -3677,7 +3649,7 @@ const states = {
|
|
|
3677
3649
|
write: false,
|
|
3678
3650
|
read: true,
|
|
3679
3651
|
type: 'boolean',
|
|
3680
|
-
getter: payload =>
|
|
3652
|
+
getter: payload => payload.action === 'button_6_double' ? true : undefined,
|
|
3681
3653
|
isEvent: true,
|
|
3682
3654
|
},
|
|
3683
3655
|
aqara_opple_6_triple: {
|
|
@@ -3689,7 +3661,7 @@ const states = {
|
|
|
3689
3661
|
write: false,
|
|
3690
3662
|
read: true,
|
|
3691
3663
|
type: 'boolean',
|
|
3692
|
-
getter: payload =>
|
|
3664
|
+
getter: payload => payload.action === 'button_6_triple' ? true : undefined,
|
|
3693
3665
|
isEvent: true,
|
|
3694
3666
|
},
|
|
3695
3667
|
aqara_opple_6_hold: {
|
|
@@ -3701,7 +3673,7 @@ const states = {
|
|
|
3701
3673
|
write: false,
|
|
3702
3674
|
read: true,
|
|
3703
3675
|
type: 'boolean',
|
|
3704
|
-
getter: payload =>
|
|
3676
|
+
getter: payload => payload.action === 'button_6_hold' ? true : payload.action === 'button_6_release' ? false : undefined,
|
|
3705
3677
|
},
|
|
3706
3678
|
aqara_opple_mode: {
|
|
3707
3679
|
id: 'mode',
|
|
@@ -3712,7 +3684,7 @@ const states = {
|
|
|
3712
3684
|
write: true,
|
|
3713
3685
|
read: true,
|
|
3714
3686
|
type: 'boolean',
|
|
3715
|
-
setter:
|
|
3687
|
+
setter: value => value ? 'command' : 'event',
|
|
3716
3688
|
},
|
|
3717
3689
|
genOnOff: {
|
|
3718
3690
|
id: 'genOnOff',
|
|
@@ -3724,7 +3696,7 @@ const states = {
|
|
|
3724
3696
|
read: true,
|
|
3725
3697
|
type: 'boolean',
|
|
3726
3698
|
isEvent: false,
|
|
3727
|
-
getter: payload =>
|
|
3699
|
+
getter: payload => payload.click === 'on' ? true : payload.click === 'off' ? false : undefined,
|
|
3728
3700
|
},
|
|
3729
3701
|
sensitivity: {
|
|
3730
3702
|
id: 'sensitivity',
|
|
@@ -3747,7 +3719,7 @@ const states = {
|
|
|
3747
3719
|
read: true,
|
|
3748
3720
|
type: 'boolean',
|
|
3749
3721
|
isEvent: true,
|
|
3750
|
-
getter: payload =>
|
|
3722
|
+
getter: payload => payload.click === 'release' ? true : undefined,
|
|
3751
3723
|
},
|
|
3752
3724
|
cover_open: {
|
|
3753
3725
|
id: 'cover_open',
|
|
@@ -3759,7 +3731,7 @@ const states = {
|
|
|
3759
3731
|
read: true,
|
|
3760
3732
|
type: 'boolean',
|
|
3761
3733
|
isEvent: true,
|
|
3762
|
-
getter: payload =>
|
|
3734
|
+
getter: payload => payload.click === 'open' ? true : undefined,
|
|
3763
3735
|
},
|
|
3764
3736
|
cover_release: {
|
|
3765
3737
|
id: 'cover_release',
|
|
@@ -3771,7 +3743,7 @@ const states = {
|
|
|
3771
3743
|
read: true,
|
|
3772
3744
|
type: 'boolean',
|
|
3773
3745
|
isEvent: true,
|
|
3774
|
-
getter: payload =>
|
|
3746
|
+
getter: payload => payload.click === 'release' ? true : undefined,
|
|
3775
3747
|
},
|
|
3776
3748
|
cover_close: {
|
|
3777
3749
|
id: 'cover_close',
|
|
@@ -3783,7 +3755,7 @@ const states = {
|
|
|
3783
3755
|
read: true,
|
|
3784
3756
|
type: 'boolean',
|
|
3785
3757
|
isEvent: true,
|
|
3786
|
-
getter: payload =>
|
|
3758
|
+
getter: payload => payload.click === 'close' ? true : undefined,
|
|
3787
3759
|
},
|
|
3788
3760
|
disarm: {
|
|
3789
3761
|
id: 'disarm',
|
|
@@ -3795,7 +3767,7 @@ const states = {
|
|
|
3795
3767
|
read: true,
|
|
3796
3768
|
type: 'boolean',
|
|
3797
3769
|
isEvent: true,
|
|
3798
|
-
getter: payload =>
|
|
3770
|
+
getter: payload => payload.action === 'disarm' ? true : undefined,
|
|
3799
3771
|
},
|
|
3800
3772
|
arm_stay: {
|
|
3801
3773
|
id: 'arm_stay',
|
|
@@ -3807,7 +3779,7 @@ const states = {
|
|
|
3807
3779
|
read: true,
|
|
3808
3780
|
type: 'boolean',
|
|
3809
3781
|
isEvent: true,
|
|
3810
|
-
getter: payload =>
|
|
3782
|
+
getter: payload => payload.action === 'arm_day_zones' ? true : undefined,
|
|
3811
3783
|
},
|
|
3812
3784
|
arm_away: {
|
|
3813
3785
|
id: 'arm_away',
|
|
@@ -3819,7 +3791,7 @@ const states = {
|
|
|
3819
3791
|
read: true,
|
|
3820
3792
|
type: 'boolean',
|
|
3821
3793
|
isEvent: true,
|
|
3822
|
-
getter: payload =>
|
|
3794
|
+
getter: payload => payload.action === 'arm_all_zones' ? true : undefined,
|
|
3823
3795
|
},
|
|
3824
3796
|
emergency: {
|
|
3825
3797
|
id: 'emergency',
|
|
@@ -3831,7 +3803,7 @@ const states = {
|
|
|
3831
3803
|
read: true,
|
|
3832
3804
|
type: 'boolean',
|
|
3833
3805
|
isEvent: true,
|
|
3834
|
-
getter: payload =>
|
|
3806
|
+
getter: payload => payload.action === 'emergency' ? true : undefined,
|
|
3835
3807
|
},
|
|
3836
3808
|
white_brightness: {
|
|
3837
3809
|
id: 'white_brightness',
|
|
@@ -3869,8 +3841,8 @@ const states = {
|
|
|
3869
3841
|
write: true,
|
|
3870
3842
|
read: true,
|
|
3871
3843
|
type: 'boolean',
|
|
3872
|
-
getter: payload =>
|
|
3873
|
-
setter:
|
|
3844
|
+
getter: payload => payload.state === 'ON',
|
|
3845
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
3874
3846
|
epname: 'white',
|
|
3875
3847
|
},
|
|
3876
3848
|
white_colortemp: {
|
|
@@ -3925,8 +3897,8 @@ const states = {
|
|
|
3925
3897
|
write: true,
|
|
3926
3898
|
read: true,
|
|
3927
3899
|
type: 'boolean',
|
|
3928
|
-
getter: payload =>
|
|
3929
|
-
setter:
|
|
3900
|
+
getter: payload => payload.state === 'ON',
|
|
3901
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
3930
3902
|
epname: 'cct',
|
|
3931
3903
|
},
|
|
3932
3904
|
white8_colortemp: {
|
|
@@ -3953,11 +3925,9 @@ const states = {
|
|
|
3953
3925
|
write: true,
|
|
3954
3926
|
read: true,
|
|
3955
3927
|
type: 'boolean',
|
|
3956
|
-
getter: payload =>
|
|
3957
|
-
setter:
|
|
3958
|
-
setterOpt: (value, options) => {
|
|
3959
|
-
return {...options, state: {white_value: -1}};
|
|
3960
|
-
},
|
|
3928
|
+
getter: payload => payload.state === 'ON',
|
|
3929
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
3930
|
+
setterOpt: (value, options) => ({...options, state: {white_value: -1}}),
|
|
3961
3931
|
inOptions: true,
|
|
3962
3932
|
epname: 'rgb',
|
|
3963
3933
|
},
|
|
@@ -4012,13 +3982,13 @@ const states = {
|
|
|
4012
3982
|
write: true,
|
|
4013
3983
|
read: true,
|
|
4014
3984
|
type: 'string',
|
|
4015
|
-
setter:
|
|
3985
|
+
setter: value => {
|
|
4016
3986
|
let xy = [0, 0];
|
|
4017
3987
|
const rgbcolor = colors.ParseColor(value);
|
|
4018
3988
|
xy = rgb.rgb_to_cie(rgbcolor.r, rgbcolor.g, rgbcolor.b);
|
|
4019
3989
|
return {
|
|
4020
3990
|
x: xy[0],
|
|
4021
|
-
y: xy[1]
|
|
3991
|
+
y: xy[1],
|
|
4022
3992
|
};
|
|
4023
3993
|
},
|
|
4024
3994
|
setterOpt: (value, options) => {
|
|
@@ -4037,8 +4007,8 @@ const states = {
|
|
|
4037
4007
|
write: true,
|
|
4038
4008
|
read: true,
|
|
4039
4009
|
type: 'boolean',
|
|
4040
|
-
getter: payload =>
|
|
4041
|
-
setter:
|
|
4010
|
+
getter: payload => payload.system_mode === 'heat',
|
|
4011
|
+
setter: value => value ? 'heat' : 'off',
|
|
4042
4012
|
},
|
|
4043
4013
|
moes_trv_system_mode: {
|
|
4044
4014
|
id: 'system_mode',
|
|
@@ -4061,7 +4031,7 @@ const states = {
|
|
|
4061
4031
|
write: false,
|
|
4062
4032
|
read: true,
|
|
4063
4033
|
type: 'boolean',
|
|
4064
|
-
getter: payload =>
|
|
4034
|
+
getter: payload => payload.heat === 'ON',
|
|
4065
4035
|
},
|
|
4066
4036
|
moes_trv_sensor: {
|
|
4067
4037
|
id: 'sensor',
|
|
@@ -4073,7 +4043,7 @@ const states = {
|
|
|
4073
4043
|
read: true,
|
|
4074
4044
|
type: 'string', // valid: IN, AL, OU
|
|
4075
4045
|
states: 'IN:IN;AL:AL;OU:OU',
|
|
4076
|
-
setter:
|
|
4046
|
+
setter: value => value === 'IN' ? 0 : (value === 'AL' ? 1 : (value === 'OU' ? 2 : 0)),
|
|
4077
4047
|
},
|
|
4078
4048
|
tuya_trv_target_temperature: {
|
|
4079
4049
|
id: 'target_temperature',
|
|
@@ -4097,8 +4067,8 @@ const states = {
|
|
|
4097
4067
|
write: true,
|
|
4098
4068
|
read: true,
|
|
4099
4069
|
type: 'boolean',
|
|
4100
|
-
getter: payload =>
|
|
4101
|
-
setter:
|
|
4070
|
+
getter: payload => payload.child_lock === 'LOCKED',
|
|
4071
|
+
setter: value => value ? 'LOCK': 'UNLOCK',
|
|
4102
4072
|
},
|
|
4103
4073
|
tuya_trv_window_detected: {
|
|
4104
4074
|
id: 'window_detected',
|
|
@@ -4109,7 +4079,7 @@ const states = {
|
|
|
4109
4079
|
write: false,
|
|
4110
4080
|
read: true,
|
|
4111
4081
|
type: 'boolean',
|
|
4112
|
-
getter: payload =>
|
|
4082
|
+
getter: payload => payload.window_detection === 'ON',
|
|
4113
4083
|
},
|
|
4114
4084
|
tuya_trv_valve_detected: {
|
|
4115
4085
|
id: 'valve_detected',
|
|
@@ -4120,7 +4090,7 @@ const states = {
|
|
|
4120
4090
|
write: false,
|
|
4121
4091
|
read: true,
|
|
4122
4092
|
type: 'boolean',
|
|
4123
|
-
getter: payload =>
|
|
4093
|
+
getter: payload => payload.valve_detection === 'ON',
|
|
4124
4094
|
},
|
|
4125
4095
|
tuya_trv_auto_lock: {
|
|
4126
4096
|
id: 'auto_lock',
|
|
@@ -4131,7 +4101,7 @@ const states = {
|
|
|
4131
4101
|
write: false,
|
|
4132
4102
|
read: true,
|
|
4133
4103
|
type: 'boolean',
|
|
4134
|
-
getter: payload =>
|
|
4104
|
+
getter: payload => payload.auto_lock === 'AUTO',
|
|
4135
4105
|
},
|
|
4136
4106
|
tuya_trv_min_temp: {
|
|
4137
4107
|
id: 'min_temperature',
|
|
@@ -4229,8 +4199,8 @@ const states = {
|
|
|
4229
4199
|
read: true,
|
|
4230
4200
|
type: 'boolean',
|
|
4231
4201
|
isEvent: true,
|
|
4232
|
-
getter: payload =>
|
|
4233
|
-
setter:
|
|
4202
|
+
getter: payload => payload.action === 'ON',
|
|
4203
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
4234
4204
|
},
|
|
4235
4205
|
climate_system_mode: {
|
|
4236
4206
|
id: 'mode',
|
|
@@ -4288,7 +4258,7 @@ const states = {
|
|
|
4288
4258
|
write: false,
|
|
4289
4259
|
read: true,
|
|
4290
4260
|
type: 'number',
|
|
4291
|
-
getter: payload =>
|
|
4261
|
+
getter: payload => payload.click === 'off' ? 0 : (payload.click === 'on' ? 1 : (parseInt(payload.click) + 1)),
|
|
4292
4262
|
},
|
|
4293
4263
|
icasa_click: {
|
|
4294
4264
|
id: 'click',
|
|
@@ -4299,7 +4269,7 @@ const states = {
|
|
|
4299
4269
|
write: false,
|
|
4300
4270
|
read: true,
|
|
4301
4271
|
type: 'boolean',
|
|
4302
|
-
getter: payload =>
|
|
4272
|
+
getter: payload => payload.click === 'off' ? false : (payload.click === 'on' ? true : undefined),
|
|
4303
4273
|
},
|
|
4304
4274
|
icasa_action: {
|
|
4305
4275
|
id: 'rotation',
|
|
@@ -4310,7 +4280,7 @@ const states = {
|
|
|
4310
4280
|
write: false,
|
|
4311
4281
|
read: true,
|
|
4312
4282
|
type: 'string',
|
|
4313
|
-
getter: payload =>
|
|
4283
|
+
getter: payload => payload.action === 'rotate_left' ? 'left' : (payload.action === 'rotate_right' ? 'right' : (payload.action === 'rotate_stop' ? 'stop' : undefined)),
|
|
4314
4284
|
},
|
|
4315
4285
|
icasa_brightness: {
|
|
4316
4286
|
id: 'brightness',
|
|
@@ -4332,8 +4302,8 @@ const states = {
|
|
|
4332
4302
|
write: true,
|
|
4333
4303
|
read: true,
|
|
4334
4304
|
type: 'boolean',
|
|
4335
|
-
getter: payload =>
|
|
4336
|
-
setter:
|
|
4305
|
+
getter: payload => payload.state_top === 'ON',
|
|
4306
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
4337
4307
|
setattr: 'state',
|
|
4338
4308
|
epname: 'top',
|
|
4339
4309
|
},
|
|
@@ -4346,8 +4316,8 @@ const states = {
|
|
|
4346
4316
|
write: true,
|
|
4347
4317
|
read: true,
|
|
4348
4318
|
type: 'boolean',
|
|
4349
|
-
getter: payload =>
|
|
4350
|
-
setter:
|
|
4319
|
+
getter: payload => payload.state_bottom === 'ON',
|
|
4320
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
4351
4321
|
setattr: 'state',
|
|
4352
4322
|
epname: 'bottom',
|
|
4353
4323
|
},
|
|
@@ -4380,7 +4350,7 @@ const states = {
|
|
|
4380
4350
|
write: false,
|
|
4381
4351
|
read: true,
|
|
4382
4352
|
type: 'boolean',
|
|
4383
|
-
getter: payload =>
|
|
4353
|
+
getter: payload => payload.action === '2_single' ? true : undefined,
|
|
4384
4354
|
isEvent: true,
|
|
4385
4355
|
},
|
|
4386
4356
|
ts0042_left_click: {
|
|
@@ -4392,7 +4362,7 @@ const states = {
|
|
|
4392
4362
|
write: false,
|
|
4393
4363
|
read: true,
|
|
4394
4364
|
type: 'boolean',
|
|
4395
|
-
getter: payload =>
|
|
4365
|
+
getter: payload => payload.action === '1_single' ? true : undefined,
|
|
4396
4366
|
isEvent: true,
|
|
4397
4367
|
},
|
|
4398
4368
|
ts0042_right_double: {
|
|
@@ -4404,7 +4374,7 @@ const states = {
|
|
|
4404
4374
|
write: false,
|
|
4405
4375
|
read: true,
|
|
4406
4376
|
type: 'boolean',
|
|
4407
|
-
getter: payload =>
|
|
4377
|
+
getter: payload => payload.action === '2_double' ? true : undefined,
|
|
4408
4378
|
isEvent: true,
|
|
4409
4379
|
},
|
|
4410
4380
|
ts0042_left_double: {
|
|
@@ -4416,7 +4386,7 @@ const states = {
|
|
|
4416
4386
|
write: false,
|
|
4417
4387
|
read: true,
|
|
4418
4388
|
type: 'boolean',
|
|
4419
|
-
getter: payload =>
|
|
4389
|
+
getter: payload => payload.action === '1_double' ? true : undefined,
|
|
4420
4390
|
isEvent: true,
|
|
4421
4391
|
},
|
|
4422
4392
|
ts0042_right_hold: {
|
|
@@ -4428,7 +4398,7 @@ const states = {
|
|
|
4428
4398
|
write: false,
|
|
4429
4399
|
read: true,
|
|
4430
4400
|
type: 'boolean',
|
|
4431
|
-
getter: payload =>
|
|
4401
|
+
getter: payload => payload.action === '2_hold' ? true : undefined,
|
|
4432
4402
|
isEvent: true,
|
|
4433
4403
|
},
|
|
4434
4404
|
ts0042_left_hold: {
|
|
@@ -4440,7 +4410,7 @@ const states = {
|
|
|
4440
4410
|
write: false,
|
|
4441
4411
|
read: true,
|
|
4442
4412
|
type: 'boolean',
|
|
4443
|
-
getter: payload =>
|
|
4413
|
+
getter: payload => payload.action === '1_hold' ? true : undefined,
|
|
4444
4414
|
isEvent: true,
|
|
4445
4415
|
},
|
|
4446
4416
|
ts0043_right_click: {
|
|
@@ -4452,7 +4422,7 @@ const states = {
|
|
|
4452
4422
|
write: false,
|
|
4453
4423
|
read: true,
|
|
4454
4424
|
type: 'boolean',
|
|
4455
|
-
getter: payload =>
|
|
4425
|
+
getter: payload => payload.action === '3_single' ? true : undefined,
|
|
4456
4426
|
isEvent: true,
|
|
4457
4427
|
},
|
|
4458
4428
|
ts0043_middle_click: {
|
|
@@ -4464,7 +4434,7 @@ const states = {
|
|
|
4464
4434
|
write: false,
|
|
4465
4435
|
read: true,
|
|
4466
4436
|
type: 'boolean',
|
|
4467
|
-
getter: payload =>
|
|
4437
|
+
getter: payload => payload.action === '2_single' ? true : undefined,
|
|
4468
4438
|
isEvent: true,
|
|
4469
4439
|
},
|
|
4470
4440
|
ts0043_left_click: {
|
|
@@ -4476,7 +4446,7 @@ const states = {
|
|
|
4476
4446
|
write: false,
|
|
4477
4447
|
read: true,
|
|
4478
4448
|
type: 'boolean',
|
|
4479
|
-
getter: payload =>
|
|
4449
|
+
getter: payload => payload.action === '1_single' ? true : undefined,
|
|
4480
4450
|
isEvent: true,
|
|
4481
4451
|
},
|
|
4482
4452
|
ts0043_right_double: {
|
|
@@ -4488,7 +4458,7 @@ const states = {
|
|
|
4488
4458
|
write: false,
|
|
4489
4459
|
read: true,
|
|
4490
4460
|
type: 'boolean',
|
|
4491
|
-
getter: payload =>
|
|
4461
|
+
getter: payload => payload.action === '3_double' ? true : undefined,
|
|
4492
4462
|
isEvent: true,
|
|
4493
4463
|
},
|
|
4494
4464
|
ts0043_middle_double: {
|
|
@@ -4500,7 +4470,7 @@ const states = {
|
|
|
4500
4470
|
write: false,
|
|
4501
4471
|
read: true,
|
|
4502
4472
|
type: 'boolean',
|
|
4503
|
-
getter: payload =>
|
|
4473
|
+
getter: payload => payload.action === '2_double' ? true : undefined,
|
|
4504
4474
|
isEvent: true,
|
|
4505
4475
|
},
|
|
4506
4476
|
ts0043_left_double: {
|
|
@@ -4512,7 +4482,7 @@ const states = {
|
|
|
4512
4482
|
write: false,
|
|
4513
4483
|
read: true,
|
|
4514
4484
|
type: 'boolean',
|
|
4515
|
-
getter: payload =>
|
|
4485
|
+
getter: payload => payload.action === '1_double' ? true : undefined,
|
|
4516
4486
|
isEvent: true,
|
|
4517
4487
|
},
|
|
4518
4488
|
ts0043_right_hold: {
|
|
@@ -4524,7 +4494,7 @@ const states = {
|
|
|
4524
4494
|
write: false,
|
|
4525
4495
|
read: true,
|
|
4526
4496
|
type: 'boolean',
|
|
4527
|
-
getter: payload =>
|
|
4497
|
+
getter: payload => payload.action === '3_hold' ? true : undefined,
|
|
4528
4498
|
isEvent: true,
|
|
4529
4499
|
},
|
|
4530
4500
|
ts0043_middle_hold: {
|
|
@@ -4536,7 +4506,7 @@ const states = {
|
|
|
4536
4506
|
write: false,
|
|
4537
4507
|
read: true,
|
|
4538
4508
|
type: 'boolean',
|
|
4539
|
-
getter: payload =>
|
|
4509
|
+
getter: payload => payload.action === '2_hold' ? true : undefined,
|
|
4540
4510
|
isEvent: true,
|
|
4541
4511
|
},
|
|
4542
4512
|
ts0043_left_hold: {
|
|
@@ -4548,7 +4518,7 @@ const states = {
|
|
|
4548
4518
|
write: false,
|
|
4549
4519
|
read: true,
|
|
4550
4520
|
type: 'boolean',
|
|
4551
|
-
getter: payload =>
|
|
4521
|
+
getter: payload => payload.action === '1_hold' ? true : undefined,
|
|
4552
4522
|
isEvent: true,
|
|
4553
4523
|
},
|
|
4554
4524
|
rm01_row_2: {
|
|
@@ -4560,8 +4530,8 @@ const states = {
|
|
|
4560
4530
|
write: true,
|
|
4561
4531
|
read: true,
|
|
4562
4532
|
type: 'boolean',
|
|
4563
|
-
getter: payload =>
|
|
4564
|
-
setter:
|
|
4533
|
+
getter: payload => payload.action === 'row_2_on' ? true : payload.action === 'row_2_off' ? false : undefined,
|
|
4534
|
+
setter: value => value ? 'row_2_on' : 'row_2_off',
|
|
4565
4535
|
},
|
|
4566
4536
|
rm01_row_3: {
|
|
4567
4537
|
id: 'rm01_row_3',
|
|
@@ -4572,8 +4542,8 @@ const states = {
|
|
|
4572
4542
|
write: true,
|
|
4573
4543
|
read: true,
|
|
4574
4544
|
type: 'boolean',
|
|
4575
|
-
getter: payload =>
|
|
4576
|
-
setter:
|
|
4545
|
+
getter: payload => payload.action === 'row_3_on' ? true : payload.action === 'row_3_off' ? false : undefined,
|
|
4546
|
+
setter: value => value ? 'row_3_on' : 'row_3_off',
|
|
4577
4547
|
},
|
|
4578
4548
|
rm01_row_4: {
|
|
4579
4549
|
id: 'rm01_row_4',
|
|
@@ -4584,8 +4554,8 @@ const states = {
|
|
|
4584
4554
|
write: true,
|
|
4585
4555
|
read: true,
|
|
4586
4556
|
type: 'boolean',
|
|
4587
|
-
getter: payload =>
|
|
4588
|
-
setter:
|
|
4557
|
+
getter: payload => payload.action === 'row_4_on' ? true : (payload.action === 'row_4_off' ? false : undefined),
|
|
4558
|
+
setter: value => value ? 'row_4_on' : 'row_4_off',
|
|
4589
4559
|
},
|
|
4590
4560
|
left_top_click: {
|
|
4591
4561
|
id: 'left_top_click',
|
|
@@ -4597,7 +4567,7 @@ const states = {
|
|
|
4597
4567
|
read: true,
|
|
4598
4568
|
type: 'boolean',
|
|
4599
4569
|
isEvent: true,
|
|
4600
|
-
getter: payload =>
|
|
4570
|
+
getter: payload => payload.action === 'left_top_click' ? true : undefined,
|
|
4601
4571
|
},
|
|
4602
4572
|
right_top_click: {
|
|
4603
4573
|
id: 'right_top_click',
|
|
@@ -4609,7 +4579,7 @@ const states = {
|
|
|
4609
4579
|
read: true,
|
|
4610
4580
|
type: 'boolean',
|
|
4611
4581
|
isEvent: true,
|
|
4612
|
-
getter: payload =>
|
|
4582
|
+
getter: payload => payload.action === 'right_top_click' ? true : undefined,
|
|
4613
4583
|
},
|
|
4614
4584
|
left_bottom_click: {
|
|
4615
4585
|
id: 'left_bottom_click',
|
|
@@ -4621,7 +4591,7 @@ const states = {
|
|
|
4621
4591
|
read: true,
|
|
4622
4592
|
type: 'boolean',
|
|
4623
4593
|
isEvent: true,
|
|
4624
|
-
getter: payload =>
|
|
4594
|
+
getter: payload => payload.action === 'left_bottom_click' ? true : undefined,
|
|
4625
4595
|
},
|
|
4626
4596
|
right_bottom_click: {
|
|
4627
4597
|
id: 'right_bottom_click',
|
|
@@ -4633,7 +4603,7 @@ const states = {
|
|
|
4633
4603
|
read: true,
|
|
4634
4604
|
type: 'boolean',
|
|
4635
4605
|
isEvent: true,
|
|
4636
|
-
getter: payload =>
|
|
4606
|
+
getter: payload => payload.action === 'right_bottom_click' ? true : undefined,
|
|
4637
4607
|
},
|
|
4638
4608
|
left_top_hold: {
|
|
4639
4609
|
id: 'left_top_hold',
|
|
@@ -4645,7 +4615,7 @@ const states = {
|
|
|
4645
4615
|
read: true,
|
|
4646
4616
|
type: 'boolean',
|
|
4647
4617
|
isEvent: true,
|
|
4648
|
-
getter: payload =>
|
|
4618
|
+
getter: payload => payload.action === 'left_top_hold' ? true : undefined,
|
|
4649
4619
|
},
|
|
4650
4620
|
right_top_hold: {
|
|
4651
4621
|
id: 'right_top_hold',
|
|
@@ -4657,7 +4627,7 @@ const states = {
|
|
|
4657
4627
|
read: true,
|
|
4658
4628
|
type: 'boolean',
|
|
4659
4629
|
isEvent: true,
|
|
4660
|
-
getter: payload =>
|
|
4630
|
+
getter: payload => payload.action === 'right_top_hold' ? true : undefined,
|
|
4661
4631
|
},
|
|
4662
4632
|
left_bottom_hold: {
|
|
4663
4633
|
id: 'left_bottom_hold',
|
|
@@ -4669,7 +4639,7 @@ const states = {
|
|
|
4669
4639
|
read: true,
|
|
4670
4640
|
type: 'boolean',
|
|
4671
4641
|
isEvent: true,
|
|
4672
|
-
getter: payload =>
|
|
4642
|
+
getter: payload => payload.action === 'left_bottom_hold' ? true : undefined,
|
|
4673
4643
|
},
|
|
4674
4644
|
right_bottom_hold: {
|
|
4675
4645
|
id: 'right_bottom_hold',
|
|
@@ -4681,7 +4651,7 @@ const states = {
|
|
|
4681
4651
|
read: true,
|
|
4682
4652
|
type: 'boolean',
|
|
4683
4653
|
isEvent: true,
|
|
4684
|
-
getter: payload =>
|
|
4654
|
+
getter: payload => payload.action === 'right_bottom_hold' ? true : undefined,
|
|
4685
4655
|
},
|
|
4686
4656
|
left_top_release: {
|
|
4687
4657
|
id: 'left_top_release',
|
|
@@ -4693,7 +4663,7 @@ const states = {
|
|
|
4693
4663
|
read: true,
|
|
4694
4664
|
type: 'boolean',
|
|
4695
4665
|
isEvent: true,
|
|
4696
|
-
getter: payload =>
|
|
4666
|
+
getter: payload => payload.action === 'left_top_release' ? true : undefined,
|
|
4697
4667
|
},
|
|
4698
4668
|
right_top_release: {
|
|
4699
4669
|
id: 'right_top_release',
|
|
@@ -4705,7 +4675,7 @@ const states = {
|
|
|
4705
4675
|
read: true,
|
|
4706
4676
|
type: 'boolean',
|
|
4707
4677
|
isEvent: true,
|
|
4708
|
-
getter: payload =>
|
|
4678
|
+
getter: payload => payload.action === 'right_top_release' ? true : undefined,
|
|
4709
4679
|
},
|
|
4710
4680
|
left_bottom_release: {
|
|
4711
4681
|
id: 'left_bottom_release',
|
|
@@ -4717,7 +4687,7 @@ const states = {
|
|
|
4717
4687
|
read: true,
|
|
4718
4688
|
type: 'boolean',
|
|
4719
4689
|
isEvent: true,
|
|
4720
|
-
getter: payload =>
|
|
4690
|
+
getter: payload => payload.action === 'left_bottom_release' ? true : undefined,
|
|
4721
4691
|
},
|
|
4722
4692
|
right_bottom_release: {
|
|
4723
4693
|
id: 'right_bottom_release',
|
|
@@ -4729,7 +4699,7 @@ const states = {
|
|
|
4729
4699
|
read: true,
|
|
4730
4700
|
type: 'boolean',
|
|
4731
4701
|
isEvent: true,
|
|
4732
|
-
getter: payload =>
|
|
4702
|
+
getter: payload => payload.action === 'right_bottom_release' ? true : undefined,
|
|
4733
4703
|
},
|
|
4734
4704
|
lumi_left_click: {
|
|
4735
4705
|
id: 'left_click',
|
|
@@ -4741,7 +4711,7 @@ const states = {
|
|
|
4741
4711
|
read: true,
|
|
4742
4712
|
type: 'boolean',
|
|
4743
4713
|
isEvent: true,
|
|
4744
|
-
getter: payload =>
|
|
4714
|
+
getter: payload => payload.action === 'left' ? true : undefined,
|
|
4745
4715
|
},
|
|
4746
4716
|
lumi_right_click: {
|
|
4747
4717
|
id: 'right_click',
|
|
@@ -4753,7 +4723,7 @@ const states = {
|
|
|
4753
4723
|
read: true,
|
|
4754
4724
|
type: 'boolean',
|
|
4755
4725
|
isEvent: true,
|
|
4756
|
-
getter: payload =>
|
|
4726
|
+
getter: payload => payload.action === 'right' ? true : undefined,
|
|
4757
4727
|
},
|
|
4758
4728
|
lumi_both_click: {
|
|
4759
4729
|
id: 'both_click',
|
|
@@ -4765,7 +4735,7 @@ const states = {
|
|
|
4765
4735
|
read: true,
|
|
4766
4736
|
type: 'boolean',
|
|
4767
4737
|
isEvent: true,
|
|
4768
|
-
getter: payload =>
|
|
4738
|
+
getter: payload => payload.action === 'both' ? true : undefined,
|
|
4769
4739
|
},
|
|
4770
4740
|
lumi_left_click_long: {
|
|
4771
4741
|
id: 'left_click_long',
|
|
@@ -4777,7 +4747,7 @@ const states = {
|
|
|
4777
4747
|
read: true,
|
|
4778
4748
|
type: 'boolean',
|
|
4779
4749
|
isEvent: true,
|
|
4780
|
-
getter: payload =>
|
|
4750
|
+
getter: payload => payload.action === 'left_long' ? true : undefined,
|
|
4781
4751
|
},
|
|
4782
4752
|
lumi_right_click_long: {
|
|
4783
4753
|
id: 'right_click_long',
|
|
@@ -4789,7 +4759,7 @@ const states = {
|
|
|
4789
4759
|
read: true,
|
|
4790
4760
|
type: 'boolean',
|
|
4791
4761
|
isEvent: true,
|
|
4792
|
-
getter: payload =>
|
|
4762
|
+
getter: payload => payload.action === 'right_long' ? true : undefined,
|
|
4793
4763
|
},
|
|
4794
4764
|
lumi_left_click_double: {
|
|
4795
4765
|
id: 'left_click_double',
|
|
@@ -4801,7 +4771,7 @@ const states = {
|
|
|
4801
4771
|
read: true,
|
|
4802
4772
|
type: 'boolean',
|
|
4803
4773
|
isEvent: true,
|
|
4804
|
-
getter: payload =>
|
|
4774
|
+
getter: payload => payload.action === 'left_double' ? true : undefined,
|
|
4805
4775
|
},
|
|
4806
4776
|
lumi_right_click_double: {
|
|
4807
4777
|
id: 'right_click_double',
|
|
@@ -4813,7 +4783,7 @@ const states = {
|
|
|
4813
4783
|
read: true,
|
|
4814
4784
|
type: 'boolean',
|
|
4815
4785
|
isEvent: true,
|
|
4816
|
-
getter: payload =>
|
|
4786
|
+
getter: payload => payload.action === 'right_double' ? true : undefined,
|
|
4817
4787
|
},
|
|
4818
4788
|
lumi_both_click_long: {
|
|
4819
4789
|
id: 'both_click_long',
|
|
@@ -4825,7 +4795,7 @@ const states = {
|
|
|
4825
4795
|
read: true,
|
|
4826
4796
|
type: 'boolean',
|
|
4827
4797
|
isEvent: true,
|
|
4828
|
-
getter: payload =>
|
|
4798
|
+
getter: payload => payload.action === 'both_long' ? true : undefined,
|
|
4829
4799
|
},
|
|
4830
4800
|
lumi_both_click_double: {
|
|
4831
4801
|
id: 'both_click_double',
|
|
@@ -4837,7 +4807,7 @@ const states = {
|
|
|
4837
4807
|
read: true,
|
|
4838
4808
|
type: 'boolean',
|
|
4839
4809
|
isEvent: true,
|
|
4840
|
-
getter: payload =>
|
|
4810
|
+
getter: payload => payload.action === 'both_double' ? true : undefined,
|
|
4841
4811
|
},
|
|
4842
4812
|
plug_summdelivered: {
|
|
4843
4813
|
id: 'energy',
|
|
@@ -4959,8 +4929,8 @@ const states = {
|
|
|
4959
4929
|
write: true,
|
|
4960
4930
|
read: true,
|
|
4961
4931
|
type: 'boolean',
|
|
4962
|
-
getter: payload =>
|
|
4963
|
-
setter:
|
|
4932
|
+
getter: payload => payload.state_l1 === 'ON',
|
|
4933
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
4964
4934
|
setattr: 'state',
|
|
4965
4935
|
epname: 'l1',
|
|
4966
4936
|
},
|
|
@@ -4973,8 +4943,8 @@ const states = {
|
|
|
4973
4943
|
write: true,
|
|
4974
4944
|
read: true,
|
|
4975
4945
|
type: 'boolean',
|
|
4976
|
-
getter: payload =>
|
|
4977
|
-
setter:
|
|
4946
|
+
getter: payload => payload.state_l2 === 'ON',
|
|
4947
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
4978
4948
|
setattr: 'state',
|
|
4979
4949
|
epname: 'l2',
|
|
4980
4950
|
},
|
|
@@ -4987,8 +4957,8 @@ const states = {
|
|
|
4987
4957
|
write: true,
|
|
4988
4958
|
read: true,
|
|
4989
4959
|
type: 'boolean',
|
|
4990
|
-
getter: payload =>
|
|
4991
|
-
setter:
|
|
4960
|
+
getter: payload => payload.state_l3 === 'ON',
|
|
4961
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
4992
4962
|
setattr: 'state',
|
|
4993
4963
|
epname: 'l3',
|
|
4994
4964
|
},
|
|
@@ -5001,8 +4971,8 @@ const states = {
|
|
|
5001
4971
|
write: true,
|
|
5002
4972
|
read: true,
|
|
5003
4973
|
type: 'boolean',
|
|
5004
|
-
getter: payload =>
|
|
5005
|
-
setter:
|
|
4974
|
+
getter: payload => payload.state_l4 === 'ON',
|
|
4975
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5006
4976
|
setattr: 'state',
|
|
5007
4977
|
epname: 'l4',
|
|
5008
4978
|
},
|
|
@@ -5015,8 +4985,8 @@ const states = {
|
|
|
5015
4985
|
write: true,
|
|
5016
4986
|
read: true,
|
|
5017
4987
|
type: 'boolean',
|
|
5018
|
-
getter: payload =>
|
|
5019
|
-
setter:
|
|
4988
|
+
getter: payload => payload.state_l5 === 'ON',
|
|
4989
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5020
4990
|
setattr: 'state',
|
|
5021
4991
|
epname: 'l5',
|
|
5022
4992
|
},
|
|
@@ -5029,8 +4999,8 @@ const states = {
|
|
|
5029
4999
|
write: true,
|
|
5030
5000
|
read: true,
|
|
5031
5001
|
type: 'boolean',
|
|
5032
|
-
getter: payload =>
|
|
5033
|
-
setter:
|
|
5002
|
+
getter: payload => payload.state_l6 === 'ON',
|
|
5003
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5034
5004
|
setattr: 'state',
|
|
5035
5005
|
epname: 'l6',
|
|
5036
5006
|
},
|
|
@@ -5043,8 +5013,8 @@ const states = {
|
|
|
5043
5013
|
write: true,
|
|
5044
5014
|
read: true,
|
|
5045
5015
|
type: 'boolean',
|
|
5046
|
-
getter: payload =>
|
|
5047
|
-
setter:
|
|
5016
|
+
getter: payload => payload.state_l7 === 'ON',
|
|
5017
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5048
5018
|
setattr: 'state',
|
|
5049
5019
|
epname: 'l7',
|
|
5050
5020
|
},
|
|
@@ -5057,8 +5027,8 @@ const states = {
|
|
|
5057
5027
|
write: true,
|
|
5058
5028
|
read: true,
|
|
5059
5029
|
type: 'boolean',
|
|
5060
|
-
getter: payload =>
|
|
5061
|
-
setter:
|
|
5030
|
+
getter: payload => payload.state_l8 === 'ON',
|
|
5031
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5062
5032
|
setattr: 'state',
|
|
5063
5033
|
epname: 'l8',
|
|
5064
5034
|
},
|
|
@@ -5072,7 +5042,7 @@ const states = {
|
|
|
5072
5042
|
read: true,
|
|
5073
5043
|
type: 'boolean',
|
|
5074
5044
|
isEvent: true,
|
|
5075
|
-
getter: payload =>
|
|
5045
|
+
getter: payload => payload.action === 'single_1' ? true : undefined,
|
|
5076
5046
|
},
|
|
5077
5047
|
btn2_single: {
|
|
5078
5048
|
id: 'btn2_single',
|
|
@@ -5084,7 +5054,7 @@ const states = {
|
|
|
5084
5054
|
read: true,
|
|
5085
5055
|
type: 'boolean',
|
|
5086
5056
|
isEvent: true,
|
|
5087
|
-
getter: payload =>
|
|
5057
|
+
getter: payload => payload.action === 'single_2' ? true : undefined,
|
|
5088
5058
|
},
|
|
5089
5059
|
btn3_single: {
|
|
5090
5060
|
id: 'btn3_single',
|
|
@@ -5096,7 +5066,7 @@ const states = {
|
|
|
5096
5066
|
read: true,
|
|
5097
5067
|
type: 'boolean',
|
|
5098
5068
|
isEvent: true,
|
|
5099
|
-
getter: payload =>
|
|
5069
|
+
getter: payload => payload.action === 'single_3' ? true : undefined,
|
|
5100
5070
|
},
|
|
5101
5071
|
btn4_single: {
|
|
5102
5072
|
id: 'btn4_single',
|
|
@@ -5108,7 +5078,7 @@ const states = {
|
|
|
5108
5078
|
read: true,
|
|
5109
5079
|
type: 'boolean',
|
|
5110
5080
|
isEvent: true,
|
|
5111
|
-
getter: payload =>
|
|
5081
|
+
getter: payload => payload.action === 'single_4' ? true : undefined,
|
|
5112
5082
|
},
|
|
5113
5083
|
btn5_single: {
|
|
5114
5084
|
id: 'btn5_single',
|
|
@@ -5120,7 +5090,7 @@ const states = {
|
|
|
5120
5090
|
read: true,
|
|
5121
5091
|
type: 'boolean',
|
|
5122
5092
|
isEvent: true,
|
|
5123
|
-
getter: payload =>
|
|
5093
|
+
getter: payload => payload.action === 'single_5' ? true : undefined,
|
|
5124
5094
|
},
|
|
5125
5095
|
btn6_single: {
|
|
5126
5096
|
id: 'btn6_single',
|
|
@@ -5132,7 +5102,7 @@ const states = {
|
|
|
5132
5102
|
read: true,
|
|
5133
5103
|
type: 'boolean',
|
|
5134
5104
|
isEvent: true,
|
|
5135
|
-
getter: payload =>
|
|
5105
|
+
getter: payload => payload.action === 'single_6' ? true : undefined,
|
|
5136
5106
|
},
|
|
5137
5107
|
btn7_single: {
|
|
5138
5108
|
id: 'btn7_single',
|
|
@@ -5144,7 +5114,7 @@ const states = {
|
|
|
5144
5114
|
read: true,
|
|
5145
5115
|
type: 'boolean',
|
|
5146
5116
|
isEvent: true,
|
|
5147
|
-
getter: payload =>
|
|
5117
|
+
getter: payload => payload.action === 'single_7' ? true : undefined,
|
|
5148
5118
|
},
|
|
5149
5119
|
btn8_single: {
|
|
5150
5120
|
id: 'btn8_single',
|
|
@@ -5156,7 +5126,7 @@ const states = {
|
|
|
5156
5126
|
read: true,
|
|
5157
5127
|
type: 'boolean',
|
|
5158
5128
|
isEvent: true,
|
|
5159
|
-
getter: payload =>
|
|
5129
|
+
getter: payload => payload.action === 'single_8' ? true : undefined,
|
|
5160
5130
|
},
|
|
5161
5131
|
radioactive_events_per_minute: {
|
|
5162
5132
|
id: 'radioactive_events_per_minute',
|
|
@@ -5187,7 +5157,7 @@ const states = {
|
|
|
5187
5157
|
write: false,
|
|
5188
5158
|
read: true,
|
|
5189
5159
|
type: 'boolean',
|
|
5190
|
-
getter: payload =>
|
|
5160
|
+
getter: payload => payload.action === 'on' ? true : (payload.action === 'off' ? false : undefined),
|
|
5191
5161
|
},
|
|
5192
5162
|
geiger_sensitivity: {
|
|
5193
5163
|
id: 'sensitivity',
|
|
@@ -5207,7 +5177,7 @@ const states = {
|
|
|
5207
5177
|
write: true,
|
|
5208
5178
|
read: true,
|
|
5209
5179
|
type: 'boolean',
|
|
5210
|
-
setter:
|
|
5180
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5211
5181
|
},
|
|
5212
5182
|
geiger_buzzer_feedback: {
|
|
5213
5183
|
id: 'buzzer_feedback',
|
|
@@ -5217,7 +5187,7 @@ const states = {
|
|
|
5217
5187
|
write: true,
|
|
5218
5188
|
read: true,
|
|
5219
5189
|
type: 'boolean',
|
|
5220
|
-
setter:
|
|
5190
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5221
5191
|
},
|
|
5222
5192
|
geiger_sensors_count: {
|
|
5223
5193
|
id: 'sensors_count',
|
|
@@ -5238,7 +5208,7 @@ const states = {
|
|
|
5238
5208
|
read: true,
|
|
5239
5209
|
type: 'string',
|
|
5240
5210
|
states: '0:СБМ-20/СТС-5/BOI-33;1:СБМ-19/СТС-6;3:Other',
|
|
5241
|
-
setter:
|
|
5211
|
+
setter: value => parseInt(value),
|
|
5242
5212
|
},
|
|
5243
5213
|
geiger_alert_threshold: {
|
|
5244
5214
|
id: 'alert_threshold',
|
|
@@ -5259,7 +5229,7 @@ const states = {
|
|
|
5259
5229
|
write: false,
|
|
5260
5230
|
read: true,
|
|
5261
5231
|
type: 'string',
|
|
5262
|
-
getter: payload =>
|
|
5232
|
+
getter: payload => payload.action.startsWith('scene_') ? payload.action.split('_')[1] : undefined,
|
|
5263
5233
|
},
|
|
5264
5234
|
brightness_step: {
|
|
5265
5235
|
id: 'brightness_step',
|
|
@@ -5331,7 +5301,7 @@ const states = {
|
|
|
5331
5301
|
read: true,
|
|
5332
5302
|
type: 'boolean',
|
|
5333
5303
|
isEvent: true,
|
|
5334
|
-
getter: payload =>
|
|
5304
|
+
getter: payload => payload.action === 'brightness_step_up' ? true : undefined,
|
|
5335
5305
|
},
|
|
5336
5306
|
brightness_step_down: {
|
|
5337
5307
|
id: 'brightness_step_down',
|
|
@@ -5343,7 +5313,7 @@ const states = {
|
|
|
5343
5313
|
read: true,
|
|
5344
5314
|
type: 'boolean',
|
|
5345
5315
|
isEvent: true,
|
|
5346
|
-
getter: payload =>
|
|
5316
|
+
getter: payload => payload.action === 'brightness_step_down' ? true : undefined,
|
|
5347
5317
|
},
|
|
5348
5318
|
brightness_step_up_size: {
|
|
5349
5319
|
id: 'brightness_step_up_size',
|
|
@@ -5355,7 +5325,7 @@ const states = {
|
|
|
5355
5325
|
read: true,
|
|
5356
5326
|
type: 'number',
|
|
5357
5327
|
unit: '',
|
|
5358
|
-
getter: payload =>
|
|
5328
|
+
getter: payload => payload.action === 'brightness_step_up' ? payload.action_step_size : undefined,
|
|
5359
5329
|
},
|
|
5360
5330
|
brightness_step_down_size: {
|
|
5361
5331
|
id: 'brightness_step_down_size',
|
|
@@ -5367,7 +5337,7 @@ const states = {
|
|
|
5367
5337
|
read: true,
|
|
5368
5338
|
type: 'number',
|
|
5369
5339
|
unit: '',
|
|
5370
|
-
getter: payload =>
|
|
5340
|
+
getter: payload => payload.action === 'brightness_step_down' ? payload.action_step_size : undefined,
|
|
5371
5341
|
},
|
|
5372
5342
|
brightness_stop: {
|
|
5373
5343
|
id: 'brightness_stop',
|
|
@@ -5379,7 +5349,7 @@ const states = {
|
|
|
5379
5349
|
read: true,
|
|
5380
5350
|
type: 'boolean',
|
|
5381
5351
|
isEvent: true,
|
|
5382
|
-
getter: payload =>
|
|
5352
|
+
getter: payload => payload.action === 'brightness_stop' ? true : undefined,
|
|
5383
5353
|
},
|
|
5384
5354
|
color_temperature_move: {
|
|
5385
5355
|
id: 'color_temperature_move',
|
|
@@ -5391,7 +5361,7 @@ const states = {
|
|
|
5391
5361
|
read: true,
|
|
5392
5362
|
type: 'boolean',
|
|
5393
5363
|
isEvent: true,
|
|
5394
|
-
getter: payload =>
|
|
5364
|
+
getter: payload => payload.action === 'color_temperature_move' ? true : undefined,
|
|
5395
5365
|
},
|
|
5396
5366
|
color_temperature_move_value: {
|
|
5397
5367
|
id: 'color_temperature_move_value',
|
|
@@ -5403,7 +5373,7 @@ const states = {
|
|
|
5403
5373
|
read: true,
|
|
5404
5374
|
type: 'number',
|
|
5405
5375
|
unit: '',
|
|
5406
|
-
getter: payload =>
|
|
5376
|
+
getter: payload => payload.action === 'color_temperature_move' ? payload.action_color_temperature : undefined,
|
|
5407
5377
|
},
|
|
5408
5378
|
color_move: {
|
|
5409
5379
|
id: 'color_move',
|
|
@@ -5415,7 +5385,7 @@ const states = {
|
|
|
5415
5385
|
read: true,
|
|
5416
5386
|
type: 'boolean',
|
|
5417
5387
|
isEvent: true,
|
|
5418
|
-
getter: payload =>
|
|
5388
|
+
getter: payload => payload.action === 'color_move' ? true : undefined,
|
|
5419
5389
|
},
|
|
5420
5390
|
color_move_value: {
|
|
5421
5391
|
id: 'color_move_value',
|
|
@@ -5426,10 +5396,10 @@ const states = {
|
|
|
5426
5396
|
write: false,
|
|
5427
5397
|
read: true,
|
|
5428
5398
|
type: 'string',
|
|
5429
|
-
getter:
|
|
5399
|
+
getter: payload => {
|
|
5430
5400
|
if( payload.action === 'color_move') {
|
|
5431
5401
|
const colorval = rgb.cie_to_rgb(payload.action_color.x, payload.action_color.y);
|
|
5432
|
-
return
|
|
5402
|
+
return `#${utils.decimalToHex(colorval[0])}${utils.decimalToHex(colorval[1])}${utils.decimalToHex(colorval[2])}`;
|
|
5433
5403
|
} else {
|
|
5434
5404
|
return undefined;
|
|
5435
5405
|
}
|
|
@@ -5445,7 +5415,7 @@ const states = {
|
|
|
5445
5415
|
read: true,
|
|
5446
5416
|
type: 'boolean',
|
|
5447
5417
|
isEvent: true,
|
|
5448
|
-
getter: payload =>
|
|
5418
|
+
getter: payload => payload.action === 'brightness_move_up' ? true : undefined,
|
|
5449
5419
|
},
|
|
5450
5420
|
brightness_move_up_size: {
|
|
5451
5421
|
id: 'brightness_move_up_size',
|
|
@@ -5457,7 +5427,7 @@ const states = {
|
|
|
5457
5427
|
read: true,
|
|
5458
5428
|
type: 'number',
|
|
5459
5429
|
unit: '',
|
|
5460
|
-
getter: payload =>
|
|
5430
|
+
getter: payload => payload.action === 'brightness_move_up' ? payload.action_rate : undefined,
|
|
5461
5431
|
},
|
|
5462
5432
|
brightness_move_down: {
|
|
5463
5433
|
id: 'brightness_move_down',
|
|
@@ -5469,7 +5439,7 @@ const states = {
|
|
|
5469
5439
|
read: true,
|
|
5470
5440
|
type: 'boolean',
|
|
5471
5441
|
isEvent: true,
|
|
5472
|
-
getter: payload =>
|
|
5442
|
+
getter: payload => payload.action === 'brightness_move_down' ? true : undefined,
|
|
5473
5443
|
},
|
|
5474
5444
|
brightness_move_down_size: {
|
|
5475
5445
|
id: 'brightness_move_down_size',
|
|
@@ -5481,7 +5451,7 @@ const states = {
|
|
|
5481
5451
|
read: true,
|
|
5482
5452
|
type: 'number',
|
|
5483
5453
|
unit: '',
|
|
5484
|
-
getter: payload =>
|
|
5454
|
+
getter: payload => payload.action === 'brightness_move_down' ? payload.action_rate : undefined,
|
|
5485
5455
|
},
|
|
5486
5456
|
enhanced_move_to_hue_and_saturation: {
|
|
5487
5457
|
id: 'enhanced_move',
|
|
@@ -5493,7 +5463,7 @@ const states = {
|
|
|
5493
5463
|
read: true,
|
|
5494
5464
|
type: 'boolean',
|
|
5495
5465
|
isEvent: true,
|
|
5496
|
-
getter: payload =>
|
|
5466
|
+
getter: payload => payload.action === 'enhanced_move_to_hue_and_saturation' ? true : undefined,
|
|
5497
5467
|
},
|
|
5498
5468
|
enhanced_move_enhanced_hue: {
|
|
5499
5469
|
id: 'enhanced_move_enhanced_hue',
|
|
@@ -5505,7 +5475,7 @@ const states = {
|
|
|
5505
5475
|
read: true,
|
|
5506
5476
|
type: 'number',
|
|
5507
5477
|
unit: '',
|
|
5508
|
-
getter: payload =>
|
|
5478
|
+
getter: payload => payload.action === 'enhanced_move_to_hue_and_saturation' ? payload.action_enhanced_hue : undefined,
|
|
5509
5479
|
},
|
|
5510
5480
|
enhanced_move_hue: {
|
|
5511
5481
|
id: 'enhanced_move_hue',
|
|
@@ -5517,7 +5487,7 @@ const states = {
|
|
|
5517
5487
|
read: true,
|
|
5518
5488
|
type: 'number',
|
|
5519
5489
|
unit: '',
|
|
5520
|
-
getter: payload =>
|
|
5490
|
+
getter: payload => payload.action === 'enhanced_move_to_hue_and_saturation' ? payload.action_hue : undefined,
|
|
5521
5491
|
},
|
|
5522
5492
|
enhanced_move_saturation: {
|
|
5523
5493
|
id: 'enhanced_move_saturation',
|
|
@@ -5529,7 +5499,7 @@ const states = {
|
|
|
5529
5499
|
read: true,
|
|
5530
5500
|
type: 'number',
|
|
5531
5501
|
unit: '',
|
|
5532
|
-
getter: payload =>
|
|
5502
|
+
getter: payload => payload.action === 'enhanced_move_to_hue_and_saturation' ? payload.action_saturation : undefined,
|
|
5533
5503
|
},
|
|
5534
5504
|
density: {
|
|
5535
5505
|
id: 'density',
|
|
@@ -5638,7 +5608,7 @@ const states = {
|
|
|
5638
5608
|
write: false,
|
|
5639
5609
|
read: true,
|
|
5640
5610
|
type: 'boolean',
|
|
5641
|
-
getter: payload =>
|
|
5611
|
+
getter: payload => payload.action === 'on_1' ? false : (payload.action === 'off_1' ? true : undefined),
|
|
5642
5612
|
isEvent: true,
|
|
5643
5613
|
},
|
|
5644
5614
|
rob_2_click: {
|
|
@@ -5650,7 +5620,7 @@ const states = {
|
|
|
5650
5620
|
write: false,
|
|
5651
5621
|
read: true,
|
|
5652
5622
|
type: 'boolean',
|
|
5653
|
-
getter: payload =>
|
|
5623
|
+
getter: payload => payload.action === 'on_2' ? false : (payload.action === 'off_2' ? true : undefined),
|
|
5654
5624
|
isEvent: true,
|
|
5655
5625
|
},
|
|
5656
5626
|
rob_3_click: {
|
|
@@ -5662,7 +5632,7 @@ const states = {
|
|
|
5662
5632
|
write: false,
|
|
5663
5633
|
read: true,
|
|
5664
5634
|
type: 'boolean',
|
|
5665
|
-
getter: payload =>
|
|
5635
|
+
getter: payload => payload.action === 'on_3' ? false : (payload.action === 'off_3' ? true : undefined),
|
|
5666
5636
|
isEvent: true,
|
|
5667
5637
|
},
|
|
5668
5638
|
rob_4_click: {
|
|
@@ -5674,7 +5644,7 @@ const states = {
|
|
|
5674
5644
|
write: false,
|
|
5675
5645
|
read: true,
|
|
5676
5646
|
type: 'boolean',
|
|
5677
|
-
getter: payload =>
|
|
5647
|
+
getter: payload => payload.action === 'on_4' ? false : (payload.action === 'off_4' ? true : undefined),
|
|
5678
5648
|
isEvent: true,
|
|
5679
5649
|
},
|
|
5680
5650
|
|
|
@@ -5698,8 +5668,8 @@ const states = {
|
|
|
5698
5668
|
write: true,
|
|
5699
5669
|
read: true,
|
|
5700
5670
|
type: 'boolean',
|
|
5701
|
-
getter: payload =>
|
|
5702
|
-
setter:
|
|
5671
|
+
getter: payload => payload.child_lock === 'LOCKED',
|
|
5672
|
+
setter: value => value ? 'LOCKED' : 'UNLOCKED',
|
|
5703
5673
|
},
|
|
5704
5674
|
volume_percent: {
|
|
5705
5675
|
id: 'volume',
|
|
@@ -5763,7 +5733,7 @@ const states = {
|
|
|
5763
5733
|
write: true,
|
|
5764
5734
|
read: true,
|
|
5765
5735
|
type: 'boolean',
|
|
5766
|
-
setter:
|
|
5736
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5767
5737
|
},
|
|
5768
5738
|
airsense_enable_abc: {
|
|
5769
5739
|
id: 'enable_abc',
|
|
@@ -5773,7 +5743,7 @@ const states = {
|
|
|
5773
5743
|
write: true,
|
|
5774
5744
|
read: true,
|
|
5775
5745
|
type: 'boolean',
|
|
5776
|
-
setter:
|
|
5746
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
5777
5747
|
},
|
|
5778
5748
|
airsense_threshold1: {
|
|
5779
5749
|
id: 'threshold1',
|
|
@@ -5809,25 +5779,26 @@ const states = {
|
|
|
5809
5779
|
states: 'steady:steady;snow:snow;rainbow:rainbow;snake:snake;twinkle:twinkle;firework:firework;horizontal_flag:horizontal_flag;waves:waves;updown:updown;vintage:vintage;fading:fading;collide:collide;strobe:strobe;sparkles:sparkles;carnaval:carnaval;glow:glow',
|
|
5810
5780
|
setter: (value, options) => {
|
|
5811
5781
|
const effectjson = {
|
|
5812
|
-
colors:[{r: 255,g: 0,b: 0},{r: 0,g: 255,b: 0},{r: 0,g: 0,b: 255}],
|
|
5813
|
-
speed:10,
|
|
5814
|
-
effect:'glow',
|
|
5782
|
+
colors: [{r: 255, g: 0, b: 0}, {r: 0, g: 255, b: 0}, {r: 0, g: 0, b: 255}],
|
|
5783
|
+
speed: 10,
|
|
5784
|
+
effect: 'glow',
|
|
5815
5785
|
};
|
|
5816
|
-
if (options && options.hasOwnProperty('effect_speed'))
|
|
5786
|
+
if (options && options.hasOwnProperty('effect_speed')) {
|
|
5817
5787
|
effectjson.speed = options.effect_speed;
|
|
5818
|
-
|
|
5819
|
-
{
|
|
5788
|
+
}
|
|
5789
|
+
if (options && options.hasOwnProperty('effect_colors')) {
|
|
5820
5790
|
effectjson.colors = rgb.colorArrayFromString(options.effect_colors);
|
|
5821
5791
|
}
|
|
5822
5792
|
effectjson.effect = value;
|
|
5823
5793
|
return effectjson;
|
|
5824
5794
|
},
|
|
5825
|
-
getter:
|
|
5826
|
-
if (payload && payload.effect && payload.effect.hasOwnProperty('effect'))
|
|
5827
|
-
|
|
5795
|
+
getter: payload => {
|
|
5796
|
+
if (payload && payload.effect && payload.effect.hasOwnProperty('effect')) {
|
|
5797
|
+
return payload.effect.effect;
|
|
5798
|
+
}
|
|
5799
|
+
return 'steady';
|
|
5828
5800
|
}
|
|
5829
|
-
|
|
5830
|
-
},
|
|
5801
|
+
},
|
|
5831
5802
|
effect_json: {
|
|
5832
5803
|
id: 'effect_json',
|
|
5833
5804
|
name: 'Effect',
|
|
@@ -5840,19 +5811,21 @@ const states = {
|
|
|
5840
5811
|
setter: (value, options) => {
|
|
5841
5812
|
try {
|
|
5842
5813
|
return JSON.parse(value);
|
|
5843
|
-
}
|
|
5844
|
-
catch {
|
|
5814
|
+
} catch {
|
|
5845
5815
|
const effectjson = {
|
|
5846
|
-
colors:[{r: 255,g: 0,b: 0},{r: 0,g: 255,b: 0},{r: 0,g: 0,b: 255}],
|
|
5847
|
-
speed:10,
|
|
5848
|
-
effect:'glow',
|
|
5816
|
+
colors: [{r: 255, g: 0, b: 0}, {r: 0, g: 255, b: 0}, {r: 0, g: 0, b: 255}],
|
|
5817
|
+
speed: 10,
|
|
5818
|
+
effect: 'glow',
|
|
5849
5819
|
};
|
|
5850
|
-
if (options && options.hasOwnProperty('effect_speed'))
|
|
5820
|
+
if (options && options.hasOwnProperty('effect_speed')) {
|
|
5851
5821
|
effectjson.speed = options.effect_speed;
|
|
5852
|
-
|
|
5822
|
+
}
|
|
5823
|
+
if (options && options.hasOwnProperty('effect_colors')) {
|
|
5853
5824
|
effectjson.colors = rgb.colorArrayFromString(options.effect_colors);
|
|
5854
|
-
|
|
5825
|
+
}
|
|
5826
|
+
if (options && options.hasOwnProperty('effect_type')) {
|
|
5855
5827
|
effectjson.effect = options.effect_type;
|
|
5828
|
+
}
|
|
5856
5829
|
value = JSON.stringify(effectjson);
|
|
5857
5830
|
return effectjson;
|
|
5858
5831
|
}
|
|
@@ -5873,19 +5846,23 @@ const states = {
|
|
|
5873
5846
|
unit: '',
|
|
5874
5847
|
setter: (value, options) => {
|
|
5875
5848
|
const effectjson = {
|
|
5876
|
-
colors:[{r: 255,g: 0,b: 0},{r: 0,g: 255,b: 0},{r: 0,g: 0,b: 255}],
|
|
5877
|
-
speed:10,
|
|
5878
|
-
effect:'snake',
|
|
5849
|
+
colors:[{r: 255, g: 0, b: 0}, {r: 0, g: 255, b: 0}, {r: 0, g: 0, b: 255}],
|
|
5850
|
+
speed: 10,
|
|
5851
|
+
effect: 'snake',
|
|
5879
5852
|
};
|
|
5880
|
-
if (options && options.hasOwnProperty('effect_type'))
|
|
5853
|
+
if (options && options.hasOwnProperty('effect_type')) {
|
|
5881
5854
|
effectjson.effect = options.effect_type;
|
|
5882
|
-
|
|
5855
|
+
}
|
|
5856
|
+
if (options && options.hasOwnProperty('effect_colors')) {
|
|
5883
5857
|
effectjson.colors = rgb.colorArrayFromString(options.effect_colors);
|
|
5858
|
+
}
|
|
5884
5859
|
effectjson.speed = value;
|
|
5885
5860
|
return effectjson;
|
|
5886
5861
|
},
|
|
5887
|
-
getter:
|
|
5888
|
-
if (payload && payload.effect && payload.effect.hasOwnProperty('speed'))
|
|
5862
|
+
getter: payload => {
|
|
5863
|
+
if (payload && payload.effect && payload.effect.hasOwnProperty('speed')) {
|
|
5864
|
+
return payload.effect.speed;
|
|
5865
|
+
}
|
|
5889
5866
|
return 1;
|
|
5890
5867
|
}
|
|
5891
5868
|
},
|
|
@@ -5902,20 +5879,24 @@ const states = {
|
|
|
5902
5879
|
type: 'string',
|
|
5903
5880
|
setter: (value, options) => {
|
|
5904
5881
|
const effectjson = {
|
|
5905
|
-
colors:[{r: 255,g: 0,b: 0},{r: 0,g: 255,b: 0},{r: 0,g: 0,b: 255}],
|
|
5906
|
-
speed:10,
|
|
5907
|
-
effect:'sparkle',
|
|
5882
|
+
colors: [{r: 255, g: 0, b: 0}, {r: 0, g: 255, b: 0}, {r: 0, g: 0, b: 255}],
|
|
5883
|
+
speed: 10,
|
|
5884
|
+
effect: 'sparkle',
|
|
5908
5885
|
};
|
|
5909
5886
|
|
|
5910
|
-
if (options && options.hasOwnProperty('effect_speed'))
|
|
5887
|
+
if (options && options.hasOwnProperty('effect_speed')) {
|
|
5911
5888
|
effectjson.speed = options.effect_speed;
|
|
5912
|
-
|
|
5889
|
+
}
|
|
5890
|
+
if (options && options.hasOwnProperty('effect_type')) {
|
|
5913
5891
|
effectjson.effect = options.effect_type;
|
|
5892
|
+
}
|
|
5914
5893
|
effectjson.colors = rgb.colorArrayFromString(value);
|
|
5915
5894
|
return effectjson;
|
|
5916
5895
|
},
|
|
5917
|
-
getter:
|
|
5918
|
-
if (payload && payload.effect && payload.effect.hasOwnProperty('colors'))
|
|
5896
|
+
getter: payload => {
|
|
5897
|
+
if (payload && payload.effect && payload.effect.hasOwnProperty('colors')) {
|
|
5898
|
+
return rgb.colorStringFromRGBArray(payload.effect.colors);
|
|
5899
|
+
}
|
|
5919
5900
|
return '#ffff00,#ff00ff,#00ffff,#0000ff,#00ff00,#ff0000';
|
|
5920
5901
|
}
|
|
5921
5902
|
},
|
|
@@ -5945,19 +5926,20 @@ const states = {
|
|
|
5945
5926
|
const _rgb = colors.ParseColor(value);
|
|
5946
5927
|
const hsv = rgb.rgbToHSV(_rgb.r, _rgb.g, _rgb.b, true);
|
|
5947
5928
|
return {
|
|
5948
|
-
hue: Math.min(Math.max(hsv.h,1),359),
|
|
5929
|
+
hue: Math.min(Math.max(hsv.h, 1), 359),
|
|
5949
5930
|
saturation: hsv.s,
|
|
5950
5931
|
brightness: Math.floor(hsv.v * 2.55),
|
|
5951
|
-
|
|
5952
5932
|
};
|
|
5953
5933
|
},
|
|
5954
|
-
getter:
|
|
5934
|
+
getter: payload => {
|
|
5955
5935
|
if (payload.color) {
|
|
5956
5936
|
const c = payload.color;
|
|
5957
|
-
if (c.hasOwnProperty(
|
|
5958
|
-
|
|
5959
|
-
|
|
5960
|
-
|
|
5937
|
+
if (c.hasOwnProperty('h') && c.hasOwnProperty('s') && c.hasOwnProperty('b')) {
|
|
5938
|
+
return rgb.hsvToRGBString(c.h, c.s, c.b * 100 / 255);
|
|
5939
|
+
}
|
|
5940
|
+
if (c.hasOwnProperty('h') && c.hasOwnProperty('s') && c.hasOwnProperty('v')) {
|
|
5941
|
+
return rgb.hsvToRGBString(c.h, c.s, c.v * 100);
|
|
5942
|
+
}
|
|
5961
5943
|
}
|
|
5962
5944
|
},
|
|
5963
5945
|
setterOpt: (value, options) => {
|
|
@@ -5998,9 +5980,9 @@ const states = {
|
|
|
5998
5980
|
type: 'number',
|
|
5999
5981
|
write: false,
|
|
6000
5982
|
read: true,
|
|
6001
|
-
getter:
|
|
5983
|
+
getter: payload => {
|
|
6002
5984
|
const rv = {};
|
|
6003
|
-
const id =
|
|
5985
|
+
const id = typeof(payload.device_l1) == 'string' ? payload.device_l1.replace(/[-. ]/g, '') : 'unset';
|
|
6004
5986
|
let unit = undefined;
|
|
6005
5987
|
let measurement = undefined;
|
|
6006
5988
|
for (const item in payload) {
|
|
@@ -6014,12 +5996,13 @@ const states = {
|
|
|
6014
5996
|
}
|
|
6015
5997
|
}
|
|
6016
5998
|
}
|
|
6017
|
-
if (measurement)
|
|
6018
|
-
rv.stateid = id
|
|
6019
|
-
else
|
|
5999
|
+
if (measurement) {
|
|
6000
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6001
|
+
} else {
|
|
6020
6002
|
rv.stateid = id;
|
|
6003
|
+
}
|
|
6021
6004
|
rv.value = payload.l1;
|
|
6022
|
-
rv.name =
|
|
6005
|
+
rv.name = measurement ? `${measurement} 0x${id}` : `0x${id}`;
|
|
6023
6006
|
rv.unit = unit;
|
|
6024
6007
|
rv.role = measurement;
|
|
6025
6008
|
|
|
@@ -6035,9 +6018,9 @@ const states = {
|
|
|
6035
6018
|
type: 'number',
|
|
6036
6019
|
write: false,
|
|
6037
6020
|
read: true,
|
|
6038
|
-
getter:
|
|
6021
|
+
getter: payload => {
|
|
6039
6022
|
const rv = {};
|
|
6040
|
-
const id =
|
|
6023
|
+
const id = typeof(payload.device_l2) == 'string' ? payload.device_l2.replace(/[-. ]/g, '') : 'unset';
|
|
6041
6024
|
let unit = undefined;
|
|
6042
6025
|
let measurement = undefined;
|
|
6043
6026
|
for (const item in payload) {
|
|
@@ -6051,12 +6034,13 @@ const states = {
|
|
|
6051
6034
|
}
|
|
6052
6035
|
}
|
|
6053
6036
|
}
|
|
6054
|
-
if (measurement)
|
|
6055
|
-
rv.stateid = id
|
|
6056
|
-
else
|
|
6037
|
+
if (measurement) {
|
|
6038
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6039
|
+
} else {
|
|
6057
6040
|
rv.stateid = id;
|
|
6041
|
+
}
|
|
6058
6042
|
rv.value = payload.l2;
|
|
6059
|
-
rv.name =
|
|
6043
|
+
rv.name = measurement ? `${measurement} 0x${id}` : `0x${id}`;
|
|
6060
6044
|
rv.unit = unit;
|
|
6061
6045
|
rv.role = measurement;
|
|
6062
6046
|
|
|
@@ -6072,9 +6056,9 @@ const states = {
|
|
|
6072
6056
|
type: 'number',
|
|
6073
6057
|
write: false,
|
|
6074
6058
|
read: true,
|
|
6075
|
-
getter:
|
|
6059
|
+
getter: payload => {
|
|
6076
6060
|
const rv = {};
|
|
6077
|
-
const id =
|
|
6061
|
+
const id = typeof(payload.device_l3) == 'string' ? payload.device_l3.replace(/[-. ]/g, '') : 'unset';
|
|
6078
6062
|
let unit = undefined;
|
|
6079
6063
|
let measurement = undefined;
|
|
6080
6064
|
for (const item in payload) {
|
|
@@ -6088,12 +6072,13 @@ const states = {
|
|
|
6088
6072
|
}
|
|
6089
6073
|
}
|
|
6090
6074
|
}
|
|
6091
|
-
if (measurement)
|
|
6092
|
-
rv.stateid = id
|
|
6093
|
-
else
|
|
6075
|
+
if (measurement) {
|
|
6076
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6077
|
+
} else {
|
|
6094
6078
|
rv.stateid = id;
|
|
6079
|
+
}
|
|
6095
6080
|
rv.value = payload.l3;
|
|
6096
|
-
rv.name =
|
|
6081
|
+
rv.name = measurement ? `${measurement} 0x${id}`: `0x${id}`;
|
|
6097
6082
|
rv.unit = unit;
|
|
6098
6083
|
rv.role = measurement;
|
|
6099
6084
|
|
|
@@ -6109,9 +6094,9 @@ const states = {
|
|
|
6109
6094
|
type: 'number',
|
|
6110
6095
|
write: false,
|
|
6111
6096
|
read: true,
|
|
6112
|
-
getter:
|
|
6097
|
+
getter: payload => {
|
|
6113
6098
|
const rv = {};
|
|
6114
|
-
const id =
|
|
6099
|
+
const id = typeof(payload.device_l4) == 'string' ? payload.device_l4.replace(/[-. ]/g, '') : 'unset';
|
|
6115
6100
|
let unit = undefined;
|
|
6116
6101
|
let measurement = undefined;
|
|
6117
6102
|
for (const item in payload) {
|
|
@@ -6125,12 +6110,13 @@ const states = {
|
|
|
6125
6110
|
}
|
|
6126
6111
|
}
|
|
6127
6112
|
}
|
|
6128
|
-
if (measurement)
|
|
6129
|
-
rv.stateid = id
|
|
6130
|
-
else
|
|
6113
|
+
if (measurement) {
|
|
6114
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6115
|
+
} else {
|
|
6131
6116
|
rv.stateid = id;
|
|
6117
|
+
}
|
|
6132
6118
|
rv.value = payload.l4;
|
|
6133
|
-
rv.name =
|
|
6119
|
+
rv.name = measurement ? `${measurement} 0x${id}` : `0x${id}`;
|
|
6134
6120
|
rv.unit = unit;
|
|
6135
6121
|
rv.role = measurement;
|
|
6136
6122
|
|
|
@@ -6146,9 +6132,9 @@ const states = {
|
|
|
6146
6132
|
type: 'number',
|
|
6147
6133
|
write: false,
|
|
6148
6134
|
read: true,
|
|
6149
|
-
getter:
|
|
6135
|
+
getter: payload => {
|
|
6150
6136
|
const rv = {};
|
|
6151
|
-
const id =
|
|
6137
|
+
const id = typeof(payload.device_l5) == 'string' ? payload.device_l5.replace(/[-. ]/g, '') : 'unset';
|
|
6152
6138
|
let unit = undefined;
|
|
6153
6139
|
let measurement = undefined;
|
|
6154
6140
|
for (const item in payload) {
|
|
@@ -6162,12 +6148,13 @@ const states = {
|
|
|
6162
6148
|
}
|
|
6163
6149
|
}
|
|
6164
6150
|
}
|
|
6165
|
-
if (measurement)
|
|
6166
|
-
rv.stateid = id
|
|
6167
|
-
else
|
|
6151
|
+
if (measurement) {
|
|
6152
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6153
|
+
} else {
|
|
6168
6154
|
rv.stateid = id;
|
|
6155
|
+
}
|
|
6169
6156
|
rv.value = payload.l5;
|
|
6170
|
-
rv.name =
|
|
6157
|
+
rv.name = measurement ? `${measurement} 0x${id}` : `0x${id}`;
|
|
6171
6158
|
rv.unit = unit;
|
|
6172
6159
|
rv.role = measurement;
|
|
6173
6160
|
|
|
@@ -6183,9 +6170,9 @@ const states = {
|
|
|
6183
6170
|
type: 'number',
|
|
6184
6171
|
write: false,
|
|
6185
6172
|
read: true,
|
|
6186
|
-
getter:
|
|
6173
|
+
getter: payload => {
|
|
6187
6174
|
const rv = {};
|
|
6188
|
-
const id =
|
|
6175
|
+
const id = typeof(payload.device_l6) == 'string' ? payload.device_l6.replace(/[-. ]/g, '') : 'unset';
|
|
6189
6176
|
let unit = undefined;
|
|
6190
6177
|
let measurement = undefined;
|
|
6191
6178
|
for (const item in payload) {
|
|
@@ -6199,12 +6186,13 @@ const states = {
|
|
|
6199
6186
|
}
|
|
6200
6187
|
}
|
|
6201
6188
|
}
|
|
6202
|
-
if (measurement)
|
|
6203
|
-
rv.stateid = id
|
|
6204
|
-
else
|
|
6189
|
+
if (measurement) {
|
|
6190
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6191
|
+
} else {
|
|
6205
6192
|
rv.stateid = id;
|
|
6193
|
+
}
|
|
6206
6194
|
rv.value = payload.l6;
|
|
6207
|
-
rv.name =
|
|
6195
|
+
rv.name = measurement ? `${measurement} 0x${id}` : `0x${id}`;
|
|
6208
6196
|
rv.unit = unit;
|
|
6209
6197
|
rv.role = measurement;
|
|
6210
6198
|
|
|
@@ -6220,9 +6208,9 @@ const states = {
|
|
|
6220
6208
|
type: 'number',
|
|
6221
6209
|
write: false,
|
|
6222
6210
|
read: true,
|
|
6223
|
-
getter:
|
|
6211
|
+
getter: payload => {
|
|
6224
6212
|
const rv = {};
|
|
6225
|
-
const id =
|
|
6213
|
+
const id = typeof(payload.device_l7) == 'string' ? payload.device_l7.replace(/[-. ]/g, '') : 'unset';
|
|
6226
6214
|
let unit = undefined;
|
|
6227
6215
|
let measurement = undefined;
|
|
6228
6216
|
for (const item in payload) {
|
|
@@ -6236,12 +6224,13 @@ const states = {
|
|
|
6236
6224
|
}
|
|
6237
6225
|
}
|
|
6238
6226
|
}
|
|
6239
|
-
if (measurement)
|
|
6240
|
-
rv.stateid = id
|
|
6241
|
-
else
|
|
6227
|
+
if (measurement) {
|
|
6228
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6229
|
+
} else {
|
|
6242
6230
|
rv.stateid = id;
|
|
6231
|
+
}
|
|
6243
6232
|
rv.value = payload.l7;
|
|
6244
|
-
rv.name =
|
|
6233
|
+
rv.name = measurement ? `${measurement} 0x${id}` : `0x${id}`;
|
|
6245
6234
|
rv.unit = unit;
|
|
6246
6235
|
rv.role = measurement;
|
|
6247
6236
|
|
|
@@ -6257,9 +6246,9 @@ const states = {
|
|
|
6257
6246
|
type: 'number',
|
|
6258
6247
|
write: false,
|
|
6259
6248
|
read: true,
|
|
6260
|
-
getter:
|
|
6249
|
+
getter: payload => {
|
|
6261
6250
|
const rv = {};
|
|
6262
|
-
const id =
|
|
6251
|
+
const id = typeof(payload.device_l8) == 'string' ? payload.device_l8.replace(/[-. ]/g, '') : 'unset';
|
|
6263
6252
|
let unit = undefined;
|
|
6264
6253
|
let measurement = undefined;
|
|
6265
6254
|
for (const item in payload) {
|
|
@@ -6273,12 +6262,13 @@ const states = {
|
|
|
6273
6262
|
}
|
|
6274
6263
|
}
|
|
6275
6264
|
}
|
|
6276
|
-
if (measurement)
|
|
6277
|
-
rv.stateid = id
|
|
6278
|
-
else
|
|
6265
|
+
if (measurement) {
|
|
6266
|
+
rv.stateid = `${id}_${measurement}`;
|
|
6267
|
+
} else {
|
|
6279
6268
|
rv.stateid = id;
|
|
6269
|
+
}
|
|
6280
6270
|
rv.value = payload.l8;
|
|
6281
|
-
rv.name =
|
|
6271
|
+
rv.name = measurement ? `${measurement} 0x${id}` : `0x${id}`;
|
|
6282
6272
|
rv.unit = unit;
|
|
6283
6273
|
rv.role = measurement;
|
|
6284
6274
|
|
|
@@ -6295,8 +6285,8 @@ const states = {
|
|
|
6295
6285
|
read: true,
|
|
6296
6286
|
type: 'boolean',
|
|
6297
6287
|
setattr: 'l1',
|
|
6298
|
-
getter:
|
|
6299
|
-
setter:
|
|
6288
|
+
getter: payload => payload === 'ON',
|
|
6289
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
6300
6290
|
},
|
|
6301
6291
|
ptvo_switch_2: {
|
|
6302
6292
|
id: 'channel_2.switch',
|
|
@@ -6308,8 +6298,8 @@ const states = {
|
|
|
6308
6298
|
read: true,
|
|
6309
6299
|
type: 'boolean',
|
|
6310
6300
|
setattr: 'l2',
|
|
6311
|
-
getter:
|
|
6312
|
-
setter:
|
|
6301
|
+
getter: payload => payload === 'ON',
|
|
6302
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
6313
6303
|
},
|
|
6314
6304
|
ptvo_switch_3: {
|
|
6315
6305
|
id: 'channel_3.switch',
|
|
@@ -6321,8 +6311,8 @@ const states = {
|
|
|
6321
6311
|
read: true,
|
|
6322
6312
|
type: 'boolean',
|
|
6323
6313
|
setattr: 'l3',
|
|
6324
|
-
getter:
|
|
6325
|
-
setter:
|
|
6314
|
+
getter: payload => payload === 'ON',
|
|
6315
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
6326
6316
|
},
|
|
6327
6317
|
ptvo_switch_4: {
|
|
6328
6318
|
id: 'channel_4.switch',
|
|
@@ -6333,7 +6323,7 @@ const states = {
|
|
|
6333
6323
|
write: true,
|
|
6334
6324
|
read: true,
|
|
6335
6325
|
type: 'boolean',
|
|
6336
|
-
getter:
|
|
6326
|
+
getter: payload => payload === 'ON',
|
|
6337
6327
|
setattr: 'l4',
|
|
6338
6328
|
},
|
|
6339
6329
|
ptvo_switch_5: {
|
|
@@ -6346,8 +6336,8 @@ const states = {
|
|
|
6346
6336
|
read: true,
|
|
6347
6337
|
type: 'boolean',
|
|
6348
6338
|
setattr: 'l5',
|
|
6349
|
-
getter:
|
|
6350
|
-
setter:
|
|
6339
|
+
getter: payload => payload === 'ON',
|
|
6340
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
6351
6341
|
},
|
|
6352
6342
|
ptvo_switch_6: {
|
|
6353
6343
|
id: 'channel_6.switch',
|
|
@@ -6358,7 +6348,7 @@ const states = {
|
|
|
6358
6348
|
write: true,
|
|
6359
6349
|
read: true,
|
|
6360
6350
|
type: 'boolean',
|
|
6361
|
-
getter:
|
|
6351
|
+
getter: payload => payload === 'ON',
|
|
6362
6352
|
setattr: 'l6',
|
|
6363
6353
|
},
|
|
6364
6354
|
ptvo_switch_7: {
|
|
@@ -6371,8 +6361,8 @@ const states = {
|
|
|
6371
6361
|
read: true,
|
|
6372
6362
|
type: 'boolean',
|
|
6373
6363
|
setattr: 'l7',
|
|
6374
|
-
getter:
|
|
6375
|
-
setter:
|
|
6364
|
+
getter: payload => payload === 'ON',
|
|
6365
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
6376
6366
|
},
|
|
6377
6367
|
ptvo_switch_8: {
|
|
6378
6368
|
id: 'channel_8.switch',
|
|
@@ -6384,8 +6374,8 @@ const states = {
|
|
|
6384
6374
|
read: true,
|
|
6385
6375
|
type: 'boolean',
|
|
6386
6376
|
setattr: 'l8',
|
|
6387
|
-
getter:
|
|
6388
|
-
setter:
|
|
6377
|
+
getter: payload => payload === 'ON',
|
|
6378
|
+
setter: value => value ? 'ON' : 'OFF',
|
|
6389
6379
|
},
|
|
6390
6380
|
ptvo_trigger: {
|
|
6391
6381
|
id: 'trigger',
|
|
@@ -6410,7 +6400,7 @@ const states = {
|
|
|
6410
6400
|
};
|
|
6411
6401
|
|
|
6412
6402
|
module.exports = {
|
|
6413
|
-
states
|
|
6414
|
-
unitLookup
|
|
6415
|
-
nameLookup
|
|
6403
|
+
states,
|
|
6404
|
+
unitLookup,
|
|
6405
|
+
nameLookup,
|
|
6416
6406
|
};
|