homebridge-adt-pulse 3.0.0-beta.22 → 3.0.0-beta.24
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/README.md +10 -6
- package/build/config.schema.json +6 -0
- package/build/src/lib/accessory.js +163 -97
- package/build/src/lib/accessory.js.map +1 -1
- package/build/src/lib/api.js +88 -67
- package/build/src/lib/api.js.map +1 -1
- package/build/src/lib/detect.js +80 -0
- package/build/src/lib/detect.js.map +1 -1
- package/build/src/lib/items.js +31 -3
- package/build/src/lib/items.js.map +1 -1
- package/build/src/lib/platform.js +110 -20
- package/build/src/lib/platform.js.map +1 -1
- package/build/src/lib/schema.js +1 -0
- package/build/src/lib/schema.js.map +1 -1
- package/build/src/lib/utility.js +137 -6
- package/build/src/lib/utility.js.map +1 -1
- package/build/src/scripts/repl.js +9 -6
- package/build/src/scripts/repl.js.map +1 -1
- package/build/src/scripts/test-api.js +4 -4
- package/build/src/scripts/test-api.js.map +1 -1
- package/config.schema.json +6 -0
- package/package.json +1 -1
package/build/src/lib/detect.js
CHANGED
|
@@ -37,6 +37,9 @@ export async function detectedNewDoSubmitHandlers(handlers, logger, debugMode) {
|
|
|
37
37
|
debugLog(logger, 'detect.ts / detectedNewDoSubmitHandlers()', 'warn', 'Plugin has detected new do submit handlers. Notifying plugin author about this discovery');
|
|
38
38
|
}
|
|
39
39
|
stackTracer('detect-content', cleanedData);
|
|
40
|
+
if (logger !== null) {
|
|
41
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
42
|
+
}
|
|
40
43
|
try {
|
|
41
44
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
42
45
|
family: 4,
|
|
@@ -87,6 +90,9 @@ export async function detectedNewGatewayInformation(device, logger, debugMode) {
|
|
|
87
90
|
debugLog(logger, 'detect.ts / detectedNewGatewayInformation()', 'warn', 'Plugin has detected new gateway information. Notifying plugin author about this discovery');
|
|
88
91
|
}
|
|
89
92
|
stackTracer('detect-content', cleanedData);
|
|
93
|
+
if (logger !== null) {
|
|
94
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
95
|
+
}
|
|
90
96
|
try {
|
|
91
97
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
92
98
|
family: 4,
|
|
@@ -147,6 +153,9 @@ export async function detectedNewOrbSecurityButtons(buttons, logger, debugMode)
|
|
|
147
153
|
debugLog(logger, 'detect.ts / detectedNewOrbSecurityButtons()', 'warn', 'Plugin has detected new orb security buttons. Notifying plugin author about this discovery');
|
|
148
154
|
}
|
|
149
155
|
stackTracer('detect-content', cleanedData);
|
|
156
|
+
if (logger !== null) {
|
|
157
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
158
|
+
}
|
|
150
159
|
try {
|
|
151
160
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
152
161
|
family: 4,
|
|
@@ -197,6 +206,9 @@ export async function detectedNewPanelInformation(device, logger, debugMode) {
|
|
|
197
206
|
debugLog(logger, 'detect.ts / detectedNewPanelInformation()', 'warn', 'Plugin has detected new panel information. Notifying plugin author about this discovery');
|
|
198
207
|
}
|
|
199
208
|
stackTracer('detect-content', cleanedData);
|
|
209
|
+
if (logger !== null) {
|
|
210
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
211
|
+
}
|
|
200
212
|
try {
|
|
201
213
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
202
214
|
family: 4,
|
|
@@ -247,6 +259,9 @@ export async function detectedNewPanelStatus(summary, logger, debugMode) {
|
|
|
247
259
|
debugLog(logger, 'detect.ts / detectedNewPanelStatus()', 'warn', 'Plugin has detected a new panel state and/or status. Notifying plugin author about this discovery');
|
|
248
260
|
}
|
|
249
261
|
stackTracer('detect-content', cleanedData);
|
|
262
|
+
if (logger !== null) {
|
|
263
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
264
|
+
}
|
|
250
265
|
try {
|
|
251
266
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
252
267
|
family: 4,
|
|
@@ -297,6 +312,9 @@ export async function detectedNewPortalVersion(version, logger, debugMode) {
|
|
|
297
312
|
debugLog(logger, 'detect.ts / detectedNewPortalVersion()', 'warn', 'Plugin has detected a new portal version. Notifying plugin author about this discovery');
|
|
298
313
|
}
|
|
299
314
|
stackTracer('detect-content', cleanedData);
|
|
315
|
+
if (logger !== null) {
|
|
316
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
317
|
+
}
|
|
300
318
|
try {
|
|
301
319
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
302
320
|
family: 4,
|
|
@@ -348,6 +366,9 @@ export async function detectedNewSensorsInformation(sensors, logger, debugMode)
|
|
|
348
366
|
debugLog(logger, 'detect.ts / detectedNewSensorsInformation()', 'warn', 'Plugin has detected new sensors information. Notifying plugin author about this discovery');
|
|
349
367
|
}
|
|
350
368
|
stackTracer('detect-content', cleanedData);
|
|
369
|
+
if (logger !== null) {
|
|
370
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
371
|
+
}
|
|
351
372
|
try {
|
|
352
373
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
353
374
|
family: 4,
|
|
@@ -398,6 +419,9 @@ export async function detectedNewSensorsStatus(sensors, logger, debugMode) {
|
|
|
398
419
|
debugLog(logger, 'detect.ts / detectedNewSensorsStatus()', 'warn', 'Plugin has detected new sensors status. Notifying plugin author about this discovery');
|
|
399
420
|
}
|
|
400
421
|
stackTracer('detect-content', cleanedData);
|
|
422
|
+
if (logger !== null) {
|
|
423
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
424
|
+
}
|
|
401
425
|
try {
|
|
402
426
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
403
427
|
family: 4,
|
|
@@ -418,6 +442,59 @@ export async function detectedNewSensorsStatus(sensors, logger, debugMode) {
|
|
|
418
442
|
}
|
|
419
443
|
return false;
|
|
420
444
|
}
|
|
445
|
+
export async function detectedSensorCountMismatch(data, logger, debugMode) {
|
|
446
|
+
const detectedCountMismatch = data.sensorsInfo.length !== data.sensorsStatus.length;
|
|
447
|
+
if (detectedCountMismatch) {
|
|
448
|
+
const cleanedData = removePersonalIdentifiableInformation(data);
|
|
449
|
+
try {
|
|
450
|
+
const outdated = await isPluginOutdated();
|
|
451
|
+
if (outdated) {
|
|
452
|
+
if (logger !== null) {
|
|
453
|
+
logger.warn('Plugin has detected a sensor count mismatch. You are running an older plugin version, please update soon.');
|
|
454
|
+
}
|
|
455
|
+
if (debugMode) {
|
|
456
|
+
debugLog(logger, 'detect.ts / detectedSensorCountMismatch()', 'warn', 'Plugin has detected a sensor count mismatch. You are running an older plugin version, please update soon');
|
|
457
|
+
}
|
|
458
|
+
return false;
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
catch (error) {
|
|
462
|
+
if (debugMode === true) {
|
|
463
|
+
debugLog(logger, 'detect.ts / detectedSensorCountMismatch()', 'error', 'Failed to check if plugin is outdated');
|
|
464
|
+
stackTracer('serialize-error', serializeError(error));
|
|
465
|
+
}
|
|
466
|
+
return false;
|
|
467
|
+
}
|
|
468
|
+
if (logger !== null) {
|
|
469
|
+
logger.warn('Plugin has detected a sensor count mismatch. Notifying plugin author about this discovery ...');
|
|
470
|
+
}
|
|
471
|
+
if (debugMode) {
|
|
472
|
+
debugLog(logger, 'detect.ts / detectedSensorCountMismatch()', 'warn', 'Plugin has detected a sensor count mismatch. Notifying plugin author about this discovery');
|
|
473
|
+
}
|
|
474
|
+
stackTracer('detect-content', cleanedData);
|
|
475
|
+
if (logger !== null) {
|
|
476
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
477
|
+
}
|
|
478
|
+
try {
|
|
479
|
+
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
480
|
+
family: 4,
|
|
481
|
+
headers: {
|
|
482
|
+
'User-Agent': 'homebridge-adt-pulse',
|
|
483
|
+
'X-Title': 'Detected a sensor count mismatch',
|
|
484
|
+
},
|
|
485
|
+
});
|
|
486
|
+
return true;
|
|
487
|
+
}
|
|
488
|
+
catch (error) {
|
|
489
|
+
if (debugMode === true) {
|
|
490
|
+
debugLog(logger, 'detect.ts / detectedSensorCountMismatch()', 'error', 'Failed to notify plugin author about the sensor count mismatch');
|
|
491
|
+
stackTracer('serialize-error', serializeError(error));
|
|
492
|
+
}
|
|
493
|
+
return false;
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
return false;
|
|
497
|
+
}
|
|
421
498
|
export async function detectedUnknownSensorsAction(sensors, logger, debugMode) {
|
|
422
499
|
const detectedNewActions = sensors.filter((sensor) => {
|
|
423
500
|
const sensorStatusStatuses = sensor.status.statuses;
|
|
@@ -457,6 +534,9 @@ export async function detectedUnknownSensorsAction(sensors, logger, debugMode) {
|
|
|
457
534
|
debugLog(logger, 'detect.ts / detectedUnknownSensorsAction()', 'warn', 'Plugin has detected unknown sensors action. Notifying plugin author about this discovery');
|
|
458
535
|
}
|
|
459
536
|
stackTracer('detect-content', cleanedData);
|
|
537
|
+
if (logger !== null) {
|
|
538
|
+
logger.warn('This message will NOT go away by restarting Homebridge. An update MUST become available first. Please be patient, thank you.');
|
|
539
|
+
}
|
|
460
540
|
try {
|
|
461
541
|
await axios.post(getDetectReportUrl(), JSON.stringify(cleanedData, null, 2), {
|
|
462
542
|
family: 4,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../../src/lib/detect.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../../src/lib/detect.ts"],"names":[],"mappings":"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"}
|
package/build/src/lib/items.js
CHANGED
|
@@ -8,6 +8,7 @@ export const condensedSensorTypeItems = [
|
|
|
8
8
|
'heat',
|
|
9
9
|
'motion',
|
|
10
10
|
'shock',
|
|
11
|
+
'supervisory',
|
|
11
12
|
'temperature',
|
|
12
13
|
];
|
|
13
14
|
export const doSubmitHandlerRelativeUrlItems = [
|
|
@@ -134,46 +135,64 @@ export const sensorActionItems = [
|
|
|
134
135
|
type: 'co',
|
|
135
136
|
statuses: [
|
|
136
137
|
'Okay',
|
|
138
|
+
'Unknown',
|
|
137
139
|
],
|
|
138
140
|
},
|
|
139
141
|
{
|
|
140
142
|
type: 'doorWindow',
|
|
141
143
|
statuses: [
|
|
144
|
+
'ALARM, Closed',
|
|
145
|
+
'ALARM, Open',
|
|
146
|
+
'Bypassed, Closed',
|
|
142
147
|
'Bypassed, Open',
|
|
143
148
|
'Closed',
|
|
149
|
+
'Low Battery, Closed',
|
|
150
|
+
'Low Battery, Open',
|
|
144
151
|
'Open',
|
|
152
|
+
'Trouble, Closed',
|
|
153
|
+
'Trouble, Open',
|
|
154
|
+
'Unknown',
|
|
145
155
|
],
|
|
146
156
|
},
|
|
147
157
|
{
|
|
148
158
|
type: 'fire',
|
|
149
159
|
statuses: [
|
|
160
|
+
'ALARM, Okay',
|
|
161
|
+
'ALARM, Tripped',
|
|
162
|
+
'Low Battery, Okay',
|
|
150
163
|
'Okay',
|
|
164
|
+
'Unknown',
|
|
151
165
|
],
|
|
152
166
|
},
|
|
153
167
|
{
|
|
154
168
|
type: 'flood',
|
|
155
169
|
statuses: [
|
|
156
|
-
'',
|
|
170
|
+
'Okay',
|
|
157
171
|
],
|
|
158
172
|
},
|
|
159
173
|
{
|
|
160
174
|
type: 'glass',
|
|
161
175
|
statuses: [
|
|
176
|
+
'ALARM, Okay',
|
|
162
177
|
'Okay',
|
|
178
|
+
'Tripped',
|
|
179
|
+
'Unknown',
|
|
163
180
|
],
|
|
164
181
|
},
|
|
165
182
|
{
|
|
166
183
|
type: 'heat',
|
|
167
184
|
statuses: [
|
|
168
|
-
'',
|
|
185
|
+
'Okay',
|
|
169
186
|
],
|
|
170
187
|
},
|
|
171
188
|
{
|
|
172
189
|
type: 'motion',
|
|
173
190
|
statuses: [
|
|
191
|
+
'ALARM, Motion',
|
|
174
192
|
'Motion',
|
|
175
193
|
'No Motion',
|
|
176
194
|
'Okay',
|
|
195
|
+
'Unknown',
|
|
177
196
|
],
|
|
178
197
|
},
|
|
179
198
|
{
|
|
@@ -183,11 +202,19 @@ export const sensorActionItems = [
|
|
|
183
202
|
],
|
|
184
203
|
},
|
|
185
204
|
{
|
|
186
|
-
type: '
|
|
205
|
+
type: 'supervisory',
|
|
187
206
|
statuses: [
|
|
188
207
|
'',
|
|
189
208
|
],
|
|
190
209
|
},
|
|
210
|
+
{
|
|
211
|
+
type: 'temperature',
|
|
212
|
+
statuses: [
|
|
213
|
+
'ALARM, Okay',
|
|
214
|
+
'ALARM, Tripped',
|
|
215
|
+
'Okay',
|
|
216
|
+
],
|
|
217
|
+
},
|
|
191
218
|
];
|
|
192
219
|
export const sensorInformationDeviceTypeItems = [
|
|
193
220
|
'Carbon Monoxide Detector',
|
|
@@ -199,6 +226,7 @@ export const sensorInformationDeviceTypeItems = [
|
|
|
199
226
|
'Motion Sensor',
|
|
200
227
|
'Motion Sensor (Notable Events Only)',
|
|
201
228
|
'Shock Sensor',
|
|
229
|
+
'System/Supervisory',
|
|
202
230
|
'Temperature Sensor',
|
|
203
231
|
'Water/Flood Sensor',
|
|
204
232
|
'Window Sensor',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"items.js","sourceRoot":"","sources":["../../../src/lib/items.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAiCvB,MAAM,CAAC,MAAM,wBAAwB,GAA6B;IAChE,IAAI;IACJ,YAAY;IACZ,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,QAAQ;IACR,OAAO;IACP,aAAa;CACd,CAAC;AAOF,MAAM,CAAC,MAAM,+BAA+B,GAAoC;IAC9E,oDAAoD;IACpD,mDAAmD;IACnD,mDAAmD;IACnD,mDAAmD;IACnD,oDAAoD;IACpD,oDAAoD;IACpD,oDAAoD;IACpD,oDAAoD;IACpD,oDAAoD;IACpD,oDAAoD;IACpD,mDAAmD;IACnD,oDAAoD;IACpD,mDAAmD;IACnD,mDAAmD;IACnD,oDAAoD;CACrD,CAAC;AAOF,MAAM,CAAC,MAAM,gCAAgC,GAAqC;IAChF,MAAM;IACN,OAAO;IACP,MAAM;CACP,CAAC;AAOF,MAAM,CAAC,MAAM,qCAAqC,GAA0C;IAC1F,UAAU;CACX,CAAC;AAOF,MAAM,CAAC,MAAM,iCAAiC,GAAsC;IAClF,yCAAyC;IACzC,8CAA8C;CAC/C,CAAC;AAOF,MAAM,CAAC,MAAM,6BAA6B,GAAkC;IAC1E,SAAS;IACT,QAAQ;IACR,gBAAgB;CACjB,CAAC;AAOF,MAAM,CAAC,MAAM,gCAAgC,GAAqC;IAChF,UAAU;IACV,WAAW;IACX,UAAU;IACV,aAAa;IACb,QAAQ;CACT,CAAC;AAOF,MAAM,CAAC,MAAM,iCAAiC,GAAsC;IAClF,aAAa;IACb,cAAc;IACd,aAAa;IACb,WAAW;CACZ,CAAC;AAOF,MAAM,CAAC,MAAM,iCAAiC,GAAsC;IAClF,4BAA4B;CAC7B,CAAC;AAOF,MAAM,CAAC,MAAM,kCAAkC,GAAuC;IACpF,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;CACP,CAAC;AAOF,MAAM,CAAC,MAAM,uCAAuC,GAA4C;IAC9F,MAAM;IACN,UAAU;IACV,qBAAqB;IACrB,qBAAqB;IACrB,OAAO;IACP,YAAY;IACZ,KAAK;IACL,MAAM;CACP,CAAC;AAOF,MAAM,CAAC,MAAM,mCAAmC,GAAwC;IACtF,yCAAyC;CAC1C,CAAC;AAOF,MAAM,CAAC,MAAM,2BAA2B,GAAgC;IACtE,SAAS;IACT,QAAQ;IACR,gBAAgB;CACjB,CAAC;AAOF,MAAM,CAAC,MAAM,oBAAoB,GAAyB;IACxD,+BAA+B;CAChC,CAAC;AAOF,MAAM,CAAC,MAAM,qBAAqB,GAA0B;IAC1D,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,oBAAoB;CACrB,CAAC;AAOF,MAAM,CAAC,MAAM,sBAAsB,GAA2B;IAC5D,eAAe;IACf,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,eAAoD,CAAC;IACxG,WAAW;IACX,gBAAgB;IAChB,uBAAuB;IACvB,YAAY;IACZ,QAAQ;IACR,iBAAiB;IACjB,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;IACjB,gBAAgB;IAChB,iBAAiB;IACjB,aAAa;CACd,CAAC;AAOF,MAAM,CAAC,MAAM,kBAAkB,GAAuB;IACpD,YAAY;IACZ,WAAW;IACX,WAAW;IACX,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,WAAW;IACX,YAAY;CACb,CAAC;AAOF,MAAM,CAAC,MAAM,iBAAiB,GAAsB;IAClD;QACE,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE;YACR,MAAM;
|
|
1
|
+
{"version":3,"file":"items.js","sourceRoot":"","sources":["../../../src/lib/items.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
+
import _ from 'lodash';
|
|
2
3
|
import { arch, argv, platform, versions, } from 'node:process';
|
|
3
4
|
import { serializeError } from 'serialize-error';
|
|
4
5
|
import { ADTPulseAccessory } from './accessory.js';
|
|
5
6
|
import { ADTPulse } from './api.js';
|
|
6
|
-
import { detectedUnknownSensorsAction } from './detect.js';
|
|
7
|
+
import { detectedSensorCountMismatch, detectedUnknownSensorsAction } from './detect.js';
|
|
8
|
+
import { textOrbTextSummarySections } from './regex.js';
|
|
7
9
|
import { platformConfig } from './schema.js';
|
|
8
10
|
import { condenseSensorType, findIndexWithValue, generateHash, getAccessoryCategory, getPackageVersion, getPluralForm, sleep, stackTracer, } from './utility.js';
|
|
9
11
|
export class ADTPulsePlatform {
|
|
10
|
-
accessories;
|
|
12
|
+
#accessories;
|
|
11
13
|
#api;
|
|
12
14
|
#characteristic;
|
|
13
15
|
#config;
|
|
@@ -19,13 +21,14 @@ export class ADTPulsePlatform {
|
|
|
19
21
|
#service;
|
|
20
22
|
#state;
|
|
21
23
|
constructor(log, config, api) {
|
|
22
|
-
this
|
|
24
|
+
this.#accessories = [];
|
|
23
25
|
this.#api = api;
|
|
24
26
|
this.#characteristic = api.hap.Characteristic;
|
|
25
27
|
this.#config = null;
|
|
26
28
|
this.#constants = {
|
|
27
29
|
intervalTimestamps: {
|
|
28
30
|
adtKeepAlive: 538000,
|
|
31
|
+
adtSessionMax: 19368000,
|
|
29
32
|
adtSyncCheck: 3000,
|
|
30
33
|
suspendSyncing: 1800000,
|
|
31
34
|
synchronize: 1000,
|
|
@@ -60,6 +63,7 @@ export class ADTPulsePlatform {
|
|
|
60
63
|
},
|
|
61
64
|
lastRunOn: {
|
|
62
65
|
adtKeepAlive: 0,
|
|
66
|
+
adtLastLogin: 0,
|
|
63
67
|
adtSyncCheck: 0,
|
|
64
68
|
},
|
|
65
69
|
reportedHashes: [],
|
|
@@ -103,8 +107,8 @@ export class ADTPulsePlatform {
|
|
|
103
107
|
await sleep(10000);
|
|
104
108
|
}
|
|
105
109
|
this.#log.warn('Plugin is now removing all related accessories from Homebridge ...');
|
|
106
|
-
for (let i = this
|
|
107
|
-
this.removeAccessory(this
|
|
110
|
+
for (let i = this.#accessories.length - 1; i >= 0; i -= 1) {
|
|
111
|
+
this.removeAccessory(this.#accessories[i], 'plugin is in "reset" mode');
|
|
108
112
|
}
|
|
109
113
|
this.#log.info('Plugin finished removing all related accessories from Homebridge.');
|
|
110
114
|
return;
|
|
@@ -122,10 +126,10 @@ export class ADTPulsePlatform {
|
|
|
122
126
|
}
|
|
123
127
|
configureAccessory(accessory) {
|
|
124
128
|
this.#log.info(`Configuring cached accessory for ${chalk.underline(accessory.context.name)} (id: ${accessory.context.id}, uuid: ${accessory.context.uuid}) ...`);
|
|
125
|
-
this
|
|
129
|
+
this.#accessories.push(accessory);
|
|
126
130
|
}
|
|
127
131
|
addAccessory(device) {
|
|
128
|
-
const accessoryIndex = this
|
|
132
|
+
const accessoryIndex = this.#accessories.findIndex((accessory) => device.uuid === accessory.context.uuid);
|
|
129
133
|
if (accessoryIndex >= 0) {
|
|
130
134
|
this.#log.error(`Cannot add ${chalk.underline(device.name)} (id: ${device.id}, uuid: ${device.uuid}) accessory that already exists.`);
|
|
131
135
|
return;
|
|
@@ -141,11 +145,12 @@ export class ADTPulsePlatform {
|
|
|
141
145
|
if (this.#handlers[device.id] === undefined) {
|
|
142
146
|
this.#handlers[device.id] = new ADTPulseAccessory(typedAccessory, this.#state, this.#instance, this.#service, this.#characteristic, this.#api, this.#log);
|
|
143
147
|
}
|
|
144
|
-
this.
|
|
148
|
+
this.#handlers[device.id].updater();
|
|
149
|
+
this.#accessories.push(typedAccessory);
|
|
145
150
|
this.#api.registerPlatformAccessories('homebridge-adt-pulse', 'ADTPulse', [typedAccessory]);
|
|
146
151
|
}
|
|
147
152
|
updateAccessory(device) {
|
|
148
|
-
const { index, value } = findIndexWithValue(this
|
|
153
|
+
const { index, value } = findIndexWithValue(this.#accessories, (accessory) => device.uuid === accessory.context.uuid);
|
|
149
154
|
if (index < 0 || value === undefined) {
|
|
150
155
|
this.#log.warn(`Attempted to update ${chalk.underline(device.name)} (id: ${device.id}, uuid: ${device.uuid}) accessory that does not exist.`);
|
|
151
156
|
return;
|
|
@@ -160,13 +165,14 @@ export class ADTPulsePlatform {
|
|
|
160
165
|
if (this.#handlers[device.id] === undefined) {
|
|
161
166
|
this.#handlers[device.id] = new ADTPulseAccessory(value, this.#state, this.#instance, this.#service, this.#characteristic, this.#api, this.#log);
|
|
162
167
|
}
|
|
163
|
-
this.
|
|
168
|
+
this.#handlers[device.id].updater();
|
|
169
|
+
this.#accessories[index] = value;
|
|
164
170
|
this.#api.updatePlatformAccessories([value]);
|
|
165
171
|
}
|
|
166
172
|
removeAccessory(accessory, reason) {
|
|
167
173
|
this.#log.info(`Removing ${chalk.underline(accessory.context.name)} (id: ${accessory.context.id}, uuid: ${accessory.context.uuid}) accessory ...`);
|
|
168
174
|
this.#log.debug(`${chalk.underline(accessory.context.name)} (id: ${accessory.context.id}, uuid: ${accessory.context.uuid}) is removed because ${reason}.`);
|
|
169
|
-
this
|
|
175
|
+
this.#accessories = this.#accessories.filter((existingAccessory) => existingAccessory.context.uuid !== accessory.context.uuid);
|
|
170
176
|
this.#api.unregisterPlatformAccessories('homebridge-adt-pulse', 'ADTPulse', [accessory]);
|
|
171
177
|
}
|
|
172
178
|
printSystemInformation() {
|
|
@@ -193,14 +199,19 @@ export class ADTPulsePlatform {
|
|
|
193
199
|
return;
|
|
194
200
|
}
|
|
195
201
|
try {
|
|
202
|
+
let currentTimestamp = Date.now();
|
|
196
203
|
this.#state.activity.isSyncing = true;
|
|
204
|
+
if ((currentTimestamp - this.#state.lastRunOn.adtLastLogin) >= this.#constants.intervalTimestamps.adtSessionMax) {
|
|
205
|
+
this.#instance.resetSession();
|
|
206
|
+
}
|
|
197
207
|
if (!this.#instance.isAuthenticated()) {
|
|
198
208
|
if (!this.#state.activity.isLoggingIn) {
|
|
199
209
|
this.#state.activity.isLoggingIn = true;
|
|
200
210
|
const login = await this.#instance.login();
|
|
201
211
|
if (login.success) {
|
|
202
|
-
|
|
212
|
+
currentTimestamp = Date.now();
|
|
203
213
|
this.#state.lastRunOn.adtKeepAlive = currentTimestamp;
|
|
214
|
+
this.#state.lastRunOn.adtLastLogin = currentTimestamp;
|
|
204
215
|
this.#state.lastRunOn.adtSyncCheck = currentTimestamp;
|
|
205
216
|
}
|
|
206
217
|
if (!login.success) {
|
|
@@ -226,7 +237,7 @@ export class ADTPulsePlatform {
|
|
|
226
237
|
return;
|
|
227
238
|
}
|
|
228
239
|
}
|
|
229
|
-
|
|
240
|
+
currentTimestamp = Date.now();
|
|
230
241
|
if (currentTimestamp - this.#state.lastRunOn.adtKeepAlive >= this.#constants.intervalTimestamps.adtKeepAlive) {
|
|
231
242
|
this.synchronizeKeepAlive();
|
|
232
243
|
}
|
|
@@ -332,6 +343,7 @@ export class ADTPulsePlatform {
|
|
|
332
343
|
this.#log.warn('fetchUpdatedInformation() was called but API instance is not available.');
|
|
333
344
|
return;
|
|
334
345
|
}
|
|
346
|
+
const cachedState = _.clone(this.#state.data);
|
|
335
347
|
try {
|
|
336
348
|
const requests = await Promise.all([
|
|
337
349
|
this.#instance.getGatewayInformation(),
|
|
@@ -360,6 +372,7 @@ export class ADTPulsePlatform {
|
|
|
360
372
|
const { sensors } = requests[4].info;
|
|
361
373
|
this.#state.data.sensorsStatus = sensors;
|
|
362
374
|
}
|
|
375
|
+
await this.logStatusChanges(cachedState, this.#state.data);
|
|
363
376
|
await this.unknownInformationDispatcher();
|
|
364
377
|
await this.unifyDevices();
|
|
365
378
|
}
|
|
@@ -368,14 +381,91 @@ export class ADTPulsePlatform {
|
|
|
368
381
|
stackTracer('serialize-error', serializeError(error));
|
|
369
382
|
}
|
|
370
383
|
}
|
|
384
|
+
async logStatusChanges(oldCache, newCache) {
|
|
385
|
+
if (oldCache.gatewayInfo !== null && newCache.gatewayInfo !== null) {
|
|
386
|
+
const oldStatus = oldCache.gatewayInfo.status;
|
|
387
|
+
const newStatus = newCache.gatewayInfo.status;
|
|
388
|
+
if (oldStatus !== newStatus && oldStatus !== null && newStatus !== null) {
|
|
389
|
+
this.#log.info(`${chalk.underline('ADT Pulse Gateway')} status changed (old: "${oldStatus}", new: "${newStatus}").`);
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
if (oldCache.panelInfo !== null && newCache.panelInfo !== null) {
|
|
393
|
+
const oldStatus = oldCache.panelInfo.status;
|
|
394
|
+
const newStatus = newCache.panelInfo.status;
|
|
395
|
+
if (oldStatus !== newStatus && oldStatus !== null && newStatus !== null) {
|
|
396
|
+
this.#log.info(`${chalk.underline('Security Panel')} status changed (old: "${oldStatus}", new: "${newStatus}").`);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
if (this.#config !== null
|
|
400
|
+
&& this.#config.sensors.length > 0
|
|
401
|
+
&& oldCache.sensorsInfo.length !== 0
|
|
402
|
+
&& newCache.sensorsInfo !== null) {
|
|
403
|
+
if (oldCache.sensorsInfo.length === newCache.sensorsInfo.length) {
|
|
404
|
+
for (let i = 0; i < oldCache.sensorsInfo.length; i += 1) {
|
|
405
|
+
const { name, zone } = oldCache.sensorsInfo[i];
|
|
406
|
+
const configuredSensor = this.#config.sensors.find((sensor) => sensor.adtName === name && sensor.adtZone === zone);
|
|
407
|
+
const oldStatus = oldCache.sensorsInfo[i].status;
|
|
408
|
+
const newStatus = newCache.sensorsInfo[i].status;
|
|
409
|
+
if (configuredSensor !== undefined && oldStatus !== newStatus) {
|
|
410
|
+
this.#log.info(`${chalk.underline(configuredSensor.name)} status changed (old: "${oldStatus}", new: "${newStatus}").`);
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
else {
|
|
415
|
+
this.#log.warn('Changes to sensors device status cannot be determined due to length inconsistencies.');
|
|
416
|
+
stackTracer('log-status-changes', {
|
|
417
|
+
old: oldCache.sensorsInfo,
|
|
418
|
+
new: newCache.sensorsInfo,
|
|
419
|
+
});
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
if (oldCache.panelStatus !== null && newCache.panelStatus !== null) {
|
|
423
|
+
const oldStatus = oldCache.panelStatus.rawData.node;
|
|
424
|
+
const newStatus = newCache.panelStatus.rawData.node;
|
|
425
|
+
const splitOldStatus = oldStatus.split(textOrbTextSummarySections).filter(Boolean).join(' / ');
|
|
426
|
+
const splitNewStatus = newStatus.split(textOrbTextSummarySections).filter(Boolean).join(' / ');
|
|
427
|
+
if (oldStatus !== newStatus) {
|
|
428
|
+
this.#log.info(`${chalk.underline('Security Panel')} state changed (old: "${splitOldStatus}", new: "${splitNewStatus}").`);
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
if (this.#config !== null
|
|
432
|
+
&& this.#config.sensors.length > 0
|
|
433
|
+
&& oldCache.sensorsStatus.length !== 0
|
|
434
|
+
&& newCache.sensorsStatus !== null) {
|
|
435
|
+
if (oldCache.sensorsStatus.length === newCache.sensorsStatus.length) {
|
|
436
|
+
for (let i = 0; i < oldCache.sensorsStatus.length; i += 1) {
|
|
437
|
+
const { name, zone } = oldCache.sensorsStatus[i];
|
|
438
|
+
const configuredSensor = this.#config.sensors.find((sensor) => sensor.adtName === name && sensor.adtZone === zone);
|
|
439
|
+
const oldStatus = oldCache.sensorsStatus[i].statuses.join(', ');
|
|
440
|
+
const newStatus = newCache.sensorsStatus[i].statuses.join(', ');
|
|
441
|
+
if (configuredSensor !== undefined && oldStatus !== newStatus) {
|
|
442
|
+
this.#log.info(`${chalk.underline(configuredSensor.name)} state changed (old: "${oldStatus}", new: "${newStatus}").`);
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
else {
|
|
447
|
+
this.#log.warn('Changes to sensors device state cannot be determined due to length inconsistencies.');
|
|
448
|
+
stackTracer('log-status-changes', {
|
|
449
|
+
old: oldCache.sensorsStatus,
|
|
450
|
+
new: newCache.sensorsStatus,
|
|
451
|
+
});
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
}
|
|
371
455
|
async unknownInformationDispatcher() {
|
|
372
456
|
const { sensorsInfo, sensorsStatus } = this.#state.data;
|
|
373
457
|
if (sensorsInfo.length !== sensorsStatus.length) {
|
|
374
|
-
|
|
375
|
-
stackTracer('sensor-mismatch', {
|
|
458
|
+
const data = {
|
|
376
459
|
sensorsInfo,
|
|
377
460
|
sensorsStatus,
|
|
378
|
-
}
|
|
461
|
+
};
|
|
462
|
+
const dataHash = generateHash(`${JSON.stringify(data)}`);
|
|
463
|
+
if (this.#state.reportedHashes.find((reportedHash) => dataHash === reportedHash) === undefined) {
|
|
464
|
+
const detectedNew = await detectedSensorCountMismatch(data, this.#log, this.#debugMode);
|
|
465
|
+
if (detectedNew) {
|
|
466
|
+
this.#state.reportedHashes.push(dataHash);
|
|
467
|
+
}
|
|
468
|
+
}
|
|
379
469
|
return;
|
|
380
470
|
}
|
|
381
471
|
const sensors = sensorsInfo.map((sensorInfo, sensorsInfoKey) => ({
|
|
@@ -466,13 +556,13 @@ export class ADTPulsePlatform {
|
|
|
466
556
|
}
|
|
467
557
|
if (this.#config !== null) {
|
|
468
558
|
const { sensors } = this.#config;
|
|
469
|
-
for (let i = this
|
|
470
|
-
const { originalName, type, zone } = this
|
|
559
|
+
for (let i = this.#accessories.length - 1; i >= 0; i -= 1) {
|
|
560
|
+
const { originalName, type, zone } = this.#accessories[i].context;
|
|
471
561
|
if (type === 'gateway' || type === 'panel') {
|
|
472
562
|
continue;
|
|
473
563
|
}
|
|
474
564
|
if (!sensors.some((sensor) => originalName === sensor.adtName && zone !== null && zone === sensor.adtZone)) {
|
|
475
|
-
this.removeAccessory(this
|
|
565
|
+
this.removeAccessory(this.#accessories[i], 'accessory is missing in config');
|
|
476
566
|
}
|
|
477
567
|
}
|
|
478
568
|
}
|
|
@@ -480,7 +570,7 @@ export class ADTPulsePlatform {
|
|
|
480
570
|
}
|
|
481
571
|
async pollAccessories(devices) {
|
|
482
572
|
for (let i = 0; i < devices.length; i += 1) {
|
|
483
|
-
const accessoryIndex = this
|
|
573
|
+
const accessoryIndex = this.#accessories.findIndex((accessory) => devices[i].uuid === accessory.context.uuid);
|
|
484
574
|
if (accessoryIndex >= 0) {
|
|
485
575
|
this.updateAccessory(devices[i]);
|
|
486
576
|
}
|