homebridge-smartsystem 6.1.7 → 6.2.2

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.
Files changed (66) hide show
  1. package/README.md +14 -0
  2. package/accessories/accessory.js +4 -4
  3. package/accessories/accessory.ts +1 -2
  4. package/accessories/dimmer.js +6 -6
  5. package/accessories/dimmer.ts +1 -1
  6. package/accessories/door.js +2 -2
  7. package/accessories/door.ts +1 -1
  8. package/accessories/garagedoor.js +5 -4
  9. package/accessories/garagedoor.ts +2 -1
  10. package/accessories/lock.js +6 -5
  11. package/accessories/lock.ts +2 -1
  12. package/accessories/mood.js +2 -1
  13. package/accessories/mood.ts +2 -1
  14. package/accessories/temperature.js +2 -2
  15. package/accessories/temperature.ts +1 -1
  16. package/accessories/windowcovering.js +8 -7
  17. package/accessories/windowcovering.ts +2 -1
  18. package/config.json +169 -228
  19. package/config.smappee.json +178 -2
  20. package/config.smartapp.json +63 -0
  21. package/duotecno/Q.js +8 -8
  22. package/duotecno/Q.ts +1 -1
  23. package/duotecno/api.js +3 -3
  24. package/duotecno/api.ts +2 -2
  25. package/duotecno/config.js +24 -23
  26. package/duotecno/config.ts +23 -16
  27. package/duotecno/logger.js +51 -0
  28. package/duotecno/logger.ts +41 -0
  29. package/duotecno/master.js +4 -6
  30. package/duotecno/master.ts +2 -4
  31. package/duotecno/protocol.js +10 -9
  32. package/duotecno/protocol.ts +2 -1
  33. package/duotecno/system.js +17 -41
  34. package/duotecno/system.ts +7 -34
  35. package/duotecno/types.js +58 -131
  36. package/duotecno/types.ts +65 -125
  37. package/index.spec.js +22 -36
  38. package/index.spec.ts +20 -33
  39. package/package.json +2 -2
  40. package/server/base.js +10 -38
  41. package/server/base.ts +9 -42
  42. package/server/p1.js +9 -8
  43. package/server/p1.ts +6 -4
  44. package/server/platform.js +66 -36
  45. package/server/platform.ts +47 -12
  46. package/server/powerbase.js +15 -55
  47. package/server/powerbase.ts +4 -50
  48. package/server/shelly.js +4 -4
  49. package/server/shelly.ts +3 -2
  50. package/server/smappee.js +9 -8
  51. package/server/smappee.ts +4 -3
  52. package/server/smartapp.js +94 -39
  53. package/server/smartapp.ts +73 -20
  54. package/server/socapp.js +6 -6
  55. package/server/socapp.ts +2 -1
  56. package/server/somfy.js +12 -12
  57. package/server/somfy.ts +1 -1
  58. package/server/support.js +13 -13
  59. package/server/support.ts +4 -4
  60. package/server/views/style.ejs +1 -0
  61. package/server/views/switch-details.ejs +15 -5
  62. package/server/webapp.js +45 -47
  63. package/server/webapp.ts +29 -38
  64. package/config.groups.json +0 -8
  65. package/config.p1-dev.json +0 -59
  66. package/config.scenes.json +0 -15
package/config.json CHANGED
@@ -34,8 +34,8 @@
34
34
  "logicalNodeAddress": 252
35
35
  }
36
36
  ],
37
- "power": -3382,
38
- "current": 0
37
+ "power": 3263,
38
+ "current": 2
39
39
  },
40
40
  {
41
41
  "type": "power",
@@ -68,7 +68,7 @@
68
68
  "logicalNodeAddress": 252
69
69
  }
70
70
  ],
71
- "power": 0,
71
+ "power": 1,
72
72
  "current": 0
73
73
  },
74
74
  {
@@ -78,32 +78,30 @@
78
78
  "high": 900,
79
79
  "actions": [
80
80
  {
81
- "name": "Mood C",
82
- "value": false,
81
+ "name": "",
82
+ "value": -1,
83
83
  "masterAddress": "192.168.0.97",
84
84
  "masterPort": 5001,
85
- "logicalAddress": 12,
86
- "logicalNodeAddress": 252
85
+ "logicalAddress": 4,
86
+ "logicalNodeAddress": 3
87
87
  },
88
88
  {
89
- "name": "Mood C",
90
- "value": 50,
89
+ "name": "",
90
+ "value": -1,
91
91
  "masterAddress": "192.168.0.97",
92
92
  "masterPort": 5001,
93
- "logicalAddress": 12,
94
- "logicalNodeAddress": 252
93
+ "logicalAddress": 4,
94
+ "logicalNodeAddress": 3
95
95
  },
96
96
  {
97
- "name": "Mood C",
98
- "value": true,
97
+ "name": "",
98
+ "value": -1,
99
99
  "masterAddress": "192.168.0.97",
100
100
  "masterPort": 5001,
101
- "logicalAddress": 12,
102
- "logicalNodeAddress": 252
101
+ "logicalAddress": 4,
102
+ "logicalNodeAddress": 3
103
103
  }
104
- ],
105
- "power": 2207,
106
- "current": 2
104
+ ]
107
105
  },
