homebridge-myleviton 3.4.2 → 3.4.4
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/dist/api/request-queue.d.ts +1 -0
- package/dist/api/request-queue.d.ts.map +1 -1
- package/dist/api/request-queue.js +11 -4
- package/dist/api/request-queue.js.map +1 -1
- package/dist/api/websocket.d.ts +1 -0
- package/dist/api/websocket.d.ts.map +1 -1
- package/dist/api/websocket.js +19 -6
- package/dist/api/websocket.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/platform.d.ts +20 -0
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +154 -28
- package/dist/platform.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/sanitizers.d.ts +4 -0
- package/dist/utils/sanitizers.d.ts.map +1 -1
- package/dist/utils/sanitizers.js +16 -0
- package/dist/utils/sanitizers.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-queue.d.ts","sourceRoot":"","sources":["../../src/api/request-queue.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,kCAAkC;IAClC,aAAa,EAAE,MAAM,CAAA;IACrB,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,4BAA4B;IAC5B,cAAc,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,kBAI1C,CAAA;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IAEvC,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,UAAU,CAAQ;gBAEd,MAAM,GAAE,OAAO,CAAC,kBAAkB,CAAM;IAOpD;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;OAEG;IACH,GAAG,CAAC,CAAC,EACH,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE;QACP,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;QACpC,SAAS,CAAC,EAAE,MAAM,CAAA;KACd,GACL,OAAO,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"request-queue.d.ts","sourceRoot":"","sources":["../../src/api/request-queue.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,kCAAkC;IAClC,aAAa,EAAE,MAAM,CAAA;IACrB,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,4BAA4B;IAC5B,cAAc,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,kBAI1C,CAAA;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IAEvC,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,cAAc,CAA2C;IACjE,OAAO,CAAC,UAAU,CAAQ;gBAEd,MAAM,GAAE,OAAO,CAAC,kBAAkB,CAAM;IAOpD;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;OAEG;IACH,GAAG,CAAC,CAAC,EACH,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE;QACP,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;QACpC,SAAS,CAAC,EAAE,MAAM,CAAA;KACd,GACL,OAAO,CAAC,CAAC,CAAC;IAsCb;;OAEG;IACH,OAAO,CAAC,OAAO;IAiBf;;OAEG;YACW,YAAY;IAwB1B;;OAEG;YACW,cAAc;IAsB5B;;OAEG;IACH,KAAK,IAAI,IAAI;IASb;;OAEG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,MAAM,CAAA;QACnB,QAAQ,EAAE,MAAM,CAAA;QAChB,aAAa,EAAE,MAAM,CAAA;QACrB,YAAY,EAAE,MAAM,CAAA;KACrB;IASD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2C;IACpE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;gBAEpB,OAAO,SAAM;IAIzB;;OAEG;IACG,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAwB/D;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
|
@@ -26,6 +26,7 @@ class RequestQueue {
|
|
|
26
26
|
requestTimeout;
|
|
27
27
|
queue = [];
|
|
28
28
|
inFlight = new Map();
|
|
29
|
+
dedupePromises = new Map();
|
|
29
30
|
processing = false;
|
|
30
31
|
constructor(config = {}) {
|
|
31
32
|
const merged = { ...exports.DEFAULT_REQUEST_QUEUE_CONFIG, ...config };
|
|
@@ -56,15 +57,15 @@ class RequestQueue {
|
|
|
56
57
|
*/
|
|
57
58
|
add(execute, options = {}) {
|
|
58
59
|
const { priority = 'normal', dedupeKey } = options;
|
|
59
|
-
// Check for duplicate in-flight request
|
|
60
|
-
if (dedupeKey && this.
|
|
61
|
-
return this.
|
|
60
|
+
// Check for duplicate queued or in-flight request
|
|
61
|
+
if (dedupeKey && this.dedupePromises.has(dedupeKey)) {
|
|
62
|
+
return this.dedupePromises.get(dedupeKey);
|
|
62
63
|
}
|
|
63
64
|
// Check queue size limit
|
|
64
65
|
if (this.isFull) {
|
|
65
66
|
return Promise.reject(new Error('Request queue is full'));
|
|
66
67
|
}
|
|
67
|
-
|
|
68
|
+
const promise = new Promise((resolve, reject) => {
|
|
68
69
|
const request = {
|
|
69
70
|
id: dedupeKey || `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`,
|
|
70
71
|
priority,
|
|
@@ -76,6 +77,11 @@ class RequestQueue {
|
|
|
76
77
|
this.enqueue(request);
|
|
77
78
|
this.processQueue();
|
|
78
79
|
});
|
|
80
|
+
if (dedupeKey) {
|
|
81
|
+
this.dedupePromises.set(dedupeKey, promise);
|
|
82
|
+
promise.then(() => this.dedupePromises.delete(dedupeKey), () => this.dedupePromises.delete(dedupeKey));
|
|
83
|
+
}
|
|
84
|
+
return promise;
|
|
79
85
|
}
|
|
80
86
|
/**
|
|
81
87
|
* Insert request into queue by priority
|
|
@@ -151,6 +157,7 @@ class RequestQueue {
|
|
|
151
157
|
clear() {
|
|
152
158
|
// Reject all pending requests
|
|
153
159
|
for (const request of this.queue) {
|
|
160
|
+
this.dedupePromises.delete(request.id);
|
|
154
161
|
request.reject(new Error('Request queue cleared'));
|
|
155
162
|
}
|
|
156
163
|
this.queue = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-queue.js","sourceRoot":"","sources":["../../src/api/request-queue.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAgBH;;GAEG;AACU,QAAA,4BAA4B,GAAuB;IAC9D,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,GAAG;IACjB,cAAc,EAAE,KAAK;CACtB,CAAA;AAED;;GAEG;AACH,MAAa,YAAY;IACN,aAAa,CAAQ;IACrB,YAAY,CAAQ;IACpB,cAAc,CAAQ;IAE/B,KAAK,GAAoB,EAAE,CAAA;IAC3B,QAAQ,GAAkC,IAAI,GAAG,EAAE,CAAA;IACnD,UAAU,GAAG,KAAK,CAAA;IAE1B,YAAY,SAAsC,EAAE;QAClD,MAAM,MAAM,GAAG,EAAE,GAAG,oCAA4B,EAAE,GAAG,MAAM,EAAE,CAAA;QAC7D,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;QACzC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;QACvC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;IAC7C,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAA;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAA;IAC/C,CAAC;IAED;;OAEG;IACH,GAAG,CACD,OAAyB,EACzB,UAGI,EAAE;QAEN,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QAElD,
|
|
1
|
+
{"version":3,"file":"request-queue.js","sourceRoot":"","sources":["../../src/api/request-queue.ts"],"names":[],"mappings":"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"}
|
package/dist/api/websocket.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/api/websocket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAEnF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAA;IACjB,+BAA+B;IAC/B,iBAAiB,EAAE,MAAM,CAAA;IACzB,oCAAoC;IACpC,oBAAoB,EAAE,MAAM,CAAA;IAC5B,uCAAuC;IACvC,qBAAqB,EAAE,MAAM,CAAA;IAC7B,uCAAuC;IACvC,iBAAiB,EAAE,MAAM,CAAA;IACzB,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,eAOtC,CAAA;AAmCD;;GAEG;AACH,UAAU,eAAe;IACvB,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAChC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACjC;AAED;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAqC;IAErD,OAAO,CAAC,gBAAgB,CAAI;IAC5B,OAAO,CAAC,MAAM,CAAsC;IACpD,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAQ;IAExB;;;;;;;;OAQG;gBAED,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,UAAU,EAAE,EACrB,QAAQ,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,EAC7C,MAAM,EAAE,eAAe,GAAG,MAAM,EAChC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM;IAavC;;OAEG;IACH,OAAO,CAAC,eAAe;IAcvB;;;;OAIG;IACH,mBAAmB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAIvD;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMhC;;OAEG;IACH,OAAO,IAAI,IAAI;IA0Bf;;OAEG;IACH,OAAO,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/api/websocket.ts"],"names":[],"mappings":"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"}
|
package/dist/api/websocket.js
CHANGED
|
@@ -77,6 +77,7 @@ class LevitonWebSocket {
|
|
|
77
77
|
callback;
|
|
78
78
|
reconnectAttempt = 0;
|
|
79
79
|
timers = [];
|
|
80
|
+
reconnectTimer = null;
|
|
80
81
|
pingTimer = null;
|
|
81
82
|
isConnecting = false;
|
|
82
83
|
isClosed = false;
|
|
@@ -181,6 +182,7 @@ class LevitonWebSocket {
|
|
|
181
182
|
this.ws.on('open', () => {
|
|
182
183
|
clearTimeout(connectionTimeout);
|
|
183
184
|
this.removeTimer(connectionTimeout);
|
|
185
|
+
this.reconnectTimer = null;
|
|
184
186
|
isOpen = true;
|
|
185
187
|
this.isConnecting = false;
|
|
186
188
|
this.reconnectAttempt = 0;
|
|
@@ -191,9 +193,9 @@ class LevitonWebSocket {
|
|
|
191
193
|
isOpen = false;
|
|
192
194
|
this.isConnecting = false;
|
|
193
195
|
const reasonStr = reason?.toString() || '';
|
|
194
|
-
//
|
|
195
|
-
if (
|
|
196
|
-
this.logger.debug('WebSocket closed
|
|
196
|
+
// Closed externally
|
|
197
|
+
if (this.isClosed) {
|
|
198
|
+
this.logger.debug('WebSocket closed by user');
|
|
197
199
|
return;
|
|
198
200
|
}
|
|
199
201
|
// Auth failure - don't reconnect
|
|
@@ -201,9 +203,10 @@ class LevitonWebSocket {
|
|
|
201
203
|
this.logger.warn(`WebSocket auth failed: ${reasonStr}`);
|
|
202
204
|
return;
|
|
203
205
|
}
|
|
204
|
-
//
|
|
205
|
-
if (
|
|
206
|
-
this.logger.
|
|
206
|
+
// Remote normal closes still require reconnecting to preserve push updates.
|
|
207
|
+
if (code === 1000) {
|
|
208
|
+
this.logger.info('WebSocket closed normally by remote');
|
|
209
|
+
this.scheduleReconnect();
|
|
207
210
|
return;
|
|
208
211
|
}
|
|
209
212
|
const codeDesc = CLOSE_CODES[code] || 'unknown';
|
|
@@ -309,6 +312,9 @@ class LevitonWebSocket {
|
|
|
309
312
|
if (this.isClosed) {
|
|
310
313
|
return;
|
|
311
314
|
}
|
|
315
|
+
if (this.reconnectTimer) {
|
|
316
|
+
return;
|
|
317
|
+
}
|
|
312
318
|
if (this.reconnectAttempt >= this.config.maxReconnectAttempts) {
|
|
313
319
|
this.logger.warn(`WebSocket unavailable after ${this.config.maxReconnectAttempts} attempts`);
|
|
314
320
|
return;
|
|
@@ -316,9 +322,15 @@ class LevitonWebSocket {
|
|
|
316
322
|
const delay = Math.min(this.config.initialReconnectDelay * Math.pow(2, this.reconnectAttempt), this.config.maxReconnectDelay);
|
|
317
323
|
this.logger.info(`WebSocket reconnecting in ${Math.round(delay / 1000)}s (${this.reconnectAttempt + 1}/${this.config.maxReconnectAttempts})`);
|
|
318
324
|
const timer = setTimeout(() => {
|
|
325
|
+
this.removeTimer(timer);
|
|
326
|
+
this.reconnectTimer = null;
|
|
327
|
+
if (this.isClosed) {
|
|
328
|
+
return;
|
|
329
|
+
}
|
|
319
330
|
this.reconnectAttempt++;
|
|
320
331
|
this.connect();
|
|
321
332
|
}, delay);
|
|
333
|
+
this.reconnectTimer = timer;
|
|
322
334
|
this.timers.push(timer);
|
|
323
335
|
}
|
|
324
336
|
/**
|
|
@@ -338,6 +350,7 @@ class LevitonWebSocket {
|
|
|
338
350
|
clearTimeout(timer);
|
|
339
351
|
}
|
|
340
352
|
this.timers = [];
|
|
353
|
+
this.reconnectTimer = null;
|
|
341
354
|
if (this.pingTimer) {
|
|
342
355
|
clearInterval(this.pingTimer);
|
|
343
356
|
this.pingTimer = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../src/api/websocket.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../src/api/websocket.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AACrB,cAAc,SAAS,CAAA;AAGvB,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAGvD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AACrB,cAAc,SAAS,CAAA;AAGvB,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAGvD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -25,7 +25,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
25
25
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
26
26
|
};
|
|
27
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
-
exports.
|
|
28
|
+
exports.default = exports.LevitonDecoraSmartPlatform = void 0;
|
|
29
29
|
// Re-export everything
|
|
30
30
|
__exportStar(require("./types"), exports);
|
|
31
31
|
__exportStar(require("./errors"), exports);
|
|
@@ -37,6 +37,4 @@ Object.defineProperty(exports, "LevitonDecoraSmartPlatform", { enumerable: true,
|
|
|
37
37
|
// Default export for Homebridge plugin registration
|
|
38
38
|
var platform_2 = require("./platform");
|
|
39
39
|
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(platform_2).default; } });
|
|
40
|
-
// Export version
|
|
41
|
-
exports.VERSION = '3.3.0';
|
|
42
40
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;AAEH,uBAAuB;AACvB,0CAAuB;AACvB,2CAAwB;AACxB,wCAAqB;AACrB,0CAAuB;AAEvB,kBAAkB;AAClB,uCAAuD;AAA9C,sHAAA,0BAA0B,OAAA;AAEnC,oDAAoD;AACpD,uCAAoC;AAA3B,oHAAA,OAAO,OAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;AAEH,uBAAuB;AACvB,0CAAuB;AACvB,2CAAwB;AACxB,wCAAqB;AACrB,0CAAuB;AAEvB,kBAAkB;AAClB,uCAAuD;AAA9C,sHAAA,0BAA0B,OAAA;AAEnC,oDAAoD;AACpD,uCAAoC;AAA3B,oHAAA,OAAO,OAAA"}
|
package/dist/platform.d.ts
CHANGED
|
@@ -21,8 +21,10 @@ export declare class LevitonDecoraSmartPlatform {
|
|
|
21
21
|
private currentLoginResponse;
|
|
22
22
|
private tokenExpiresAt;
|
|
23
23
|
private tokenRefreshPromise;
|
|
24
|
+
private lastRefreshFailureAt;
|
|
24
25
|
private webSocket;
|
|
25
26
|
private pollingInterval;
|
|
27
|
+
private isPolling;
|
|
26
28
|
private residenceId;
|
|
27
29
|
private devicePersistence;
|
|
28
30
|
private cleanupInterval;
|
|
@@ -52,6 +54,14 @@ export declare class LevitonDecoraSmartPlatform {
|
|
|
52
54
|
* Adds a new accessory
|
|
53
55
|
*/
|
|
54
56
|
addAccessory(device: DeviceInfo, token: string): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Gets a HAP-valid name while keeping the Leviton device name as the source.
|
|
59
|
+
*/
|
|
60
|
+
private getHapDeviceName;
|
|
61
|
+
/**
|
|
62
|
+
* Keeps cached Homebridge metadata aligned with the latest Leviton device record.
|
|
63
|
+
*/
|
|
64
|
+
private syncAccessoryMetadata;
|
|
55
65
|
/**
|
|
56
66
|
* Configures a cached accessory
|
|
57
67
|
*
|
|
@@ -79,6 +89,10 @@ export declare class LevitonDecoraSmartPlatform {
|
|
|
79
89
|
* Uses case-insensitive comparison for robustness
|
|
80
90
|
*/
|
|
81
91
|
private findAccessoryByDevice;
|
|
92
|
+
/**
|
|
93
|
+
* Removes an accessory from Homebridge cache and local tracking
|
|
94
|
+
*/
|
|
95
|
+
private removeCachedAccessory;
|
|
82
96
|
/**
|
|
83
97
|
* Sets up the appropriate service for a device
|
|
84
98
|
*/
|
|
@@ -87,6 +101,10 @@ export declare class LevitonDecoraSmartPlatform {
|
|
|
87
101
|
* Gets device status with error handling
|
|
88
102
|
*/
|
|
89
103
|
private getStatus;
|
|
104
|
+
/**
|
|
105
|
+
* Captures the current HomeKit state before reconfiguring a cached accessory.
|
|
106
|
+
*/
|
|
107
|
+
private getCurrentServiceStatus;
|
|
90
108
|
/**
|
|
91
109
|
* Sets up a lightbulb service
|
|
92
110
|
* @returns The device status used for initialization (allows callers to reuse it)
|
|
@@ -104,6 +122,8 @@ export declare class LevitonDecoraSmartPlatform {
|
|
|
104
122
|
* Sets up a basic switch/outlet service
|
|
105
123
|
*/
|
|
106
124
|
private setupBasicService;
|
|
125
|
+
private getServiceByNameOrType;
|
|
126
|
+
private syncServiceName;
|
|
107
127
|
/**
|
|
108
128
|
* Creates a power setter handler
|
|
109
129
|
*/
|
package/dist/platform.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EAKX,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EAKX,MAAM,SAAS,CAAA;AA2BhB,KAAK,aAAa,GAAG,GAAG,CAAA;AAExB,KAAK,iBAAiB,GAAG,GAAG,CAAA;AAM5B;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0B;IACtD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IAGtC,OAAO,CAAC,MAAM,CAAkB;IAGhC,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,mBAAmB,CAAsC;IACjE,OAAO,CAAC,oBAAoB,CAAsB;IAGlD,OAAO,CAAC,SAAS,CAAgC;IAGjD,OAAO,CAAC,eAAe,CAA8C;IACrE,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,WAAW,CAAsB;IAGzC,OAAO,CAAC,iBAAiB,CAAmB;IAG5C,OAAO,CAAC,eAAe,CAA8C;IAGrE,OAAO,CAAC,qBAAqB,CAAiC;gBAG5D,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EACpC,MAAM,EAAE,aAAa,EACrB,GAAG,EAAE,aAAa;IA0CpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAsBtB;;OAEG;YACW,UAAU;IAsExB;;OAEG;YACW,eAAe;IAmE7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAqG7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBpE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAe7B;;;;;;;;;OASG;IACH,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAKtD;;;;;;;;;OASG;IACH,OAAO,CAAC,sBAAsB;IAmC9B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAY7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;OAEG;YACW,YAAY;IAiC1B;;OAEG;YACW,SAAS;IAyBvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAsB/B;;;OAGG;YACW,qBAAqB;IAyCnC;;OAEG;YACW,wBAAwB;IAatC;;OAEG;YACW,eAAe;IA2B7B;;OAEG;YACW,iBAAiB;IAuB/B,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,eAAe;IAIvB;;OAEG;IAEH,OAAO,CAAC,iBAAiB;IAuBzB;;OAEG;IAEH,OAAO,CAAC,sBAAsB;IAuB9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAO3B;;OAEG;YACW,cAAc;IAa5B;;OAEG;YACW,gBAAgB;IAQ9B;;OAEG;YACW,YAAY;IA8C1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAqBpB;;;;;;;;OAQG;YACW,WAAW;IA+CzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;IACH,OAAO,CAAC,OAAO;IAiBf;;OAEG;IACH,iBAAiB,IAAI,IAAI;CAK1B;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,aAAa,GAAG,IAAI,CAGhE;AAED,eAAe,gBAAgB,CAAA"}
|
package/dist/platform.js
CHANGED
|
@@ -60,6 +60,8 @@ const POWER_ON = 'ON';
|
|
|
60
60
|
const POWER_OFF = 'OFF';
|
|
61
61
|
// Token refresh buffer (refresh a few minutes before expiry)
|
|
62
62
|
const TOKEN_REFRESH_BUFFER_MS = 5 * 60 * 1000;
|
|
63
|
+
const TOKEN_REFRESH_FAILURE_COOLDOWN_MS = 10 * 1000;
|
|
64
|
+
const POLL_DEVICE_CONCURRENCY = 4;
|
|
63
65
|
// Device model arrays for type checking
|
|
64
66
|
const DIMMER_MODELS = ['DWVAA', 'DW1KD', 'DW6HD', 'D26HD', 'D23LP', 'DW3HL', 'D2ELV', 'D2710'];
|
|
65
67
|
const MOTION_DIMMER_MODELS = ['D2MSD'];
|
|
@@ -82,10 +84,12 @@ class LevitonDecoraSmartPlatform {
|
|
|
82
84
|
currentLoginResponse = null;
|
|
83
85
|
tokenExpiresAt = null;
|
|
84
86
|
tokenRefreshPromise = null;
|
|
87
|
+
lastRefreshFailureAt = null;
|
|
85
88
|
// WebSocket connection
|
|
86
89
|
webSocket = null;
|
|
87
90
|
// Polling
|
|
88
91
|
pollingInterval = null;
|
|
92
|
+
isPolling = false;
|
|
89
93
|
residenceId = null;
|
|
90
94
|
// Device persistence
|
|
91
95
|
devicePersistence;
|
|
@@ -175,6 +179,10 @@ class LevitonDecoraSmartPlatform {
|
|
|
175
179
|
let cachedCount = 0;
|
|
176
180
|
for (const device of devices) {
|
|
177
181
|
if (this.isDeviceExcluded(device, excludedModels, excludedSerials)) {
|
|
182
|
+
const existingAccessory = this.findAccessoryByDevice(device);
|
|
183
|
+
if (existingAccessory) {
|
|
184
|
+
this.removeCachedAccessory(existingAccessory);
|
|
185
|
+
}
|
|
178
186
|
excludedCount++;
|
|
179
187
|
continue;
|
|
180
188
|
}
|
|
@@ -184,6 +192,7 @@ class LevitonDecoraSmartPlatform {
|
|
|
184
192
|
// Update cached accessory with fresh device data and current token
|
|
185
193
|
existingAccessory.context.device = device;
|
|
186
194
|
existingAccessory.context.token = loginResponse.id;
|
|
195
|
+
this.syncAccessoryMetadata(existingAccessory, device);
|
|
187
196
|
// Persist the updated context to cache file
|
|
188
197
|
this.api.updatePlatformAccessories([existingAccessory]);
|
|
189
198
|
// Setup service handlers (deferred from configureAccessory)
|
|
@@ -363,23 +372,36 @@ class LevitonDecoraSmartPlatform {
|
|
|
363
372
|
}
|
|
364
373
|
this.log.info(`Adding device: ${device.name} (${device.model})`);
|
|
365
374
|
const uuid = hap.uuid.generate(UUID_PREFIX + device.serial);
|
|
366
|
-
const accessory = new this.api.platformAccessory(device
|
|
375
|
+
const accessory = new this.api.platformAccessory(this.getHapDeviceName(device), uuid);
|
|
367
376
|
accessory.context = { device, token };
|
|
368
|
-
|
|
377
|
+
this.syncAccessoryMetadata(accessory, device);
|
|
378
|
+
// Setup service
|
|
379
|
+
await this.setupService(accessory);
|
|
380
|
+
// Register with Homebridge
|
|
381
|
+
this.api.registerPlatformAccessories(PLUGIN_NAME, PLATFORM_NAME, [accessory]);
|
|
382
|
+
this.accessories.push(accessory);
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Gets a HAP-valid name while keeping the Leviton device name as the source.
|
|
386
|
+
*/
|
|
387
|
+
getHapDeviceName(device) {
|
|
388
|
+
return (0, sanitizers_1.sanitizeHapName)(device.name || 'Unknown Device', 'Unknown Device');
|
|
389
|
+
}
|
|
390
|
+
/**
|
|
391
|
+
* Keeps cached Homebridge metadata aligned with the latest Leviton device record.
|
|
392
|
+
*/
|
|
393
|
+
syncAccessoryMetadata(accessory, device) {
|
|
394
|
+
const deviceName = this.getHapDeviceName(device);
|
|
395
|
+
accessory.displayName = deviceName;
|
|
369
396
|
const infoService = accessory.getService(hap.Service.AccessoryInformation);
|
|
370
397
|
if (infoService) {
|
|
371
398
|
infoService
|
|
372
|
-
.setCharacteristic(hap.Characteristic.Name,
|
|
399
|
+
.setCharacteristic(hap.Characteristic.Name, deviceName)
|
|
373
400
|
.setCharacteristic(hap.Characteristic.SerialNumber, device.serial || 'Unknown')
|
|
374
401
|
.setCharacteristic(hap.Characteristic.Manufacturer, device.manufacturer || 'Leviton')
|
|
375
402
|
.setCharacteristic(hap.Characteristic.Model, device.model || 'Unknown')
|
|
376
403
|
.setCharacteristic(hap.Characteristic.FirmwareRevision, device.version || 'Unknown');
|
|
377
404
|
}
|
|
378
|
-
// Setup service
|
|
379
|
-
await this.setupService(accessory);
|
|
380
|
-
// Register with Homebridge
|
|
381
|
-
this.api.registerPlatformAccessories(PLUGIN_NAME, PLATFORM_NAME, [accessory]);
|
|
382
|
-
this.accessories.push(accessory);
|
|
383
405
|
}
|
|
384
406
|
/**
|
|
385
407
|
* Configures a cached accessory
|
|
@@ -448,6 +470,16 @@ class LevitonDecoraSmartPlatform {
|
|
|
448
470
|
return cachedSerial === deviceSerial;
|
|
449
471
|
});
|
|
450
472
|
}
|
|
473
|
+
/**
|
|
474
|
+
* Removes an accessory from Homebridge cache and local tracking
|
|
475
|
+
*/
|
|
476
|
+
removeCachedAccessory(accessory) {
|
|
477
|
+
this.api.unregisterPlatformAccessories(PLUGIN_NAME, PLATFORM_NAME, [accessory]);
|
|
478
|
+
const index = this.accessories.indexOf(accessory);
|
|
479
|
+
if (index !== -1) {
|
|
480
|
+
this.accessories.splice(index, 1);
|
|
481
|
+
}
|
|
482
|
+
}
|
|
451
483
|
/**
|
|
452
484
|
* Sets up the appropriate service for a device
|
|
453
485
|
*/
|
|
@@ -487,26 +519,65 @@ class LevitonDecoraSmartPlatform {
|
|
|
487
519
|
/**
|
|
488
520
|
* Gets device status with error handling
|
|
489
521
|
*/
|
|
490
|
-
async getStatus(device) {
|
|
522
|
+
async getStatus(device, fallbackStatus) {
|
|
491
523
|
try {
|
|
492
|
-
|
|
524
|
+
const status = await this.withTokenRetry(async () => {
|
|
493
525
|
const token = await this.ensureValidToken();
|
|
494
526
|
return this.client.getDeviceStatus(device.id, token);
|
|
495
527
|
});
|
|
528
|
+
this.devicePersistence.updateFromStatus(device.id, status);
|
|
529
|
+
return status;
|
|
496
530
|
}
|
|
497
531
|
catch (err) {
|
|
498
532
|
this.log.error(`Failed to get status for ${device.name}: ${(0, sanitizers_1.sanitizeError)(err)}`);
|
|
533
|
+
if (fallbackStatus) {
|
|
534
|
+
return fallbackStatus;
|
|
535
|
+
}
|
|
536
|
+
const cachedStatus = this.devicePersistence.getCachedStatus(device.id);
|
|
537
|
+
if (cachedStatus) {
|
|
538
|
+
return {
|
|
539
|
+
minLevel: 1,
|
|
540
|
+
maxLevel: 100,
|
|
541
|
+
...cachedStatus,
|
|
542
|
+
};
|
|
543
|
+
}
|
|
499
544
|
return { power: POWER_OFF, brightness: 0, minLevel: 1, maxLevel: 100 };
|
|
500
545
|
}
|
|
501
546
|
}
|
|
547
|
+
/**
|
|
548
|
+
* Captures the current HomeKit state before reconfiguring a cached accessory.
|
|
549
|
+
*/
|
|
550
|
+
getCurrentServiceStatus(service, levelCharacteristic) {
|
|
551
|
+
const onValue = service.getCharacteristic(hap.Characteristic.On).value;
|
|
552
|
+
if (typeof onValue !== 'boolean') {
|
|
553
|
+
return undefined;
|
|
554
|
+
}
|
|
555
|
+
const status = {
|
|
556
|
+
power: onValue ? POWER_ON : POWER_OFF,
|
|
557
|
+
minLevel: 1,
|
|
558
|
+
maxLevel: 100,
|
|
559
|
+
};
|
|
560
|
+
if (levelCharacteristic) {
|
|
561
|
+
const levelValue = service.getCharacteristic(levelCharacteristic).value;
|
|
562
|
+
if (typeof levelValue === 'number' && Number.isFinite(levelValue)) {
|
|
563
|
+
status.brightness = levelValue;
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
return status;
|
|
567
|
+
}
|
|
502
568
|
/**
|
|
503
569
|
* Sets up a lightbulb service
|
|
504
570
|
* @returns The device status used for initialization (allows callers to reuse it)
|
|
505
571
|
*/
|
|
506
572
|
async setupLightbulbService(accessory, device) {
|
|
507
|
-
const
|
|
508
|
-
const
|
|
509
|
-
|
|
573
|
+
const serviceName = this.getHapDeviceName(device);
|
|
574
|
+
const existingService = this.getServiceByNameOrType(accessory, hap.Service.Lightbulb, serviceName);
|
|
575
|
+
const fallbackStatus = existingService
|
|
576
|
+
? this.getCurrentServiceStatus(existingService, hap.Characteristic.Brightness)
|
|
577
|
+
: undefined;
|
|
578
|
+
const status = await this.getStatus(device, fallbackStatus);
|
|
579
|
+
const service = existingService || accessory.addService(hap.Service.Lightbulb, serviceName);
|
|
580
|
+
this.syncServiceName(service, serviceName);
|
|
510
581
|
// Calculate valid brightness range
|
|
511
582
|
const minBrightness = status.minLevel || 1;
|
|
512
583
|
const maxBrightness = status.maxLevel || 100;
|
|
@@ -540,8 +611,10 @@ class LevitonDecoraSmartPlatform {
|
|
|
540
611
|
async setupMotionDimmerService(accessory, device) {
|
|
541
612
|
// Reuse the status returned by setupLightbulbService to avoid a second API call
|
|
542
613
|
const status = await this.setupLightbulbService(accessory, device);
|
|
614
|
+
const motionName = (0, sanitizers_1.sanitizeHapName)(`${device.name} Motion`, 'Motion Sensor');
|
|
543
615
|
const motionService = accessory.getService(hap.Service.MotionSensor) ||
|
|
544
|
-
accessory.addService(hap.Service.MotionSensor,
|
|
616
|
+
accessory.addService(hap.Service.MotionSensor, motionName);
|
|
617
|
+
this.syncServiceName(motionService, motionName);
|
|
545
618
|
motionService
|
|
546
619
|
.getCharacteristic(hap.Characteristic.MotionDetected)
|
|
547
620
|
.updateValue(status.occupancy === true || status.motion === true);
|
|
@@ -550,9 +623,14 @@ class LevitonDecoraSmartPlatform {
|
|
|
550
623
|
* Sets up a fan service
|
|
551
624
|
*/
|
|
552
625
|
async setupFanService(accessory, device) {
|
|
553
|
-
const
|
|
554
|
-
const
|
|
555
|
-
|
|
626
|
+
const serviceName = this.getHapDeviceName(device);
|
|
627
|
+
const existingService = this.getServiceByNameOrType(accessory, hap.Service.Fan, serviceName);
|
|
628
|
+
const fallbackStatus = existingService
|
|
629
|
+
? this.getCurrentServiceStatus(existingService, hap.Characteristic.RotationSpeed)
|
|
630
|
+
: undefined;
|
|
631
|
+
const status = await this.getStatus(device, fallbackStatus);
|
|
632
|
+
const service = existingService || accessory.addService(hap.Service.Fan, serviceName);
|
|
633
|
+
this.syncServiceName(service, serviceName);
|
|
556
634
|
// Setup On characteristic — no 'get' handler, value kept current by WebSocket + polling
|
|
557
635
|
const onChar = service.getCharacteristic(hap.Characteristic.On);
|
|
558
636
|
onChar.removeAllListeners('get');
|
|
@@ -572,9 +650,14 @@ class LevitonDecoraSmartPlatform {
|
|
|
572
650
|
* Sets up a basic switch/outlet service
|
|
573
651
|
*/
|
|
574
652
|
async setupBasicService(accessory, device, ServiceType) {
|
|
575
|
-
const
|
|
576
|
-
const
|
|
577
|
-
|
|
653
|
+
const serviceName = this.getHapDeviceName(device);
|
|
654
|
+
const existingService = this.getServiceByNameOrType(accessory, ServiceType, serviceName);
|
|
655
|
+
const fallbackStatus = existingService
|
|
656
|
+
? this.getCurrentServiceStatus(existingService)
|
|
657
|
+
: undefined;
|
|
658
|
+
const status = await this.getStatus(device, fallbackStatus);
|
|
659
|
+
const service = existingService || accessory.addService(ServiceType, serviceName);
|
|
660
|
+
this.syncServiceName(service, serviceName);
|
|
578
661
|
// Remove existing listeners to prevent stacking on cached accessories
|
|
579
662
|
// No 'get' handler — value kept current by WebSocket + polling via updateValue()
|
|
580
663
|
const onChar = service.getCharacteristic(hap.Characteristic.On);
|
|
@@ -583,6 +666,12 @@ class LevitonDecoraSmartPlatform {
|
|
|
583
666
|
onChar.on('set', this.createPowerSetter(device));
|
|
584
667
|
onChar.updateValue(status.power === POWER_ON);
|
|
585
668
|
}
|
|
669
|
+
getServiceByNameOrType(accessory, ServiceType, serviceName) {
|
|
670
|
+
return accessory.getService(ServiceType, serviceName) || accessory.getService(ServiceType);
|
|
671
|
+
}
|
|
672
|
+
syncServiceName(service, serviceName) {
|
|
673
|
+
service.setCharacteristic(hap.Characteristic.Name, serviceName);
|
|
674
|
+
}
|
|
586
675
|
/**
|
|
587
676
|
* Creates a power setter handler
|
|
588
677
|
*/
|
|
@@ -669,7 +758,7 @@ class LevitonDecoraSmartPlatform {
|
|
|
669
758
|
if (err instanceof errors_1.AuthenticationError) {
|
|
670
759
|
this.log.warn('Authentication failed, refreshing token and retrying...');
|
|
671
760
|
await this.refreshToken();
|
|
672
|
-
return operation();
|
|
761
|
+
return await operation();
|
|
673
762
|
}
|
|
674
763
|
throw err;
|
|
675
764
|
}
|
|
@@ -691,6 +780,12 @@ class LevitonDecoraSmartPlatform {
|
|
|
691
780
|
if (this.tokenRefreshPromise) {
|
|
692
781
|
return this.tokenRefreshPromise;
|
|
693
782
|
}
|
|
783
|
+
if (this.lastRefreshFailureAt !== null &&
|
|
784
|
+
Date.now() - this.lastRefreshFailureAt < TOKEN_REFRESH_FAILURE_COOLDOWN_MS) {
|
|
785
|
+
const remainingMs = TOKEN_REFRESH_FAILURE_COOLDOWN_MS - (Date.now() - this.lastRefreshFailureAt);
|
|
786
|
+
this.log.debug(`Token refresh throttled after recent failure (${Math.ceil(remainingMs / 1000)}s remaining)`);
|
|
787
|
+
throw new errors_1.AuthenticationError('Token refresh temporarily throttled after recent failure');
|
|
788
|
+
}
|
|
694
789
|
this.tokenRefreshPromise = (async () => {
|
|
695
790
|
const loginResponse = await this.client.login(this.config.email, this.config.password);
|
|
696
791
|
this.setLoginResponse(loginResponse);
|
|
@@ -705,12 +800,17 @@ class LevitonDecoraSmartPlatform {
|
|
|
705
800
|
this.webSocket.updateLoginResponse(loginResponse);
|
|
706
801
|
this.webSocket.connect();
|
|
707
802
|
}
|
|
803
|
+
this.lastRefreshFailureAt = null;
|
|
708
804
|
this.log.info('Token refreshed successfully');
|
|
709
805
|
return loginResponse;
|
|
710
806
|
})();
|
|
711
807
|
try {
|
|
712
808
|
return await this.tokenRefreshPromise;
|
|
713
809
|
}
|
|
810
|
+
catch (err) {
|
|
811
|
+
this.lastRefreshFailureAt = Date.now();
|
|
812
|
+
throw err;
|
|
813
|
+
}
|
|
714
814
|
finally {
|
|
715
815
|
this.tokenRefreshPromise = null;
|
|
716
816
|
}
|
|
@@ -721,7 +821,22 @@ class LevitonDecoraSmartPlatform {
|
|
|
721
821
|
startPolling() {
|
|
722
822
|
const intervalSeconds = this.config.pollInterval ?? this.config.pollingInterval ?? 30;
|
|
723
823
|
const interval = Math.max(intervalSeconds * 1000, 10000);
|
|
724
|
-
this.pollingInterval = setInterval(() =>
|
|
824
|
+
this.pollingInterval = setInterval(async () => {
|
|
825
|
+
if (this.isPolling) {
|
|
826
|
+
this.log.debug('Skipping poll tick because previous poll cycle is still running');
|
|
827
|
+
return;
|
|
828
|
+
}
|
|
829
|
+
this.isPolling = true;
|
|
830
|
+
try {
|
|
831
|
+
await this.pollDevices();
|
|
832
|
+
}
|
|
833
|
+
catch (err) {
|
|
834
|
+
this.log.debug(`Polling cycle failed: ${(0, sanitizers_1.sanitizeError)(err)}`);
|
|
835
|
+
}
|
|
836
|
+
finally {
|
|
837
|
+
this.isPolling = false;
|
|
838
|
+
}
|
|
839
|
+
}, interval);
|
|
725
840
|
}
|
|
726
841
|
/**
|
|
727
842
|
* Polls all devices for updates
|
|
@@ -736,12 +851,10 @@ class LevitonDecoraSmartPlatform {
|
|
|
736
851
|
if (!this.residenceId) {
|
|
737
852
|
return;
|
|
738
853
|
}
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
continue;
|
|
744
|
-
}
|
|
854
|
+
const pollTargets = this.accessories
|
|
855
|
+
.map(accessory => accessory.context?.device)
|
|
856
|
+
.filter((device) => Boolean(device?.id));
|
|
857
|
+
const pollSingleDevice = async (device) => {
|
|
745
858
|
try {
|
|
746
859
|
// Fetch actual device status from API (bypass getStatus to avoid fallback values)
|
|
747
860
|
const status = await this.withTokenRetry(async () => {
|
|
@@ -759,7 +872,20 @@ class LevitonDecoraSmartPlatform {
|
|
|
759
872
|
// On API failure, preserve current HomeKit state - don't update with fallback values
|
|
760
873
|
this.log.debug(`Polling skipped for ${device.name}: ${(0, sanitizers_1.sanitizeError)(err)}`);
|
|
761
874
|
}
|
|
875
|
+
};
|
|
876
|
+
if (pollTargets.length === 0) {
|
|
877
|
+
return;
|
|
762
878
|
}
|
|
879
|
+
const workerCount = Math.min(POLL_DEVICE_CONCURRENCY, pollTargets.length);
|
|
880
|
+
let nextIndex = 0;
|
|
881
|
+
const workers = Array.from({ length: workerCount }, async () => {
|
|
882
|
+
// Shared index keeps worker fan-out bounded while still parallelizing requests.
|
|
883
|
+
while (nextIndex < pollTargets.length) {
|
|
884
|
+
const currentIndex = nextIndex++;
|
|
885
|
+
await pollSingleDevice(pollTargets[currentIndex]);
|
|
886
|
+
}
|
|
887
|
+
});
|
|
888
|
+
await Promise.all(workers);
|
|
763
889
|
}
|
|
764
890
|
/**
|
|
765
891
|
* Saves device states to persistence
|
package/dist/platform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @fileoverview Utility exports
|
|
8
8
|
*/
|
|
9
9
|
export { validateEmail, validatePassword, validateDeviceId, validateSerial, validateToken, validatePowerState, validateBrightness, validateConfig, assertDefined, validateNonEmptyArray, } from './validators';
|
|
10
|
-
export { sanitizeError, sanitizeString, sanitizeObject, truncate, maskToken, createResponsePreview, sanitizeStackTrace, } from './sanitizers';
|
|
10
|
+
export { sanitizeError, sanitizeString, sanitizeHapName, sanitizeObject, truncate, maskToken, createResponsePreview, sanitizeStackTrace, } from './sanitizers';
|
|
11
11
|
export { withRetry, makeRetryable, withRetryAndTimeout, withRetryContext, sleep, calculateBackoffDelay, DEFAULT_RETRY_POLICY, AGGRESSIVE_RETRY_POLICY, CONSERVATIVE_RETRY_POLICY, } from './retry';
|
|
12
12
|
export type { RetryContext } from './retry';
|
|
13
13
|
export { LeveledLogger, StructuredLogger, createLogger, createStructuredLogger, LOG_LEVELS, DEFAULT_LOG_LEVEL, } from './logger';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,qBAAqB,GACtB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACR,SAAS,EACT,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,EACL,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,SAAS,CAAA;AAChB,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,EACtB,UAAU,EACV,iBAAiB,GAClB,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,qBAAqB,GACtB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,aAAa,EACb,cAAc,EACd,eAAe,EACf,cAAc,EACd,QAAQ,EACR,SAAS,EACT,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,EACL,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,SAAS,CAAA;AAChB,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,EACtB,UAAU,EACV,iBAAiB,GAClB,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA"}
|
package/dist/utils/index.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* @fileoverview Utility exports
|
|
9
9
|
*/
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.DEFAULT_LOG_LEVEL = exports.LOG_LEVELS = exports.createStructuredLogger = exports.createLogger = exports.StructuredLogger = exports.LeveledLogger = exports.CONSERVATIVE_RETRY_POLICY = exports.AGGRESSIVE_RETRY_POLICY = exports.DEFAULT_RETRY_POLICY = exports.calculateBackoffDelay = exports.sleep = exports.withRetryContext = exports.withRetryAndTimeout = exports.makeRetryable = exports.withRetry = exports.sanitizeStackTrace = exports.createResponsePreview = exports.maskToken = exports.truncate = exports.sanitizeObject = exports.sanitizeString = exports.sanitizeError = exports.validateNonEmptyArray = exports.assertDefined = exports.validateConfig = exports.validateBrightness = exports.validatePowerState = exports.validateToken = exports.validateSerial = exports.validateDeviceId = exports.validatePassword = exports.validateEmail = void 0;
|
|
11
|
+
exports.DEFAULT_LOG_LEVEL = exports.LOG_LEVELS = exports.createStructuredLogger = exports.createLogger = exports.StructuredLogger = exports.LeveledLogger = exports.CONSERVATIVE_RETRY_POLICY = exports.AGGRESSIVE_RETRY_POLICY = exports.DEFAULT_RETRY_POLICY = exports.calculateBackoffDelay = exports.sleep = exports.withRetryContext = exports.withRetryAndTimeout = exports.makeRetryable = exports.withRetry = exports.sanitizeStackTrace = exports.createResponsePreview = exports.maskToken = exports.truncate = exports.sanitizeObject = exports.sanitizeHapName = exports.sanitizeString = exports.sanitizeError = exports.validateNonEmptyArray = exports.assertDefined = exports.validateConfig = exports.validateBrightness = exports.validatePowerState = exports.validateToken = exports.validateSerial = exports.validateDeviceId = exports.validatePassword = exports.validateEmail = void 0;
|
|
12
12
|
// Validators
|
|
13
13
|
var validators_1 = require("./validators");
|
|
14
14
|
Object.defineProperty(exports, "validateEmail", { enumerable: true, get: function () { return validators_1.validateEmail; } });
|
|
@@ -25,6 +25,7 @@ Object.defineProperty(exports, "validateNonEmptyArray", { enumerable: true, get:
|
|
|
25
25
|
var sanitizers_1 = require("./sanitizers");
|
|
26
26
|
Object.defineProperty(exports, "sanitizeError", { enumerable: true, get: function () { return sanitizers_1.sanitizeError; } });
|
|
27
27
|
Object.defineProperty(exports, "sanitizeString", { enumerable: true, get: function () { return sanitizers_1.sanitizeString; } });
|
|
28
|
+
Object.defineProperty(exports, "sanitizeHapName", { enumerable: true, get: function () { return sanitizers_1.sanitizeHapName; } });
|
|
28
29
|
Object.defineProperty(exports, "sanitizeObject", { enumerable: true, get: function () { return sanitizers_1.sanitizeObject; } });
|
|
29
30
|
Object.defineProperty(exports, "truncate", { enumerable: true, get: function () { return sanitizers_1.truncate; } });
|
|
30
31
|
Object.defineProperty(exports, "maskToken", { enumerable: true, get: function () { return sanitizers_1.maskToken; } });
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,aAAa;AACb,2CAWqB;AAVnB,2GAAA,aAAa,OAAA;AACb,8GAAA,gBAAgB,OAAA;AAChB,8GAAA,gBAAgB,OAAA;AAChB,4GAAA,cAAc,OAAA;AACd,2GAAA,aAAa,OAAA;AACb,gHAAA,kBAAkB,OAAA;AAClB,gHAAA,kBAAkB,OAAA;AAClB,4GAAA,cAAc,OAAA;AACd,2GAAA,aAAa,OAAA;AACb,mHAAA,qBAAqB,OAAA;AAGvB,aAAa;AACb,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,aAAa;AACb,2CAWqB;AAVnB,2GAAA,aAAa,OAAA;AACb,8GAAA,gBAAgB,OAAA;AAChB,8GAAA,gBAAgB,OAAA;AAChB,4GAAA,cAAc,OAAA;AACd,2GAAA,aAAa,OAAA;AACb,gHAAA,kBAAkB,OAAA;AAClB,gHAAA,kBAAkB,OAAA;AAClB,4GAAA,cAAc,OAAA;AACd,2GAAA,aAAa,OAAA;AACb,mHAAA,qBAAqB,OAAA;AAGvB,aAAa;AACb,2CASqB;AARnB,2GAAA,aAAa,OAAA;AACb,4GAAA,cAAc,OAAA;AACd,6GAAA,eAAe,OAAA;AACf,4GAAA,cAAc,OAAA;AACd,sGAAA,QAAQ,OAAA;AACR,uGAAA,SAAS,OAAA;AACT,mHAAA,qBAAqB,OAAA;AACrB,gHAAA,kBAAkB,OAAA;AAGpB,QAAQ;AACR,iCAUgB;AATd,kGAAA,SAAS,OAAA;AACT,sGAAA,aAAa,OAAA;AACb,4GAAA,mBAAmB,OAAA;AACnB,yGAAA,gBAAgB,OAAA;AAChB,8FAAA,KAAK,OAAA;AACL,8GAAA,qBAAqB,OAAA;AACrB,6GAAA,oBAAoB,OAAA;AACpB,gHAAA,uBAAuB,OAAA;AACvB,kHAAA,yBAAyB,OAAA;AAI3B,SAAS;AACT,mCAOiB;AANf,uGAAA,aAAa,OAAA;AACb,0GAAA,gBAAgB,OAAA;AAChB,sGAAA,YAAY,OAAA;AACZ,gHAAA,sBAAsB,OAAA;AACtB,oGAAA,UAAU,OAAA;AACV,2GAAA,iBAAiB,OAAA"}
|
|
@@ -14,6 +14,10 @@ export declare function sanitizeError(err: unknown): string;
|
|
|
14
14
|
* Sanitize a string by removing sensitive data
|
|
15
15
|
*/
|
|
16
16
|
export declare function sanitizeString(str: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* Sanitize a HomeKit accessory/service name for Homebridge 2 / HAP-NodeJS validation.
|
|
19
|
+
*/
|
|
20
|
+
export declare function sanitizeHapName(name: string, fallback?: string): string;
|
|
17
21
|
/**
|
|
18
22
|
* Sanitize an object by redacting sensitive fields
|
|
19
23
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanitizers.d.ts","sourceRoot":"","sources":["../../src/utils/sanitizers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgBH;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAYlD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CA6B3E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,SAAQ,GAAG,MAAM,CAK/E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,SAAI,GAAG,MAAM,CAKjE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAG3E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQhF"}
|
|
1
|
+
{"version":3,"file":"sanitizers.d.ts","sourceRoot":"","sources":["../../src/utils/sanitizers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgBH;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAYlD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQlD;AAID;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAmB,GAAG,MAAM,CAYjF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CA6B3E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,SAAQ,GAAG,MAAM,CAK/E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,SAAI,GAAG,MAAM,CAKjE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAG3E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQhF"}
|
package/dist/utils/sanitizers.js
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
11
|
exports.sanitizeError = sanitizeError;
|
|
12
12
|
exports.sanitizeString = sanitizeString;
|
|
13
|
+
exports.sanitizeHapName = sanitizeHapName;
|
|
13
14
|
exports.sanitizeObject = sanitizeObject;
|
|
14
15
|
exports.truncate = truncate;
|
|
15
16
|
exports.maskToken = maskToken;
|
|
@@ -54,6 +55,21 @@ function sanitizeString(str) {
|
|
|
54
55
|
}
|
|
55
56
|
return result;
|
|
56
57
|
}
|
|
58
|
+
const HAP_NAME_MAX_LENGTH = 64;
|
|
59
|
+
/**
|
|
60
|
+
* Sanitize a HomeKit accessory/service name for Homebridge 2 / HAP-NodeJS validation.
|
|
61
|
+
*/
|
|
62
|
+
function sanitizeHapName(name, fallback = 'Leviton Device') {
|
|
63
|
+
const sanitized = name
|
|
64
|
+
.replace(/[^\p{L}\p{N} ']+/gu, ' ')
|
|
65
|
+
.replace(/\s+/g, ' ')
|
|
66
|
+
.trim()
|
|
67
|
+
.replace(/^[^\p{L}\p{N}]+|[^\p{L}\p{N}]+$/gu, '');
|
|
68
|
+
const validName = sanitized || fallback;
|
|
69
|
+
const truncated = validName.slice(0, HAP_NAME_MAX_LENGTH).trim();
|
|
70
|
+
const trimmed = truncated.replace(/^[^\p{L}\p{N}]+|[^\p{L}\p{N}]+$/gu, '');
|
|
71
|
+
return trimmed || fallback;
|
|
72
|
+
}
|
|
57
73
|
/**
|
|
58
74
|
* Sanitize an object by redacting sensitive fields
|
|
59
75
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanitizers.js","sourceRoot":"","sources":["../../src/utils/sanitizers.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAmBH,sCAYC;AAKD,wCAQC;AAKD,wCA6BC;AAKD,4BAKC;AAKD,8BAKC;AAKD,sDAGC;AAKD,gDAQC;
|
|
1
|
+
{"version":3,"file":"sanitizers.js","sourceRoot":"","sources":["../../src/utils/sanitizers.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED