@homebridge-plugins/homebridge-eufy-security 5.0.0-beta.2 → 5.0.0-beta.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/config.schema.json +24 -0
  2. package/dist/account/temporary-authentication.js +3 -1
  3. package/dist/account/temporary-authentication.js.map +1 -1
  4. package/dist/configuration.js +36 -2
  5. package/dist/configuration.js.map +1 -1
  6. package/dist/device/member-evidence.js +10 -3
  7. package/dist/device/member-evidence.js.map +1 -1
  8. package/dist/diagnostics.js +582 -83
  9. package/dist/diagnostics.js.map +1 -1
  10. package/dist/homekit/adapters/camera-streaming.js +54 -26
  11. package/dist/homekit/adapters/camera-streaming.js.map +1 -1
  12. package/dist/homekit/adapters/lock.js +36 -13
  13. package/dist/homekit/adapters/lock.js.map +1 -1
  14. package/dist/homekit/adapters/motion.js +1 -1
  15. package/dist/homekit/adapters/motion.js.map +1 -1
  16. package/dist/homekit/adapters/package-sensor.js +63 -0
  17. package/dist/homekit/adapters/package-sensor.js.map +1 -0
  18. package/dist/homekit/adapters/registry.js +2 -0
  19. package/dist/homekit/adapters/registry.js.map +1 -1
  20. package/dist/homekit/adapters/security-system.js +95 -44
  21. package/dist/homekit/adapters/security-system.js.map +1 -1
  22. package/dist/homekit/coverage-matrix.js +1 -3
  23. package/dist/homekit/coverage-matrix.js.map +1 -1
  24. package/dist/homekit/reconciler.js +6 -2
  25. package/dist/homekit/reconciler.js.map +1 -1
  26. package/dist/media/live-stream.js +98 -54
  27. package/dist/media/live-stream.js.map +1 -1
  28. package/dist/media/recording.js +7 -5
  29. package/dist/media/recording.js.map +1 -1
  30. package/dist/media/snapshot.js +4 -4
  31. package/dist/media/station-live-sessions.js +47 -43
  32. package/dist/media/station-live-sessions.js.map +1 -1
  33. package/dist/platform.js +25 -5
  34. package/dist/platform.js.map +1 -1
  35. package/dist/runtime/channel.js +6 -2
  36. package/dist/runtime/channel.js.map +1 -1
  37. package/dist/runtime/owner.js +3 -0
  38. package/dist/runtime/owner.js.map +1 -1
  39. package/dist/ui/dashboard.js +32 -14
  40. package/dist/ui/dashboard.js.map +1 -1
  41. package/dist/ui/server.js +27 -4
  42. package/dist/ui/server.js.map +1 -1
  43. package/homebridge-ui/public/app.css +353 -88
  44. package/homebridge-ui/public/i18n/en.json +108 -78
  45. package/homebridge-ui/public/i18n/fr.json +108 -78
  46. package/homebridge-ui/public/index.html +95 -106
  47. package/homebridge-ui/public/js/app.js +328 -345
  48. package/homebridge-ui/public/js/dashboard.js +139 -10
  49. package/homebridge-ui/public/js/profile-wizard.js +17 -54
  50. package/i18n/runtime/en.json +5 -3
  51. package/package.json +6 -6
@@ -1,4 +1,22 @@
1
1
  import { ArmingMode, CapabilityNotSupportedError } from '@mega-yfue/eufy-sdk';
2
+ /**
3
+ * What each HomeKit security state means where the user assigned nothing.
4
+ *
5
+ * `night` is absent: no vendor mode is a night posture, so HomeKit offers the state only once a user says what
6
+ * it stands for on that station.
7
+ */
8
+ const DEFAULT_ARMING_MODES = {
9
+ home: ArmingMode.home,
10
+ away: ArmingMode.away,
11
+ off: ArmingMode.disarmed,
12
+ };
13
+ /**
14
+ * The HomeKit states a station's guard mode is read against, in the order a mode is looked up in.
15
+ *
16
+ * Two states may name one mode — HomeKit's night standing for the same posture as home, say — so the order
17
+ * decides which one a station reporting that mode reads as, and the first assignment wins.
18
+ */
19
+ const SLOT_ORDER = ['home', 'away', 'night', 'off'];
2
20
  export const SECURITY_SYSTEM_ADAPTER_KEY = 'arming.security-system';