108
106
  {
109
107
  "type": "sun",
@@ -135,7 +133,9 @@
135
133
  "logicalAddress": 12,
136
134
  "logicalNodeAddress": 252
137
135
  }
138
- ]
136
+ ],
137
+ "power": 3263,
138
+ "current": 2
139
139
  }
140
140
  ],
141
141
  "address": "192.168.0.186",
@@ -143,44 +143,36 @@
143
143
  "debug": false,
144
144
  "bindings": [
145
145
  {
146
- "name": "<Solar",
147
- "value": 0,
146
+ "logicalNodeAddress": 252,
147
+ "logicalAddress": 102,
148
148
  "masterAddress": "192.168.0.97",
149
149
  "masterPort": 5001,
150
- "logicalAddress": 102,
151
- "logicalNodeAddress": 252,
152
150
  "channel": "0+1",
153
151
  "power": 1706
154
152
  },
155
153
  {
156
- "name": ">Grid",
157
- "value": 0,
154
+ "logicalNodeAddress": 252,
155
+ "logicalAddress": 100,
158
156
  "masterAddress": "192.168.0.97",
159
157
  "masterPort": 5001,
160
- "logicalAddress": 100,
161
- "logicalNodeAddress": 252,
162
158
  "channel": "2+3",
163
159
  "power": 2494
164
160
  },
165
161
  {
166
- "name": ">Cars",
167
- "value": 0,
162
+ "logicalNodeAddress": 252,
163
+ "logicalAddress": 103,
168
164
  "masterAddress": "192.168.0.97",
169
165
  "masterPort": 5001,
170
- "logicalAddress": 103,
171
- "logicalNodeAddress": 252,
172
166
  "channel": "4+5",
173
- "power": 0
167
+ "power": null
174
168
  },
175
169
  {
176
- "name": ">Swimmingpool",
177
- "value": 0,
170
+ "logicalNodeAddress": 252,
171
+ "logicalAddress": 101,
178
172
  "masterAddress": "192.168.0.97",
179
173
  "masterPort": 5001,
180
- "logicalAddress": 101,
181
- "logicalNodeAddress": 252,
182
174
  "channel": "8",
183
- "power": 0
175
+ "power": null
184
176
  }
185
177
  ]
186
178
  },
@@ -221,22 +213,18 @@
221
213
  ],
