homebridge-eufy-security 2.3.22 → 2.3.23

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 CHANGED
@@ -11,8 +11,9 @@ Homebridge plugin to control certain Eufy Security devices
11
11
  [![verified-by-homebridge](https://badgen.net/badge/homebridge/verified/purple)](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)
12
12
  [![npm](https://img.shields.io/npm/dt/homebridge-eufy-security)](https://www.npmjs.com/package/homebridge-eufy-security)
13
13
 
14
- [![npm](https://img.shields.io/npm/v/homebridge-eufy-security/rc?label=rc)](https://github.com/homebridge-eufy-security/plugin/wiki/RC---Beta-Version)
15
- [![npm](https://img.shields.io/npm/v/homebridge-eufy-security/beta?label=beta)](https://github.com/homebridge-eufy-security/plugin/wiki/RC---Beta-Version)
14
+ [![npm](https://img.shields.io/npm/v/homebridge-eufy-security/rc?label=rc)](https://github.com/homebridge-eufy-security/plugin/wiki/Special-Version-(BETA---RC---HKSV))
15
+ [![npm](https://img.shields.io/npm/v/homebridge-eufy-security/beta?label=beta)](https://github.com/homebridge-eufy-security/plugin/wiki/Special-Version-(BETA---RC---HKSV))
16
+ [![npm](https://img.shields.io/npm/v/homebridge-eufy-security/hksv?label=hksv)](https://github.com/homebridge-eufy-security/plugin/wiki/Special-Version-(BETA---RC---HKSV))
16
17
  [![Discord](https://img.shields.io/discord/432663330281226270?color=728ED5&logo=discord&label=hb-discord)](https://discord.com/channels/432663330281226270/876907345962229791)
17
18
 
18
19
  </span>
@@ -27,13 +28,13 @@ Homebridge plugin to control certain Eufy Security devices
27
28
 
28
29
  - To use this plugin, you will need to already have [Homebridge](https://homebridge.io) (at least v1.6.1) installed. Refer to the links for more information and installation instructions.
29
30
  - For configuration Homebridge UI is recommenend. If you have 2FA enabled it is mandatory.
30
- - It is recommended to use the current LTS version of Node, currently v18.
31
+ - It is recommended to use the latest LTS version within the **v20** branch of Node.js for optimal compatibility. Currently, this version is v20.11.0. Please note that using versions outside of this branch, including ~~**v20.11.1**~~, may result in compatibility issues. We advise against using Node.js versions beyond **v20.11.0** until compatibility with the plugin has been confirmed. If you encounter any issues, consider reverting to the recommended LTS version within the **v20** branch.
31
32
 
32
33
  #### Setup
33
34
  * [Installation](https://github.com/homebridge-eufy-security/plugin/wiki/Installation-and-Configuration#installation)
34
35
  * [Configuration](https://github.com/homebridge-eufy-security/plugin/wiki/Installation-and-Configuration#configuration)
35
36
  * [Bridged and Unbridged Mode](https://github.com/homebridge-eufy-security/plugin/wiki/Bridged-and-Unbridged-Mode-and-Problems)
36
- * [Beta Version](https://github.com/homebridge-eufy-security/plugin/wiki/Beta-Version)
37
+ * [Beta Version](https://github.com/homebridge-eufy-security/plugin/wiki/Special-Version-(BETA---RC---HKSV))
37
38
  * [Uninstallation](https://github.com/homebridge-eufy-security/plugin/wiki/Uninstallation)
38
39
 
39
40
  #### Features
package/dist/config.d.ts CHANGED
@@ -23,12 +23,10 @@ export interface EufySecurityPlatformConfig extends PlatformConfig {
23
23
  cameras: CameraConfig[];
24
24
  stations: StationConfig[];
25
25
  cleanCache: boolean;
26
- verboseFfmpeg: boolean;
27
- videoProcessor: string;
28
- videoEncoder: string;
29
26
  autoSyncStation: boolean;
30
27
  }
31
28
  export declare const DEFAULT_CONFIG_VALUES: {
29
+ deviceName: string;
32
30
  enableDetailedLogging: boolean;
33
31
  CameraMaxLivestreamDuration: number;
34
32
  pollingIntervalMinutes: number;
@@ -43,9 +41,7 @@ export declare const DEFAULT_CONFIG_VALUES: {
43
41
  cleanCache: boolean;
44
42
  ignoreMultipleDevicesWarning: boolean;
45
43
  syncStationModes: boolean;
46
- verboseFfmpeg: boolean;
47
- videoEncoder: string;
48
- videoProcessor: string;
49
44
  autoSyncStation: boolean;
45
+ omitLogFiles: boolean;
50
46
  };
51
47
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/plugin/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAElE;;;;GAIG;AACH,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,2BAA2B,EAAE,MAAM,CAAC;IACpC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CAmBjC,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/plugin/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAElE;;;;GAIG;AACH,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,2BAA2B,EAAE,MAAM,CAAC;IACpC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;CAkBjC,CAAC"}
package/dist/config.js CHANGED
@@ -2,8 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEFAULT_CONFIG_VALUES = void 0;
4
4
  exports.DEFAULT_CONFIG_VALUES = {
5
+ deviceName: 'MyPhone',
5
6
  enableDetailedLogging: false,
6
- CameraMaxLivestreamDuration: 30,
7
+ CameraMaxLivestreamDuration: 60,
7
8
  pollingIntervalMinutes: 10,
8
9
  hkHome: 1,
9
10
  hkAway: 0,
@@ -16,9 +17,7 @@ exports.DEFAULT_CONFIG_VALUES = {
16
17
  cleanCache: true,
17
18
  ignoreMultipleDevicesWarning: false,
18
19
  syncStationModes: false,
19
- verboseFfmpeg: false,
20
- videoEncoder: 'libx264',
21
- videoProcessor: 'ffmpeg',
22
20
  autoSyncStation: false,
21
+ omitLogFiles: false,
23
22
  };
24
23
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/plugin/config.ts"],"names":[],"mappings":";;;AAiCa,QAAA,qBAAqB,GAAG;IACnC,qBAAqB,EAAE,KAAK;IAC5B,2BAA2B,EAAE,EAAE;IAC/B,sBAAsB,EAAE,EAAE;IAC1B,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,EAAE;IACT,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,IAAI;IAChB,4BAA4B,EAAE,KAAK;IACnC,gBAAgB,EAAE,KAAK;IACvB,aAAa,EAAE,KAAK;IACpB,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,QAAQ;IACxB,eAAe,EAAE,KAAK;CACvB,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/plugin/config.ts"],"names":[],"mappings":";;;AA8Ba,QAAA,qBAAqB,GAAG;IACnC,UAAU,EAAE,SAAS;IACrB,qBAAqB,EAAE,KAAK;IAC5B,2BAA2B,EAAE,EAAE;IAC/B,sBAAsB,EAAE,EAAE;IAC1B,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,EAAE;IACT,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,EAAE;IACjB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,IAAI;IAChB,4BAA4B,EAAE,KAAK;IACnC,gBAAgB,EAAE,KAAK;IACvB,eAAe,EAAE,KAAK;IACtB,YAAY,EAAE,KAAK;CACpB,CAAC"}
@@ -30,6 +30,8 @@ export declare class SnapshotManager extends EventEmitter {
30
30
  private readonly videoProcessor;
31
31
  private currentSnapshot?;
32
32
  private blackSnapshot?;
33
+ private cameraOffline?;
34
+ private cameraDisabled?;
33
35
  private refreshProcessRunning;
34
36
  private lastEvent;
35
37
  private lastRingEvent;
@@ -1 +1 @@
1
- {"version":3,"file":"SnapshotManager.d.ts","sourceRoot":"","sources":["../../src/plugin/controller/SnapshotManager.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,YAAY,EAAY,MAAM,QAAQ,CAAC;AAOhD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAmBxC;;;;;;;;;;;;;;;GAeG;AAEH,qBAAa,eAAgB,SAAQ,YAAY;IAsB7C,OAAO,CAAC,iBAAiB;IApB3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,YAAY,CAAe;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IAEzD,OAAO,CAAC,eAAe,CAAC,CAAW;IACnC,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,aAAa,CAAK;IAE1B,SAAgB,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAErC,OAAO,CAAC,oBAAoB,CAAC,CAAiB;gBAI5C,MAAM,EAAE,eAAe,EACf,iBAAiB,EAAE,sBAAsB;IAsEnD,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,OAAO;IAOF,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;YAwC3D,uBAAuB;YAuBvB,mBAAmB;YA2CnB,sBAAsB;IAgCpC,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,UAAU;YAUJ,sBAAsB;YAWtB,0BAA0B;YA4B1B,wBAAwB;YAyCxB,eAAe;YA0Bf,cAAc;CAW7B"}
1
+ {"version":3,"file":"SnapshotManager.d.ts","sourceRoot":"","sources":["../../src/plugin/controller/SnapshotManager.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,YAAY,EAAY,MAAM,QAAQ,CAAC;AAOhD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAqBxC;;;;;;;;;;;;;;;GAeG;AAEH,qBAAa,eAAgB,SAAQ,YAAY;IAwB7C,OAAO,CAAC,iBAAiB;IAtB3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,YAAY,CAAe;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IAEzD,OAAO,CAAC,eAAe,CAAC,CAAW;IACnC,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAC,CAAS;IAEhC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,aAAa,CAAK;IAE1B,SAAgB,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAErC,OAAO,CAAC,oBAAoB,CAAC,CAAiB;gBAI5C,MAAM,EAAE,eAAe,EACf,iBAAiB,EAAE,sBAAsB;IAoGnD,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,OAAO;IAOF,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;YAkD3D,uBAAuB;YAuBvB,mBAAmB;YA2CnB,sBAAsB;IAYpC,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,UAAU;YAUJ,sBAAsB;YAWtB,0BAA0B;YA4B1B,wBAAwB;YAyCxB,eAAe;YA0Bf,cAAc;CAW7B"}
@@ -33,6 +33,8 @@ const ffmpeg_for_homebridge_1 = __importDefault(require("ffmpeg-for-homebridge")
33
33
  const utils_1 = require("../utils/utils");
34
34
  const ffmpeg_1 = require("../utils/ffmpeg");
35
35
  const fs = __importStar(require("fs"));
36
+ const CameraOffline = require.resolve('../../media/camera-offline.png');
37
+ const CameraDisabled = require.resolve('../../media/camera-disabled.png');
36
38
  const SnapshotBlackPath = require.resolve('../../media/Snapshot-black.png');
37
39
  const SnapshotUnavailable = require.resolve('../../media/Snapshot-Unavailable.png');
38
40
  let MINUTES_TO_WAIT_FOR_AUTOMATIC_REFRESH_TO_BEGIN = 1; // should be incremented by 1 for every device
@@ -60,6 +62,8 @@ class SnapshotManager extends stream_1.EventEmitter {
60
62
  videoProcessor = ffmpeg_for_homebridge_1.default || 'ffmpeg';
61
63
  currentSnapshot;
62
64
  blackSnapshot;
65
+ cameraOffline;
66
+ cameraDisabled;
63
67
  refreshProcessRunning = false;
64
68
  lastEvent = 0;
65
69
  lastRingEvent = 0;
@@ -128,6 +132,36 @@ class SnapshotManager extends stream_1.EventEmitter {
128
132
  catch (err) {
129
133
  this.log.error('could not cache black snapshot file for further use: ' + err);
130
134
  }
135
+ try {
136
+ this.cameraOffline = fs.readFileSync(CameraOffline);
137
+ if (this.cameraConfig.immediateRingNotificationWithoutSnapshot) {
138
+ this.log.info('Empty snapshot will be sent on ring events immediately to speed up homekit notifications.');
139
+ }
140
+ }
141
+ catch (err) {
142
+ this.log.error('could not cache CameraOffline file for further use: ' + err);
143
+ }
144
+ try {
145
+ this.cameraDisabled = fs.readFileSync(CameraDisabled);
146
+ if (this.cameraConfig.immediateRingNotificationWithoutSnapshot) {
147
+ this.log.info('Empty snapshot will be sent on ring events immediately to speed up homekit notifications.');
148
+ }
149
+ }
150
+ catch (err) {
151
+ this.log.error('could not cache CameraDisabled file for further use: ' + err);
152
+ }
153
+ try {
154
+ const picture = this.device.getPropertyValue(eufy_security_client_1.PropertyName.DevicePicture);
155
+ if (picture && picture.type) {
156
+ this.currentSnapshot = { timestamp: Date.now(), image: picture.data };
157
+ }
158
+ else {
159
+ throw ('No currentSnapshot');
160
+ }
161
+ }
162
+ catch (err) {
163
+ this.log.error('could not fetch old snapshot: ' + err);
164
+ }
131
165
  }
132
166
  onRingEvent(device, state) {
133
167
  if (state) {
@@ -149,6 +183,15 @@ class SnapshotManager extends stream_1.EventEmitter {
149
183
  return this.resizeSnapshot(this.currentSnapshot.image, request);
150
184
  }
151
185
  }
186
+ // It should never happend since camera is disabled in HK but in case of...
187
+ if (!this.device.isEnabled()) {
188
+ if (this.cameraDisabled) {
189
+ return this.resizeSnapshot(this.cameraDisabled, request);
190
+ }
191
+ else {
192
+ return Promise.reject('Something wrong with file systems. Looks likes not enought rights!');
193
+ }
194
+ }
152
195
  const diff = (Date.now() - this.lastRingEvent) / 1000;
153
196
  if (this.cameraConfig.immediateRingNotificationWithoutSnapshot && diff < 5) {
154
197
  this.log.debug('Sending empty snapshot to speed up homekit notification for ring event.');
@@ -179,14 +222,15 @@ class SnapshotManager extends stream_1.EventEmitter {
179
222
  return this.resizeSnapshot(snapshot, request);
180
223
  }
181
224
  catch (err) {
182
- return Promise.reject(err);
225
+ this.log.error(err);
226
+ return Promise.resolve(fs.readFileSync(SnapshotUnavailable));
183
227
  }
184
228
  }
185
229
  async getNewestSnapshotBuffer() {
186
230
  return new Promise((resolve, reject) => {
187
231
  this.fetchCurrentCameraSnapshot().catch((err) => reject(err));
188
232
  const requestTimeout = setTimeout(() => {
189
- reject('snapshot request timed out');
233
+ throw ('snapshot request timed out');
190
234
  }, 15000);
191
235
  this.once('new snapshot', () => {
192
236
  if (requestTimeout) {
@@ -196,7 +240,7 @@ class SnapshotManager extends stream_1.EventEmitter {
196
240
  resolve(this.currentSnapshot.image);
197
241
  }
198
242
  else {
199
- reject('Unknown snapshot request error');
243
+ throw ('Unknown snapshot request error');
200
244
  }
201
245
  });
202
246
  });
@@ -208,7 +252,7 @@ class SnapshotManager extends stream_1.EventEmitter {
208
252
  resolve(this.currentSnapshot.image);
209
253
  }
210
254
  else {
211
- resolve(fs.readFileSync(SnapshotUnavailable));
255
+ throw ('No currentSnapshot');
212
256
  }
213
257
  }, 1000);
214
258
  this.fetchCurrentCameraSnapshot().catch((err) => this.log.warn(err));
@@ -224,7 +268,7 @@ class SnapshotManager extends stream_1.EventEmitter {
224
268
  resolve(this.currentSnapshot.image);
225
269
  }
226
270
  else {
227
- resolve(fs.readFileSync(SnapshotUnavailable));
271
+ throw ('No currentSnapshot');
228
272
  }
229
273
  }, 15000);
230
274
  }
@@ -236,39 +280,18 @@ class SnapshotManager extends stream_1.EventEmitter {
236
280
  resolve(this.currentSnapshot.image);
237
281
  }
238
282
  else {
239
- resolve(fs.readFileSync(SnapshotUnavailable));
283
+ throw ('No currentSnapshot');
240
284
  }
241
285
  });
242
286
  });
243
287
  }
244
288
  async getNewestCloudSnapshot() {
245
- return new Promise((resolve, reject) => {
246
- const newestEvent = (this.lastRingEvent > this.lastEvent) ? this.lastRingEvent : this.lastEvent;
247
- const diff = (Date.now() - newestEvent) / 1000;
248
- if (diff < 15) { // wait for cloud snapshot
249
- this.log.debug('Waiting on cloud snapshot...');
250
- const snapshotTimeout = setTimeout(() => {
251
- reject('No snapshot has been retrieved in time from eufy cloud.');
252
- }, 15000);
253
- this.once('new snapshot', () => {
254
- if (snapshotTimeout) {
255
- clearTimeout(snapshotTimeout);
256
- }
257
- if (this.currentSnapshot) {
258
- resolve(this.currentSnapshot.image);
259
- }
260
- else {
261
- resolve(fs.readFileSync(SnapshotUnavailable));
262
- }
263
- });
289
+ return new Promise((resolve) => {
290
+ if (this.currentSnapshot) {
291
+ resolve(this.currentSnapshot.image);
264
292
  }
265
293
  else {
266
- if (this.currentSnapshot) {
267
- resolve(this.currentSnapshot.image);
268
- }
269
- else {
270
- resolve(fs.readFileSync(SnapshotUnavailable));
271
- }
294
+ throw ('No currentSnapshot');
272
295
  }
273
296
  });
274
297
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SnapshotManager.js","sourceRoot":"","sources":["../../src/plugin/controller/SnapshotManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SnapshotManager.js","sourceRoot":"","sources":["../../src/plugin/controller/SnapshotManager.ts"],"names":[],"mappings":"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"}
Binary file
@@ -1,27 +1,32 @@
1
- /// <reference types="node" />
2
1
  import { API, DynamicPlatformPlugin, Logger, PlatformAccessory, PlatformConfig } from 'homebridge';
3
2
  import { EufySecurityPlatformConfig } from './config';
4
- import { EufySecurity, Station } from 'eufy-security-client';
3
+ import { EufySecurity } from 'eufy-security-client';
5
4
  export declare class EufySecurityPlatform implements DynamicPlatformPlugin {
6
- readonly hblog: Logger;
7
5
  readonly api: API;
8
6
  eufyClient: EufySecurity;
9
7
  readonly accessories: PlatformAccessory[];
10
8
  config: EufySecurityPlatformConfig;
11
- private eufyConfig;
12
9
  private already_shutdown;
13
- videoProcessor: string;
14
10
  readonly eufyPath: string;
15
11
  private activeAccessoryIds;
16
12
  private cleanCachedAccessoriesTimeout?;
17
- private readonly STATION_INIT_DELAY;
18
- private readonly DEVICE_INIT_DELAY;
19
13
  private _hostSystem;
20
- verboseFfmpeg: boolean;
21
- blackSnapshot: Buffer;
22
- SnapshotUnavailable: Buffer;
23
14
  constructor(hblog: Logger, config: PlatformConfig, api: API);
15
+ /**
16
+ * Initializes the configuration object with default values where properties are not provided.
17
+ * If a property is provided in the config object, it overrides the default value.
18
+ * Additionally, certain numeric properties are parsed to ensure they are of the correct type.
19
+ * @param config - Partial configuration object with user-provided values.
20
+ */
21
+ private initConfig;
22
+ /**
23
+ * Configures the logging mechanism for the plugin.
24
+ */
24
25
  private configureLogger;
26
+ /**
27
+ * Configures log streams for various log files if log file storage is not omitted.
28
+ */
29
+ private configureLogStreams;
25
30
  private probeHwOs;
26
31
  get hostSystem(): string;
27
32
  private initSetup;
@@ -42,17 +47,6 @@ export declare class EufySecurityPlatform implements DynamicPlatformPlugin {
42
47
  private cleanCachedAccessories;
43
48
  private register_station;
44
49
  private register_device;
45
- getStationById(id: string): Promise<Station>;
46
- private clean_config;
47
- private clean_config_after_init;
48
- /**
49
- * Reads a file synchronously and returns its buffer.
50
- * Also lists the contents of the current directory.
51
- * @param filepath - The path to the file to read.
52
- * @returns The file buffer.
53
- * @throws An error if the file cannot be read.
54
- */
55
- private readFileSync;
56
50
  private compareVersions;
57
51
  private checkNodeVersion;
58
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/plugin/platform.ts"],"names":[],"mappings":";AACA,OAAO,EACL,GAAG,EACH,qBAAqB,EACrB,MAAM,EACN,iBAAiB,EACjB,cAAc,EAEf,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAWtD,OAAO,EACL,YAAY,EAIZ,OAAO,EAUR,MAAM,sBAAsB,CAAC;AAc9B,qBAAa,oBAAqB,YAAW,qBAAqB;aA2B9C,KAAK,EAAE,MAAM;aAEb,GAAG,EAAE,GAAG;IA5BnB,UAAU,EAAE,YAAY,CAAsB;IAGrD,SAAgB,WAAW,EAAE,iBAAiB,EAAE,CAAM;IAC/C,MAAM,EAAE,0BAA0B,CAAC;IAC1C,OAAO,CAAC,UAAU,CAAgD;IAElE,OAAO,CAAC,gBAAgB,CAAkB;IAEnC,cAAc,EAAG,MAAM,CAAC;IAE/B,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,6BAA6B,CAAC,CAAiB;IAEvD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAY;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAY;IAE9C,OAAO,CAAC,WAAW,CAAc;IAC1B,aAAa,EAAE,OAAO,CAAQ;IAE9B,aAAa,EAAE,MAAM,CAAwC;IAC7D,mBAAmB,EAAE,MAAM,CAA8C;gBAG9D,KAAK,EAAE,MAAM,EAC7B,MAAM,EAAE,cAAc,EACN,GAAG,EAAE,GAAG;IAkB1B,OAAO,CAAC,eAAe;IAgGvB,OAAO,CAAC,SAAS;IA4CjB,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,OAAO,CAAC,SAAS;YA2EH,WAAW;IA+FzB,OAAO,CAAC,YAAY;YAKN,KAAK;YAIL,oBAAoB;YA+BpB,YAAY;YAyCZ,WAAW;YAyBX,cAAc;YAKd,aAAa;YAKb,cAAc;IAsB5B;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;IAO/C,OAAO,CAAC,sBAAsB;IAuB9B,OAAO,CAAC,gBAAgB;IAiCxB,OAAO,CAAC,eAAe;IA8BhB,cAAc,CAAC,EAAE,EAAE,MAAM;IAIhC,OAAO,CAAC,YAAY;IAqCpB,OAAO,CAAC,uBAAuB;IA+C/B;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,eAAe;IAkBvB,OAAO,CAAC,gBAAgB;CAqBzB"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/plugin/platform.ts"],"names":[],"mappings":"AACA,OAAO,EACL,GAAG,EACH,qBAAqB,EACrB,MAAM,EACN,iBAAiB,EACjB,cAAc,EAEf,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAyB,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAW7E,OAAO,EACL,YAAY,EAcb,MAAM,sBAAsB,CAAC;AAa9B,qBAAa,oBAAqB,YAAW,qBAAqB;aAmB9C,GAAG,EAAE,GAAG;IAlBnB,UAAU,EAAE,YAAY,CAAsB;IAGrD,SAAgB,WAAW,EAAE,iBAAiB,EAAE,CAAM;IAC/C,MAAM,EAAE,0BAA0B,CAAoC;IAE7E,OAAO,CAAC,gBAAgB,CAAkB;IAE1C,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,6BAA6B,CAAC,CAAiB;IAEvD,OAAO,CAAC,WAAW,CAAc;gBAG/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,cAAc,EACN,GAAG,EAAE,GAAG;IAmB1B;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IA+BlB;;OAEG;IACH,OAAO,CAAC,eAAe;IA4DvB;;MAEE;IACF,OAAO,CAAC,mBAAmB;IAkD3B,OAAO,CAAC,SAAS;IAgDjB,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,OAAO,CAAC,SAAS;YAmDH,WAAW;IA8FzB,OAAO,CAAC,YAAY;YAKN,KAAK;YAIL,oBAAoB;YAiCpB,YAAY;YAyCZ,WAAW;YAyBX,cAAc;YAKd,aAAa;YAKb,cAAc;IAwB5B;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;IAO/C,OAAO,CAAC,sBAAsB;IAuB9B,OAAO,CAAC,gBAAgB;IAiCxB,OAAO,CAAC,eAAe;IA8BvB,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,gBAAgB;CAmBzB"}
package/dist/platform.js CHANGED
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.EufySecurityPlatform = void 0;
7
7
  const process_1 = require("process");
8
8
  const settings_1 = require("./settings");
9
+ const config_1 = require("./config");
9
10
  const StationAccessory_1 = require("./accessories/StationAccessory");
10
11
  const EntrySensorAccessory_1 = require("./accessories/EntrySensorAccessory");
11
12
  const MotionSensorAccessory_1 = require("./accessories/MotionSensorAccessory");
@@ -18,73 +19,98 @@ const fs_1 = __importDefault(require("fs"));
18
19
  const node_os_1 = __importDefault(require("node:os"));
19
20
  const node_process_1 = require("node:process");
20
21
  const node_fs_1 = require("node:fs");
21
- const ffmpeg_for_homebridge_1 = __importDefault(require("ffmpeg-for-homebridge"));
22
22
  const utils_1 = require("./utils/utils");
23
23
  class EufySecurityPlatform {
24
- hblog;
25
24
  api;
26
25
  eufyClient = {};
27
26
  // this is used to track restored cached accessories
28
27
  accessories = [];
29
- config;
30
- eufyConfig = {};
28
+ config = {};
31
29
  already_shutdown = false;
32
- videoProcessor;
33
30
  eufyPath;
34
31
  activeAccessoryIds = [];
35
32
  cleanCachedAccessoriesTimeout;
36
- STATION_INIT_DELAY = 5 * 1000; // 5 seconds
37
- DEVICE_INIT_DELAY = 7 * 1000; // 7 seconds;
38
33
  _hostSystem = '';
39
- verboseFfmpeg = true;
40
- blackSnapshot = this.readFileSync(settings_1.SnapshotBlackPath);
41
- SnapshotUnavailable = this.readFileSync(settings_1.SnapshotUnavailablePath);
42
34
  constructor(hblog, config, api) {
43
- this.hblog = hblog;
44
35
  this.api = api;
45
- this.config = config;
46
36
  this.eufyPath = this.api.user.storagePath() + '/eufysecurity';
47
37
  if (!fs_1.default.existsSync(this.eufyPath)) {
48
38
  fs_1.default.mkdirSync(this.eufyPath);
49
39
  }
50
40
  // Identify what we're running on so we can take advantage of hardware-specific features.
51
41
  this.probeHwOs();
42
+ this.initConfig(config);
52
43
  this.configureLogger();
53
44
  this.initSetup();
54
45
  }
46
+ /**
47
+ * Initializes the configuration object with default values where properties are not provided.
48
+ * If a property is provided in the config object, it overrides the default value.
49
+ * Additionally, certain numeric properties are parsed to ensure they are of the correct type.
50
+ * @param config - Partial configuration object with user-provided values.
51
+ */
52
+ initConfig(config) {
53
+ // Assigns the provided config object to this.config, casting it to the EufySecurityPlatformConfig type.
54
+ this.config = config;
55
+ // Iterates over each key in the DEFAULT_CONFIG_VALUES object.
56
+ Object.keys(config_1.DEFAULT_CONFIG_VALUES).forEach(key => {
57
+ // Checks if the corresponding property in the config object is undefined or null.
58
+ // If it is, assigns the default value from DEFAULT_CONFIG_VALUES to it.
59
+ this.config[key] ??= config_1.DEFAULT_CONFIG_VALUES[key];
60
+ });
61
+ // List of properties that need to be parsed as numeric values
62
+ const numericProperties = [
63
+ 'CameraMaxLivestreamDuration',
64
+ 'pollingIntervalMinutes',
65
+ 'hkHome',
66
+ 'hkAway',
67
+ 'hkNight',
68
+ 'hkOff'
69
+ ];
70
+ // Iterate over each property in the config object
71
+ Object.entries(this.config).forEach(([key, value]) => {
72
+ // Check if the property is one of the numeric properties
73
+ if (numericProperties.includes(key)) {
74
+ // Parse the value to ensure it is of the correct type (number)
75
+ this.config[key] = (typeof value === 'string') ? parseInt(value) : value;
76
+ }
77
+ });
78
+ }
79
+ /**
80
+ * Configures the logging mechanism for the plugin.
81
+ */
55
82
  configureLogger() {
83
+ // Retrieve plugin information from package.json
56
84
  const plugin = require('../package.json');
85
+ // Define options for logging
57
86
  const logOptions = {
58
- name: (this.config.enableDetailedLogging) ? `[EufySecurity-${plugin.version}]` : '[EufySecurity]',
59
- prettyLogTemplate: (this.config.enableDetailedLogging)
60
- // eslint-disable-next-line max-len
61
- ? '[{{mm}}/{{dd}}/{{yyyy}} {{hh}}:{{MM}}:{{ss}}]\t{{name}}\t{{logLevelName}}\t[{{fileNameWithLine}}]\t'
62
- : '[{{mm}}/{{dd}}/{{yyyy}}, {{hh}}:{{MM}}:{{ss}}]\t{{name}}\t{{logLevelName}}\t',
63
- prettyErrorTemplate: '\n{{errorName}} {{errorMessage}}\nerror stack:\n{{errorStack}}',
64
- prettyErrorStackTemplate: ' • {{fileName}}\t{{method}}\n\t{{fileNameWithLine}}',
65
- prettyErrorParentNamesSeparator: '',
66
- prettyErrorLoggerNameDelimiter: '\t',
67
- stylePrettyLogs: true,
68
- minLevel: (this.config.enableDetailedLogging) ? 2 : 3,
69
- prettyLogTimeZone: 'local',
87
+ name: '[EufySecurity]', // Name prefix for log messages
88
+ prettyLogTemplate: '[{{mm}}/{{dd}}/{{yyyy}}, {{hh}}:{{MM}}:{{ss}}]\t{{name}}\t{{logLevelName}}\t', // Template for pretty log output
89
+ prettyErrorTemplate: '\n{{errorName}} {{errorMessage}}\nerror stack:\n{{errorStack}}', // Template for pretty error output
90
+ prettyErrorStackTemplate: ' {{fileName}}\t{{method}}\n\t{{fileNameWithLine}}', // Template for error stack trace
91
+ prettyErrorParentNamesSeparator: '', // Separator for parent names in error messages
92
+ prettyErrorLoggerNameDelimiter: '\t', // Delimiter for logger name in error messages
93
+ stylePrettyLogs: true, // Enable styling for logs
94
+ minLevel: 3, // Minimum log level to display (3 corresponds to INFO)
95
+ prettyLogTimeZone: 'local', // Time zone for log timestamps
70
96
  prettyLogStyles: {
71
97
  logLevelName: {
72
- '*': ['bold', 'black', 'bgWhiteBright', 'dim'],
73
- SILLY: ['bold', 'white'],
74
- TRACE: ['bold', 'whiteBright'],
75
- DEBUG: ['bold', 'green'],
76
- INFO: ['bold', 'blue'],
77
- WARN: ['bold', 'yellow'],
78
- ERROR: ['bold', 'red'],
79
- FATAL: ['bold', 'redBright'],
98
+ '*': ['bold', 'black', 'bgWhiteBright', 'dim'], // Default style
99
+ SILLY: ['bold', 'white'], // Style for SILLY level
100
+ TRACE: ['bold', 'whiteBright'], // Style for TRACE level
101
+ DEBUG: ['bold', 'green'], // Style for DEBUG level
102
+ INFO: ['bold', 'blue'], // Style for INFO level
103
+ WARN: ['bold', 'yellow'], // Style for WARN level
104
+ ERROR: ['bold', 'red'], // Style for ERROR level
105
+ FATAL: ['bold', 'redBright'], // Style for FATAL level
80
106
  },
81
- dateIsoStr: 'gray',
82
- filePathWithLine: 'white',
83
- name: 'green',
84
- nameWithDelimiterPrefix: ['white', 'bold'],
85
- nameWithDelimiterSuffix: ['white', 'bold'],
86
- errorName: ['bold', 'bgRedBright', 'whiteBright'],
87
- fileName: ['yellow'],
107
+ dateIsoStr: 'gray', // Style for ISO date strings
108
+ filePathWithLine: 'white', // Style for file paths with line numbers
109
+ name: 'green', // Style for logger names
110
+ nameWithDelimiterPrefix: ['white', 'bold'], // Style for logger names with delimiter prefix
111
+ nameWithDelimiterSuffix: ['white', 'bold'], // Style for logger names with delimiter suffix
112
+ errorName: ['bold', 'bgRedBright', 'whiteBright'], // Style for error names
113
+ fileName: ['yellow'], // Style for file names
88
114
  },
89
115
  maskValuesOfKeys: [
90
116
  'username',
@@ -97,45 +123,62 @@ class EufySecurityPlatform {
97
123
  'ignoreDevices',
98
124
  ],
99
125
  };
126
+ // Modify log options if detailed logging is enabled
127
+ if (this.config.enableDetailedLogging) {
128
+ logOptions.name = `[EufySecurity-${plugin.version}]`; // Modify logger name with plugin version
129
+ logOptions.prettyLogTemplate = '[{{mm}}/{{dd}}/{{yyyy}} {{hh}}:{{MM}}:{{ss}}]\t{{name}}\t{{logLevelName}}\t[{{fileNameWithLine}}]\t'; // Modify log template
130
+ logOptions.minLevel = 2; // Adjust minimum log level
131
+ }
132
+ // Initialize the global logger with the configured options
100
133
  (0, utils_1.init_log)(logOptions);
101
- const omitLogFiles = this.config.omitLogFiles ?? false;
102
- if (omitLogFiles) {
134
+ // Configures log streams for various log files
135
+ this.configureLogStreams();
136
+ }
137
+ /**
138
+ * Configures log streams for various log files if log file storage is not omitted.
139
+ */
140
+ configureLogStreams() {
141
+ // Log a message if log file storage will be omitted
142
+ if (this.config.omitLogFiles) {
103
143
  utils_1.log.info('log file storage will be omitted.');
144
+ return;
104
145
  }
105
- if (!omitLogFiles) {
106
- // Log streams configuration
107
- const logStreams = [
108
- { name: 'eufy-security.log', logger: utils_1.log },
109
- { name: 'ffmpeg.log', logger: utils_1.ffmpegLogger },
110
- { name: 'eufy-lib.log', logger: utils_1.tsLogger },
111
- ];
112
- for (const { name, logger } of logStreams) {
113
- const logStream = (0, rotating_file_stream_1.createStream)(name, {
114
- path: this.eufyPath,
115
- interval: '1d',
116
- rotate: 3,
117
- maxSize: '200M',
118
- });
119
- logger.attachTransport((logObj) => {
120
- const meta = logObj['_meta'];
121
- const name = meta.name;
122
- const level = meta.logLevelName;
123
- const date = meta.date.toISOString();
124
- const fileNameWithLine = meta.path?.fileNameWithLine || 'UNKNOWN_FILE';
125
- // Initialize the message
126
- let message = '';
127
- // Loop through logObj from index 0 to 5 and append values to the message
128
- for (let i = 0; i <= 5; i++) {
129
- if (logObj[i]) {
130
- message += ' ' + typeof logObj[i] === 'string' ? logObj[i] : JSON.stringify(logObj[i]);
131
- }
146
+ // Log streams configuration
147
+ const logStreams = [
148
+ { name: 'eufy-security.log', logger: utils_1.log },
149
+ { name: 'ffmpeg.log', logger: utils_1.ffmpegLogger },
150
+ { name: 'eufy-lib.log', logger: utils_1.tsLogger },
151
+ ];
152
+ // Iterate over log streams
153
+ for (const { name, logger } of logStreams) {
154
+ // Create a log stream with specific configurations
155
+ const logStream = (0, rotating_file_stream_1.createStream)(name, {
156
+ path: this.eufyPath, // Log file path
157
+ interval: '1d', // Log rotation interval (1 day)
158
+ rotate: 3, // Number of rotated log files to keep
159
+ maxSize: '200M', // Maximum log file size
160
+ });
161
+ // Attach a transport function to write log messages to the log stream
162
+ logger.attachTransport((logObj) => {
163
+ const meta = logObj['_meta'];
164
+ const name = meta.name;
165
+ const level = meta.logLevelName;
166
+ const date = meta.date.toISOString();
167
+ const fileNameWithLine = meta.path?.fileNameWithLine || 'UNKNOWN_FILE';
168
+ // Initialize the message
169
+ let message = '';
170
+ // Loop through logObj from index 0 to 5 and append values to the message
171
+ for (let i = 0; i <= 5; i++) {
172
+ if (logObj[i]) {
173
+ message += ' ' + typeof logObj[i] === 'string' ? logObj[i] : JSON.stringify(logObj[i]);
132
174
  }
133
- logStream.write(date + '\t' + name + '\t' + level + '\t' + fileNameWithLine + '\t' + message + '\n');
134
- });
135
- }
175
+ }
176
+ // Write formatted log message to the log stream
177
+ logStream.write(date + '\t' + name + '\t' + level + '\t' + fileNameWithLine + '\t' + message + '\n');
178
+ });
136
179
  }
137
180
  }
138
- // Identify what hardware and operating system environment we're actually running on.
181
+ // This function is responsible for identifying the hardware and operating system environment the application is running on.
139
182
  probeHwOs() {
140
183
  // Start off with a generic identifier.
141
184
  this._hostSystem = 'generic';
@@ -143,6 +186,7 @@ class EufySecurityPlatform {
143
186
  switch (node_process_1.platform) {
144
187
  // The beloved macOS.
145
188
  case 'darwin':
189
+ // For macOS, we check the CPU model to determine if it's an Apple CPU or an Intel CPU.
146
190
  this._hostSystem = 'macOS.' + (node_os_1.default.cpus()[0].model.includes('Apple') ? 'Apple' : 'Intel');
147
191
  break;
148
192
  // The indomitable Linux.
@@ -151,17 +195,20 @@ class EufySecurityPlatform {
151
195
  try {
152
196
  // As of the 4.9 kernel, Raspberry Pi prefers to be identified using this method and has deprecated cpuinfo.
153
197
  const systemId = (0, node_fs_1.readFileSync)('/sys/firmware/devicetree/base/model', { encoding: 'utf8' });
154
- // Is it a Pi 4?
198
+ // Check if it's a Raspberry Pi 4.
155
199
  if (/Raspberry Pi (Compute Module )?4/.test(systemId)) {
200
+ // If it's a Pi 4, we identify the system as running Raspbian.
156
201
  this._hostSystem = 'raspbian';
157
202
  }
158
203
  }
159
204
  catch (error) {
160
- // We aren't especially concerned with errors here, given we're just trying to ascertain the system information through hints.
205
+ // Errors encountered while attempting to identify the system are ignored.
206
+ // We prioritize getting system information through hints rather than comprehensive detection.
161
207
  }
162
208
  break;
163
209
  default:
164
210
  // We aren't trying to solve for every system type.
211
+ // If the platform doesn't match macOS or Linux, we keep the generic identifier.
165
212
  break;
166
213
  }
167
214
  }
@@ -185,56 +232,35 @@ class EufySecurityPlatform {
185
232
  Refer to https://nodejs.org/en/blog/vulnerability/february-2024-security-releases#nodejs-is-vulnerable-to-the-marvin-attack-timing-variant-of-the-bleichenbacher-attack-against-pkcs1-v15-padding-cve-2023-46809---medium for more information.
186
233
  ***************************
187
234
  `);
188
- this.api.registerPlatform;
189
235
  return;
190
236
  }
191
- this.videoProcessor = ffmpeg_for_homebridge_1.default ?? 'ffmpeg';
192
- utils_1.log.info(`ffmpegPath set: ${this.videoProcessor}`);
193
- this.clean_config();
237
+ // Log the final configuration object for debugging purposes
194
238
  utils_1.log.debug('The config is:', this.config);
195
- this.eufyConfig = {
239
+ const eufyConfig = {
196
240
  username: this.config.username,
197
241
  password: this.config.password,
198
- country: this.config.country ?? 'US',
199
- trustedDeviceName: this.config.deviceName ?? 'My Phone',
242
+ country: this.config.country,
243
+ trustedDeviceName: this.config.deviceName,
200
244
  language: 'en',
201
245
  persistentDir: this.eufyPath,
202
246
  p2pConnectionSetup: 0,
203
- pollingIntervalMinutes: this.config.pollingIntervalMinutes ?? 10,
247
+ pollingIntervalMinutes: this.config.pollingIntervalMinutes,
204
248
  eventDurationSeconds: 10,
205
249
  logging: {
206
250
  level: (this.config.enableDetailedLogging) ? eufy_security_client_1.LogLevel.Debug : eufy_security_client_1.LogLevel.Info,
207
251
  },
208
252
  };
209
- this.config.ignoreStations = this.config.ignoreStations ??= [];
210
- this.config.ignoreDevices = this.config.ignoreDevices ??= [];
211
- this.config.cleanCache = this.config.cleanCache ??= true;
212
- utils_1.log.info(`Country set: ${this.eufyConfig.country}`);
213
- // This function is here to avoid any break while moving from 1.0.x to 1.1.x
214
- // moving persistent into our dedicated folder (this need to be removed after few release of 1.1.x)
215
- if (fs_1.default.existsSync(this.api.user.storagePath() + '/persistent.json')) {
216
- utils_1.log.debug('An old persistent file have been found');
217
- if (!fs_1.default.existsSync(this.eufyPath + '/persistent.json')) {
218
- fs_1.default.copyFileSync(this.api.user.storagePath() + '/persistent.json', this.eufyPath + '/persistent.json', fs_1.default.constants.COPYFILE_EXCL);
219
- }
220
- else {
221
- utils_1.log.debug('but the new one is already present');
222
- }
223
- fs_1.default.unlinkSync(this.api.user.storagePath() + '/persistent.json');
224
- }
225
- // ********
226
253
  this.api.on("didFinishLaunching" /* APIEvent.DID_FINISH_LAUNCHING */, async () => {
227
- this.clean_config_after_init();
228
- await this.pluginSetup();
254
+ await this.pluginSetup(eufyConfig);
229
255
  });
230
256
  this.api.on("shutdown" /* APIEvent.SHUTDOWN */, async () => {
231
257
  await this.pluginShutdown();
232
258
  });
233
- utils_1.log.info('Finished initializing!');
259
+ utils_1.log.debug('Finished booting!');
234
260
  }
235
- async pluginSetup() {
261
+ async pluginSetup(eufyConfig) {
236
262
  try {
237
- this.eufyClient = await eufy_security_client_1.EufySecurity.initialize(this.eufyConfig, (this.config.enableDetailedLogging) ? utils_1.tsLogger : undefined);
263
+ this.eufyClient = await eufy_security_client_1.EufySecurity.initialize(eufyConfig, (this.config.enableDetailedLogging) ? utils_1.tsLogger : undefined);
238
264
  this.eufyClient.on('station added', this.stationAdded.bind(this));
239
265
  this.eufyClient.on('station removed', this.stationRemoved.bind(this));
240
266
  this.eufyClient.on('device added', this.deviceAdded.bind(this));
@@ -307,18 +333,17 @@ class EufySecurityPlatform {
307
333
  this.cleanCachedAccessoriesTimeout = setTimeout(() => {
308
334
  this.cleanCachedAccessories();
309
335
  }, 45 * 1000);
310
- let cameraMaxLivestreamDuration = this.config.CameraMaxLivestreamDuration ?? 30;
311
- if (cameraMaxLivestreamDuration > 86400) {
312
- cameraMaxLivestreamDuration = 86400;
336
+ if (this.config.CameraMaxLivestreamDuration > 86400) {
337
+ this.config.CameraMaxLivestreamDuration = 86400;
313
338
  // eslint-disable-next-line max-len
314
339
  utils_1.log.warn('Your maximum livestream duration value is too large. Since this can cause problems it was reset to 86400 seconds (1 day maximum).');
315
340
  }
316
- this.eufyClient.setCameraMaxLivestreamDuration(cameraMaxLivestreamDuration);
341
+ this.eufyClient.setCameraMaxLivestreamDuration(this.config.CameraMaxLivestreamDuration);
317
342
  utils_1.log.debug(`CameraMaxLivestreamDuration: ${this.eufyClient.getCameraMaxLivestreamDuration()}`);
318
343
  }
319
344
  generateUUID(identifier, type) {
320
345
  const prefix = type === eufy_security_client_1.DeviceType.STATION ? '' : 's_';
321
- return this.api.hap.uuid.generate(prefix + identifier);
346
+ return utils_1.HAP.uuid.generate(prefix + identifier);
322
347
  }
323
348
  async delay(ms) {
324
349
  return new Promise(resolve => setTimeout(resolve, ms));
@@ -332,6 +357,8 @@ class EufySecurityPlatform {
332
357
  }
333
358
  const accessory = cachedAccessory || new this.api.platformAccessory(deviceContainer.deviceIdentifier.displayName, uuid);
334
359
  accessory.context['device'] = deviceContainer.deviceIdentifier;
360
+ // add to active accessories (see cleanCache)
361
+ this.activeAccessoryIds.indexOf(uuid) === -1 ? this.activeAccessoryIds.push(uuid) : null;
335
362
  if (isStation) {
336
363
  this.register_station(accessory, deviceContainer);
337
364
  }
@@ -379,7 +406,7 @@ class EufySecurityPlatform {
379
406
  },
380
407
  eufyDevice: station,
381
408
  };
382
- await this.delay(this.STATION_INIT_DELAY);
409
+ await this.delay(settings_1.STATION_INIT_DELAY);
383
410
  utils_1.log.debug(`${deviceContainer.deviceIdentifier.displayName} pre-caching complete`);
384
411
  this.addOrUpdateAccessory(deviceContainer, true);
385
412
  }
@@ -401,7 +428,7 @@ class EufySecurityPlatform {
401
428
  },
402
429
  eufyDevice: device,
403
430
  };
404
- await this.delay(this.DEVICE_INIT_DELAY);
431
+ await this.delay(settings_1.DEVICE_INIT_DELAY);
405
432
  utils_1.log.debug(`${deviceContainer.deviceIdentifier.displayName} pre-caching complete`);
406
433
  this.addOrUpdateAccessory(deviceContainer, false);
407
434
  }
@@ -428,7 +455,9 @@ class EufySecurityPlatform {
428
455
  clearTimeout(this.cleanCachedAccessoriesTimeout);
429
456
  }
430
457
  try {
431
- this.eufyClient.close();
458
+ if (this.eufyClient.isConnected()) {
459
+ this.eufyClient.close();
460
+ }
432
461
  utils_1.log.info('Finished shutdown!');
433
462
  }
434
463
  catch (e) {
@@ -446,7 +475,7 @@ class EufySecurityPlatform {
446
475
  }
447
476
  cleanCachedAccessories() {
448
477
  if (this.config.cleanCache) {
449
- utils_1.log.info('Looking for old cached accessories that seem to be outdated...');
478
+ utils_1.log.debug('Looking for old cached accessories that seem to be outdated...');
450
479
  let num = 0;
451
480
  const staleAccessories = this.accessories.filter((item) => {
452
481
  return this.activeAccessoryIds.indexOf(item.UUID) === -1;
@@ -510,99 +539,9 @@ class EufySecurityPlatform {
510
539
  new CameraAccessory_1.CameraAccessory(this, accessory, device);
511
540
  }
512
541
  }
513
- getStationById(id) {
514
- return this.eufyClient.getStation(id);
515
- }
516
- clean_config() {
517
- try {
518
- const currentConfig = JSON.parse(fs_1.default.readFileSync(this.api.user.configPath(), 'utf8'));
519
- // check the platforms section is an array before we do array things on it
520
- if (!Array.isArray(currentConfig.platforms)) {
521
- throw new Error('Cannot find platforms array in config');
522
- }
523
- // find this plugins current config
524
- const pluginConfig = currentConfig.platforms.find((x) => x.platform === settings_1.PLATFORM_NAME);
525
- if (!pluginConfig) {
526
- throw new Error(`Cannot find config for ${settings_1.PLATFORM_NAME} in platforms array`);
527
- }
528
- // Cleaning space
529
- const i = ['hkHome', 'hkAway', 'hkNight', 'hkOff', 'pollingIntervalMinutes', 'CameraMaxLivestreamDuration'];
530
- Object.entries(pluginConfig).forEach(([key, value]) => {
531
- if (!i.includes(key)) {
532
- return;
533
- }
534
- pluginConfig[key] = (typeof pluginConfig[key] === 'string') ? parseInt(value) : value;
535
- });
536
- // End of Cleaning space
537
- // Applying clean and save it
538
- this.config = pluginConfig;
539
- fs_1.default.writeFileSync(this.api.user.configPath(), JSON.stringify(currentConfig, null, 4));
540
- }
541
- catch (e) {
542
- utils_1.log.error('Error cleaning config: ' + e);
543
- }
544
- }
545
- // this needs to be called after api did finished launching so that cached accessories are already loaded
546
- clean_config_after_init() {
547
- try {
548
- const currentConfig = JSON.parse(fs_1.default.readFileSync(this.api.user.configPath(), 'utf8'));
549
- // check the platforms section is an array before we do array things on it
550
- if (!Array.isArray(currentConfig.platforms)) {
551
- throw new Error('Cannot find platforms array in config');
552
- }
553
- // find this plugins current config
554
- const pluginConfig = currentConfig.platforms.find((x) => x.platform === settings_1.PLATFORM_NAME);
555
- if (!pluginConfig) {
556
- throw new Error(`Cannot find config for ${settings_1.PLATFORM_NAME} in platforms array`);
557
- }
558
- // Cleaning space
559
- // clean device specific parametes
560
- const cameras = (Array.isArray(pluginConfig.cameras)) ? pluginConfig.cameras : null;
561
- if (cameras && this.accessories.length > 0) {
562
- for (let i = 0; i < cameras.length; i++) {
563
- const camera = cameras[i];
564
- const cachedAccessory = this.accessories.find((acc) => camera.serialNumber === acc.context['device'].uniqueId);
565
- if (cachedAccessory && eufy_security_client_1.Device.isDoorbell(cachedAccessory.context['device'].type) && !camera.enableCamera) {
566
- // eslint-disable-next-line max-len
567
- utils_1.log.warn('Found camera ' + cachedAccessory.context['device'].displayName + ' (' + cachedAccessory.context['device'].uniqueId + ') with invalid camera configuration option enableCamera. Attempt to repair. This should only happen once per device...');
568
- pluginConfig.cameras[i]['enableCamera'] = true;
569
- }
570
- }
571
- }
572
- // End of Cleaning space
573
- // Applying clean and save it
574
- this.config = pluginConfig;
575
- this.config.ignoreStations = this.config.ignoreStations ??= [];
576
- this.config.ignoreDevices = this.config.ignoreDevices ??= [];
577
- this.config.cleanCache = this.config.cleanCache ??= true;
578
- fs_1.default.writeFileSync(this.api.user.configPath(), JSON.stringify(currentConfig, null, 4));
579
- }
580
- catch (e) {
581
- utils_1.log.error('Error cleaning config: ' + e);
582
- }
583
- }
584
- /**
585
- * Reads a file synchronously and returns its buffer.
586
- * Also lists the contents of the current directory.
587
- * @param filepath - The path to the file to read.
588
- * @returns The file buffer.
589
- * @throws An error if the file cannot be read.
590
- */
591
- readFileSync(filepath) {
592
- try {
593
- filepath = __dirname + filepath;
594
- // Read and return the file buffer
595
- return fs_1.default.readFileSync(filepath);
596
- }
597
- catch (error) {
598
- throw new Error(`We could not cache ${filepath} file for further use: ${error}`);
599
- }
600
- }
601
542
  compareVersions(versionA, versionB) {
602
543
  const partsA = versionA.split('.').map(Number);
603
544
  const partsB = versionB.split('.').map(Number);
604
- utils_1.log.warn(`${JSON.stringify(partsA)}`);
605
- utils_1.log.warn(`${JSON.stringify(partsB)}`);
606
545
  // Compare major versions
607
546
  if (partsA[0] !== partsB[0]) {
608
547
  return -1;
@@ -612,7 +551,6 @@ class EufySecurityPlatform {
612
551
  }
613
552
  checkNodeVersion() {
614
553
  const nodeVersion = process_1.version.slice(1); // Removing 'v' from the version string
615
- utils_1.log.warn(`${nodeVersion}`);
616
554
  // Versions known to break compatibility with RSA_PKCS1_PADDING
617
555
  const incompatibleVersions = [
618
556
  '18.19.1',
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/plugin/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/plugin/platform.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@ export declare const PLATFORM_NAME = "EufySecurity";
6
6
  * This must match the name of your plugin as defined the package.json
7
7
  */
8
8
  export declare const PLUGIN_NAME = "homebridge-eufy-security";
9
+ export declare const STATION_INIT_DELAY: number;
10
+ export declare const DEVICE_INIT_DELAY: number;
9
11
  export declare const PROTECT_HKSV_SEGMENT_LENGTH = 4000;
10
12
  export declare const PROTECT_HKSV_MAX_EVENT_ERRORS = 3;
11
13
  export declare const PROTECT_HKSV_TIMESHIFT_BUFFER_MAXLENGTH: number;
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/plugin/settings.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,WAAW,6BAA6B,CAAC;AAGtD,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAGhD,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAG/C,eAAO,MAAM,uCAAuC,QAAkC,CAAC;AAGvF,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAGnD,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAGrD,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAG9C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAG3C,eAAO,MAAM,iCAAiC,KAAK,CAAC;AAGpD,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAGhD,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,eAAO,MAAM,iBAAiB,8BAA8B,CAAC;AAE7D,eAAO,MAAM,uBAAuB,oCAAoC,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/plugin/settings.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,WAAW,6BAA6B,CAAC;AAEtD,eAAO,MAAM,kBAAkB,QAAW,CAAC;AAC3C,eAAO,MAAM,iBAAiB,QAAW,CAAC;AAG1C,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAGhD,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAG/C,eAAO,MAAM,uCAAuC,QAAkC,CAAC;AAGvF,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAGnD,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAGrD,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAG9C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAG3C,eAAO,MAAM,iCAAiC,KAAK,CAAC;AAGpD,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAGhD,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,eAAO,MAAM,iBAAiB,8BAA8B,CAAC;AAE7D,eAAO,MAAM,uBAAuB,oCAAoC,CAAC"}
package/dist/settings.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /* eslint-disable max-len */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.SnapshotUnavailablePath = exports.SnapshotBlackPath = exports.PROTECT_TWOWAY_HEARTBEAT_INTERVAL = exports.PROTECT_SNAPSHOT_CACHE_MAXAGE = exports.PROTECT_FFMPEG_AUDIO_FILTER_FFTNR = exports.PROTECT_RPI_GPU_MINIMUM = exports.PROTECT_HOMEKIT_IDR_INTERVAL = exports.PROTECT_HOMEKIT_STREAMING_HEADROOM = exports.PROTECT_HKSV_SEGMENT_RESOLUTION = exports.PROTECT_HKSV_TIMESHIFT_BUFFER_MAXLENGTH = exports.PROTECT_HKSV_MAX_EVENT_ERRORS = exports.PROTECT_HKSV_SEGMENT_LENGTH = exports.PLUGIN_NAME = exports.PLATFORM_NAME = void 0;
4
+ exports.SnapshotUnavailablePath = exports.SnapshotBlackPath = exports.PROTECT_TWOWAY_HEARTBEAT_INTERVAL = exports.PROTECT_SNAPSHOT_CACHE_MAXAGE = exports.PROTECT_FFMPEG_AUDIO_FILTER_FFTNR = exports.PROTECT_RPI_GPU_MINIMUM = exports.PROTECT_HOMEKIT_IDR_INTERVAL = exports.PROTECT_HOMEKIT_STREAMING_HEADROOM = exports.PROTECT_HKSV_SEGMENT_RESOLUTION = exports.PROTECT_HKSV_TIMESHIFT_BUFFER_MAXLENGTH = exports.PROTECT_HKSV_MAX_EVENT_ERRORS = exports.PROTECT_HKSV_SEGMENT_LENGTH = exports.DEVICE_INIT_DELAY = exports.STATION_INIT_DELAY = exports.PLUGIN_NAME = exports.PLATFORM_NAME = void 0;
5
5
  /**
6
6
  * This is the name of the platform that users will use to register the plugin in the Homebridge config.json
7
7
  */
@@ -10,6 +10,8 @@ exports.PLATFORM_NAME = 'EufySecurity';
10
10
  * This must match the name of your plugin as defined the package.json
11
11
  */
12
12
  exports.PLUGIN_NAME = 'homebridge-eufy-security';
13
+ exports.STATION_INIT_DELAY = 5 * 1000; // 5 seconds
14
+ exports.DEVICE_INIT_DELAY = 7 * 1000; // 7 seconds;
13
15
  // HomeKit Secure Video segment length, in milliseconds. HomeKit only supports this value currently.
14
16
  exports.PROTECT_HKSV_SEGMENT_LENGTH = 4000;
15
17
  // HomeKit Secure Video maximum event recording errors to accept before resetting a connection to the Protect controller.
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/plugin/settings.ts"],"names":[],"mappings":";AAAA,4BAA4B;;;AAE5B;;GAEG;AACU,QAAA,aAAa,GAAG,cAAc,CAAC;AAE5C;;GAEG;AACU,QAAA,WAAW,GAAG,0BAA0B,CAAC;AAEtD,oGAAoG;AACvF,QAAA,2BAA2B,GAAG,IAAI,CAAC;AAEhD,yHAAyH;AAC5G,QAAA,6BAA6B,GAAG,CAAC,CAAC;AAE/C,mJAAmJ;AACtI,QAAA,uCAAuC,GAAG,mCAA2B,GAAG,CAAC,CAAC;AAEvF,kKAAkK;AACrJ,QAAA,+BAA+B,GAAG,GAAG,CAAC;AAEnD,+IAA+I;AAClI,QAAA,kCAAkC,GAAG,EAAE,CAAC;AAErD,mEAAmE;AACtD,QAAA,4BAA4B,GAAG,CAAC,CAAC;AAE9C,2EAA2E;AAC9D,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C,mIAAmI;AACtH,QAAA,iCAAiC,GAAG,EAAE,CAAC;AAEpD,wCAAwC;AAC3B,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAEhD,6JAA6J;AAChJ,QAAA,iCAAiC,GAAG,CAAC,CAAC;AAEtC,QAAA,iBAAiB,GAAG,2BAA2B,CAAC;AAEhD,QAAA,uBAAuB,GAAG,iCAAiC,CAAC"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/plugin/settings.ts"],"names":[],"mappings":";AAAA,4BAA4B;;;AAE5B;;GAEG;AACU,QAAA,aAAa,GAAG,cAAc,CAAC;AAE5C;;GAEG;AACU,QAAA,WAAW,GAAG,0BAA0B,CAAC;AAEzC,QAAA,kBAAkB,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,YAAY;AAC3C,QAAA,iBAAiB,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,aAAa;AAExD,oGAAoG;AACvF,QAAA,2BAA2B,GAAG,IAAI,CAAC;AAEhD,yHAAyH;AAC5G,QAAA,6BAA6B,GAAG,CAAC,CAAC;AAE/C,mJAAmJ;AACtI,QAAA,uCAAuC,GAAG,mCAA2B,GAAG,CAAC,CAAC;AAEvF,kKAAkK;AACrJ,QAAA,+BAA+B,GAAG,GAAG,CAAC;AAEnD,+IAA+I;AAClI,QAAA,kCAAkC,GAAG,EAAE,CAAC;AAErD,mEAAmE;AACtD,QAAA,4BAA4B,GAAG,CAAC,CAAC;AAE9C,2EAA2E;AAC9D,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C,mIAAmI;AACtH,QAAA,iCAAiC,GAAG,EAAE,CAAC;AAEpD,wCAAwC;AAC3B,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAEhD,6JAA6J;AAChJ,QAAA,iCAAiC,GAAG,CAAC,CAAC;AAEtC,QAAA,iBAAiB,GAAG,2BAA2B,CAAC;AAEhD,QAAA,uBAAuB,GAAG,iCAAiC,CAAC"}
@@ -243,7 +243,7 @@ class UiServer extends plugin_ui_utils_1.HomebridgePluginUiServer {
243
243
  return new Promise((resolve, reject) => {
244
244
  const zip = new zip_lib_1.Zip();
245
245
  let numberOfFiles = 0;
246
- ['log-lib.log', 'eufy-log.log', 'configui-server.log'].forEach(logFile => {
246
+ ['eufy-lib.log', 'eufy-security.log', 'ffmpeg.log', 'configui-lib.log', 'configui-server.log'].forEach(logFile => {
247
247
  for (let i = 0; i < 3; i++) {
248
248
  const fileName = i === 0 ? logFile : `${logFile}.${i}`;
249
249
  const filePath = `${this.storagePath}/${fileName}`;
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "Homebridge Eufy Security",
3
3
  "name": "homebridge-eufy-security",
4
- "version": "2.3.22",
4
+ "version": "2.3.23",
5
5
  "description": "Control Eufy Security from homebridge.",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {