@homebridge-plugins/homebridge-wemo 7.0.1-beta.0 → 7.2.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 +96 -69
- package/README.md +9 -4
- package/config.schema.json +1 -0
- package/eslint.config.js +0 -2
- package/lib/homebridge-ui/public/index.html +37 -1
- package/lib/utils/eve-chars.js +113 -97
- package/package.json +7 -8
package/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,34 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to homebridge-wemo will be documented in this file.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## v7.2.0 (2025-07-13)
|
|
6
|
+
|
|
7
|
+
### Notable Changes
|
|
8
|
+
|
|
9
|
+
- fix custom plugin config modal styles in ui 5
|
|
10
|
+
- fix eve characteristics for hb 2
|
|
11
|
+
|
|
12
|
+
### Other Changes
|
|
13
|
+
|
|
14
|
+
- github repo maintenance
|
|
15
|
+
- add permissions to workflows
|
|
16
|
+
- improvements to the deprecate workflow
|
|
17
|
+
|
|
18
|
+
## v7.1.0 (2025-07-12)
|
|
19
|
+
|
|
20
|
+
⚠️ This plugin no longer officially supports Node `v16` and `v18`, however there is no reason why it shouldn't work on these versions.
|
|
21
|
+
|
|
22
|
+
### Notable Changes
|
|
23
|
+
|
|
24
|
+
- set supported node versions to `v20`, `v22` and `v24`
|
|
25
|
+
- set `strictValidation` to `true` in the config schema file
|
|
26
|
+
|
|
27
|
+
### Other Changes
|
|
28
|
+
|
|
29
|
+
- github repo maintenance
|
|
30
|
+
- updated dependencies
|
|
31
|
+
|
|
32
|
+
## v7.0.0 (2025-03-22)
|
|
6
33
|
|
|
7
34
|
### Changed
|
|
8
35
|
|
|
@@ -19,7 +46,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
19
46
|
|
|
20
47
|
- Support for node 16
|
|
21
48
|
|
|
22
|
-
##
|
|
49
|
+
## v6.1.2 (2023-09-18)
|
|
23
50
|
|
|
24
51
|
⚠️ Note this will be the last version of the plugin to support Node 16.
|
|
25
52
|
- Node 16 moves to 'end of life' on 2023-09-11 ([more info](https://nodejs.org/en/blog/announcements/nodejs16-eol))
|
|
@@ -34,7 +61,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
34
61
|
|
|
35
62
|
- Properly ignore serial numbers if they aren't already in upper case
|
|
36
63
|
|
|
37
|
-
##
|
|
64
|
+
## v6.1.1 (2023-08-28)
|
|
38
65
|
|
|
39
66
|
### Changed
|
|
40
67
|
|
|
@@ -44,7 +71,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
44
71
|
|
|
45
72
|
- Show config option `outletInUseTrue` even when `showAs` is not selected
|
|
46
73
|
|
|
47
|
-
##
|
|
74
|
+
## v6.1.0 (2023-06-17)
|
|
48
75
|
|
|
49
76
|
### Added
|
|
50
77
|
|
|
@@ -55,27 +82,27 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
55
82
|
- Bump `node` supported versions to v16.20.0 or v18.16.0 or v20.1.0
|
|
56
83
|
- Updated dependencies
|
|
57
84
|
|
|
58
|
-
##
|
|
85
|
+
## v6.0.4 (2023-05-01)
|
|
59
86
|
|
|
60
87
|
### Changed
|
|
61
88
|
|
|
62
89
|
- README changes
|
|
63
90
|
- Dependency updates
|
|
64
91
|
|
|
65
|
-
##
|
|
92
|
+
## v6.0.3 (2023-04-22)
|
|
66
93
|
|
|
67
94
|
### Changed
|
|
68
95
|
|
|
69
96
|
- Update dependencies
|
|
70
97
|
- Bump `node` supported versions to v16.20.0 or v18.16.0 or v20.0.0
|
|
71
98
|
|
|
72
|
-
##
|
|
99
|
+
## v6.0.2 (2023-04-10)
|
|
73
100
|
|
|
74
101
|
### Changed
|
|
75
102
|
|
|
76
103
|
- Bump `xml2js` dependency
|
|
77
104
|
|
|
78
|
-
##
|
|
105
|
+
## v6.0.1 (2023-04-05)
|
|
79
106
|
|
|
80
107
|
### Changed
|
|
81
108
|
|
|
@@ -86,7 +113,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
86
113
|
|
|
87
114
|
- Eve switch values for light switches
|
|
88
115
|
|
|
89
|
-
##
|
|
116
|
+
## v6.0.0 (2023-03-11)
|
|
90
117
|
|
|
91
118
|
### Breaking
|
|
92
119
|
|
|
@@ -100,14 +127,14 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
100
127
|
- Bump `homebridge` recommended version to v1.6.0 or v2.0.0-beta
|
|
101
128
|
- Bump `node` recommended versions to v16.19.1 or v18.15.0
|
|
102
129
|
|
|
103
|
-
##
|
|
130
|
+
## v5.0.5 (2022-10-16)
|
|
104
131
|
|
|
105
132
|
### Changed
|
|
106
133
|
|
|
107
134
|
- Bump `node` recommended versions to v14.20.1 or v16.18.0 or v18.11.0
|
|
108
135
|
- Bump `axios` to v1.1.3
|
|
109
136
|
|
|
110
|
-
##
|
|
137
|
+
## v5.0.4 (2022-09-25)
|
|
111
138
|
|
|
112
139
|
### Changed
|
|
113
140
|
|
|
@@ -116,7 +143,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
116
143
|
- Bump `node` recommended versions to v14.20.1 or v16.17.1
|
|
117
144
|
- Updated dev dependencies
|
|
118
145
|
|
|
119
|
-
##
|
|
146
|
+
## v5.0.3 (2022-06-08)
|
|
120
147
|
|
|
121
148
|
### Changed
|
|
122
149
|
|
|
@@ -127,19 +154,19 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
127
154
|
- Fix a Crockpot issue when plugin receives off value
|
|
128
155
|
- A potential issue showing errors in the logs
|
|
129
156
|
|
|
130
|
-
##
|
|
157
|
+
## v5.0.2 (2022-05-28)
|
|
131
158
|
|
|
132
159
|
### Changed
|
|
133
160
|
|
|
134
161
|
- More fixes and refactoring
|
|
135
162
|
|
|
136
|
-
##
|
|
163
|
+
## v5.0.1 (2022-05-28)
|
|
137
164
|
|
|
138
165
|
### Fixed
|
|
139
166
|
|
|
140
167
|
- An error message when initialising Wemo motion devices
|
|
141
168
|
|
|
142
|
-
##
|
|
169
|
+
## v5.0.0 (2022-05-28)
|
|
143
170
|
|
|
144
171
|
### Potentially Breaking Changes
|
|
145
172
|
|
|
@@ -152,7 +179,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
152
179
|
- Bump `ip` to v2.0.0
|
|
153
180
|
- Bump `node` recommended versions to v14.19.3 or v16.15.0
|
|
154
181
|
|
|
155
|
-
##
|
|
182
|
+
## v4.7.3 (2022-04-29)
|
|
156
183
|
|
|
157
184
|
### Changed
|
|
158
185
|
|
|
@@ -164,7 +191,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
164
191
|
- Node 18 `networkInterfaces` fix
|
|
165
192
|
- Note that Homebridge nor this plugin do not _officially_ support Node 18 until October 2022
|
|
166
193
|
|
|
167
|
-
##
|
|
194
|
+
## v4.7.2 (2022-03-20)
|
|
168
195
|
|
|
169
196
|
### Changed
|
|
170
197
|
|
|
@@ -176,14 +203,14 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
176
203
|
- Some fixes for Wemo Crockpot
|
|
177
204
|
- Accessory name logging on http receive device update failures
|
|
178
205
|
|
|
179
|
-
##
|
|
206
|
+
## v4.7.1 (2022-02-27)
|
|
180
207
|
|
|
181
208
|
### Changed
|
|
182
209
|
|
|
183
210
|
- Bump `axios` to v0.26.0
|
|
184
211
|
- Bump `node` recommended versions to v14.19.0 or v16.14.0
|
|
185
212
|
|
|
186
|
-
##
|
|
213
|
+
## v4.7.0 (2022-02-08)
|
|
187
214
|
|
|
188
215
|
### Added
|
|
189
216
|
|
|
@@ -193,7 +220,7 @@ All notable changes to homebridge-wemo will be documented in this file.
|
|
|
193
220
|
|
|
194
221
|
- Characteristic warning for Wemo Humidifier
|
|
195
222
|
|
|
196
|
-
##
|
|
223
|
+
## v4.6.0 (2022-01-28)
|
|
197
224
|
|
|
198
225
|
See ⚠️ for potentially breaking changes
|
|
199
226
|
|
|
@@ -214,7 +241,7 @@ See ⚠️ for potentially breaking changes
|
|
|
214
241
|
- HomeKit 'No Response' issue with Wemo Maker
|
|
215
242
|
- Unsupported devices will now only show once in the log when first discovered
|
|
216
243
|
|
|
217
|
-
##
|
|
244
|
+
## v4.5.4 (2022-01-13)
|
|
218
245
|
|
|
219
246
|
### Changed
|
|
220
247
|
|
|
@@ -224,26 +251,26 @@ See ⚠️ for potentially breaking changes
|
|
|
224
251
|
|
|
225
252
|
- Plugin crash for older versions of Homebridge
|
|
226
253
|
|
|
227
|
-
##
|
|
254
|
+
## v4.5.3 (2022-01-05)
|
|
228
255
|
|
|
229
256
|
### Changed
|
|
230
257
|
|
|
231
258
|
- Bump `homebridge` recommended version to v1.3.9
|
|
232
259
|
|
|
233
|
-
##
|
|
260
|
+
## v4.5.2 (2021-12-30)
|
|
234
261
|
|
|
235
262
|
### Changed
|
|
236
263
|
|
|
237
264
|
- Plugin will log HAPNodeJS version on startup
|
|
238
265
|
- Default UPnP interval increased to `300` (5 minute interval)
|
|
239
266
|
|
|
240
|
-
##
|
|
267
|
+
## v4.5.1 (2021-12-22)
|
|
241
268
|
|
|
242
269
|
### Fixed
|
|
243
270
|
|
|
244
271
|
- Option to specify the subscription time for UPnP subscriptions, eero users _may_ benefit from increasing this value
|
|
245
272
|
|
|
246
|
-
##
|
|
273
|
+
## v4.5.0 (2021-12-21)
|
|
247
274
|
|
|
248
275
|
### Added
|
|
249
276
|
|
|
@@ -253,7 +280,7 @@ See ⚠️ for potentially breaking changes
|
|
|
253
280
|
|
|
254
281
|
- Moved commonly used configuration options out of the 'Optional Settings' section for easier access
|
|
255
282
|
|
|
256
|
-
##
|
|
283
|
+
## v4.4.0 (2021-12-08)
|
|
257
284
|
|
|
258
285
|
See ⚠️ for breaking changes
|
|
259
286
|
|
|
@@ -271,7 +298,7 @@ See ⚠️ for breaking changes
|
|
|
271
298
|
|
|
272
299
|
- ⚠️ Removed the `manualDevices[]` config entry, the same functionality is available in the device-type specific sections
|
|
273
300
|
|
|
274
|
-
##
|
|
301
|
+
## v4.3.0 (2021-11-18)
|
|
275
302
|
|
|
276
303
|
### Added
|
|
277
304
|
|
|
@@ -282,7 +309,7 @@ See ⚠️ for breaking changes
|
|
|
282
309
|
|
|
283
310
|
- An `undefined` logging entry for the Wemo Insight
|
|
284
311
|
|
|
285
|
-
##
|
|
312
|
+
## v4.2.6 (2021-10-31)
|
|
286
313
|
|
|
287
314
|
### Changed
|
|
288
315
|
|
|
@@ -290,7 +317,7 @@ See ⚠️ for breaking changes
|
|
|
290
317
|
- Bump `node` recommended versions to v14.18.1 or v16.13.0
|
|
291
318
|
- Bump `axios` to v0.24.0
|
|
292
319
|
|
|
293
|
-
##
|
|
320
|
+
## v4.2.5 (2021-10-20)
|
|
294
321
|
|
|
295
322
|
### Changed
|
|
296
323
|
|
|
@@ -300,7 +327,7 @@ See ⚠️ for breaking changes
|
|
|
300
327
|
|
|
301
328
|
- An Eve app 'no data' gap for garage devices when restarting the plugin
|
|
302
329
|
|
|
303
|
-
##
|
|
330
|
+
## v4.2.4 (2021-10-16)
|
|
304
331
|
|
|
305
332
|
### Changed
|
|
306
333
|
|
|
@@ -312,25 +339,25 @@ See ⚠️ for breaking changes
|
|
|
312
339
|
|
|
313
340
|
- An error when trying to unregister a hidden accessory from Homebridge
|
|
314
341
|
|
|
315
|
-
##
|
|
342
|
+
## v4.2.3 (2021-10-03)
|
|
316
343
|
|
|
317
344
|
### Changed
|
|
318
345
|
|
|
319
346
|
- Bump `axios` to v0.22.0
|
|
320
347
|
|
|
321
|
-
##
|
|
348
|
+
## v4.2.2 (2021-09-30)
|
|
322
349
|
|
|
323
350
|
### Fixed
|
|
324
351
|
|
|
325
352
|
- Increase UPnP subscription time to 130 seconds to fix instances of `412` error
|
|
326
353
|
|
|
327
|
-
##
|
|
354
|
+
## v4.2.1 (2021-09-30)
|
|
328
355
|
|
|
329
356
|
### Changed
|
|
330
357
|
|
|
331
358
|
- Recommended node versions bumped to v14.18.0 or v16.10.0
|
|
332
359
|
|
|
333
|
-
##
|
|
360
|
+
## v4.2.0 (2021-09-28)
|
|
334
361
|
|
|
335
362
|
### Added
|
|
336
363
|
|
|
@@ -340,14 +367,14 @@ See ⚠️ for breaking changes
|
|
|
340
367
|
|
|
341
368
|
- UPnP callback url now uses the accessory UUID (not the UDN) so the plugin immediately knows which accessory a notification relates to
|
|
342
369
|
|
|
343
|
-
##
|
|
370
|
+
## v4.1.6 (2021-09-09)
|
|
344
371
|
|
|
345
372
|
### Changed
|
|
346
373
|
|
|
347
374
|
- `configureAccessory` function simplified to reduce chance of accessory cache retrieval failing
|
|
348
375
|
- Bump `axios` to v0.21.4
|
|
349
376
|
|
|
350
|
-
##
|
|
377
|
+
## v4.1.5 (2021-09-05)
|
|
351
378
|
|
|
352
379
|
### Changed
|
|
353
380
|
|
|
@@ -355,25 +382,25 @@ See ⚠️ for breaking changes
|
|
|
355
382
|
- Recommended node version bumped to v14.17.6
|
|
356
383
|
- Bump `axios` to v0.21.3
|
|
357
384
|
|
|
358
|
-
##
|
|
385
|
+
## v4.1.4 (2021-08-22)
|
|
359
386
|
|
|
360
387
|
### Changed
|
|
361
388
|
|
|
362
389
|
- Ignore `pywemo` virtual device type `urn:Belkin:device:switch:1`
|
|
363
390
|
|
|
364
|
-
##
|
|
391
|
+
## v4.1.3 (2021-08-18)
|
|
365
392
|
|
|
366
393
|
### Fixed
|
|
367
394
|
|
|
368
395
|
- Better handling of NodeSSDP `No sockets available, cannot start.` error
|
|
369
396
|
|
|
370
|
-
##
|
|
397
|
+
## v4.1.2 (2021-08-17)
|
|
371
398
|
|
|
372
399
|
### Fixed
|
|
373
400
|
|
|
374
401
|
- An unhandled rejection error when initialising Wemo Link
|
|
375
402
|
|
|
376
|
-
##
|
|
403
|
+
## v4.1.1 (2021-08-12)
|
|
377
404
|
|
|
378
405
|
### Changed
|
|
379
406
|
|
|
@@ -384,7 +411,7 @@ See ⚠️ for breaking changes
|
|
|
384
411
|
|
|
385
412
|
- Fixed title of `debugNodeSSDP` setting (only visible in HOOBS)
|
|
386
413
|
|
|
387
|
-
##
|
|
414
|
+
## v4.1.0 (2021-08-10)
|
|
388
415
|
|
|
389
416
|
### Added
|
|
390
417
|
|
|
@@ -437,7 +464,7 @@ See ⚠️ for breaking changes
|
|
|
437
464
|
- Please start to move any entries you have from the manual devices section to the appropriate device section
|
|
438
465
|
- Any entries in the manual devices section will continue to work (ie this is not a breaking change)
|
|
439
466
|
|
|
440
|
-
##
|
|
467
|
+
## v4.0.0 (2021-07-29)
|
|
441
468
|
|
|
442
469
|
### Added
|
|
443
470
|
|
|
@@ -456,26 +483,26 @@ See ⚠️ for breaking changes
|
|
|
456
483
|
- Devices can be ignored by entering a serial number in the relevant device section and ticking 'Hide From HomeKit'
|
|
457
484
|
- It is recommended to set up your ignored devices **before** updating to avoid losing your list of serial numbers
|
|
458
485
|
|
|
459
|
-
##
|
|
486
|
+
## v3.4.2 (2021-07-27)
|
|
460
487
|
|
|
461
488
|
### Fixed
|
|
462
489
|
|
|
463
490
|
- An issue preventing Wemo Outlets being exposed as `Switch` or `AirPurifier` types
|
|
464
491
|
|
|
465
|
-
##
|
|
492
|
+
## v3.4.1 (2021-07-24)
|
|
466
493
|
|
|
467
494
|
### Fixed
|
|
468
495
|
|
|
469
496
|
- Use new plugin alias in config schema file
|
|
470
497
|
|
|
471
|
-
##
|
|
498
|
+
## v3.4.0 (2021-07-24)
|
|
472
499
|
|
|
473
500
|
### Changed
|
|
474
501
|
|
|
475
502
|
- Plugin name from `homebridge-platform-wemo` to `homebridge-wemo`
|
|
476
503
|
- Plugin alias from `BelkinWeMo` to `Wemo`
|
|
477
504
|
|
|
478
|
-
##
|
|
505
|
+
## v3.3.0 (2021-07-22)
|
|
479
506
|
|
|
480
507
|
### Added
|
|
481
508
|
|
|
@@ -495,19 +522,19 @@ See ⚠️ for breaking changes
|
|
|
495
522
|
|
|
496
523
|
- Logging status for the Wemo Maker sensor (when exposed as a Switch) was incorrectly reversed
|
|
497
524
|
|
|
498
|
-
##
|
|
525
|
+
## v3.2.2 (2021-07-08)
|
|
499
526
|
|
|
500
527
|
### Changes
|
|
501
528
|
|
|
502
529
|
- Revert node version bump to v14.17.3 (back to v14.17.2)
|
|
503
530
|
|
|
504
|
-
##
|
|
531
|
+
## v3.2.1 (2021-07-07)
|
|
505
532
|
|
|
506
533
|
### Fixed
|
|
507
534
|
|
|
508
535
|
- An issue initialising Wemo light switch devices ([#262](https://github.com/homebridge-plugins/homebridge-wemo/issues/262))
|
|
509
536
|
|
|
510
|
-
##
|
|
537
|
+
## v3.2.0 (2021-07-07)
|
|
511
538
|
|
|
512
539
|
### Added
|
|
513
540
|
|
|
@@ -546,7 +573,7 @@ See ⚠️ for breaking changes
|
|
|
546
573
|
- `overrideDisabledLogging` setting for each accessory type (replaced with `overrideLogging` setting)
|
|
547
574
|
- `showAsSwitch` setting for Wemo Outlets (replaced with `showAs` setting)
|
|
548
575
|
|
|
549
|
-
##
|
|
576
|
+
## v3.1.0 (2021-05-26)
|
|
550
577
|
|
|
551
578
|
### Added
|
|
552
579
|
|
|
@@ -557,7 +584,7 @@ See ⚠️ for breaking changes
|
|
|
557
584
|
- Use `standard-prettier` code formatting
|
|
558
585
|
- Recommended node version bump to v14.17.0
|
|
559
586
|
|
|
560
|
-
##
|
|
587
|
+
## v3.0.9 (2021-05-10)
|
|
561
588
|
|
|
562
589
|
### Changed
|
|
563
590
|
|
|
@@ -565,7 +592,7 @@ See ⚠️ for breaking changes
|
|
|
565
592
|
- Update the correct corresponding characteristic after the 'No Response' timeout
|
|
566
593
|
- Ensure user is using at least Homebridge v1.3.0
|
|
567
594
|
|
|
568
|
-
##
|
|
595
|
+
## v3.0.8 (2021-05-04)
|
|
569
596
|
|
|
570
597
|
### Changed
|
|
571
598
|
|
|
@@ -573,20 +600,20 @@ See ⚠️ for breaking changes
|
|
|
573
600
|
- Accessory 'identify' function will now add an entry to the log
|
|
574
601
|
- Backend refactoring, function and variable name changes
|
|
575
602
|
|
|
576
|
-
##
|
|
603
|
+
## v3.0.7 (2021-04-27)
|
|
577
604
|
|
|
578
605
|
### Changed
|
|
579
606
|
|
|
580
607
|
- Display Wemo Insight 'on time' as HH:MM:SS in logs
|
|
581
608
|
- More consistent logging on device errors, and helpful info for common errors
|
|
582
609
|
|
|
583
|
-
##
|
|
610
|
+
## v3.0.6 (2021-04-24)
|
|
584
611
|
|
|
585
612
|
### Fixed
|
|
586
613
|
|
|
587
614
|
- Fix 'time on' and 'total consumption' calculations for Wemo Insights
|
|
588
615
|
|
|
589
|
-
##
|
|
616
|
+
## v3.0.5 (2021-04-16)
|
|
590
617
|
|
|
591
618
|
### Changed
|
|
592
619
|
|
|
@@ -596,25 +623,25 @@ See ⚠️ for breaking changes
|
|
|
596
623
|
|
|
597
624
|
- Fix characteristic NaN warning for `LastActivation`
|
|
598
625
|
|
|
599
|
-
##
|
|
626
|
+
## v3.0.4 (2021-04-14)
|
|
600
627
|
|
|
601
628
|
### Fixed
|
|
602
629
|
|
|
603
630
|
- Ensure 'No Response' is removed from Wemo Makers when discovered
|
|
604
631
|
|
|
605
|
-
##
|
|
632
|
+
## v3.0.3 (2021-04-14)
|
|
606
633
|
|
|
607
634
|
### Fixed
|
|
608
635
|
|
|
609
636
|
- Fixes a characteristic issue with Wemo Maker devices
|
|
610
637
|
|
|
611
|
-
##
|
|
638
|
+
## v3.0.2 (2021-04-13)
|
|
612
639
|
|
|
613
640
|
### Fixed
|
|
614
641
|
|
|
615
642
|
- Fix for `Cannot read property 'updateCharacteristic' of undefined` on plugin startup
|
|
616
643
|
|
|
617
|
-
##
|
|
644
|
+
## v3.0.1 (2021-04-13)
|
|
618
645
|
|
|
619
646
|
### Requirements
|
|
620
647
|
|
|
@@ -638,7 +665,7 @@ See ⚠️ for breaking changes
|
|
|
638
665
|
- Updated README to reflect minimum supported Homebridge/HOOBS and Node versions
|
|
639
666
|
- Updated recommended Node to v14.16.1
|
|
640
667
|
|
|
641
|
-
##
|
|
668
|
+
## v2.15.2 (2021-03-21)
|
|
642
669
|
|
|
643
670
|
### Changed
|
|
644
671
|
|
|
@@ -649,13 +676,13 @@ See ⚠️ for breaking changes
|
|
|
649
676
|
|
|
650
677
|
- Correct `debugFakegato` setting to type boolean
|
|
651
678
|
|
|
652
|
-
##
|
|
679
|
+
## v2.15.1 (2021-03-17)
|
|
653
680
|
|
|
654
681
|
### Changed
|
|
655
682
|
|
|
656
683
|
- Modified config schema to show titles/descriptions for non Homebridge UI users
|
|
657
684
|
|
|
658
|
-
##
|
|
685
|
+
## v2.15.0 (2021-03-14)
|
|
659
686
|
|
|
660
687
|
### Added
|
|
661
688
|
|
|
@@ -671,7 +698,7 @@ See ⚠️ for breaking changes
|
|
|
671
698
|
- Adaptive Lighting now requires Homebridge 1.3 release
|
|
672
699
|
- **Wemo Crockpot** polling interval will be stopped if Homebridge shuts down
|
|
673
700
|
|
|
674
|
-
##
|
|
701
|
+
## v2.14.0 (2021-03-02)
|
|
675
702
|
|
|
676
703
|
### Added
|
|
677
704
|
|
|
@@ -686,7 +713,7 @@ See ⚠️ for breaking changes
|
|
|
686
713
|
- Plugin will now check if a device is ignored by the device USN at an earlier stage of being discovered
|
|
687
714
|
- Updated minimum Node to v14.16.0
|
|
688
715
|
|
|
689
|
-
##
|
|
716
|
+
## v2.13.0 (2021-02-17)
|
|
690
717
|
|
|
691
718
|
### Added
|
|
692
719
|
|
|
@@ -706,7 +733,7 @@ See ⚠️ for breaking changes
|
|
|
706
733
|
|
|
707
734
|
- Fixes a uuid error when adding Insights to Homebridge
|
|
708
735
|
|
|
709
|
-
##
|
|
736
|
+
## v2.12.0 (2021-02-13)
|
|
710
737
|
|
|
711
738
|
### Added
|
|
712
739
|
|
|
@@ -726,7 +753,7 @@ See ⚠️ for breaking changes
|
|
|
726
753
|
- Fakegato library formatting and simplification
|
|
727
754
|
- [Backend] Code refactoring
|
|
728
755
|
|
|
729
|
-
##
|
|
756
|
+
## v2.11.0 (2021-02-01)
|
|
730
757
|
|
|
731
758
|
### Changed
|
|
732
759
|
|
|
@@ -747,7 +774,7 @@ See ⚠️ for breaking changes
|
|
|
747
774
|
- Properly catch exceptions on SSDP search errors
|
|
748
775
|
- Fixes a bug when initialising Garage Doors
|
|
749
776
|
|
|
750
|
-
##
|
|
777
|
+
## v2.10.0 (2021-01-30)
|
|
751
778
|
|
|
752
779
|
### Added
|
|
753
780
|
|
|
@@ -779,7 +806,7 @@ See ⚠️ for breaking changes
|
|
|
779
806
|
|
|
780
807
|
- Fixes an issue where the Insight would consistently log outlet-in-use between true and false
|
|
781
808
|
|
|
782
|
-
##
|
|
809
|
+
## v2.9.1 (2021-01-21)
|
|
783
810
|
|
|
784
811
|
### Changed
|
|
785
812
|
|
|
@@ -791,7 +818,7 @@ See ⚠️ for breaking changes
|
|
|
791
818
|
|
|
792
819
|
- Fixes a 'multiple callback' issue with Fakegato history service
|
|
793
820
|
|
|
794
|
-
##
|
|
821
|
+
## v2.9.0 (2021-01-14)
|
|
795
822
|
|
|
796
823
|
### Added
|
|
797
824
|
|
package/README.md
CHANGED
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
|
|
8
8
|
Homebridge plugin to integrate Wemo devices into HomeKit
|
|
9
9
|
|
|
10
|
-
[](https://www.npmjs.com/package/homebridge-wemo)
|
|
11
|
-
[](https://github.com/homebridge-plugins/homebridge-wemo/wiki/Beta-Version)
|
|
10
|
+
[](https://www.npmjs.com/package/@homebridge-plugins/homebridge-wemo)
|
|
11
|
+
[](https://github.com/homebridge-plugins/homebridge-wemo/wiki/Beta-Version)
|
|
12
12
|
|
|
13
13
|
[](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)
|
|
14
14
|
[](https://plugins.hoobs.org/plugin/homebridge-wemo)
|
|
15
15
|
|
|
16
|
-
[](https://www.npmjs.com/package/homebridge-wemo)
|
|
16
|
+
[](https://www.npmjs.com/package/@homebridge-plugins/homebridge-wemo)
|
|
17
17
|
[](https://discord.com/channels/432663330281226270/742733745743855627)
|
|
18
18
|
|
|
19
19
|
</span>
|
|
@@ -25,10 +25,15 @@ Homebridge plugin to integrate Wemo devices into HomeKit
|
|
|
25
25
|
- will attempt to control your devices via a local HTTP request
|
|
26
26
|
- will attempt to establish a UPnP connection to your devices to listen for external changes (if disabled, HTTP polling is used)
|
|
27
27
|
|
|
28
|
+
> [!NOTE]
|
|
29
|
+
> This plugin does not use the Wemo cloud service - it is designed to work entirely on your local network.
|
|
30
|
+
> This means that the plugin should continue to work after the Wemo cloud service is discontinued.
|
|
31
|
+
> See [issue #203](https://github.com/homebridge-plugins/homebridge-wemo/issues/203) for more information.
|
|
32
|
+
|
|
28
33
|
### Prerequisites
|
|
29
34
|
|
|
30
35
|
- To use this plugin, you will need to already have:
|
|
31
|
-
- [Node](https://nodejs.org): latest version of `
|
|
36
|
+
- [Node](https://nodejs.org): latest version of `v20`, `v22` or `v24` - any other major version is not supported.
|
|
32
37
|
- [Homebridge](https://homebridge.io): `v1.6` - refer to link for more information and installation instructions.
|
|
33
38
|
- For the UPnP connection, make sure your Homebridge instance has an allocated IP from the same IP network or VLAN as your Wemo devices. Otherwise, you should disable the UPnP connection to avoid connection errors.
|
|
34
39
|
|
package/config.schema.json
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
"customUiPath": "./lib/homebridge-ui",
|
|
6
6
|
"headerDisplay": "<p align=\"center\"><img width=\"60%\" src=\"https://user-images.githubusercontent.com/43026681/126868557-d0983348-d124-4247-bea9-7dcc62849cdf.png\"></p><p align=\"center\">For help and support please visit our <a href=\"https://github.com/homebridge-plugins/homebridge-wemo/wiki\">GitHub Wiki</a>. We hope you find this plugin useful!</p>",
|
|
7
7
|
"singular": true,
|
|
8
|
+
"strictValidation": true,
|
|
8
9
|
"schema": {
|
|
9
10
|
"type": "object",
|
|
10
11
|
"properties": {
|
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/126868557-d0983348-d124-4247-bea9-7dcc62849cdf.png"
|
|
@@ -28,7 +64,7 @@
|
|
|
28
64
|
<select class="form-control" id="deviceSelect"></select>
|
|
29
65
|
</div>
|
|
30
66
|
</form>
|
|
31
|
-
<table class="table w-100" id="deviceTable" style="display: none;">
|
|
67
|
+
<table class="table w-100 mt-3" id="deviceTable" style="display: none;">
|
|
32
68
|
<thead>
|
|
33
69
|
<tr class="table-active">
|
|
34
70
|
<th scope="col" style="width: 40%;">Device Name</th>
|
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
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@homebridge-plugins/homebridge-wemo",
|
|
3
3
|
"alias": "Wemo",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "7.
|
|
5
|
+
"version": "7.2.0",
|
|
6
6
|
"description": "Homebridge plugin to integrate Wemo devices into HomeKit.",
|
|
7
7
|
"author": {
|
|
8
8
|
"name": "bwp91",
|
|
@@ -48,15 +48,15 @@
|
|
|
48
48
|
"main": "lib/index.js",
|
|
49
49
|
"engines": {
|
|
50
50
|
"homebridge": "^1.6.0 || ^2.0.0-beta.0",
|
|
51
|
-
"node": "^
|
|
51
|
+
"node": "^20 || ^22 || ^24"
|
|
52
52
|
},
|
|
53
53
|
"scripts": {
|
|
54
|
-
"lint": "eslint . --
|
|
55
|
-
"
|
|
54
|
+
"lint": "eslint . --max-warnings=0",
|
|
55
|
+
"lint:fix": "npm run lint -- --fix"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"@homebridge/plugin-ui-utils": "^2.0
|
|
59
|
-
"axios": "^1.
|
|
58
|
+
"@homebridge/plugin-ui-utils": "^2.1.0",
|
|
59
|
+
"axios": "^1.10.0",
|
|
60
60
|
"ip": "^2.0.1",
|
|
61
61
|
"node-ssdp": "^4.0.1",
|
|
62
62
|
"p-queue": "^8.1.0",
|
|
@@ -64,7 +64,6 @@
|
|
|
64
64
|
"xmlbuilder": "^15.1.1"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
|
-
"@antfu/eslint-config": "^4.
|
|
68
|
-
"eslint": "^9.24.0"
|
|
67
|
+
"@antfu/eslint-config": "^4.16.2"
|
|
69
68
|
}
|
|
70
69
|
}
|