222
214
  "bindings": [
223
215
  {
224
- "name": "<Solar Panels",
225
- "value": 0,
216
+ "logicalNodeAddress": 252,
217
+ "logicalAddress": 102,
226
218
  "masterAddress": "192.168.0.97",
227
219
  "masterPort": 5001,
228
- "logicalAddress": 102,
229
- "logicalNodeAddress": 252,
230
220
  "channel": "0+1+2",
231
221
  "power": null
232
222
  },
233
223
  {
234
- "name": ">Grid",
235
- "value": 0,
224
+ "logicalNodeAddress": 252,
225
+ "logicalAddress": 100,
236
226
  "masterAddress": "192.168.0.97",
237
227
  "masterPort": 5001,
238
- "logicalAddress": 100,
239
- "logicalNodeAddress": 252,
240
228
  "channel": "3+4+5",
241
229
  "power": null
242
230
  }
@@ -247,68 +235,88 @@
247
235
  "smartapp": {
248
236
  "apiPort": 8581,
249
237
  "apiHost": "192.168.0.99",
250
- "socapp": false,
238
+ "socapp": false,
251
239
  "port": 5002,
252
240
  "switches": [
253
241
  {
254
- "name": "Shelly Valies",
255
- "unitName": "Red",
242
+ "logicalNodeAddress": 252,
243
+ "logicalAddress": 107,
256
244
  "masterAddress": "192.168.0.97",
257
245
  "masterPort": 5001,
258
246
  "nomacro": "Y",
259
247
  "nostop": "Y",
260
- "logicalAddress": 107,
261
- "logicalNodeAddress": 252,
262
- "type": "httpdim",
263
- "plug": "http://192.168.0.96/light/0?brightness=$&turn=#",
248
+ "name": "Shelly Valies",
249
+ "unitName": "Red",
250
+ "value": 0,
264
251
  "data": "",
252
+ "header": "",
265
253
  "method": "GET",
266
- "value": 0
254
+ "type": "httpdim",
255
+ "plug": "http://192.168.0.96/light/0?brightness=$&turn=#"
267
256
  },
268
257
  {
269
- "name": "Screen Salon Top",
270
- "unitName": "Salon Top",
258
+ "logicalNodeAddress": 252,
259
+ "logicalAddress": 105,
271
260
  "masterAddress": "192.168.0.97",
272
261
  "masterPort": 5001,
273
262
  "nomacro": "N",
274
263
  "nostop": "N",
275
- "logicalAddress": 105,
276
- "logicalNodeAddress": 252,
277
- "type": "somfy",
278
- "plug": "1",
264
+ "name": "Screen Salon Top",
265
+ "unitName": "Salon Top",
266
+ "value": 0,
279
267
  "data": "",
268
+ "header": "",
280
269
  "method": "GET",
281
- "value": 0
270
+ "type": "somfy",
271
+ "plug": "1"
282
272
  },
283
273
  {
284
- "name": "Screen Tim small",
285
- "unitName": "Tim Small",
274
+ "logicalNodeAddress": 252,
275
+ "logicalAddress": 104,
286
276
  "masterAddress": "192.168.0.97",
287
277
  "masterPort": 5001,
288
278
  "nomacro": "N",
289
279
  "nostop": "Y",
290
- "logicalAddress": 104,
291
- "logicalNodeAddress": 252,
292
- "type": "httpupdown",
293
- "plug": "2",
280
+ "name": "Screen Tim small",
281
+ "unitName": "Tim Small",
282
+ "value": 0,
294
283
  "data": "",
284
+ "header": "",
295
285
  "method": "GET",
296
- "value": 0
286
+ "type": "httpupdown",
287
+ "plug": "2"
297
288
  },
298
289
  {
299
- "name": "Test Plug",
300
- "unitName": "Plug",
290
+ "logicalNodeAddress": 16,
291
+ "logicalAddress": 35,
301
292
  "masterAddress": "gm.coppieters.be",
302
293
  "masterPort": 5005,
303
294
  "nomacro": "N",
304
295
  "nostop": "N",
305
- "logicalAddress": 35,
306
- "logicalNodeAddress": 16,
307
- "type": "smappee",
308
- "plug": "1",
296
+ "name": "Test Plug",
297
+ "unitName": "Plug",
298
+ "value": 0,
309
299
  "data": "",
300
+ "header": "",
310
301
  "method": "GET",
311
- "value": 0
302
+ "type": "smappee",
303
+ "plug": "1"
304
+ },
305
+ {
306
+ "logicalNodeAddress": 3,
307
+ "logicalAddress": 34,
308
+ "masterAddress": "192.168.0.97",
309
+ "masterPort": 5001,
310
+ "nomacro": "N",
311
+ "nostop": "N",
312
+ "name": "Demo",
313
+ "unitName": "",
314
+ "value": 0,
315
+ "data": "b=2",
316
+ "header": "{\"a\":101, \"b\": \"hallo\"}",
317
+ "method": "GET",
318
+ "type": "http",
319
+ "plug": "http://localhost:3001/api/demo/haha?set=#B"
312
320
  }
313
321
  ],
314
322
  "debug": false
@@ -338,225 +346,157 @@
338
346
  ],
339
347
  "cunits": [
340
348
  {
341
- "active": "Y",
342
- "used": "Y",
343
- "group": 0,
344
- "name": "<Solar Panels",
345
- "displayName": "<Solar Panels",
346
- "type": 4,
347
- "extendedType": null,
349
+ "logicalNodeAddress": 252,
350
+ "logicalAddress": 102,
348
351
  "masterAddress": "192.168.0.97",
349
352
  "masterPort": 5001,
350
- "logicalNodeAddress": 252,
351
- "logicalAddress": 102
353
+ "active": "N",
354
+ "used": "N",
355
+ "group": 0
352
356
  },
353
357
  {
354
- "active": "Y",
355
- "used": "Y",
356
- "group": 0,
357
- "name": ">Cars",
358
- "displayName": ">Cars",
359
- "type": 4,
360
- "extendedType": null,
358
+ "logicalNodeAddress": 252,
359
+ "logicalAddress": 103,
361
360
  "masterAddress": "192.168.0.97",
362
361
  "masterPort": 5001,
363
- "logicalNodeAddress": 252,
364
- "logicalAddress": 103
362
+ "active": "N",
363
+ "used": "N",
364
+ "group": 0
365
365
  },
366
366
  {
367
- "active": "Y",
368
- "used": "Y",
369
- "group": 0,
370
- "name": ">Grid",
371
- "displayName": ">Grid",
372
- "type": 4,
373
- "extendedType": null,
367
+ "logicalNodeAddress": 252,
368
+ "logicalAddress": 100,
374
369
  "masterAddress": "192.168.0.97",
375
370
  "masterPort": 5001,
376
- "logicalNodeAddress": 252,
377
- "logicalAddress": 100
371
+ "active": "N",
372
+ "used": "N",
373
+ "group": 0
378
374
  },
379
375
  {
380
- "active": "Y",
381
- "used": "Y",
382
- "group": 0,
383
- "name": ">Swimmingpool",
384
- "displayName": ">Swimmingpool",
385
- "type": 4,
386
- "extendedType": null,
376
+ "logicalNodeAddress": 252,
377
+ "logicalAddress": 101,
387
378
  "masterAddress": "192.168.0.97",
388
379
  "masterPort": 5001,
389
- "logicalNodeAddress": 252,
390
- "logicalAddress": 101
380
+ "active": "N",
381
+ "used": "N",
382
+ "group": 0
391
383
  },
392
384
  {
393
- "active": "Y",
394
- "used": "Y",
395
- "group": 0,
396
- "name": "Salon Top",
397
- "displayName": "Salon Top",
398
- "type": 8,
399
- "extendedType": 8,
385
+ "logicalNodeAddress": 252,
386
+ "logicalAddress": 105,
400
387
  "masterAddress": "192.168.0.97",
401
388
  "masterPort": 5001,
402
- "logicalNodeAddress": 252,
403
- "logicalAddress": 105
389
+ "active": "N",
390
+ "used": "N",
391
+ "group": 0
404
392
  },
405
393
  {
406
- "active": "Y",
407
- "used": "Y",
408
- "group": 0,
409
- "name": "Tim Small",
410
- "displayName": "Tim Small",
411
- "type": 8,
412
- "extendedType": 8,
394
+ "logicalNodeAddress": 252,
395
+ "logicalAddress": 104,
413
396
  "masterAddress": "192.168.0.97",
414
397
  "masterPort": 5001,
415
- "logicalNodeAddress": 252,
416
- "logicalAddress": 104
398
+ "active": "N",
399
+ "used": "N",
400
+ "group": 0
417
401
  },
418
402
  {
419
- "active": "Y",
420
- "used": "Y",
421
- "group": 0,
422
- "name": "Plug 1",
423
- "displayName": "Plug 1",
424
- "type": 2,
425
- "extendedType": 2,
403
+ "logicalNodeAddress": 252,
404
+ "logicalAddress": 106,
426
405
  "masterAddress": "192.168.0.97",
427
406
  "masterPort": 5001,
428
- "logicalNodeAddress": 252,
429
- "logicalAddress": 106
407
+ "active": "N",
408
+ "used": "N",
409
+ "group": 0
430
410
  },
431
411
  {
432
- "active": "Y",
433
- "used": "Y",
434
- "group": 0,
435
- "name": "Smartbox",
436
- "displayName": "Smartbox",
437
- "type": 4,
438
- "extendedType": null,
412
+ "logicalNodeAddress": 3,
413
+ "logicalAddress": 1,
439
414
  "masterAddress": "192.168.0.97",
440
415
  "masterPort": 5001,
441
- "logicalNodeAddress": 3,
442
- "logicalAddress": 1
416
+ "active": "N",
417
+ "used": "N",
418
+ "group": 0
443
419
  },
444
420
  {
445
- "active": "Y",
446
- "used": "Y",
447
- "group": 0,
448
- "name": "Valies",
449
- "displayName": "Valies",
450
- "type": 4,
451
- "extendedType": null,
421
+ "logicalNodeAddress": 3,
422
+ "logicalAddress": 0,
452
423
  "masterAddress": "192.168.0.97",
453
424
  "masterPort": 5001,
454
- "logicalNodeAddress": 3,
455
- "logicalAddress": 0
425
+ "active": "N",
426
+ "used": "N",
427
+ "group": 0
456
428
  },
457
429
  {
458
- "active": "Y",
459
- "used": "Y",
460
- "group": 0,
461
- "name": "Blue LED",
462
- "displayName": "Blue LED",
463
- "type": 1,
464
- "extendedType": null,
430
+ "logicalNodeAddress": 3,
431
+ "logicalAddress": 30,
465
432
  "masterAddress": "192.168.0.97",
466
433
  "masterPort": 5001,
467
- "logicalNodeAddress": 3,
468
- "logicalAddress": 30
434
+ "active": "N",
435
+ "used": "N",
436
+ "group": 0
469
437
  },
470
438
  {
471
- "active": "Y",
472
- "used": "Y",
473
- "group": 0,
474
- "name": "Red LED",
475
- "displayName": "Red LED",
476
- "type": 1,
477
- "extendedType": null,
439
+ "logicalNodeAddress": 3,
440
+ "logicalAddress": 29,
478
441
  "masterAddress": "192.168.0.97",
479
442
  "masterPort": 5001,
480
- "logicalNodeAddress": 3,
481
- "logicalAddress": 29
443
+ "active": "N",
444
+ "used": "N",
445
+ "group": 0
482
446
  },
483
447
  {
484
- "active": "Y",
485
- "used": "Y",
486
- "group": 0,
487
- "name": "Bulb",
488
- "displayName": "Bulb",
489
- "type": 2,
490
- "extendedType": 2,
448
+ "logicalNodeAddress": 3,
449
+ "logicalAddress": 35,
491
450
  "masterAddress": "192.168.0.97",
492
451
  "masterPort": 5001,
493
- "logicalNodeAddress": 3,
494
- "logicalAddress": 35
452
+ "active": "N",
453
+ "used": "N",
454
+ "group": 0
495
455
  },
496
456
  {
497
- "active": "Y",
498
- "used": "Y",
499
- "group": 0,
500
- "name": "Lamp-Bottom",
501
- "displayName": "Lamp-Bottom",
502
- "type": 2,
503
- "extendedType": 2,
457
+ "logicalNodeAddress": 3,
458
+ "logicalAddress": 34,
504
459
  "masterAddress": "192.168.0.97",
505
460
  "masterPort": 5001,
506
- "logicalNodeAddress": 3,
507
- "logicalAddress": 34
461
+ "active": "N",
462
+ "used": "N",
463
+ "group": 0
508
464
  },
509
465
  {
510
- "active": "Y",
511
- "used": "Y",
512
- "group": 0,
513
- "name": "Lamp-Top",
514
- "displayName": "Lamp-Top",
515
- "type": 2,
516
- "extendedType": 2,
466
+ "logicalNodeAddress": 3,
467
+ "logicalAddress": 33,
517
468
  "masterAddress": "192.168.0.97",
518
469
  "masterPort": 5001,
519
- "logicalNodeAddress": 3,
520
- "logicalAddress": 33
470
+ "active": "N",
471
+ "used": "N",
472
+ "group": 0
521
473
  },
522
474
  {
523
- "active": "Y",
524
- "used": "Y",
525
- "group": 0,
526
- "name": "Stopcontact stk",
527
- "displayName": "Stopcontact stk",
528
- "type": 2,
529
- "extendedType": 2,
475
+ "logicalNodeAddress": 3,
476
+ "logicalAddress": 36,
530
477
  "masterAddress": "192.168.0.97",
531
478
  "masterPort": 5001,
532
- "logicalNodeAddress": 3,
533
- "logicalAddress": 36
479
+ "active": "N",
480
+ "used": "N",
481
+ "group": 0
534
482
  },
535
483
  {
536
- "active": "Y",
537
- "used": "Y",
538
- "group": 0,
539
- "name": "Alles aan",
540
- "displayName": "Alles aan",
541
- "type": 7,
542
- "extendedType": 7,
484
+ "logicalNodeAddress": 3,
485
+ "logicalAddress": 5,
543
486
  "masterAddress": "192.168.0.97",
544
487
  "masterPort": 5001,
545
- "logicalNodeAddress": 3,
546
- "logicalAddress": 5
488
+ "active": "N",
489
+ "used": "N",
490
+ "group": 0
547
491
  },
548
492
  {
549
- "active": "Y",
550
- "used": "Y",
551
- "group": 0,
552
- "name": "Alles uit",
553
- "displayName": "Alles uit",
554
- "type": 7,
555
- "extendedType": 7,
493
+ "logicalNodeAddress": 3,
494
+ "logicalAddress": 4,
556
495
  "masterAddress": "192.168.0.97",
557
496
  "masterPort": 5001,
558
- "logicalNodeAddress": 3,
559
- "logicalAddress": 4
497
+ "active": "N",
498
+ "used": "N",
499
+ "group": 0
560
500
  }
561
501
  ]
562
502
  },
@@ -574,5 +514,6 @@
574
514
  "order": 0,
575
515
  "units": []
576
516
  }
577
- ]
517
+ ],
518
+ "debug": false
578
519
  }