@homebridge-plugins/homebridge-ewelink 12.4.1 → 12.6.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/CHANGELOG.md +132 -112
- package/LICENSE +1 -1
- package/README.md +4 -4
- package/config.schema.json +1 -0
- package/eslint.config.js +0 -2
- package/lib/homebridge-ui/public/index.html +38 -2
- package/lib/utils/custom-chars.js +23 -21
- package/lib/utils/eve-chars.js +113 -97
- package/package.json +9 -10
package/CHANGELOG.md
CHANGED
|
@@ -2,13 +2,33 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to homebridge-ewelink will be documented in this file.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## v12.6.0 (2025-07-13)
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
- `MINOR` version when a new device type is added, or when a new feature is added that is backwards-compatible
|
|
9
|
-
- `PATCH` version when backwards-compatible bug fixes are implemented
|
|
7
|
+
### Notable Changes
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
- fix custom plugin config modal styles in ui 5
|
|
10
|
+
- fix eve characteristics for hb 2
|
|
11
|
+
- fix custom characteristics for hb 2
|
|
12
|
+
|
|
13
|
+
### Other Changes
|
|
14
|
+
|
|
15
|
+
- fix plugin name in release workflow
|
|
16
|
+
- add permissions to workflows
|
|
17
|
+
- improvements to the deprecate workflow
|
|
18
|
+
|
|
19
|
+
## v12.5.0 (2025-07-12)
|
|
20
|
+
|
|
21
|
+
⚠️ This plugin no longer officially supports Node `v16` and `v18`, however there is no reason why it shouldn't work on these versions.
|
|
22
|
+
|
|
23
|
+
### Notable Changes
|
|
24
|
+
|
|
25
|
+
- set `strictValidation` to `true` in the config schema file
|
|
26
|
+
|
|
27
|
+
### Other Changes
|
|
28
|
+
|
|
29
|
+
- github repo maintenance
|
|
30
|
+
|
|
31
|
+
## v12.4.1 (2025-03-22)
|
|
12
32
|
|
|
13
33
|
### Changed
|
|
14
34
|
|
|
@@ -18,7 +38,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
18
38
|
|
|
19
39
|
- fix hap-nodejs permissions for hb2
|
|
20
40
|
|
|
21
|
-
##
|
|
41
|
+
## v12.4.0 (2025-02-24)
|
|
22
42
|
|
|
23
43
|
### Added
|
|
24
44
|
|
|
@@ -29,14 +49,14 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
29
49
|
|
|
30
50
|
- updated dependencies
|
|
31
51
|
|
|
32
|
-
##
|
|
52
|
+
## v12.3.3 (2024-10-12)
|
|
33
53
|
|
|
34
54
|
### Changed
|
|
35
55
|
|
|
36
56
|
- added `homepage` to `package.json`
|
|
37
57
|
- updated dependencies
|
|
38
58
|
|
|
39
|
-
##
|
|
59
|
+
## v12.3.2 (2024-10-12)
|
|
40
60
|
|
|
41
61
|
### Changed
|
|
42
62
|
|
|
@@ -47,7 +67,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
47
67
|
|
|
48
68
|
- fixed cases where the plugin would crash when a device update fails
|
|
49
69
|
|
|
50
|
-
##
|
|
70
|
+
## v12.3.1 (2024-07-15)
|
|
51
71
|
|
|
52
72
|
### Changed
|
|
53
73
|
|
|
@@ -57,14 +77,14 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
57
77
|
|
|
58
78
|
- fix `hap-nodejs` api refs
|
|
59
79
|
|
|
60
|
-
##
|
|
80
|
+
## v12.3.0 (2024-07-13)
|
|
61
81
|
|
|
62
82
|
### Added
|
|
63
83
|
|
|
64
84
|
- Support for ZigBee Bridge Ultra with UIID `243`
|
|
65
85
|
- Support for Sonoff TX-4 Ultimate with UIID `212`
|
|
66
86
|
|
|
67
|
-
##
|
|
87
|
+
## v12.2.1 (2024-07-13)
|
|
68
88
|
|
|
69
89
|
### Changed
|
|
70
90
|
|
|
@@ -72,7 +92,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
72
92
|
- Updated dependencies
|
|
73
93
|
- Bump `node` recommended versions to v18.20.4 or v20.15.1
|
|
74
94
|
|
|
75
|
-
##
|
|
95
|
+
## v12.2.0 (2024-03-27)
|
|
76
96
|
|
|
77
97
|
### Added
|
|
78
98
|
|
|
@@ -89,7 +109,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
89
109
|
|
|
90
110
|
- Fix UIID 182/190 power readings
|
|
91
111
|
|
|
92
|
-
##
|
|
112
|
+
## v12.1.0 (2023-12-16)
|
|
93
113
|
|
|
94
114
|
### Added
|
|
95
115
|
|
|
@@ -103,7 +123,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
103
123
|
- Bump `node` recommended versions to v18.19.0 or v20.10.0
|
|
104
124
|
- Updated dependencies
|
|
105
125
|
|
|
106
|
-
##
|
|
126
|
+
## v12.0.0 (2023-10-24)
|
|
107
127
|
|
|
108
128
|
### Added
|
|
109
129
|
|
|
@@ -119,7 +139,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
119
139
|
|
|
120
140
|
- Support for node 16
|
|
121
141
|
|
|
122
|
-
##
|
|
142
|
+
## v11.0.2 (2023-08-28)
|
|
123
143
|
|
|
124
144
|
⚠️ Note this will be the last version of the plugin to support Node 16.
|
|
125
145
|
- Node 16 moves to 'end of life' on 2023-09-11 ([more info](https://nodejs.org/en/blog/announcements/nodejs16-eol))
|
|
@@ -130,14 +150,14 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
130
150
|
|
|
131
151
|
- Update `axios` to `v1.5.0`
|
|
132
152
|
|
|
133
|
-
##
|
|
153
|
+
## v11.0.1 (2023-08-19)
|
|
134
154
|
|
|
135
155
|
### Changed
|
|
136
156
|
|
|
137
157
|
- Bump `node` recommended versions to v16.20.2 or v18.17.1 or v20.5.1
|
|
138
158
|
- Some code refactoring
|
|
139
159
|
|
|
140
|
-
##
|
|
160
|
+
## v11.0.0 (2023-07-24)
|
|
141
161
|
|
|
142
162
|
### Added
|
|
143
163
|
|
|
@@ -159,7 +179,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
159
179
|
- Bump `node` recommended versions to v16.20.1 or v18.17.0 or v20.5.0
|
|
160
180
|
- Updated dependencies
|
|
161
181
|
|
|
162
|
-
##
|
|
182
|
+
## v10.4.0 (2023-01-07)
|
|
163
183
|
|
|
164
184
|
### Added
|
|
165
185
|
|
|
@@ -176,7 +196,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
176
196
|
|
|
177
197
|
- Power readings for POWR320 now show correctly
|
|
178
198
|
|
|
179
|
-
##
|
|
199
|
+
## v10.3.0 (2022-11-11)
|
|
180
200
|
|
|
181
201
|
### Added
|
|
182
202
|
|
|
@@ -187,7 +207,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
187
207
|
- Bump `node` recommended versions to v14.21.1 or v16.18.1 or v18.12.1
|
|
188
208
|
- Bump `ws` to v8.11.0
|
|
189
209
|
|
|
190
|
-
##
|
|
210
|
+
## v10.2.0 (2022-10-09)
|
|
191
211
|
|
|
192
212
|
### Added
|
|
193
213
|
|
|
@@ -207,7 +227,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
207
227
|
|
|
208
228
|
- Incorrectly exposing Sonoff M5 devices as programmable switches
|
|
209
229
|
|
|
210
|
-
##
|
|
230
|
+
## v10.1.0 (2022-09-25)
|
|
211
231
|
|
|
212
232
|
### Added
|
|
213
233
|
|
|
@@ -229,7 +249,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
229
249
|
- Bump `ws` to v8.9.0
|
|
230
250
|
- Updated dev dependencies
|
|
231
251
|
|
|
232
|
-
##
|
|
252
|
+
## v10.0.0 (2022-07-08)
|
|
233
253
|
|
|
234
254
|
⚠️ After updating to this version:
|
|
235
255
|
- Each time you start the plugin, you will be logged out the eWeLink app, and so I would recommend:
|
|
@@ -244,7 +264,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
244
264
|
|
|
245
265
|
- Bump `node` recommended versions to v14.20.0 or v16.16.0
|
|
246
266
|
|
|
247
|
-
##
|
|
267
|
+
## v9.1.0 (2022-07-07)
|
|
248
268
|
|
|
249
269
|
⚠️ This update may remove some devices from your Homebridge instance. Unfortunately this is out my control. See [this link](https://github.com/homebridge-plugins/homebridge-ewelink/issues/385#issuecomment-1176457283).
|
|
250
270
|
|
|
@@ -257,7 +277,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
257
277
|
- Bump `ws` to v8.8.0
|
|
258
278
|
- Updated dev dependencies
|
|
259
279
|
|
|
260
|
-
##
|
|
280
|
+
## v9.0.1 (2022-06-08)
|
|
261
281
|
|
|
262
282
|
### Changed
|
|
263
283
|
|
|
@@ -267,7 +287,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
267
287
|
|
|
268
288
|
- A potential issue showing errors in the logs
|
|
269
289
|
|
|
270
|
-
##
|
|
290
|
+
## v9.0.0 (2022-05-29)
|
|
271
291
|
|
|
272
292
|
### Potentially Breaking Changes
|
|
273
293
|
|
|
@@ -279,7 +299,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
279
299
|
- Changed to ESM package
|
|
280
300
|
- Bump `node` recommended versions to v14.19.3 or v16.15.0
|
|
281
301
|
|
|
282
|
-
##
|
|
302
|
+
## v8.15.0 (2022-05-02)
|
|
283
303
|
|
|
284
304
|
### Added
|
|
285
305
|
|
|
@@ -296,7 +316,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
296
316
|
- Bump `ws` to v8.6.0
|
|
297
317
|
- Bump `node` recommended versions to v14.19.1 or v16.15.0
|
|
298
318
|
|
|
299
|
-
##
|
|
319
|
+
## v8.14.0 (2022-04-17)
|
|
300
320
|
|
|
301
321
|
### Added
|
|
302
322
|
|
|
@@ -305,20 +325,20 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
305
325
|
- Sonoff MINIR3 (UIID 138 devices) (also supports LAN mode)
|
|
306
326
|
- Sonoff S-Mate (UIID 177 devices) as a Stateless Programmable Sensor
|
|
307
327
|
|
|
308
|
-
##
|
|
328
|
+
## v8.13.2 (2022-04-03)
|
|
309
329
|
|
|
310
330
|
### Changed
|
|
311
331
|
|
|
312
332
|
- Updated dependencies
|
|
313
333
|
|
|
314
|
-
##
|
|
334
|
+
## v8.13.1 (2022-03-20)
|
|
315
335
|
|
|
316
336
|
### Changed
|
|
317
337
|
|
|
318
338
|
- Bump `axios` to v0.26.1
|
|
319
339
|
- Bump `node` recommended versions to v14.19.1 or v16.14.2
|
|
320
340
|
|
|
321
|
-
##
|
|
341
|
+
## v8.13.0 (2022-02-23)
|
|
322
342
|
|
|
323
343
|
### Added
|
|
324
344
|
|
|
@@ -328,7 +348,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
328
348
|
|
|
329
349
|
- Bump `axios` to v0.26.0
|
|
330
350
|
|
|
331
|
-
##
|
|
351
|
+
## v8.12.0 (2022-02-12)
|
|
332
352
|
|
|
333
353
|
### Added
|
|
334
354
|
|
|
@@ -342,7 +362,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
342
362
|
- Bump `homebridge` recommended version to v1.4.0
|
|
343
363
|
- Bump `ws` to v8.5.0
|
|
344
364
|
|
|
345
|
-
##
|
|
365
|
+
## v8.11.2 (2022-01-23)
|
|
346
366
|
|
|
347
367
|
### Changed
|
|
348
368
|
|
|
@@ -352,7 +372,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
352
372
|
|
|
353
373
|
- Fix LAN mode support for iFan04
|
|
354
374
|
|
|
355
|
-
##
|
|
375
|
+
## v8.11.1 (2022-01-15)
|
|
356
376
|
|
|
357
377
|
### Changed
|
|
358
378
|
|
|
@@ -362,7 +382,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
362
382
|
|
|
363
383
|
- `undefined` log message on web socket error
|
|
364
384
|
|
|
365
|
-
##
|
|
385
|
+
## v8.11.0 (2022-01-13)
|
|
366
386
|
|
|
367
387
|
### Added
|
|
368
388
|
|
|
@@ -377,7 +397,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
377
397
|
|
|
378
398
|
- Minor colour temperature issue for Mangotek RLD60C0E27 (UIID 33)
|
|
379
399
|
|
|
380
|
-
##
|
|
400
|
+
## v8.10.0 (2022-01-07)
|
|
381
401
|
|
|
382
402
|
### Added
|
|
383
403
|
|
|
@@ -389,20 +409,20 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
389
409
|
|
|
390
410
|
- Plugin crash for older versions of Homebridge
|
|
391
411
|
|
|
392
|
-
##
|
|
412
|
+
## v8.9.1 (2022-01-05)
|
|
393
413
|
|
|
394
414
|
### Changed
|
|
395
415
|
|
|
396
416
|
- Plugin will log HAPNodeJS version on startup
|
|
397
417
|
- Bump `homebridge` recommended version to v1.3.9
|
|
398
418
|
|
|
399
|
-
##
|
|
419
|
+
## v8.9.0 (2021-12-27)
|
|
400
420
|
|
|
401
421
|
### Added
|
|
402
422
|
|
|
403
423
|
- Option to show both 'Heat' and 'Cool' modes for the TH10/16 thermostat simulation
|
|
404
424
|
|
|
405
|
-
##
|
|
425
|
+
## v8.8.0 (2021-12-21)
|
|
406
426
|
|
|
407
427
|
### Added
|
|
408
428
|
|
|
@@ -420,13 +440,13 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
420
440
|
- Some config options rearranged for easier access
|
|
421
441
|
- Bump `ws` to v8.4.0
|
|
422
442
|
|
|
423
|
-
##
|
|
443
|
+
## v8.7.1 (2021-12-09)
|
|
424
444
|
|
|
425
445
|
### Fixed
|
|
426
446
|
|
|
427
447
|
- Show 'Hide Channels' and 'Inched Channels' in config schema form even when no 'Show As' is selected
|
|
428
448
|
|
|
429
|
-
##
|
|
449
|
+
## v8.7.0 (2021-12-08)
|
|
430
450
|
|
|
431
451
|
### Added
|
|
432
452
|
|
|
@@ -445,7 +465,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
445
465
|
|
|
446
466
|
- Potential uncaught errors updating subdevices of an RF bridge
|
|
447
467
|
|
|
448
|
-
##
|
|
468
|
+
## v8.6.0 (2021-11-18)
|
|
449
469
|
|
|
450
470
|
### Added
|
|
451
471
|
|
|
@@ -457,20 +477,20 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
457
477
|
|
|
458
478
|
- An issue initialising a 2-Garage-Door simulation
|
|
459
479
|
|
|
460
|
-
##
|
|
480
|
+
## v8.5.0 (2021-11-03)
|
|
461
481
|
|
|
462
482
|
### Added
|
|
463
483
|
|
|
464
484
|
- Ability to use a contact sensor simulation to show the correct state of a garage door/lock simulation
|
|
465
485
|
|
|
466
|
-
##
|
|
486
|
+
## v8.4.2 (2021-10-31)
|
|
467
487
|
|
|
468
488
|
### Changed
|
|
469
489
|
|
|
470
490
|
- Bump `node` recommended versions to v14.18.1 or v16.13.0
|
|
471
491
|
- Bump `axios` to v0.24.0
|
|
472
492
|
|
|
473
|
-
##
|
|
493
|
+
## v8.4.1 (2021-10-20)
|
|
474
494
|
|
|
475
495
|
### Changed
|
|
476
496
|
|
|
@@ -480,7 +500,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
480
500
|
|
|
481
501
|
- An Eve app 'no data' gap for garage and contact sensor devices when restarting the plugin
|
|
482
502
|
|
|
483
|
-
##
|
|
503
|
+
## v8.4.0 (2021-10-16)
|
|
484
504
|
|
|
485
505
|
### Added
|
|
486
506
|
|
|
@@ -498,31 +518,31 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
498
518
|
|
|
499
519
|
- An error when trying to unregister a hidden accessory from Homebridge
|
|
500
520
|
|
|
501
|
-
##
|
|
521
|
+
## v8.3.6 (2021-10-01)
|
|
502
522
|
|
|
503
523
|
### Changed
|
|
504
524
|
|
|
505
525
|
- Bump `ws` to v8.2.3
|
|
506
526
|
|
|
507
|
-
##
|
|
527
|
+
## v8.3.5 (2021-10-01)
|
|
508
528
|
|
|
509
529
|
### Changed
|
|
510
530
|
|
|
511
531
|
- Bump `axios` to v0.22.0
|
|
512
532
|
|
|
513
|
-
##
|
|
533
|
+
## v8.3.4 (2021-09-30)
|
|
514
534
|
|
|
515
535
|
### Changed
|
|
516
536
|
|
|
517
537
|
- Recommended node versions bumped to v14.18.0 or v16.10.0
|
|
518
538
|
|
|
519
|
-
##
|
|
539
|
+
## v8.3.3 (2021-09-14)
|
|
520
540
|
|
|
521
541
|
## Fixed
|
|
522
542
|
|
|
523
543
|
- Fixed an issue where an irrigation valve simulation would not turn off after the set time
|
|
524
544
|
|
|
525
|
-
##
|
|
545
|
+
## v8.3.2 (2021-09-09)
|
|
526
546
|
|
|
527
547
|
### Changed
|
|
528
548
|
|
|
@@ -530,7 +550,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
530
550
|
- Bump `axios` to v0.21.4
|
|
531
551
|
- Bump `ws` to v8.2.2
|
|
532
552
|
|
|
533
|
-
##
|
|
553
|
+
## v8.3.1 (2021-09-05)
|
|
534
554
|
|
|
535
555
|
### Changed
|
|
536
556
|
|
|
@@ -538,7 +558,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
538
558
|
- Bump `axios` to v0.21.3
|
|
539
559
|
- Bump `ws` to v8.2.1
|
|
540
560
|
|
|
541
|
-
##
|
|
561
|
+
## v8.3.0 (2021-08-26)
|
|
542
562
|
|
|
543
563
|
### Added
|
|
544
564
|
|
|
@@ -550,7 +570,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
550
570
|
|
|
551
571
|
- 'Status By Inching' switches will no longer revert to 'off' when Homebridge is restarted
|
|
552
572
|
|
|
553
|
-
##
|
|
573
|
+
## v8.2.1 (2021-08-22)
|
|
554
574
|
|
|
555
575
|
### Changed
|
|
556
576
|
|
|
@@ -561,33 +581,33 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
561
581
|
- An issue preventing DUALR3 from initialising
|
|
562
582
|
- Fix for uiid `112`
|
|
563
583
|
|
|
564
|
-
##
|
|
584
|
+
## v8.2.0 (2021-08-22)
|
|
565
585
|
|
|
566
586
|
### Added
|
|
567
587
|
|
|
568
588
|
- Support for UIIDs `138` `139` `140` `141`
|
|
569
589
|
|
|
570
|
-
##
|
|
590
|
+
## v8.1.0 (2021-08-17)
|
|
571
591
|
|
|
572
592
|
### Added
|
|
573
593
|
|
|
574
594
|
- `inchChannels` option for multi-channel switches and outlets (where the plugin will set on/off status based on inching)
|
|
575
595
|
- `language` option to have the plugin log in French, thanks to @jp-lno
|
|
576
596
|
|
|
577
|
-
##
|
|
597
|
+
## v8.0.2 (2021-08-12)
|
|
578
598
|
|
|
579
599
|
### Changed
|
|
580
600
|
|
|
581
601
|
- **Platform Versions**
|
|
582
602
|
- Recommended node version bumped to v14.17.5
|
|
583
603
|
|
|
584
|
-
##
|
|
604
|
+
## v8.0.1 (2021-08-04)
|
|
585
605
|
|
|
586
606
|
### Changed
|
|
587
607
|
|
|
588
608
|
- Improved battery calculations for DW2 sensors
|
|
589
609
|
|
|
590
|
-
##
|
|
610
|
+
## v8.0.0 (2021-07-29)
|
|
591
611
|
|
|
592
612
|
### Important Note
|
|
593
613
|
|
|
@@ -628,7 +648,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
628
648
|
- ⚠️ `ignoredDevices` configuration setting - now use the `ignoreDevice` option in the device type sections
|
|
629
649
|
- ⚠️ `groups` configuration setting - now use the `showAs` option in the device type sections
|
|
630
650
|
|
|
631
|
-
##
|
|
651
|
+
## v7.1.0 (2021-07-10)
|
|
632
652
|
|
|
633
653
|
### Added
|
|
634
654
|
|
|
@@ -642,13 +662,13 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
642
662
|
- A device can now be ignored/removed from Homebridge by the `ignoreDevice` setting in the device configuration sections
|
|
643
663
|
- Bump `ws` dependency to v7.5.3
|
|
644
664
|
|
|
645
|
-
##
|
|
665
|
+
## v7.0.2 (2021-07-08)
|
|
646
666
|
|
|
647
667
|
### Changes
|
|
648
668
|
|
|
649
669
|
- Revert node version bump to v14.17.3 (back to v14.17.2)
|
|
650
670
|
|
|
651
|
-
###
|
|
671
|
+
### v7.0.1 (2021-07-08)
|
|
652
672
|
|
|
653
673
|
### Changes
|
|
654
674
|
|
|
@@ -658,7 +678,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
658
678
|
|
|
659
679
|
- An issue preventing garage doors and locks with a defined sensor from initialising
|
|
660
680
|
|
|
661
|
-
##
|
|
681
|
+
## v7.0.0 (2021-07-08)
|
|
662
682
|
|
|
663
683
|
### Important Notes
|
|
664
684
|
|
|
@@ -763,7 +783,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
763
783
|
- `switchDevices[].showAsOutlet` removed - use `switchDevices[].showAs` instead
|
|
764
784
|
- `ContactSensorState` and other unneeded characteristics from garage (simulation) services
|
|
765
785
|
|
|
766
|
-
##
|
|
786
|
+
## v6.8.0 (2021-06-14)
|
|
767
787
|
|
|
768
788
|
### Added
|
|
769
789
|
|
|
@@ -790,14 +810,14 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
790
810
|
|
|
791
811
|
- Fix a logging issue for the zigbee contact sensor
|
|
792
812
|
|
|
793
|
-
##
|
|
813
|
+
## v6.7.1 (2021-05-27)
|
|
794
814
|
|
|
795
815
|
### Fixed
|
|
796
816
|
|
|
797
817
|
- Fixes an issue with sensors with a garage simulation
|
|
798
818
|
- Fixes an issue with TH10/16 devices with web socket timeouts
|
|
799
819
|
|
|
800
|
-
##
|
|
820
|
+
## v6.7.0 (2021-05-26)
|
|
801
821
|
|
|
802
822
|
### Added
|
|
803
823
|
|
|
@@ -817,7 +837,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
817
837
|
|
|
818
838
|
- Fix internal API auth issue when using a base64 encoded password
|
|
819
839
|
|
|
820
|
-
##
|
|
840
|
+
## v6.6.0 (2021-05-10)
|
|
821
841
|
|
|
822
842
|
### Added
|
|
823
843
|
|
|
@@ -842,7 +862,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
842
862
|
|
|
843
863
|
- Fixes an issue where the web socket would not close on plugin shutdown
|
|
844
864
|
|
|
845
|
-
##
|
|
865
|
+
## v6.5.1 (2021-05-07)
|
|
846
866
|
|
|
847
867
|
### Changed
|
|
848
868
|
|
|
@@ -853,7 +873,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
853
873
|
|
|
854
874
|
- Fixes an initialisation issue with the 'garage' and 'obstruction detection' switch simulations
|
|
855
875
|
|
|
856
|
-
##
|
|
876
|
+
## v6.5.0 (2021-05-06)
|
|
857
877
|
|
|
858
878
|
### Added
|
|
859
879
|
|
|
@@ -864,7 +884,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
864
884
|
- Any higher integer to enable the API on this fixed port
|
|
865
885
|
- Documentation for the API can be seen at the base url (Homebridge IP + API port)
|
|
866
886
|
|
|
867
|
-
##
|
|
887
|
+
## v6.4.0 (2021-05-04)
|
|
868
888
|
|
|
869
889
|
### Added
|
|
870
890
|
|
|
@@ -884,7 +904,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
884
904
|
- Accessory 'identify' function will now add an entry to the log
|
|
885
905
|
- Backend refactoring, function and variable name changes
|
|
886
906
|
|
|
887
|
-
##
|
|
907
|
+
## v6.3.0 (2021-04-28)
|
|
888
908
|
|
|
889
909
|
### Added
|
|
890
910
|
|
|
@@ -897,7 +917,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
897
917
|
- Increase ws timeout from 5 to 6 seconds
|
|
898
918
|
- Decrease lan-only timeout from 10 to 9 seconds
|
|
899
919
|
|
|
900
|
-
##
|
|
920
|
+
## v6.2.2 (2021-04-27)
|
|
901
921
|
|
|
902
922
|
### Changed
|
|
903
923
|
|
|
@@ -907,14 +927,14 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
907
927
|
- Automatically retry eWeLink login on startup in case of certain error codes
|
|
908
928
|
- Update package description (remove 'with original firmware' as this is redundant for eWeLink devices)
|
|
909
929
|
|
|
910
|
-
##
|
|
930
|
+
## v6.2.1 (2021-04-18)
|
|
911
931
|
|
|
912
932
|
### Changed
|
|
913
933
|
|
|
914
934
|
- Trim new lines and spaces from password when decoded from base64
|
|
915
935
|
- Updated dependencies (`ws`)
|
|
916
936
|
|
|
917
|
-
##
|
|
937
|
+
## v6.2.0 (2021-04-16)
|
|
918
938
|
|
|
919
939
|
### Added
|
|
920
940
|
|
|
@@ -935,19 +955,19 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
935
955
|
|
|
936
956
|
- Fix characteristic NaN warning for `LastActivation`
|
|
937
957
|
|
|
938
|
-
##
|
|
958
|
+
## v6.1.2 (2021-04-14)
|
|
939
959
|
|
|
940
960
|
### Fixed
|
|
941
961
|
|
|
942
962
|
- Remove any existing humidity sensor for TH10/16 if DS18B20 sensor is used
|
|
943
963
|
|
|
944
|
-
##
|
|
964
|
+
## v6.1.1 (2021-04-13)
|
|
945
965
|
|
|
946
966
|
### Fixed
|
|
947
967
|
|
|
948
968
|
- Fixed an unhandled rejection error when controlling certain CCT bulbs
|
|
949
969
|
|
|
950
|
-
##
|
|
970
|
+
## v6.1.0 (2021-04-12)
|
|
951
971
|
|
|
952
972
|
### Added
|
|
953
973
|
|
|
@@ -960,20 +980,20 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
960
980
|
- No more characteristic warnings for `LastActivation` for motion and contact sensors
|
|
961
981
|
- Removed logs for 'not triggered' if device has since been triggered again
|
|
962
982
|
|
|
963
|
-
##
|
|
983
|
+
## v6.0.3 (2021-04-08)
|
|
964
984
|
|
|
965
985
|
### Fixed
|
|
966
986
|
|
|
967
987
|
- Revert 'No Response' messages for **DW2** devices as they go on and offline
|
|
968
988
|
- Fixed the interval time length for calculating total energy consumption for relevant devices
|
|
969
989
|
|
|
970
|
-
##
|
|
990
|
+
## v6.0.2 (2021-04-07)
|
|
971
991
|
|
|
972
992
|
### Changed
|
|
973
993
|
|
|
974
994
|
- Revert 'No Response' messages for **DW2** devices as they go on and offline
|
|
975
995
|
|
|
976
|
-
##
|
|
996
|
+
## v6.0.1 (2021-04-07)
|
|
977
997
|
|
|
978
998
|
### Requirements
|
|
979
999
|
|
|
@@ -996,7 +1016,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
996
1016
|
|
|
997
1017
|
- Fixes a caching issue with the iFan accessory
|
|
998
1018
|
|
|
999
|
-
##
|
|
1019
|
+
## v5.6.0 (2021-03-25)
|
|
1000
1020
|
|
|
1001
1021
|
### Added
|
|
1002
1022
|
|
|
@@ -1011,7 +1031,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1011
1031
|
- A new web socket address will be requested if the provided address causes errors
|
|
1012
1032
|
- In particular this should fix the `ENOTFOUND as-pconnect4.coolkit.cc` error that some users in the Asia continent were receiving
|
|
1013
1033
|
|
|
1014
|
-
##
|
|
1034
|
+
## v5.5.1 (2021-03-21)
|
|
1015
1035
|
|
|
1016
1036
|
### Changed
|
|
1017
1037
|
|
|
@@ -1019,7 +1039,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1019
1039
|
- More welcome messages
|
|
1020
1040
|
- Updated `plugin-ui-utils` dependency
|
|
1021
1041
|
|
|
1022
|
-
##
|
|
1042
|
+
## v5.5.0 (2021-03-17)
|
|
1023
1043
|
|
|
1024
1044
|
### Added
|
|
1025
1045
|
|
|
@@ -1036,7 +1056,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1036
1056
|
- Updated links on plugin-ui to match GitHub wiki
|
|
1037
1057
|
- [backend] Eve characteristics abstracted into separate file for better efficiency
|
|
1038
1058
|
|
|
1039
|
-
##
|
|
1059
|
+
## v5.4.0 (2021-03-14)
|
|
1040
1060
|
|
|
1041
1061
|
### Added
|
|
1042
1062
|
|
|
@@ -1048,7 +1068,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1048
1068
|
|
|
1049
1069
|
- Attempt to fix outlet polling updates so the device reports updated info rather than the previous info.
|
|
1050
1070
|
|
|
1051
|
-
##
|
|
1071
|
+
## v5.3.0 (2021-03-10)
|
|
1052
1072
|
|
|
1053
1073
|
### Added
|
|
1054
1074
|
|
|
@@ -1061,7 +1081,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1061
1081
|
- For this reason, the `exposeContactSensor` setting is now redundant and so has been removed
|
|
1062
1082
|
- Outlet intervals for energy calculation and updates will stop on Homebridge shutdown
|
|
1063
1083
|
|
|
1064
|
-
##
|
|
1084
|
+
## v5.2.0 (2021-03-08)
|
|
1065
1085
|
|
|
1066
1086
|
### Added
|
|
1067
1087
|
|
|
@@ -1079,13 +1099,13 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1079
1099
|
|
|
1080
1100
|
- Fixes a `multiple callback` error with CCT bulb accessories
|
|
1081
1101
|
|
|
1082
|
-
##
|
|
1102
|
+
## v5.1.1 (2021-03-02)
|
|
1083
1103
|
|
|
1084
1104
|
### Fixed
|
|
1085
1105
|
|
|
1086
1106
|
- Fixes an issue sending LAN updates to multi-channel devices
|
|
1087
1107
|
|
|
1088
|
-
##
|
|
1108
|
+
## v5.1.0 (2021-03-02)
|
|
1089
1109
|
|
|
1090
1110
|
### Added
|
|
1091
1111
|
|
|
@@ -1103,46 +1123,46 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1103
1123
|
|
|
1104
1124
|
- Less strict threshold for determining a 'significant' colour change for disabling Adaptive Lighting
|
|
1105
1125
|
|
|
1106
|
-
##
|
|
1126
|
+
## v5.0.6 (2021-02-26)
|
|
1107
1127
|
|
|
1108
1128
|
### Fixed
|
|
1109
1129
|
|
|
1110
1130
|
- Removes the extra _Switch_ service that was accidentally added to certain bulbs
|
|
1111
1131
|
|
|
1112
|
-
##
|
|
1132
|
+
## v5.0.5 (2021-02-25)
|
|
1113
1133
|
|
|
1114
1134
|
### Changed
|
|
1115
1135
|
|
|
1116
1136
|
- Reverse the polarity of the leak sensor simulation
|
|
1117
1137
|
- You can expose a DW2 sensor as a leak sensor using [this guide](https://www.youtube.com/watch?v=YFu2LZfrrqs) as an Accessory Simulation
|
|
1118
1138
|
|
|
1119
|
-
##
|
|
1139
|
+
## v5.0.4 (2021-02-24)
|
|
1120
1140
|
|
|
1121
1141
|
### Changed
|
|
1122
1142
|
|
|
1123
1143
|
- Plugin will check that certain Accessory Simulations have been setup with the device type
|
|
1124
1144
|
- Hide IP address field in plugin settings if plugin `mode` is set to `wan`
|
|
1125
1145
|
|
|
1126
|
-
##
|
|
1146
|
+
## v5.0.3 (2021-02-24)
|
|
1127
1147
|
|
|
1128
1148
|
### Changed
|
|
1129
1149
|
|
|
1130
1150
|
- Remove old _Switch_ services when setting up Accessory Simulations
|
|
1131
1151
|
- Add the type of Accessory Simulation to the logged options on restart
|
|
1132
1152
|
|
|
1133
|
-
##
|
|
1153
|
+
## v5.0.2 (2021-02-24)
|
|
1134
1154
|
|
|
1135
1155
|
### Fixed
|
|
1136
1156
|
|
|
1137
1157
|
- Fixes an issue initialising Accessory Simulation Lock devices
|
|
1138
1158
|
|
|
1139
|
-
##
|
|
1159
|
+
## v5.0.1 (2021-02-24)
|
|
1140
1160
|
|
|
1141
1161
|
### Fixed
|
|
1142
1162
|
|
|
1143
1163
|
- Fixes an issue initialising Contact Sensor devices
|
|
1144
1164
|
|
|
1145
|
-
##
|
|
1165
|
+
## v5.0.0 (2021-02-24)
|
|
1146
1166
|
|
|
1147
1167
|
- ⚠️ This release includes an overhaul of the settings in particular to specific device configuration
|
|
1148
1168
|
- The following options have been replaced:
|
|
@@ -1183,25 +1203,25 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1183
1203
|
|
|
1184
1204
|
- Fixes a characteristic warning for _MotionDetected_ for Zigbee Motion Sensors
|
|
1185
1205
|
|
|
1186
|
-
##
|
|
1206
|
+
## v4.7.6 (2021-02-17)
|
|
1187
1207
|
|
|
1188
1208
|
### Fixed
|
|
1189
1209
|
|
|
1190
1210
|
- Fixes an issue with the DW2 detecting garage door states
|
|
1191
1211
|
|
|
1192
|
-
##
|
|
1212
|
+
## v4.7.5 (2021-02-15)
|
|
1193
1213
|
|
|
1194
1214
|
### Changed
|
|
1195
1215
|
|
|
1196
1216
|
- Fixes an issue with the DW2 detecting garage door states
|
|
1197
1217
|
|
|
1198
|
-
##
|
|
1218
|
+
## v4.7.4 (2021-02-15)
|
|
1199
1219
|
|
|
1200
1220
|
### Fixed
|
|
1201
1221
|
|
|
1202
1222
|
- Fixes an issue when using custom RF sensors
|
|
1203
1223
|
|
|
1204
|
-
##
|
|
1224
|
+
## v4.7.3 (2021-02-13)
|
|
1205
1225
|
|
|
1206
1226
|
### Changed
|
|
1207
1227
|
|
|
@@ -1212,14 +1232,14 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1212
1232
|
- Lighter colours appear brighter
|
|
1213
1233
|
- Solid red is now easier to obtain via the Home app
|
|
1214
1234
|
|
|
1215
|
-
##
|
|
1235
|
+
## v4.7.2 (2021-02-12)
|
|
1216
1236
|
|
|
1217
1237
|
### Fixed
|
|
1218
1238
|
|
|
1219
1239
|
- Fixes a bug where config items separated by a comma weren't adhered to properly
|
|
1220
1240
|
- Stop subsequent warning messages if a device fails to initialise
|
|
1221
1241
|
|
|
1222
|
-
##
|
|
1242
|
+
## v4.7.1 (2021-02-11)
|
|
1223
1243
|
|
|
1224
1244
|
### Changed
|
|
1225
1245
|
|
|
@@ -1233,7 +1253,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1233
1253
|
|
|
1234
1254
|
- Fixed a bug when initialising lock accessory simulations
|
|
1235
1255
|
|
|
1236
|
-
##
|
|
1256
|
+
## v4.7.0 (2021-02-10)
|
|
1237
1257
|
|
|
1238
1258
|
### Added
|
|
1239
1259
|
|
|
@@ -1267,14 +1287,14 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1267
1287
|
- Fixed a bug where Adaptive Lighting would not be disabled if the colour was changed from the eWeLink app
|
|
1268
1288
|
- Fixed an issue with the 'Lock' Accessory Simulation where the status would never update as 'Unlocked'
|
|
1269
1289
|
|
|
1270
|
-
##
|
|
1290
|
+
## v4.6.1 (2021-02-02)
|
|
1271
1291
|
|
|
1272
1292
|
### Changed
|
|
1273
1293
|
|
|
1274
1294
|
- Extra debug logging for WS reconnection status
|
|
1275
1295
|
- Updated `ws` dependency to v7.4.3
|
|
1276
1296
|
|
|
1277
|
-
##
|
|
1297
|
+
## v4.6.0 (2021-01-30)
|
|
1278
1298
|
|
|
1279
1299
|
### Added
|
|
1280
1300
|
|
|
@@ -1287,7 +1307,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1287
1307
|
- Increase the timeout for LAN control to 10 seconds for LAN only settings
|
|
1288
1308
|
- Show LAN update errors in the log
|
|
1289
1309
|
|
|
1290
|
-
##
|
|
1310
|
+
## v4.5.1 (2021-01-28)
|
|
1291
1311
|
|
|
1292
1312
|
### Changed
|
|
1293
1313
|
|
|
@@ -1298,7 +1318,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1298
1318
|
|
|
1299
1319
|
- Fixes an issue where RF sensors would not use a custom defined type (again!)
|
|
1300
1320
|
|
|
1301
|
-
##
|
|
1321
|
+
## v4.5.0 (2021-01-28)
|
|
1302
1322
|
|
|
1303
1323
|
### Added
|
|
1304
1324
|
|
|
@@ -1314,25 +1334,25 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1314
1334
|
- Fix for TH10/16 devices (shown as thermostat) where the plugin would not show the current state of the device
|
|
1315
1335
|
- Fix for the display of watts/amps/volts for outlets that support this
|
|
1316
1336
|
|
|
1317
|
-
##
|
|
1337
|
+
## v4.4.5 (2021-01-24)
|
|
1318
1338
|
|
|
1319
1339
|
### Fixed
|
|
1320
1340
|
|
|
1321
1341
|
- Fix where the battery for DW2 device would not update
|
|
1322
1342
|
|
|
1323
|
-
##
|
|
1343
|
+
## v4.4.4 (2021-01-24)
|
|
1324
1344
|
|
|
1325
1345
|
### Changed
|
|
1326
1346
|
|
|
1327
1347
|
- Backend - better handling of errors
|
|
1328
1348
|
|
|
1329
|
-
##
|
|
1349
|
+
## v4.4.3 (2021-01-20)
|
|
1330
1350
|
|
|
1331
1351
|
### Fixed
|
|
1332
1352
|
|
|
1333
1353
|
- Fixes an issue where RF sensors would not use a custom defined type
|
|
1334
1354
|
|
|
1335
|
-
##
|
|
1355
|
+
## v4.4.2 (2021-01-20)
|
|
1336
1356
|
|
|
1337
1357
|
### Changed
|
|
1338
1358
|
|
|
@@ -1342,13 +1362,13 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1342
1362
|
|
|
1343
1363
|
- Fixes an issue when adding new RF bridge devices
|
|
1344
1364
|
|
|
1345
|
-
##
|
|
1365
|
+
## v4.4.1 (2021-01-20)
|
|
1346
1366
|
|
|
1347
1367
|
### Changed
|
|
1348
1368
|
|
|
1349
1369
|
- Fakegato logging disabled in Homebridge `debug` mode, can be explicitly enabled with `debugFakegato`
|
|
1350
1370
|
|
|
1351
|
-
##
|
|
1371
|
+
## v4.4.0 (2021-01-14)
|
|
1352
1372
|
|
|
1353
1373
|
### Added
|
|
1354
1374
|
|
|
@@ -1364,7 +1384,7 @@ This project tries to adhere to [Semantic Versioning](http://semver.org/). In pr
|
|
|
1364
1384
|
|
|
1365
1385
|
- Removed `Obstruction Detected` tests
|
|
1366
1386
|
|
|
1367
|
-
##
|
|
1387
|
+
## v4.3.0 (2021-01-12)
|
|
1368
1388
|
|
|
1369
1389
|
### Added
|
|
1370
1390
|
|
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
|
|
8
8
|
Homebridge plugin to integrate eWeLink devices into HomeKit
|
|
9
9
|
|
|
10
|
-
[](https://www.npmjs.com/package/homebridge-ewelink)
|
|
11
|
-
[](https://github.com/homebridge-plugins/homebridge-ewelink/wiki/Beta-Version)
|
|
10
|
+
[](https://www.npmjs.com/package/@homebridge-plugins/homebridge-ewelink)
|
|
11
|
+
[](https://github.com/homebridge-plugins/homebridge-ewelink/wiki/Beta-Version)
|
|
12
12
|
|
|
13
13
|
[](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)
|
|
14
14
|
[](https://plugins.hoobs.org/plugin/homebridge-ewelink)
|
|
15
15
|
|
|
16
|
-
[](https://www.npmjs.com/package/homebridge-ewelink)
|
|
16
|
+
[](https://www.npmjs.com/package/@homebridge-plugins/homebridge-ewelink)
|
|
17
17
|
[](https://discord.com/channels/432663330281226270/742733745743855627)
|
|
18
18
|
|
|
19
19
|
</span>
|
|
@@ -29,7 +29,7 @@ Homebridge plugin to integrate eWeLink devices into HomeKit
|
|
|
29
29
|
### Prerequisites
|
|
30
30
|
|
|
31
31
|
- To use this plugin, you will need to already have:
|
|
32
|
-
- [Node](https://nodejs.org): latest version of `
|
|
32
|
+
- [Node](https://nodejs.org): latest version of `v20`, `v22` or `v24` - any other major version is not supported.
|
|
33
33
|
- [Homebridge](https://homebridge.io): `v1.6` - refer to link for more information and installation instructions.
|
|
34
34
|
|
|
35
35
|
### Setup
|
package/config.schema.json
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
"pluginAlias": "eWeLink",
|
|
3
3
|
"pluginType": "platform",
|
|
4
4
|
"singular": true,
|
|
5
|
+
"strictValidation": true,
|
|
5
6
|
"customUi": true,
|
|
6
7
|
"customUiPath": "./lib/homebridge-ui",
|
|
7
8
|
"headerDisplay": "<p align=\"center\"><img width=\"60%\" src=\"https://user-images.githubusercontent.com/43026681/101325266-63126600-3863-11eb-9382-4a2924f0e540.png\"></p><p align=\"center\">For help and support please visit our <a href=\"https://github.com/homebridge-plugins/homebridge-ewelink/wiki\">GitHub Wiki</a>. We hope you find this plugin useful!</p>",
|
package/eslint.config.js
CHANGED
|
@@ -8,8 +8,6 @@ export default antfu(
|
|
|
8
8
|
rules: {
|
|
9
9
|
'curly': ['error', 'multi-line'],
|
|
10
10
|
'new-cap': 'off',
|
|
11
|
-
'import/extensions': ['error', 'ignorePackages'],
|
|
12
|
-
'import/order': 0,
|
|
13
11
|
'jsdoc/check-alignment': 'warn',
|
|
14
12
|
'jsdoc/check-line-alignment': 'warn',
|
|
15
13
|
'jsdoc/require-returns-check': 0,
|
|
@@ -1,3 +1,39 @@
|
|
|
1
|
+
<style>
|
|
2
|
+
.dark-mode {
|
|
3
|
+
background-color: #242424;
|
|
4
|
+
color: lightgrey;
|
|
5
|
+
|
|
6
|
+
.form-control {
|
|
7
|
+
background-color: #333333 !important;
|
|
8
|
+
border: none !important;
|
|
9
|
+
color: #eeeeee !important;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
thead, tbody, tr {
|
|
13
|
+
border-style: hidden;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
th {
|
|
17
|
+
color: #eeeeee !important;
|
|
18
|
+
font-weight: 500 !important;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
select {
|
|
22
|
+
background-image:
|
|
23
|
+
linear-gradient(45deg, transparent 50%, gray 50%),
|
|
24
|
+
linear-gradient(135deg, gray 50%, transparent 50%),
|
|
25
|
+
linear-gradient(to right, #ccc, #ccc);
|
|
26
|
+
background-position:
|
|
27
|
+
calc(100% - 20px) calc(1em + 2px),
|
|
28
|
+
calc(100% - 15px) calc(1em + 2px),
|
|
29
|
+
calc(100% - 2.5em) 0.5em;
|
|
30
|
+
background-size:
|
|
31
|
+
5px 5px,
|
|
32
|
+
5px 5px,
|
|
33
|
+
1px 1.5em;
|
|
34
|
+
background-repeat: no-repeat;
|
|
35
|
+
}
|
|
36
|
+
</style>
|
|
1
37
|
<p class="text-center">
|
|
2
38
|
<img
|
|
3
39
|
src="https://user-images.githubusercontent.com/43026681/101325266-63126600-3863-11eb-9382-4a2924f0e540.png"
|
|
@@ -49,7 +85,7 @@
|
|
|
49
85
|
<select class="form-control" id="deviceSelect"></select>
|
|
50
86
|
</div>
|
|
51
87
|
</form>
|
|
52
|
-
<table class="table w-100" id="deviceTable" style="display: none;">
|
|
88
|
+
<table class="table w-100 mt-3" id="deviceTable" style="display: none;">
|
|
53
89
|
<thead>
|
|
54
90
|
<tr class="table-active">
|
|
55
91
|
<th scope="col" style="width: 40%;">Device Name</th>
|
|
@@ -223,10 +259,10 @@
|
|
|
223
259
|
try {
|
|
224
260
|
const currentConfig = await homebridge.getPluginConfig()
|
|
225
261
|
showIntro = () => {
|
|
262
|
+
homebridge.disableSaveButton?.()
|
|
226
263
|
const introContinue = document.getElementById('introContinue')
|
|
227
264
|
introContinue.addEventListener('click', () => {
|
|
228
265
|
homebridge.showSpinner()
|
|
229
|
-
homebridge.disableSaveButton?.()
|
|
230
266
|
document.getElementById('pageIntro').style.display = 'none'
|
|
231
267
|
document.getElementById('menuWrapper').style.display = 'inline-flex'
|
|
232
268
|
showSettings()
|
|
@@ -1,32 +1,34 @@
|
|
|
1
|
-
import { inherits } from 'node:util'
|
|
2
|
-
|
|
3
1
|
export default class {
|
|
4
2
|
constructor(api) {
|
|
5
|
-
this.hapServ = api.hap.Service
|
|
6
|
-
this.hapChar = api.hap.Characteristic
|
|
7
3
|
this.uuids = {
|
|
8
4
|
invertSwitch: 'E965F001-079E-48FF-8F27-9C2605A29F52',
|
|
9
5
|
festiveScene: 'E965F002-079E-48FF-8F27-9C2605A29F52',
|
|
10
6
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
7
|
+
|
|
8
|
+
const uuids = this.uuids
|
|
9
|
+
|
|
10
|
+
this.InvertSwitch = class extends api.hap.Characteristic {
|
|
11
|
+
constructor() {
|
|
12
|
+
super('Invert Switch', uuids.invertSwitch)
|
|
13
|
+
this.setProps({
|
|
14
|
+
format: api.hap.Formats.BOOL,
|
|
15
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.PAIRED_WRITE, api.hap.Perms.NOTIFY],
|
|
16
|
+
})
|
|
17
|
+
this.value = this.getDefaultValue()
|
|
18
|
+
}
|
|
19
19
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
20
|
+
|
|
21
|
+
this.FestiveScene = class extends api.hap.Characteristic {
|
|
22
|
+
constructor() {
|
|
23
|
+
super('Festive Scene', uuids.festiveScene)
|
|
24
|
+
this.setProps({
|
|
25
|
+
format: api.hap.Formats.BOOL,
|
|
26
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.PAIRED_WRITE, api.hap.Perms.NOTIFY],
|
|
27
|
+
})
|
|
28
|
+
this.value = this.getDefaultValue()
|
|
29
|
+
}
|
|
27
30
|
}
|
|
28
|
-
|
|
29
|
-
inherits(this.FestiveScene, this.hapChar)
|
|
31
|
+
|
|
30
32
|
this.InvertSwitch.UUID = this.uuids.invertSwitch
|
|
31
33
|
this.FestiveScene.UUID = this.uuids.festiveScene
|
|
32
34
|
}
|
package/lib/utils/eve-chars.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import { inherits } from 'node:util'
|
|
2
|
-
|
|
3
1
|
export default class {
|
|
4
2
|
constructor(api) {
|
|
5
|
-
this.hapServ = api.hap.Service
|
|
6
|
-
this.hapChar = api.hap.Characteristic
|
|
7
3
|
this.uuids = {
|
|
8
4
|
currentConsumption: 'E863F10D-079E-48FF-8F27-9C2605A29F52',
|
|
9
5
|
totalConsumption: 'E863F10C-079E-48FF-8F27-9C2605A29F52',
|
|
@@ -15,108 +11,128 @@ export default class {
|
|
|
15
11
|
closedDuration: 'E863F119-079E-48FF-8F27-9C2605A29F52',
|
|
16
12
|
timesOpened: 'E863F129-079E-48FF-8F27-9C2605A29F52',
|
|
17
13
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
14
|
+
|
|
15
|
+
const uuids = this.uuids
|
|
16
|
+
|
|
17
|
+
this.CurrentConsumption = class extends api.hap.Characteristic {
|
|
18
|
+
constructor() {
|
|
19
|
+
super('Current Consumption', uuids.currentConsumption)
|
|
20
|
+
this.setProps({
|
|
21
|
+
format: api.hap.Formats.UINT16,
|
|
22
|
+
unit: 'W',
|
|
23
|
+
maxValue: 100000,
|
|
24
|
+
minValue: 0,
|
|
25
|
+
minStep: 1,
|
|
26
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY],
|
|
27
|
+
})
|
|
28
|
+
this.value = this.getDefaultValue()
|
|
29
|
+
}
|
|
30
30
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
31
|
+
|
|
32
|
+
this.TotalConsumption = class extends api.hap.Characteristic {
|
|
33
|
+
constructor() {
|
|
34
|
+
super('Total Consumption', uuids.totalConsumption)
|
|
35
|
+
this.setProps({
|
|
36
|
+
format: api.hap.Formats.FLOAT,
|
|
37
|
+
unit: 'kWh',
|
|
38
|
+
maxValue: 100000000000,
|
|
39
|
+
minValue: 0,
|
|
40
|
+
minStep: 0.01,
|
|
41
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY],
|
|
42
|
+
})
|
|
43
|
+
this.value = this.getDefaultValue()
|
|
44
|
+
}
|
|
42
45
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
46
|
+
|
|
47
|
+
this.Voltage = class extends api.hap.Characteristic {
|
|
48
|
+
constructor() {
|
|
49
|
+
super('Voltage', uuids.voltage)
|
|
50
|
+
this.setProps({
|
|
51
|
+
format: api.hap.Formats.FLOAT,
|
|
52
|
+
unit: 'V',
|
|
53
|
+
maxValue: 100000000000,
|
|
54
|
+
minValue: 0,
|
|
55
|
+
minStep: 1,
|
|
56
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY],
|
|
57
|
+
})
|
|
58
|
+
this.value = this.getDefaultValue()
|
|
59
|
+
}
|
|
54
60
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
61
|
+
|
|
62
|
+
this.ElectricCurrent = class extends api.hap.Characteristic {
|
|
63
|
+
constructor() {
|
|
64
|
+
super('Electric Current', uuids.electricCurrent)
|
|
65
|
+
this.setProps({
|
|
66
|
+
format: api.hap.Formats.FLOAT,
|
|
67
|
+
unit: 'A',
|
|
68
|
+
maxValue: 100000000000,
|
|
69
|
+
minValue: 0,
|
|
70
|
+
minStep: 0.1,
|
|
71
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY],
|
|
72
|
+
})
|
|
73
|
+
this.value = this.getDefaultValue()
|
|
74
|
+
}
|
|
66
75
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
76
|
+
|
|
77
|
+
this.ResetTotal = class extends api.hap.Characteristic {
|
|
78
|
+
constructor() {
|
|
79
|
+
super('Reset Total', uuids.resetTotal)
|
|
80
|
+
this.setProps({
|
|
81
|
+
format: api.hap.Formats.UINT32,
|
|
82
|
+
unit: api.hap.Units.seconds,
|
|
83
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY, api.hap.Perms.PAIRED_WRITE],
|
|
84
|
+
})
|
|
85
|
+
this.value = this.getDefaultValue()
|
|
86
|
+
}
|
|
75
87
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
88
|
+
|
|
89
|
+
this.LastActivation = class extends api.hap.Characteristic {
|
|
90
|
+
constructor() {
|
|
91
|
+
super('Last Activation', uuids.lastActivation)
|
|
92
|
+
this.setProps({
|
|
93
|
+
format: api.hap.Formats.UINT32,
|
|
94
|
+
unit: api.hap.Units.SECONDS,
|
|
95
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY],
|
|
96
|
+
})
|
|
97
|
+
this.value = this.getDefaultValue()
|
|
98
|
+
}
|
|
84
99
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
100
|
+
|
|
101
|
+
this.OpenDuration = class extends api.hap.Characteristic {
|
|
102
|
+
constructor() {
|
|
103
|
+
super('Open Duration', uuids.openDuration)
|
|
104
|
+
this.setProps({
|
|
105
|
+
format: api.hap.Formats.UINT32,
|
|
106
|
+
unit: api.hap.Units.SECONDS,
|
|
107
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY, api.hap.Perms.PAIRED_WRITE],
|
|
108
|
+
})
|
|
109
|
+
this.value = this.getDefaultValue()
|
|
110
|
+
}
|
|
93
111
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
112
|
+
|
|
113
|
+
this.ClosedDuration = class extends api.hap.Characteristic {
|
|
114
|
+
constructor() {
|
|
115
|
+
super('Closed Duration', uuids.closedDuration)
|
|
116
|
+
this.setProps({
|
|
117
|
+
format: api.hap.Formats.UINT32,
|
|
118
|
+
unit: api.hap.Units.SECONDS,
|
|
119
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY, api.hap.Perms.PAIRED_WRITE],
|
|
120
|
+
})
|
|
121
|
+
this.value = this.getDefaultValue()
|
|
122
|
+
}
|
|
102
123
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
124
|
+
|
|
125
|
+
this.TimesOpened = class extends api.hap.Characteristic {
|
|
126
|
+
constructor() {
|
|
127
|
+
super('Times Opened', uuids.timesOpened)
|
|
128
|
+
this.setProps({
|
|
129
|
+
format: api.hap.Formats.UINT32,
|
|
130
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.NOTIFY],
|
|
131
|
+
})
|
|
132
|
+
this.value = this.getDefaultValue()
|
|
133
|
+
}
|
|
110
134
|
}
|
|
111
|
-
|
|
112
|
-
inherits(this.TotalConsumption, this.hapChar)
|
|
113
|
-
inherits(this.Voltage, this.hapChar)
|
|
114
|
-
inherits(this.ElectricCurrent, this.hapChar)
|
|
115
|
-
inherits(this.LastActivation, this.hapChar)
|
|
116
|
-
inherits(this.ResetTotal, this.hapChar)
|
|
117
|
-
inherits(this.OpenDuration, this.hapChar)
|
|
118
|
-
inherits(this.ClosedDuration, this.hapChar)
|
|
119
|
-
inherits(this.TimesOpened, this.hapChar)
|
|
135
|
+
|
|
120
136
|
this.CurrentConsumption.UUID = this.uuids.currentConsumption
|
|
121
137
|
this.TotalConsumption.UUID = this.uuids.totalConsumption
|
|
122
138
|
this.Voltage.UUID = this.uuids.voltage
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"displayName": "Homebridge eWeLink",
|
|
4
4
|
"alias": "eWeLink",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"version": "12.
|
|
6
|
+
"version": "12.6.0",
|
|
7
7
|
"description": "Homebridge plugin to integrate eWeLink devices into HomeKit.",
|
|
8
8
|
"author": {
|
|
9
9
|
"name": "bwp91",
|
|
@@ -54,22 +54,21 @@
|
|
|
54
54
|
"main": "lib/index.js",
|
|
55
55
|
"engines": {
|
|
56
56
|
"homebridge": "^1.6.0 || ^2.0.0-beta.0",
|
|
57
|
-
"node": "^
|
|
57
|
+
"node": "^20 || ^22 || ^24"
|
|
58
58
|
},
|
|
59
59
|
"scripts": {
|
|
60
|
-
"lint": "eslint . --
|
|
61
|
-
"
|
|
60
|
+
"lint": "eslint . --max-warnings=0",
|
|
61
|
+
"lint:fix": "npm run lint -- --fix"
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@homebridge/plugin-ui-utils": "^2.0
|
|
65
|
-
"axios": "^1.
|
|
64
|
+
"@homebridge/plugin-ui-utils": "^2.1.0",
|
|
65
|
+
"axios": "^1.10.0",
|
|
66
66
|
"node-persist": "^4.0.4",
|
|
67
67
|
"p-queue": "^8.1.0",
|
|
68
|
-
"websocket-as-promised": "^3.0.
|
|
69
|
-
"ws": "^8.18.
|
|
68
|
+
"websocket-as-promised": "^3.0.1",
|
|
69
|
+
"ws": "^8.18.3"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
|
-
"@antfu/eslint-config": "^4.
|
|
73
|
-
"eslint": "^9.23.0"
|
|
72
|
+
"@antfu/eslint-config": "^4.16.2"
|
|
74
73
|
}
|
|
75
74
|
}
|