homebridge-eufy-security 2.2.20 → 2.2.21

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 (35) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/accessories/BaseAccessory.d.ts +6 -3
  3. package/dist/accessories/BaseAccessory.d.ts.map +1 -1
  4. package/dist/accessories/BaseAccessory.js +30 -3
  5. package/dist/accessories/BaseAccessory.js.map +1 -1
  6. package/dist/accessories/CameraAccessory.d.ts +7 -4
  7. package/dist/accessories/CameraAccessory.d.ts.map +1 -1
  8. package/dist/accessories/CameraAccessory.js +63 -54
  9. package/dist/accessories/CameraAccessory.js.map +1 -1
  10. package/dist/accessories/Device.d.ts.map +1 -1
  11. package/dist/accessories/Device.js +27 -16
  12. package/dist/accessories/Device.js.map +1 -1
  13. package/dist/accessories/EntrySensorAccessory.d.ts.map +1 -1
  14. package/dist/accessories/EntrySensorAccessory.js +1 -0
  15. package/dist/accessories/EntrySensorAccessory.js.map +1 -1
  16. package/dist/accessories/LockAccessory.d.ts.map +1 -1
  17. package/dist/accessories/LockAccessory.js +1 -0
  18. package/dist/accessories/LockAccessory.js.map +1 -1
  19. package/dist/accessories/MotionSensorAccessory.d.ts.map +1 -1
  20. package/dist/accessories/MotionSensorAccessory.js +1 -0
  21. package/dist/accessories/MotionSensorAccessory.js.map +1 -1
  22. package/dist/accessories/StationAccessory.d.ts +36 -4
  23. package/dist/accessories/StationAccessory.d.ts.map +1 -1
  24. package/dist/accessories/StationAccessory.js +126 -105
  25. package/dist/accessories/StationAccessory.js.map +1 -1
  26. package/dist/controller/streamingDelegate.d.ts +1 -0
  27. package/dist/controller/streamingDelegate.d.ts.map +1 -1
  28. package/dist/controller/streamingDelegate.js +14 -13
  29. package/dist/controller/streamingDelegate.js.map +1 -1
  30. package/homebridge-ui/public/index.html +2 -2
  31. package/homebridge-ui/public/main.3b69a8460d1dfbfb.js +1 -0
  32. package/homebridge-ui/public/styles.68268876f5e65c91.css +5 -0
  33. package/package.json +23 -25
  34. package/homebridge-ui/public/main.f64a704346e974c2.js +0 -1
  35. package/homebridge-ui/public/styles.021488511c20c432.css +0 -5
package/CHANGELOG.md CHANGED
@@ -2,6 +2,21 @@
2
2
 