3
21
  const SECURITY_SYSTEM_STATES = new WeakMap();
4
22
  const ARMING_MODE_READ = {
@@ -226,9 +244,36 @@ export const SECURITY_SYSTEM_ADAPTER = {
226
244
  coverage: COVERAGE,
227
245
  attach: attachSecuritySystem,
228
246
  };
229
- /** Attaches authoritative arming state to one official Security System service. */
247
+ /**
248
+ * Attaches authoritative arming state to one official Security System service.
249
+ *
250
+ * A station reports nine guard modes and HomeKit names four states. `away` and `home` are exact, `off` and
251
+ * `disarmed` both read as disarmed because HomeKit has one unarmed state, and `schedule`, `custom1` to
252
+ * `custom3` and `geo` read as night: they are armed postures HomeKit cannot name, and night is the one state
253
+ * left to carry them. An approximated mode holds `StatusFault`, which is the only place a state HomeKit shows
254
+ * inexactly says so.
255
+ *
256
+ * A read never fails. A characteristic whose read errors takes the whole accessory to "No Response" in
257
+ * HomeKit, which names the bridge rather than the mode and leaves the station indistinguishable from one that
258
+ * is unreachable — so a mode that cannot be read at all answers with the last state read exactly, disarmed
259
+ * where there is none, and faults.
260
+ *
261
+ * Only an exact mode reaches the target state, whose valid values are the three modes this adapter can write.
262
+ * Night is a state the station reports and nothing here sets, so the target keeps the last mode written or
263
+ * read exactly, and HomeKit offers no control that would have to be refused.
264
+ *
265
+ * A device whose owner turned the security system off gets no service, and loses the one a cached accessory
266
+ * still carries.
267
+ */
230
268
  function attachSecuritySystem(context) {
231
269
  const { accessory, hap } = context;
270
+ if (context.securitySystemEnabled === false) {
271
+ const cached = accessory.getServiceById(hap.Service.SecuritySystem, SECURITY_SYSTEM_ADAPTER_KEY);
272
+ if (cached) {
273
+ accessory.removeService(cached);
274
+ }
275
+ return undefined;
276
+ }
232
277
  const device = context.device;
233
278
  let arming;
234
279
  try {
@@ -282,36 +327,39 @@ function attachSecuritySystem(context) {
282
327
  const statusFault = service.getCharacteristic(hap.Characteristic.StatusFault);
283
328
  service.addOptionalCharacteristic(hap.Characteristic.SecuritySystemAlarmType);
284
329
  const alarmType = service.getCharacteristic(hap.Characteristic.SecuritySystemAlarmType);
330
+ const assigned = {
331
+ ...DEFAULT_ARMING_MODES,
332
+ ...context.armingModes,
333
+ };
334
+ const slotState = {
335
+ home: hap.Characteristic.SecuritySystemCurrentState.STAY_ARM,
336
+ away: hap.Characteristic.SecuritySystemCurrentState.AWAY_ARM,
337
+ night: hap.Characteristic.SecuritySystemCurrentState.NIGHT_ARM,
338
+ off: hap.Characteristic.SecuritySystemCurrentState.DISARMED,
339
+ };
340
+ const modeNames = context.evidence.get(ARMING_MODE_READ.id)?.labels;
285
341
  target.setProps({
286
- validValues: [
287
- hap.Characteristic.SecuritySystemTargetState.STAY_ARM,
288
- hap.Characteristic.SecuritySystemTargetState.AWAY_ARM,
289
- hap.Characteristic.SecuritySystemTargetState.DISARM,
290
- ],
342
+ validValues: SLOT_ORDER.filter((slot) => assigned[slot] !== undefined).map((slot) => slotState[slot]),
291
343
  });
292
344
  const homeKitMode = (value) => {
293
- if (value === 1) {
294
- return hap.Characteristic.SecuritySystemCurrentState.STAY_ARM;
345
+ const name = modeNames?.[String(value)];
346
+ if (name === undefined) {
347
+ return undefined;
295
348
  }
296
- if (value === 0) {
297
- return hap.Characteristic.SecuritySystemCurrentState.AWAY_ARM;
349
+ const slot = SLOT_ORDER.find((candidate) => assigned[candidate] === name);
350
+ if (slot !== undefined) {
351
+ return { state: slotState[slot], exact: true };
298
352
  }
299
- if (value === 63) {
300
- return hap.Characteristic.SecuritySystemCurrentState.DISARMED;
301
- }
302
- return undefined;
353
+ return name === ArmingMode.disarmed || name === ArmingMode.off
354
+ ? { state: hap.Characteristic.SecuritySystemCurrentState.DISARMED, exact: true }
355
+ : { state: hap.Characteristic.SecuritySystemCurrentState.NIGHT_ARM, exact: false };
303
356
  };
304
357
  const sdkMode = (value) => {
305
- if (value === hap.Characteristic.SecuritySystemTargetState.STAY_ARM) {
306
- return ArmingMode.home;
358
+ const mode = SLOT_ORDER.filter((slot) => slotState[slot] === value).map((slot) => assigned[slot])[0];
359
+ if (mode === undefined) {
360
+ throw new hap.HapStatusError(hap.HAPStatus.INVALID_VALUE_IN_REQUEST);
307
361
  }
308
- if (value === hap.Characteristic.SecuritySystemTargetState.AWAY_ARM) {
309
- return ArmingMode.away;
310
- }
311
- if (value === hap.Characteristic.SecuritySystemTargetState.DISARM) {
312
- return ArmingMode.disarmed;
313
- }
314
- throw new hap.HapStatusError(hap.HAPStatus.INVALID_VALUE_IN_REQUEST);
362
+ return mode;
315
363
  };
316
364
  const updateStatusFault = () => {
317
365
  statusFault.updateValue(state.unsupportedFault || state.operationFault || state.reconciliationFault
@@ -339,29 +387,31 @@ function attachSecuritySystem(context) {
339
387
  }
340
388
  catch {
341
389
  diagnoseMode(true, 'sdk-fault');
342
- throw new hap.HapStatusError(hap.HAPStatus.SERVICE_COMMUNICATION_FAILURE);
390
+ return { state: state.lastExact ?? hap.Characteristic.SecuritySystemCurrentState.DISARMED, exact: false };
343
391
  }
344
392
  const mapped = homeKitMode(value);
345
393
  if (mapped === undefined) {
346
- diagnoseMode(true, value === undefined ? 'missing' : typeof value === 'number' ? 'unsupported' : 'malformed');
347
- throw new hap.HapStatusError(hap.HAPStatus.SERVICE_COMMUNICATION_FAILURE);
394
+ diagnoseMode(true, modeNames === undefined || value === undefined ? 'missing' : 'malformed');
395
+ return { state: state.lastExact ?? hap.Characteristic.SecuritySystemCurrentState.DISARMED, exact: false };
396
+ }
397
+ if (!mapped.exact) {
398
+ diagnoseMode(true, 'unsupported');
399
+ return mapped;
348
400
  }
349
401
  diagnoseMode(false, 'recovered');
402
+ state.lastExact = mapped.state;
350
403
  return mapped;
351
404
  };
352
405
  const observeMode = () => {
353
- try {
354
- const value = readMode();
355
- state.alarmTriggered = false;
356
- state.writes?.observe();
357
- current.updateValue(value);
358
- target.updateValue(value);
359
- alarmType.updateValue(hap.Characteristic.SecuritySystemAlarmType.NO_ALARM);
360
- return { event: 'arming-mode-changed', observation: 'valid' };
361
- }
362
- catch {
363
- return { event: 'arming-mode-changed', observation: 'malformed' };
364
- }
406
+ const mode = readMode();
407
+ state.alarmTriggered = false;
408
+ state.writes?.observe();
409
+ current.updateValue(mode.state);
410
+ if (mode.exact) {
411
+ target.updateValue(mode.state);
412
+ }
413
+ alarmType.updateValue(hap.Characteristic.SecuritySystemAlarmType.NO_ALARM);
414
+ return { event: 'arming-mode-changed', observation: mode.exact ? 'valid' : 'malformed' };
365
415
  };
366
416
  state.writes ??= new SecurityModeWrites((value) => state.arming.setMode(sdkMode(value)), () => new hap.HapStatusError(hap.HAPStatus.SERVICE_COMMUNICATION_FAILURE), (error) => new hap.HapStatusError(error instanceof CapabilityNotSupportedError
367
417
  ? hap.HAPStatus.NOT_ALLOWED_IN_CURRENT_STATE
@@ -379,17 +429,18 @@ function attachSecuritySystem(context) {
379
429
  context.observed(code);
380
430
  }
381
431
  }, () => {
382
- try {
383
- target.updateValue(readMode());
432
+ const mode = readMode();
433
+ if (mode.exact) {
434
+ target.updateValue(mode.state);
384
435
  }
385
- catch { }
386
436
  });
387
437
  updateStatusFault();
388
438
  observeMode();
389
- current.onGet(() => state.alarmTriggered ? hap.Characteristic.SecuritySystemCurrentState.ALARM_TRIGGERED : readMode());
439
+ current.onGet(() => state.alarmTriggered ? hap.Characteristic.SecuritySystemCurrentState.ALARM_TRIGGERED : readMode().state);
390
440
  target.onGet(() => {
391
- const observed = readMode();
392
- return state.writes.read() ?? observed;
441
+ const mode = readMode();
442
+ return (state.writes.read() ??
443
+ (mode.exact ? mode.state : (state.lastExact ?? hap.Characteristic.SecuritySystemTargetState.DISARM)));
393
444
  });
394
445
  target.onSet((value) => {
395
446
  sdkMode(value);
@@ -1 +1 @@
1
- {"version":3,"file":"security-system.js","sourceRoot":"","sources":["../../../src/homekit/adapters/security-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"security-system.js","sourceRoot":"","sources":["../../../src/homekit/adapters/security-system.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ const COVERAGE_BY_ROW = new Map(Object.entries(ADAPTER_REGISTRY).flatMap(([adapt
8
8
  {
9
9
  adapter,
10
10
  ...(requiresProduct
11
- ? { productEvidence: `@mega-yfue/eufy-sdk DeviceManifest.model ${requiresProduct.model}` }
11
+ ? { productEvidence: `@mega-yfue/eufy-sdk DeviceManifest.model ${requiresProduct.models.join(', ')}` }
12
12
  : {}),
13
13
  },
14
14
  ]);
@@ -19,8 +19,6 @@ const BLOCKED = new Set([
19
19
  'leak.leakDetected.read',
20
20
  'smoke.smokeDetected.read',
21
21
  'co.coDetected.read',
22
- 'lock.locked.read',
23
- 'lock.locked.persistent-operation',
24
22
  'keypad.batteryLow.read',
25
23
  'keypad.charging.read',
26
24
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"coverage-matrix.js","sourceRoot":"","sources":["../../src/homekit/coverage-matrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coverage-matrix.js","sourceRoot":"","sources":["../../src/homekit/coverage-matrix.ts"],"names":[],"mappings":"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"}
@@ -121,11 +121,15 @@ export class HomeKitReconciler {
121
121
  ...(this.mediaBudget ? { mediaBudget: this.mediaBudget } : {}),
122
122
  ...(this.stationLiveSessions ? { stationLiveSessions: this.stationLiveSessions } : {}),
123
123
  audioEnabled: this.entityPreferences[serial]?.audio !== false,
124
+ securitySystemEnabled: this.entityPreferences[serial]?.securitySystem !== false,
124
125
  snapshotMode: this.entityPreferences[serial]?.snapshotMode ?? 'Refresh',
126
+ ...(this.entityPreferences[serial]?.armingModes === undefined
127
+ ? {}
128
+ : { armingModes: this.entityPreferences[serial].armingModes }),
125
129
  availability: () => this.source.currentAvailability?.(serial),
126
130
  diagnose: (diagnostic) => this.setAdapterDiagnostic(serial, key, diagnostic),
127
131
  observed: (code) => this.clearAdapterDiagnostics(serial, code, key),
128
- trace: (trace) => this.trace?.({ adapter: key, ...trace }),
132
+ trace: (trace) => this.trace?.({ adapter: key, serial, ...trace }),
129
133
  persist: () => this.store.update([accessory]),
130
134
  });
131
135
  if (handle) {
@@ -215,7 +219,7 @@ export class HomeKitReconciler {
215
219
  for (const [adapter, handle] of this.attachedAdapters.get(event.deviceSn) ?? []) {
216
220
  const result = handle.event?.(event);
217
221
  if (result) {
218
- this.trace?.({ adapter, ...result });
222
+ this.trace?.({ adapter, serial: event.deviceSn, ...result });
219
223
  }
220
224
  }
221
225
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../../src/homekit/reconciler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../../src/homekit/reconciler.ts"],"names":[],"mappings":"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"}