3
3
  You can find the complete detailled changelog for every beta release [here](https://github.com/homebridge-eufy-security/plugin/releases).
4
4
 
5
+ ### Changelog 2.2.21
6
+
7
+ #### Added
8
+ - Unlocked the app-guard-modes-mapping component in the UI for station configuration options.
9
+ - Added helper functions for better configuration value selection in StationAccessory.ts.
10
+ - Modified and improved the convertHKtoEufy and convertEufytoHK methods to throw errors on invalid mode conversion.
11
+
12
+ #### Updated
13
+ - Update libs and dep
14
+ - Better handling push notification for Doorbell ring events
15
+ - Refactoring the code
16
+
17
+ #### Fixed
18
+ - Pruning characteristics wasn't correctly handled
19
+
5
20
  ### Changelog 2.2.20
6
21
 
7
22
  #### Added
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import { PlatformAccessory, Characteristic, Service, WithUUID } from 'homebridge';
2
+ import { PlatformAccessory, Characteristic, CharacteristicValue, Service, WithUUID } from 'homebridge';
3
3
  import { EufySecurityPlatform } from '../platform';
4
4
  import { DeviceEvents, PropertyValue, StationEvents } from 'eufy-security-client';
5
5
  import { EventEmitter } from 'events';
@@ -17,7 +17,7 @@ export declare abstract class BaseAccessory extends EventEmitter {
17
17
  private logPropertyKeys;
18
18
  protected handleRawPropertyChange(device: any, type: number, value: string): void;
19
19
  protected handlePropertyChange(device: any, name: string, value: PropertyValue): void;
20
- registerCharacteristic({ characteristicType, serviceType, getValue, setValue, onValue, onSimpleValue, onMultipleValue, name, serviceSubType, }: {
20
+ protected registerCharacteristic({ characteristicType, serviceType, getValue, setValue, onValue, onSimpleValue, onMultipleValue, name, serviceSubType, setValueDebounceTime, }: {
21
21
  characteristicType: CharacteristicType;
22
22
  serviceType: ServiceType;
23
23
  serviceSubType?: string;
@@ -27,8 +27,11 @@ export declare abstract class BaseAccessory extends EventEmitter {
27
27
  onValue?: (service: Service, characteristic: Characteristic) => any;
28
28
  onSimpleValue?: any;
29
29
  onMultipleValue?: (keyof DeviceEvents | StationEvents)[];
30
+ setValueDebounceTime?: number;
30
31
  }): void;
31
32
  protected getService(serviceType: ServiceType, name?: string, subType?: string): Service;
32
- pruneUnusedServices(): void;
33
+ protected pruneUnusedServices(): void;
34
+ protected handleDummyEventGet(serviceName: string): Promise<CharacteristicValue>;
35
+ protected handleDummyEventSet(serviceName: string, value: CharacteristicValue): void;
33
36
  }
34
37
  //# sourceMappingURL=BaseAccessory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/BaseAccessory.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EAEd,OAAO,EACP,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAc,YAAY,EAAE,aAAa,EAAmB,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAStC,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IAAE,QAAO,cAAc,CAAA;CAAE,CAAC,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,OAAO,CAAC,GAAG,OAAO,CAAC;AAE7D,8BAAsB,aAAc,SAAQ,YAAY;IAMpD,SAAS,CAAC,QAAQ,EAAE,oBAAoB;IACxC,SAAS,CAAC,SAAS,EAAE,iBAAiB;IAEtC,SAAS,CAAC,MAAM,EAAE,GAAG;IAPvB,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,CAAM;IACxC,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC;gBAGT,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAE5B,MAAM,EAAE,GAAG;IAwDvB,OAAO,CAAC,eAAe;IAOvB,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKjF,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI;IAIrF,sBAAsB,CAAC,EACrB,kBAAkB,EAClB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,aAAa,EACb,eAAe,EACf,IAAI,EACJ,cAAc,GACf,EAAE;QACD,kBAAkB,EAAE,kBAAkB,CAAC;QACvC,WAAW,EAAE,WAAW,CAAC;QACzB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,GAAG,CAAC;QAElF,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,GAAG,CAAC;QAEnF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,KAAK,GAAG,CAAC;QAEpE,aAAa,CAAC,EAAE,GAAG,CAAC;QACpB,eAAe,CAAC,EAAE,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,EAAE,CAAC;KAC1D;IAiDD,SAAS,CAAC,UAAU,CAClB,WAAW,EAAE,WAAW,EACxB,IAAI,SAA6B,EACjC,OAAO,CAAC,EAAE,MAAM,GACf,OAAO;IA4BV,mBAAmB;CAgBpB"}
1
+ {"version":3,"file":"BaseAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/BaseAccessory.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAc,YAAY,EAAE,aAAa,EAAmB,aAAa,EAAgB,MAAM,sBAAsB,CAAC;AAC7H,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAStC,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IAAE,QAAO,cAAc,CAAA;CAAE,CAAC,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,OAAO,CAAC,GAAG,OAAO,CAAC;AAE7D,8BAAsB,aAAc,SAAQ,YAAY;IAMpD,SAAS,CAAC,QAAQ,EAAE,oBAAoB;IACxC,SAAS,CAAC,SAAS,EAAE,iBAAiB;IAEtC,SAAS,CAAC,MAAM,EAAE,GAAG;IAPvB,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,CAAM;IACxC,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC;gBAGT,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAE5B,MAAM,EAAE,GAAG;IAwDvB,OAAO,CAAC,eAAe;IAOvB,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAKjF,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI;IAIrF,SAAS,CAAC,sBAAsB,CAAC,EAC/B,kBAAkB,EAClB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,aAAa,EACb,eAAe,EACf,IAAI,EACJ,cAAc,EACd,oBAAwB,GACzB,EAAE;QACD,kBAAkB,EAAE,kBAAkB,CAAC;QACvC,WAAW,EAAE,WAAW,CAAC;QACzB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,GAAG,CAAC;QAElF,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,GAAG,CAAC;QAEnF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,KAAK,GAAG,CAAC;QAEpE,aAAa,CAAC,EAAE,GAAG,CAAC;QACpB,eAAe,CAAC,EAAE,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,EAAE,CAAC;QACzD,oBAAoB,CAAC,EAAE,MAAM,CAAC;KAC/B;IAgED,SAAS,CAAC,UAAU,CAClB,WAAW,EAAE,WAAW,EACxB,IAAI,SAA6B,EACjC,OAAO,CAAC,EAAE,MAAM,GACf,OAAO;IA4BV,SAAS,CAAC,mBAAmB;IAiB7B,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAgBhF,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB;CAG9E"}
@@ -72,11 +72,11 @@ class BaseAccessory extends events_1.EventEmitter {
72
72
  handlePropertyChange(device, name, value) {
73
73
  this.platform.log.debug(`${this.accessory.displayName} Property Changes: ${name} ${value}`);
74
74
  }
75
- registerCharacteristic({ characteristicType, serviceType, getValue, setValue, onValue, onSimpleValue, onMultipleValue, name, serviceSubType, }) {
75
+ registerCharacteristic({ characteristicType, serviceType, getValue, setValue, onValue, onSimpleValue, onMultipleValue, name, serviceSubType, setValueDebounceTime = 0, }) {
76
76
  const service = this.getService(serviceType, name, serviceSubType);
77
77
  const characteristic = service.getCharacteristic(characteristicType);
78
78
  // eslint-disable-next-line max-len
79
- this.platform.log.debug(`${this.accessory.displayName} REGISTER SERVICE '${serviceType.name} / ${characteristic.displayName}': ${characteristic.UUID}`);
79
+ this.platform.log.debug(`${this.accessory.displayName} REGISTER CHARACTERISTIC '${serviceType.name} (${service.UUID}) / ${characteristic.displayName} (${characteristic.UUID})`);
80
80
  if (getValue) {
81
81
  characteristic.onGet(async (data) => {
82
82
  const value = getValue(data, characteristic, service);
@@ -84,7 +84,19 @@ class BaseAccessory extends events_1.EventEmitter {
84
84
  return value;
85
85
  });
86
86
  }
87
- if (setValue) {
87
+ if (setValue && setValueDebounceTime) {
88
+ let timeoutId = null;
89
+ characteristic.onSet(async (value) => {
90
+ if (timeoutId) {
91
+ clearTimeout(timeoutId);
92
+ }
93
+ timeoutId = setTimeout(() => {
94
+ timeoutId = null;
95
+ setValue(value, characteristic, service);
96
+ }, setValueDebounceTime);
97
+ });
98
+ }
99
+ else if (setValue) {
88
100
  characteristic.onSet(async (value) => {
89
101
  Promise.resolve(setValue(value, characteristic, service));
90
102
  });
@@ -143,6 +155,21 @@ class BaseAccessory extends events_1.EventEmitter {
143
155
  }
144
156
  });
145
157
  }
158
+ handleDummyEventGet(serviceName) {
159
+ const characteristicValues = {
160
+ 'EventSnapshotsActive': this.platform.Characteristic.EventSnapshotsActive.DISABLE,
161
+ 'HomeKitCameraActive': this.platform.Characteristic.HomeKitCameraActive.OFF,
162
+ };
163
+ const currentValue = characteristicValues[serviceName];
164
+ if (currentValue === undefined) {
165
+ throw new Error(`Invalid serviceName: ${serviceName}`);
166
+ }
167
+ this.platform.log.debug(`${this.accessory.displayName} IGNORE GET ${serviceName}: ${currentValue}`);
168
+ return Promise.resolve(currentValue);
169
+ }
170
+ handleDummyEventSet(serviceName, value) {
171
+ this.platform.log.debug(`${this.accessory.displayName} IGNORE SET ${serviceName}: ${value}`);
172
+ }
146
173
  }
147
174
  exports.BaseAccessory = BaseAccessory;
148
175
  //# sourceMappingURL=BaseAccessory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/BaseAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/BaseAccessory.ts"],"names":[],"mappings":"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"}
@@ -14,13 +14,14 @@ export declare class CameraAccessory extends DeviceAccessory {
14
14
  isEnabled: boolean;
15
15
  timestamp: number;
16
16
  };
17
- private ring_triggered;
17
+ private notificationTimeout;
18
18
  readonly cameraConfig: CameraConfig;
19
19
  protected streamingDelegate: StreamingDelegate | null;
20
20
  private eventTypesToHandle;
21
21
  constructor(platform: EufySecurityPlatform, accessory: PlatformAccessory, device: Camera);
22
22
  private setupCamera;
23
23
  private setupButtonService;
24
+ protected setupSwitchService(serviceName: string, serviceType: 'switch' | 'lightbulb' | 'outlet', propertyName: PropertyName): void;
24
25
  private setupEnableButton;
25
26
  private setupMotionButton;
26
27
  private setupLightButton;
@@ -28,11 +29,13 @@ export declare class CameraAccessory extends DeviceAccessory {
28
29
  private getCameraConfig;
29
30
  private cameraFunction;
30
31
  private setupMotionFunction;
31
- private setupSwitchService;
32
32
  protected getCameraPropertyValue(characteristic: any, propertyName: PropertyName): CharacteristicValue;
33
33
  protected setCameraPropertyValue(characteristic: any, propertyName: PropertyName, value: CharacteristicValue): Promise<void>;
34
- handleDummyEventGet(serviceName: string): Promise<CharacteristicValue>;
35
- handleDummyEventSet(serviceName: string, value: CharacteristicValue): void;
34
+ /**
35
+ * Handle push notifications for a doorbell device.
36
+ * Mute subsequent notifications within a timeout period.
37
+ * @param characteristic - The Characteristic to update for HomeKit.
38
+ */
36
39
  private onDeviceRingsPushNotification;
37
40
  }
38
41
  //# sourceMappingURL=CameraAccessory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CameraAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/CameraAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAkB,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3C,OAAO,EAAE,MAAM,EAAwB,YAAY,EAAe,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAe,MAAM,sBAAsB,CAAC;AAEjE;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,eAAe;IAGlD,SAAS,CAAC,YAAY,EAAE;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,OAAO,CAAC,cAAc,CAAkB;IAExC,SAAgB,YAAY,EAAE,YAAY,CAAC;IAE3C,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAG7D,OAAO,CAAC,kBAAkB,CASxB;gBAGA,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM;IA+BhB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,kBAAkB;YAsBZ,iBAAiB;YAIjB,iBAAiB;YAIjB,gBAAgB;YAIhB,gBAAgB;IAI9B,OAAO,CAAC,eAAe;IAqCvB,OAAO,CAAC,cAAc;IA+FtB,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,kBAAkB;IAsB1B,SAAS,CAAC,sBAAsB,CAAC,cAAc,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,GAAG,mBAAmB;cAqCtF,sBAAsB,CAAC,cAAc,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,mBAAmB;IAyBlH,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAgBtE,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB;IAMnE,OAAO,CAAC,6BAA6B;CAatC"}
1
+ {"version":3,"file":"CameraAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/CameraAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAkB,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3C,OAAO,EAAE,MAAM,EAAwB,YAAY,EAAe,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAe,MAAM,sBAAsB,CAAC;AAEjE;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,eAAe;IAGlD,SAAS,CAAC,YAAY,EAAE;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,OAAO,CAAC,mBAAmB,CAA+B;IAE1D,SAAgB,YAAY,EAAE,YAAY,CAAC;IAE3C,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAG7D,OAAO,CAAC,kBAAkB,CASxB;gBAGA,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM;IA+BhB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,kBAAkB;IAsB1B,SAAS,CAAC,kBAAkB,CAC1B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,QAAQ,GAAG,WAAW,GAAG,QAAQ,EAC9C,YAAY,EAAE,YAAY;YAkBd,iBAAiB;YAIjB,iBAAiB;YAIjB,gBAAgB;YAIhB,gBAAgB;IAI9B,OAAO,CAAC,eAAe;IAqCvB,OAAO,CAAC,cAAc;IAmItB,OAAO,CAAC,mBAAmB;IAyB3B,SAAS,CAAC,sBAAsB,CAAC,cAAc,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,GAAG,mBAAmB;cAqCtF,sBAAsB,CAAC,cAAc,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,mBAAmB;IAyBlH;;;;OAIG;IACH,OAAO,CAAC,6BAA6B;CAYtC"}
@@ -14,7 +14,7 @@ const streamingDelegate_1 = require("../controller/streamingDelegate");
14
14
  class CameraAccessory extends Device_1.DeviceAccessory {
15
15
  constructor(platform, accessory, device) {
16
16
  super(platform, accessory, device);
17
- this.ring_triggered = false;
17
+ this.notificationTimeout = null;
18
18
  this.streamingDelegate = null;
19
19
  // List of event types
20
20
  this.eventTypesToHandle = [
@@ -29,25 +29,24 @@ class CameraAccessory extends Device_1.DeviceAccessory {
29
29
  ];
30
30
  this.cameraConfig = {};
31
31
  this.cameraStatus = { isEnabled: false, timestamp: 0 }; // Initialize the cameraStatus object
32
- this.platform.log.debug(this.accessory.displayName, 'Constructed Camera');
32
+ this.platform.log.debug(`${this.accessory.displayName} Constructed Camera`);
33
33
  this.cameraConfig = this.getCameraConfig();
34
34
  this.platform.log.debug(`${this.accessory.displayName} config is: ${JSON.stringify(this.cameraConfig)}`);
35
- this.platform.log.debug(`${this.accessory.displayName} enabled?: ${this.cameraConfig.enableCamera}`);
36
- this.platform.log.debug(`${this.accessory.displayName} doorbell?: ${this.device.isDoorbell()}`);
37
35
  if (this.cameraConfig.enableCamera || this.device.isDoorbell()) {
38
- this.platform.log.debug(this.accessory.displayName, 'has a camera');
36
+ this.platform.log.debug(`${this.accessory.displayName} has a camera`);
39
37
  this.setupCamera();
40
38
  this.setupChimeButton();
41
39
  this.initSensorService(this.platform.Service.Battery);
42
40
  }
43
41
  else {
44
- this.platform.log.debug(this.accessory.displayName, 'has a motion sensor.');
42
+ this.platform.log.debug(`${this.accessory.displayName} has a motion sensor`);
45
43
  this.setupMotionFunction();
46
44
  this.initSensorService(this.platform.Service.MotionSensor);
47
45
  }
48
46
  this.setupEnableButton();
49
47
  this.setupMotionButton();
50
48
  this.setupLightButton();
49
+ this.pruneUnusedServices();
51
50
  }
52
51
  setupCamera() {
53
52
  try {
@@ -78,6 +77,21 @@ class CameraAccessory extends Device_1.DeviceAccessory {
78
77
  throw Error;
79
78
  }
80
79
  }
80
+ setupSwitchService(serviceName, serviceType, propertyName) {
81
+ const platformServiceMapping = {
82
+ switch: this.platform.Service.Switch,
83
+ lightbulb: this.platform.Service.Lightbulb,
84
+ outlet: this.platform.Service.Outlet,
85
+ };
86
+ this.registerCharacteristic({
87
+ serviceType: platformServiceMapping[serviceType] || this.platform.Service.Switch,
88
+ characteristicType: this.platform.Characteristic.On,
89
+ name: this.accessory.displayName + '_' + serviceName,
90
+ serviceSubType: serviceName,
91
+ getValue: (data, characteristic) => this.getCameraPropertyValue(characteristic, propertyName),
92
+ setValue: (value, characteristic) => this.setCameraPropertyValue(characteristic, propertyName, value),
93
+ });
94
+ }
81
95
  async setupEnableButton() {
82
96
  this.setupButtonService('Enabled', this.cameraConfig.enableButton, eufy_security_client_1.PropertyName.DeviceEnabled, 'switch');
83
97
  }
@@ -131,9 +145,7 @@ class CameraAccessory extends Device_1.DeviceAccessory {
131
145
  this.registerCharacteristic({
132
146
  serviceType: this.platform.Service.CameraOperatingMode,
133
147
  characteristicType: this.platform.Characteristic.HomeKitCameraActive,
134
- // eslint-disable-next-line max-len
135
148
  getValue: (data, characteristic) => this.getCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceEnabled),
136
- // eslint-disable-next-line max-len
137
149
  setValue: (value, characteristic) => this.setCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceEnabled, value),
138
150
  });
139
151
  // Fire snapshot when motion detected
@@ -156,7 +168,6 @@ class CameraAccessory extends Device_1.DeviceAccessory {
156
168
  this.registerCharacteristic({
157
169
  serviceType: this.platform.Service.CameraOperatingMode,
158
170
  characteristicType: this.platform.Characteristic.ManuallyDisabled,
159
- // eslint-disable-next-line max-len
160
171
  getValue: (data, characteristic) => this.getCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceEnabled),
161
172
  });
162
173
  }
@@ -164,9 +175,7 @@ class CameraAccessory extends Device_1.DeviceAccessory {
164
175
  this.registerCharacteristic({
165
176
  serviceType: this.platform.Service.CameraOperatingMode,
166
177
  characteristicType: this.platform.Characteristic.CameraOperatingModeIndicator,
167
- // eslint-disable-next-line max-len
168
178
  getValue: (data, characteristic) => this.getCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceStatusLed),
169
- // eslint-disable-next-line max-len
170
179
  setValue: (value, characteristic) => this.setCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceStatusLed, value),
171
180
  });
172
181
  }
@@ -174,9 +183,7 @@ class CameraAccessory extends Device_1.DeviceAccessory {
174
183
  this.registerCharacteristic({
175
184
  serviceType: this.platform.Service.CameraOperatingMode,
176
185
  characteristicType: this.platform.Characteristic.NightVision,
177
- // eslint-disable-next-line max-len
178
186
  getValue: (data, characteristic) => this.getCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceNightvision),
179
- // eslint-disable-next-line max-len
180
187
  setValue: (value, characteristic) => this.setCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceNightvision, value),
181
188
  });
182
189
  }
@@ -184,17 +191,48 @@ class CameraAccessory extends Device_1.DeviceAccessory {
184
191
  this.registerCharacteristic({
185
192
  serviceType: this.platform.Service.CameraOperatingMode,
186
193
  characteristicType: this.platform.Characteristic.NightVision,
187
- // eslint-disable-next-line max-len
188
194
  getValue: (data, characteristic) => this.getCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceAutoNightvision),
189
- // eslint-disable-next-line max-len
190
195
  setValue: (value, characteristic) => this.setCameraPropertyValue(characteristic, eufy_security_client_1.PropertyName.DeviceAutoNightvision, value),
191
196
  });
192
197
  }
198
+ // if (this.device.hasProperty('speaker')) {
199
+ // this.registerCharacteristic({
200
+ // serviceType: this.platform.Service.Speaker,
201
+ // characteristicType: this.platform.Characteristic.Mute,
202
+ // serviceSubType: 'speaker_mute',
203
+ // getValue: (data, characteristic) =>
204
+ // this.getCameraPropertyValue(characteristic, PropertyName.DeviceSpeaker),
205
+ // setValue: (value, characteristic) =>
206
+ // this.setCameraPropertyValue(characteristic, PropertyName.DeviceSpeaker, value),
207
+ // });
208
+ // }
209
+ // if (this.device.hasProperty('speakerVolume')) {
210
+ // this.registerCharacteristic({
211
+ // serviceType: this.platform.Service.Speaker,
212
+ // characteristicType: this.platform.Characteristic.Volume,
213
+ // serviceSubType: 'speaker_volume',
214
+ // getValue: (data, characteristic) =>
215
+ // this.getCameraPropertyValue(characteristic, PropertyName.DeviceSpeakerVolume),
216
+ // setValue: (value, characteristic) =>
217
+ // this.setCameraPropertyValue(characteristic, PropertyName.DeviceSpeakerVolume, value),
218
+ // });
219
+ // }
220
+ // if (this.device.hasProperty('microphone')) {
221
+ // this.registerCharacteristic({
222
+ // serviceType: this.platform.Service.Microphone,
223
+ // characteristicType: this.platform.Characteristic.Mute,
224
+ // serviceSubType: 'mic_mute',
225
+ // getValue: (data, characteristic) =>
226
+ // this.getCameraPropertyValue(characteristic, PropertyName.DeviceMicrophone),
227
+ // setValue: (value, characteristic) =>
228
+ // this.setCameraPropertyValue(characteristic, PropertyName.DeviceMicrophone, value),
229
+ // });
230
+ // }
193
231
  if (this.device.isDoorbell()) {
194
232
  this.registerCharacteristic({
195
233
  serviceType: this.platform.Service.Doorbell,
196
234
  characteristicType: this.platform.Characteristic.ProgrammableSwitchEvent,
197
- getValue: (data) => this.handleDummyEventGet('EventSnapshotsActive'),
235
+ getValue: () => this.handleDummyEventGet('EventSnapshotsActive'),
198
236
  onValue: (service, characteristic) => {
199
237
  this.device.on('rings', (device, state) => this.onDeviceRingsPushNotification(characteristic));
200
238
  },
@@ -225,21 +263,6 @@ class CameraAccessory extends Device_1.DeviceAccessory {
225
263
  },
226
264
  });
227
265
  }
228
- setupSwitchService(serviceName, serviceType, propertyName) {
229
- const platformServiceMapping = {
230
- switch: this.platform.Service.Switch,
231
- lightbulb: this.platform.Service.Lightbulb,
232
- outlet: this.platform.Service.Outlet,
233
- };
234
- this.registerCharacteristic({
235
- serviceType: platformServiceMapping[serviceType] || this.platform.Service.Switch,
236
- characteristicType: this.platform.Characteristic.On,
237
- name: this.accessory.displayName + '_' + serviceName,
238
- serviceSubType: serviceName,
239
- getValue: (data, characteristic) => this.getCameraPropertyValue(characteristic, propertyName),
240
- setValue: (value, characteristic) => this.setCameraPropertyValue(characteristic, propertyName, value),
241
- });
242
- }
243
266
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
244
267
  getCameraPropertyValue(characteristic, propertyName) {
245
268
  try {
@@ -289,34 +312,20 @@ class CameraAccessory extends Device_1.DeviceAccessory {
289
312
  this.platform.log.debug(`${this.accessory.displayName} Error setting '${characteristic.displayName}' ${propertyName}: ${error}`);
290
313
  }
291
314
  }
292
- handleDummyEventGet(serviceName) {
293
- const characteristicValues = {
294
- 'EventSnapshotsActive': this.platform.Characteristic.EventSnapshotsActive.DISABLE,
295
- 'HomeKitCameraActive': this.platform.Characteristic.HomeKitCameraActive.OFF,
296
- };
297
- const currentValue = characteristicValues[serviceName];
298
- if (currentValue === undefined) {
299
- throw new Error(`Invalid serviceName: ${serviceName}`);
300
- }
301
- this.platform.log.debug(`${this.accessory.displayName} GET ${serviceName}: ${currentValue}`);
302
- return Promise.resolve(currentValue);
303
- }
304
- handleDummyEventSet(serviceName, value) {
305
- this.platform.log.debug(`${this.accessory.displayName} SET ${serviceName}: ${value}`);
306
- }
307
- // We receive 2 push when Doorbell ring, mute the second by checking if we already send
308
- // the event to HK then reset the marker when 2nd times occurs
315
+ /**
316
+ * Handle push notifications for a doorbell device.
317
+ * Mute subsequent notifications within a timeout period.
318
+ * @param characteristic - The Characteristic to update for HomeKit.
319
+ */
309
320
  onDeviceRingsPushNotification(characteristic) {
310
- if (!this.ring_triggered) {
311
- this.ring_triggered = true;
312
- this.platform.log.debug(this.accessory.displayName, 'DoorBell ringing');
321
+ if (!this.notificationTimeout) {
322
+ this.platform.log.debug(`${this.accessory.displayName} DoorBell ringing`);
313
323
  if (this.cameraConfig.useCachedLocalLivestream && this.streamingDelegate) {
314
324
  this.streamingDelegate.prepareCachedStream();
315
325
  }
316
326
  characteristic.updateValue(this.platform.Characteristic.ProgrammableSwitchEvent.SINGLE_PRESS);
317
- }
318
- else {
319
- this.ring_triggered = false;
327
+ // Set a new timeout for muting subsequent notifications
328
+ this.notificationTimeout = setTimeout(() => { }, 3000);
320
329
  }
321
330
  }
322
331
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CameraAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/CameraAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CameraAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/CameraAccessory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/Device.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAS5D,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IAAE,QAAO,cAAc,CAAA;CAAE,CAAC,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,OAAO,CAAC,GAAG,OAAO,CAAC;AAE7D,8BAAsB,eAAgB,SAAQ,aAAa;gBAGvD,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM;IAOhB;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,mBAAmB;cAWnF,gBAAgB,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO;IAI3E,SAAS,CAAC,kBAAkB,CAC1B,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,mBAAmB,EAC1B,OAAO,CAAC,EAAE,MAAM,GACf,IAAI;IAOP,iBAAiB,CAAC,WAAW,EAAE,WAAW;CAmB3C"}
1
+ {"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/Device.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAS5D,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IAAE,QAAO,cAAc,CAAA;CAAE,CAAC,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,OAAO,CAAC,GAAG,OAAO,CAAC;AAE7D,8BAAsB,eAAgB,SAAQ,aAAa;gBAGvD,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM;IAKhB;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,mBAAmB;cAWnF,gBAAgB,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO;IAI3E,SAAS,CAAC,kBAAkB,CAC1B,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,mBAAmB,EAC1B,OAAO,CAAC,EAAE,MAAM,GACf,IAAI;IAOP,iBAAiB,CAAC,WAAW,EAAE,WAAW;CAiC3C"}
@@ -10,7 +10,6 @@ function isServiceInstance(serviceType) {
10
10
  class DeviceAccessory extends BaseAccessory_1.BaseAccessory {
11
11
  constructor(platform, accessory, device) {
12
12
  super(platform, accessory, device);
13
- this.pruneUnusedServices();
14
13
  }
15
14
  /**
16
15
  * Get the current value of the "propertyName" characteristic
@@ -36,24 +35,36 @@ class DeviceAccessory extends BaseAccessory_1.BaseAccessory {
36
35
  .updateValue(value);
37
36
  }
38
37
  initSensorService(serviceType) {
39
- if (this.device.hasProperty('battery')) {
40
- this.registerCharacteristic({
41
- serviceType: serviceType,
38
+ const propertiesToRegister = [
39
+ {
40
+ property: 'battery',
42
41
  characteristicType: this.platform.Characteristic.BatteryLevel,
43
- getValue: (data) => this.device.getPropertyValue(eufy_security_client_1.PropertyName.DeviceBattery),
44
- });
45
- }
46
- else if (this.device.hasProperty('batteryLow')) {
47
- this.registerCharacteristic({
48
- serviceType: serviceType,
42
+ propertyName: eufy_security_client_1.PropertyName.DeviceBattery,
43
+ onSimpleValue: null,
44
+ },
45
+ {
46
+ property: 'batteryLow',
49
47
  characteristicType: this.platform.Characteristic.StatusLowBattery,
50
- getValue: (data) => this.device.getPropertyValue(eufy_security_client_1.PropertyName.DeviceBatteryLow),
48
+ propertyName: eufy_security_client_1.PropertyName.DeviceBatteryLow,
51
49
  onSimpleValue: 'low battery',
52
- });
53
- }
54
- else {
55
- this.platform.log.debug(`${this.accessory.displayName} has no battery`);
56
- }
50
+ },
51
+ {
52
+ property: 'batteryIsCharging',
53
+ characteristicType: this.platform.Characteristic.ChargingState,
54
+ propertyName: eufy_security_client_1.PropertyName.DeviceBatteryIsCharging,
55
+ onSimpleValue: null,
56
+ },
57
+ ];
58
+ propertiesToRegister.forEach((propertyConfig) => {
59
+ if (this.device.hasProperty(propertyConfig.property)) {
60
+ this.registerCharacteristic({
61
+ serviceType: serviceType,
62
+ characteristicType: propertyConfig.characteristicType,
63
+ getValue: (data) => this.device.getPropertyValue(propertyConfig.propertyName),
64
+ onSimpleValue: propertyConfig.onSimpleValue,
65
+ });
66
+ }
67
+ });
57
68
  }
58
69
  }
59
70
  exports.DeviceAccessory = DeviceAccessory;
@@ -1 +1 @@
1
- {"version":3,"file":"Device.js","sourceRoot":"","sources":["../../src/plugin/accessories/Device.ts"],"names":[],"mappings":";;;AAQA,mDAAgD;AAChD,+DAA4D;AAE5D,SAAS,iBAAiB,CACxB,WAA+C;IAE/C,2BAA2B;IAC3B,OAAO,OAAQ,WAAmB,KAAK,QAAQ,CAAC;AAClD,CAAC;AAKD,MAAsB,eAAgB,SAAQ,6BAAa;IAEzD,YACE,QAA8B,EAC9B,SAA4B,EAC5B,MAAc;QAEd,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAEnC,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACO,gBAAgB,CAAC,cAAsB,EAAE,YAA0B;QAC3E,IAAI;YACF,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YACzD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,SAAS,cAAc,KAAK,YAAY,KAAK,KAAK,EAAE,CAAC,CAAC;YAC3G,OAAO,KAA4B,CAAC;SACrC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,mBAAmB,cAAc,KAAK,YAAY,KAAK,KAAK,EAAE,CAAC,CAAC;YACrH,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,YAA0B,EAAE,KAAc;QACzE,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IACjF,CAAC;IAES,kBAAkB,CAC1B,kBAAsC,EACtC,WAAwB,EACxB,KAA0B,EAC1B,OAAgB;QAEhB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,QAAQ,WAAW,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC;QAC5F,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;aACzB,iBAAiB,CAAC,kBAAkB,CAAC;aACrC,WAAW,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,iBAAiB,CAAC,WAAwB;QAExC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YACtC,IAAI,CAAC,sBAAsB,CAAC;gBAC1B,WAAW,EAAE,WAAW;gBACxB,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY;gBAC7D,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,mCAAY,CAAC,aAAa,CAAC;aAC7E,CAAC,CAAC;SACJ;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;YAChD,IAAI,CAAC,sBAAsB,CAAC;gBAC1B,WAAW,EAAE,WAAW;gBACxB,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB;gBACjE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,mCAAY,CAAC,gBAAgB,CAAC;gBAC/E,aAAa,EAAE,aAAa;aAC7B,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,iBAAiB,CAAC,CAAC;SACzE;IACH,CAAC;CACF;AA7DD,0CA6DC"}
1
+ {"version":3,"file":"Device.js","sourceRoot":"","sources":["../../src/plugin/accessories/Device.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EntrySensorAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/EntrySensorAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAgB,MAAM,sBAAsB,CAAC;AAEjE;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;gBAGrD,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,WAAW;CAqBtB"}
1
+ {"version":3,"file":"EntrySensorAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/EntrySensorAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAgB,MAAM,sBAAsB,CAAC;AAEjE;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;gBAGrD,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,WAAW;CAuBtB"}
@@ -26,6 +26,7 @@ class EntrySensorAccessory extends Device_1.DeviceAccessory {
26
26
  else {
27
27
  this.platform.log.error(`${this.accessory.displayName} has no sensorOpen`);
28
28
  }
29
+ this.pruneUnusedServices();
29
30
  }
30
31
  }
31
32
  exports.EntrySensorAccessory = EntrySensorAccessory;
@@ -1 +1 @@
1
- {"version":3,"file":"EntrySensorAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/EntrySensorAccessory.ts"],"names":[],"mappings":";;;AAEA,qCAA2C;AAE3C,6DAA6D;AAC7D,eAAe;AACf,+DAAiE;AAEjE;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,wBAAe;IAEvD,YACE,QAA8B,EAC9B,SAA4B,EAC5B,MAAmB;QAEnB,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAEnC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,2BAA2B,CAAC,CAAC;QAElF,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;YAEzC,IAAI,CAAC,sBAAsB,CAAC;gBAC1B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa;gBAChD,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB;gBACnE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,mCAAY,CAAC,gBAAgB,CAAC;gBAC/E,aAAa,EAAE,MAAM;aACtB,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;SAE7D;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,oBAAoB,CAAC,CAAC;SAC5E;IACH,CAAC;CACF;AA1BD,oDA0BC"}
1
+ {"version":3,"file":"EntrySensorAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/EntrySensorAccessory.ts"],"names":[],"mappings":";;;AAEA,qCAA2C;AAE3C,6DAA6D;AAC7D,eAAe;AACf,+DAAiE;AAEjE;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,wBAAe;IAEvD,YACE,QAA8B,EAC9B,SAA4B,EAC5B,MAAmB;QAEnB,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAEnC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,2BAA2B,CAAC,CAAC;QAElF,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;YAEzC,IAAI,CAAC,sBAAsB,CAAC;gBAC1B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa;gBAChD,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB;gBACnE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,mCAAY,CAAC,gBAAgB,CAAC;gBAC/E,aAAa,EAAE,MAAM;aACtB,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;SAE7D;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,oBAAoB,CAAC,CAAC;SAC5E;QAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;CACF;AA5BD,oDA4BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LockAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/LockAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3C,OAAO,EAAE,IAAI,EAAgB,MAAM,sBAAsB,CAAC;AAE1D;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,eAAe;gBAG9C,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,IAAI;IAiFd,OAAO,CAAC,aAAa;YAMP,kBAAkB;IAWhC,qBAAqB,CAAC,UAAU,KAAA;CAkCjC"}
1
+ {"version":3,"file":"LockAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/LockAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3C,OAAO,EAAE,IAAI,EAAgB,MAAM,sBAAsB,CAAC;AAE1D;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,eAAe;gBAG9C,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,IAAI;IAmFd,OAAO,CAAC,aAAa;YAMP,kBAAkB;IAWhC,qBAAqB,CAAC,UAAU,KAAA;CAkCjC"}
@@ -80,6 +80,7 @@ class LockAccessory extends Device_1.DeviceAccessory {
80
80
  else {
81
81
  this.platform.log.error(`${this.accessory.displayName} has no lock`);
82
82
  }
83
+ this.pruneUnusedServices();
83
84
  }
84
85
  getLockStatus() {
85
86
  const lockStatus = this.device.getPropertyValue(eufy_security_client_1.PropertyName.DeviceLocked);