homebridge-eufy-security 2.1.0-beta.13 → 2.1.0-beta.14
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/CHANGELOG.md +21 -10
- package/dist/accessories/CameraAccessory.d.ts +2 -2
- package/dist/accessories/CameraAccessory.d.ts.map +1 -1
- package/dist/accessories/CameraAccessory.js +4 -5
- package/dist/accessories/CameraAccessory.js.map +1 -1
- package/dist/accessories/SmartLockAccessory.d.ts +1 -1
- package/dist/accessories/SmartLockAccessory.d.ts.map +1 -1
- package/dist/accessories/SmartLockAccessory.js +9 -6
- package/dist/accessories/SmartLockAccessory.js.map +1 -1
- package/dist/accessories/StationAccessory.d.ts +1 -1
- package/dist/accessories/StationAccessory.d.ts.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/{accessories → controller}/LocalLivestreamManager.d.ts +1 -1
- package/dist/controller/LocalLivestreamManager.d.ts.map +1 -0
- package/dist/{accessories → controller}/LocalLivestreamManager.js +0 -0
- package/dist/controller/LocalLivestreamManager.js.map +1 -0
- package/dist/{accessories → controller}/SnapshotManager.d.ts +5 -3
- package/dist/controller/SnapshotManager.d.ts.map +1 -0
- package/dist/{accessories → controller}/SnapshotManager.js +60 -83
- package/dist/controller/SnapshotManager.js.map +1 -0
- package/dist/{accessories → controller}/streamingDelegate.d.ts +8 -20
- package/dist/controller/streamingDelegate.d.ts.map +1 -0
- package/dist/controller/streamingDelegate.js +342 -0
- package/dist/controller/streamingDelegate.js.map +1 -0
- package/dist/{accessories → utils}/Talkback.d.ts +0 -0
- package/dist/utils/Talkback.d.ts.map +1 -0
- package/dist/{accessories → utils}/Talkback.js +0 -0
- package/dist/utils/Talkback.js.map +1 -0
- package/dist/{accessories → utils}/configTypes.d.ts +2 -7
- package/dist/utils/configTypes.d.ts.map +1 -0
- package/dist/{accessories → utils}/configTypes.js +0 -0
- package/dist/utils/configTypes.js.map +1 -0
- package/dist/utils/ffmpeg.d.ts +86 -0
- package/dist/utils/ffmpeg.d.ts.map +1 -0
- package/dist/utils/ffmpeg.js +566 -0
- package/dist/utils/ffmpeg.js.map +1 -0
- package/dist/{accessories → utils}/logger.d.ts +0 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/{accessories → utils}/logger.js +0 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/utils.d.ts +2 -2
- package/dist/utils/utils.d.ts.map +1 -1
- package/homebridge-ui/public/index.html +1 -1
- package/homebridge-ui/public/{main.a159fe0af685f7cf.js → main.ffbc891b596e25df.js} +1 -1
- package/package.json +2 -2
- package/dist/accessories/LocalLivestreamManager.d.ts.map +0 -1
- package/dist/accessories/LocalLivestreamManager.js.map +0 -1
- package/dist/accessories/SnapshotManager.d.ts.map +0 -1
- package/dist/accessories/SnapshotManager.js.map +0 -1
- package/dist/accessories/Talkback.d.ts.map +0 -1
- package/dist/accessories/Talkback.js.map +0 -1
- package/dist/accessories/UniversalStream.d.ts +0 -17
- package/dist/accessories/UniversalStream.d.ts.map +0 -1
- package/dist/accessories/UniversalStream.js +0 -80
- package/dist/accessories/UniversalStream.js.map +0 -1
- package/dist/accessories/configTypes.d.ts.map +0 -1
- package/dist/accessories/configTypes.js.map +0 -1
- package/dist/accessories/ffmpeg.d.ts +0 -31
- package/dist/accessories/ffmpeg.d.ts.map +0 -1
- package/dist/accessories/ffmpeg.js +0 -139
- package/dist/accessories/ffmpeg.js.map +0 -1
- package/dist/accessories/logger.d.ts.map +0 -1
- package/dist/accessories/logger.js.map +0 -1
- package/dist/accessories/streamingDelegate.d.ts.map +0 -1
- package/dist/accessories/streamingDelegate.js +0 -781
- package/dist/accessories/streamingDelegate.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,22 +2,26 @@
|
|
|
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
|
-
## 2.1.0-beta.
|
|
5
|
+
## 2.1.0-beta.14 (01/08/2022) - latest changes
|
|
6
6
|
|
|
7
7
|
### Added
|
|
8
8
|
|
|
9
|
-
-
|
|
10
|
-
-
|
|
9
|
+
- Presets (`copy`, `performance`) for advanced video config
|
|
10
|
+
- Setting to choose audio sample rate
|
|
11
11
|
|
|
12
12
|
### Changed
|
|
13
13
|
|
|
14
|
-
-
|
|
15
|
-
-
|
|
14
|
+
- Refactored ffmpeg processing
|
|
15
|
+
- Updated eufy-security-client to 2.1.2
|
|
16
|
+
- Deprecated options `forcerefreshsnap` and `useEnhancedSnapshotBehaviour` were removed and will no longer be evaluated
|
|
17
|
+
- Removed `mapvideo`, `mapaudio`, `maxDelay` and `forceMax` options from advanced VideoConfig since they are deprecated
|
|
18
|
+
- By default the plugin will now use one ffmpeg process for video and audio - this can be controlled via an option (`useSeparateProcesses` is now used instead of `useOneProcess`)
|
|
16
19
|
|
|
17
20
|
### Fixed
|
|
18
21
|
|
|
19
|
-
-
|
|
20
|
-
-
|
|
22
|
+
- Fix issue that streams were only rendered in 640x480 - see #46
|
|
23
|
+
- Fixed smartlocks - see #110
|
|
24
|
+
- Fixed occasional EPIPE Error when streaming - see #14
|
|
21
25
|
|
|
22
26
|
## 2.1.0 (beta) - complete changes of the beta so far (19/07/2022)
|
|
23
27
|
|
|
@@ -32,14 +36,15 @@ You can find the complete detailled changelog for every beta release [here](http
|
|
|
32
36
|
- Control Station alarm through HomeKit (reset the alarm and even trigger it with HomeKit automations. You can now trigger the alarm even with third party accessories - e.g. with devices from vendors other than eufy) - see #26
|
|
33
37
|
- Feature to download log files through plugin configuration ui
|
|
34
38
|
- Setting to disable log file storage to disk (possible fix for #93)
|
|
35
|
-
- Setting to choose
|
|
39
|
+
- Setting to choose that separate ffmpeg processes for audio and video streaming will be used (this can increase performance)
|
|
40
|
+
- Setting to choose audio sample rate
|
|
41
|
+
- Presets (`copy`, `performance`) for advanced video config
|
|
36
42
|
|
|
37
43
|
### Changed
|
|
38
44
|
|
|
39
45
|
- Complete redesign of the config ui screen
|
|
40
46
|
- RTSP setting is now only avaiable on compatible devices
|
|
41
|
-
-
|
|
42
|
-
- Updated to latest version of eufy-security-client (2.1.1) (fix for #72 and #38)
|
|
47
|
+
- Updated to latest version of eufy-security-client (2.1.2) (fix for #72 and #38)
|
|
43
48
|
- Refactored whole project structure to resemble the new workspace layout (plugin + custom ui)
|
|
44
49
|
- Reimplementation of device discovery algorithm to better reflect best practices mentioned in [this comment](https://github.com/bropat/eufy-security-client/issues/167#issuecomment-1155388624)
|
|
45
50
|
- Added timeouts for guard mode changes. If these fail HomeKit will no longer get stuck, trying to change the guard mode and an error will be written to the log output (see #39)
|
|
@@ -49,6 +54,9 @@ You can find the complete detailled changelog for every beta release [here](http
|
|
|
49
54
|
- Cleaned up dependencies
|
|
50
55
|
- Using tslog instead of bunyan for logging of eufy-security-client messages since bunyan would not print deep nested objects correctly
|
|
51
56
|
- Logging for eufy-security-client is moved to separate log file: `eufy-log.log`
|
|
57
|
+
- Refactored handling of ffmpeg processes
|
|
58
|
+
- Deprecated option `forcerefreshsnap` was removed and will no longer be evaluated - use `snapshotHandlingMethod` instead
|
|
59
|
+
- Removed `mapvideo`, `mapaudio`, `maxDelay` and `forceMax` options from advanced VideoConfig since they are deprecated
|
|
52
60
|
|
|
53
61
|
### Fixed
|
|
54
62
|
|
|
@@ -68,6 +76,9 @@ You can find the complete detailled changelog for every beta release [here](http
|
|
|
68
76
|
- Smart lock states could be wrong on plugin startup (further improvements needed for smartlocks)
|
|
69
77
|
- Setting to 'enable audio' was not working - audio was always streamed
|
|
70
78
|
- Setting `maxFPS` in advanced camera configuration should now work as expected (see #125)
|
|
79
|
+
- Fix issue that streams were only rendered in 640x480 - see #46
|
|
80
|
+
- Fixed smartlocks - see #110
|
|
81
|
+
- Fixed occasional EPIPE Error when streaming - see #14
|
|
71
82
|
|
|
72
83
|
## 2.0.1 (20.06.2022)
|
|
73
84
|
|
|
@@ -2,8 +2,8 @@ import { Service, PlatformAccessory, CharacteristicValue } from 'homebridge';
|
|
|
2
2
|
import { EufySecurityPlatform } from '../platform';
|
|
3
3
|
import { DeviceAccessory } from './Device';
|
|
4
4
|
import { Camera } from 'eufy-security-client';
|
|
5
|
-
import { StreamingDelegate } from '
|
|
6
|
-
import { CameraConfig } from '
|
|
5
|
+
import { StreamingDelegate } from '../controller/streamingDelegate';
|
|
6
|
+
import { CameraConfig } from '../utils/configTypes';
|
|
7
7
|
/**
|
|
8
8
|
* Platform Accessory
|
|
9
9
|
* An instance of this class is created for each accessory your platform registers
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CameraAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/CameraAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAM3C,OAAO,EAAE,MAAM,EAAiD,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"CameraAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/CameraAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAM3C,OAAO,EAAE,MAAM,EAAiD,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAe,MAAM,sBAAsB,CAAC;AAEjE;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,eAAe;IAElD,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC;IAEjC,SAAgB,YAAY,EAAE,YAAY,CAAC;IAE3C,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAE7D,OAAO,CAAC,aAAa,CAAC,CAAiB;gBAGrC,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM;IAmHpB,OAAO,CAAC,eAAe;IAqCvB,OAAO,CAAC,cAAc;IAiDtB,6BAA6B,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAM7D;;OAEG;IACH,6BAA6B,CAAC,KAAK,KAAA;IAInC;;OAEG;IACH,4BAA4B,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAM5D;;OAEG;IACH,4BAA4B,CAAC,KAAK,KAAA;IAIlC;;OAEG;IACG,4CAA4C,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAWlF;;OAEG;IACH,4CAA4C,CAAC,KAAK,KAAA;IAOlD;;OAEG;IACG,2BAA2B,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAWjE;;OAEG;IACH,2BAA2B,CAAC,KAAK,KAAA;IAOjC,OAAO,CAAC,cAAc;IA+BhB,uBAAuB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAW7D,OAAO,CAAC,sCAAsC;IAyBxC,eAAe,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAW/C,yBAAyB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAWzD,eAAe,CAAC,KAAK,EAAE,mBAAmB;IAS1C,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAWjD,iBAAiB,CAAC,KAAK,EAAE,mBAAmB;IAM5C,gBAAgB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAWhD,gBAAgB,CAAC,KAAK,EAAE,mBAAmB;CAKlD"}
|
|
@@ -6,7 +6,7 @@ const Device_1 = require("./Device");
|
|
|
6
6
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
7
7
|
// @ts-ignore
|
|
8
8
|
const eufy_security_client_1 = require("eufy-security-client");
|
|
9
|
-
const streamingDelegate_1 = require("
|
|
9
|
+
const streamingDelegate_1 = require("../controller/streamingDelegate");
|
|
10
10
|
/**
|
|
11
11
|
* Platform Accessory
|
|
12
12
|
* An instance of this class is created for each accessory your platform registers
|
|
@@ -103,7 +103,7 @@ class CameraAccessory extends Device_1.DeviceAccessory {
|
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
105
|
getCameraConfig() {
|
|
106
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j
|
|
106
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
107
107
|
let config = {};
|
|
108
108
|
if (typeof this.platform.config.cameras !== 'undefined') {
|
|
109
109
|
// eslint-disable-next-line prefer-arrow-callback, brace-style
|
|
@@ -118,12 +118,11 @@ class CameraAccessory extends Device_1.DeviceAccessory {
|
|
|
118
118
|
config.videoConfig = (_e = config.videoConfig) !== null && _e !== void 0 ? _e : (config.videoConfig = {});
|
|
119
119
|
config.useCachedLocalLivestream = (_f = config.useCachedLocalLivestream) !== null && _f !== void 0 ? _f : (config.useCachedLocalLivestream = false);
|
|
120
120
|
config.immediateRingNotificationWithoutSnapshot = (_g = config.immediateRingNotificationWithoutSnapshot) !== null && _g !== void 0 ? _g : (config.immediateRingNotificationWithoutSnapshot = false);
|
|
121
|
-
config.
|
|
122
|
-
config.delayCameraSnapshot = (_j = config.delayCameraSnapshot) !== null && _j !== void 0 ? _j : (config.delayCameraSnapshot = false);
|
|
121
|
+
config.delayCameraSnapshot = (_h = config.delayCameraSnapshot) !== null && _h !== void 0 ? _h : (config.delayCameraSnapshot = false);
|
|
123
122
|
if (!config.snapshotHandlingMethod) {
|
|
124
123
|
config.snapshotHandlingMethod = (config.forcerefreshsnap) ? 1 : 3;
|
|
125
124
|
}
|
|
126
|
-
config.talkback = (
|
|
125
|
+
config.talkback = (_j = config.talkback) !== null && _j !== void 0 ? _j : (config.talkback = false);
|
|
127
126
|
if (config.talkback && !this.eufyDevice.hasCommand(eufy_security_client_1.CommandName.DeviceStartTalkback)) {
|
|
128
127
|
this.platform.log.warn(this.accessory.displayName, 'Talkback for this device is not supported!');
|
|
129
128
|
config.talkback = false;
|
|
@@ -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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"}
|
|
@@ -19,6 +19,6 @@ export declare class SmartLockAccessory extends DeviceAccessory {
|
|
|
19
19
|
handleLockTargetStateSet(value: any): Promise<void>;
|
|
20
20
|
getLockStatus(current?: boolean): 1 | 0 | 2 | 3;
|
|
21
21
|
convertlockStatusCode(lockStatus: any, current?: boolean): 1 | 0 | 2 | 3;
|
|
22
|
-
private
|
|
22
|
+
private onSmartLockPropertyChange;
|
|
23
23
|
}
|
|
24
24
|
//# sourceMappingURL=SmartLockAccessory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartLockAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/SmartLockAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"SmartLockAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/SmartLockAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,EAAU,IAAI,EAA+B,MAAM,sBAAsB,CAAC;AAEjF;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,eAAe;IAErD,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC;gBAGxB,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,IAAI;IAsClB;;OAEG;IACG,yBAAyB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAMzD,wBAAwB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAMxD,wBAAwB,CAAC,KAAK,KAAA;IAYpC,aAAa,CAAC,OAAO,UAAO;IAK5B,qBAAqB,CAAC,UAAU,KAAA,EAAE,OAAO,UAAO;IA4BhD,OAAO,CAAC,yBAAyB;CASlC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SmartLockAccessory = void 0;
|
|
4
4
|
const Device_1 = require("./Device");
|
|
5
|
+
const eufy_security_client_1 = require("eufy-security-client");
|
|
5
6
|
/**
|
|
6
7
|
* Platform Accessory
|
|
7
8
|
* An instance of this class is created for each accessory your platform registers
|
|
@@ -24,7 +25,7 @@ class SmartLockAccessory extends Device_1.DeviceAccessory {
|
|
|
24
25
|
.getCharacteristic(this.platform.Characteristic.LockTargetState)
|
|
25
26
|
.onGet(this.handleLockTargetStateGet.bind(this))
|
|
26
27
|
.onSet(this.handleLockTargetStateSet.bind(this));
|
|
27
|
-
this.SmartLock.on('
|
|
28
|
+
this.SmartLock.on('property changed', this.onSmartLockPropertyChange.bind(this));
|
|
28
29
|
// update the lock state at startup
|
|
29
30
|
const lockStatus = this.SmartLock.isLocked();
|
|
30
31
|
this.platform.log.debug(this.accessory.displayName, 'initial lock eufy state ' + lockStatus);
|
|
@@ -85,11 +86,13 @@ class SmartLockAccessory extends Device_1.DeviceAccessory {
|
|
|
85
86
|
return (current) ? this.platform.Characteristic.LockCurrentState.UNKNOWN : this.platform.Characteristic.LockTargetState.SECURED;
|
|
86
87
|
}
|
|
87
88
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
89
|
+
onSmartLockPropertyChange(_, name, value) {
|
|
90
|
+
if (name === eufy_security_client_1.PropertyName.DeviceLockStatus) {
|
|
91
|
+
this.platform.log.debug(this.accessory.displayName, 'Handle Lock Status: -- ', value);
|
|
92
|
+
this.service
|
|
93
|
+
.getCharacteristic(this.platform.Characteristic.LockCurrentState)
|
|
94
|
+
.updateValue(this.convertlockStatusCode(value));
|
|
95
|
+
}
|
|
93
96
|
}
|
|
94
97
|
}
|
|
95
98
|
exports.SmartLockAccessory = SmartLockAccessory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartLockAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/SmartLockAccessory.ts"],"names":[],"mappings":";;;AAGA,qCAA2C;
|
|
1
|
+
{"version":3,"file":"SmartLockAccessory.js","sourceRoot":"","sources":["../../src/plugin/accessories/SmartLockAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PlatformAccessory, CharacteristicValue } from 'homebridge';
|
|
2
2
|
import { EufySecurityPlatform } from '../platform';
|
|
3
3
|
import { Station } from 'eufy-security-client';
|
|
4
|
-
import { StationConfig } from '
|
|
4
|
+
import { StationConfig } from '../utils/configTypes';
|
|
5
5
|
/**
|
|
6
6
|
* Platform Accessory
|
|
7
7
|
* An instance of this class is created for each accessory your platform registers
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StationAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/StationAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,OAAO,EAAuD,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"StationAccessory.d.ts","sourceRoot":"","sources":["../../src/plugin/accessories/StationAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,OAAO,EAAuD,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;;;;GAIG;AACH,qBAAa,gBAAgB;IA2BzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,WAAW;IA3BrB,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,oBAAoB,CAAU;IACtC,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,KAAK,CAAC;IAEd,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,mBAAmB,CAAC,CAAiB;IAE7C,SAAS,CAAC,cAAc,MAAC;IAEzB,SAAgB,aAAa,EAAE,aAAa,CAAC;IAE7C,OAAO,CAAC,YAAY,CAKlB;IAEF,OAAO,CAAC,sBAAsB,CAA+B;IAC7D,OAAO,CAAC,2BAA2B,CAA+B;gBAG/C,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,iBAAiB,EACrC,WAAW,EAAE,OAAO;IAyF9B,OAAO,CAAC,gBAAgB;IAkCxB,OAAO,CAAC,kCAAkC;IAW1C,OAAO,CAAC,oCAAoC;IAiB5C,OAAO,CAAC,mCAAmC;IAkD3C,OAAO,CAAC,aAAa;IA4BrB,eAAe,CAAC,MAAM,KAAA,GAAG,MAAM;IAO/B,eAAe,CAAC,QAAQ,KAAA,GAAG,MAAM;IAOjC;;OAEG;IACG,mCAAmC,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAiBzE;;OAEG;IACH,OAAO,CAAC,kCAAkC;IAc1C;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA+B1C,OAAO,CAAC,iCAAiC;YAI3B,iCAAiC;IAqC/C,OAAO,CAAC,0BAA0B;IAclC,OAAO,CAAC,wBAAwB;IAShC,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,uBAAuB;IAc/B,OAAO,CAAC,oBAAoB;CAa7B"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PlatformConfig } from 'homebridge';
|
|
2
|
-
import { CameraConfig, StationConfig } from './
|
|
2
|
+
import { CameraConfig, StationConfig } from './utils/configTypes';
|
|
3
3
|
/**
|
|
4
4
|
* HomebridgePlatform
|
|
5
5
|
* This class is the main constructor for your plugin, this is where you should
|
package/dist/config.d.ts.map
CHANGED
|
@@ -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,
|
|
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,qBAAqB,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,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,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;CACrB"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { EventEmitter, Readable } from 'stream';
|
|
3
3
|
import { Camera } from 'eufy-security-client';
|
|
4
4
|
import { EufySecurityPlatform } from '../platform';
|
|
5
|
-
import { Logger } from '
|
|
5
|
+
import { Logger } from '../utils/logger';
|
|
6
6
|
declare class AudiostreamProxy extends Readable {
|
|
7
7
|
private log;
|
|
8
8
|
private cacheData;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalLivestreamManager.d.ts","sourceRoot":"","sources":["../../src/plugin/controller/LocalLivestreamManager.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEhD,OAAO,EAAmC,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAWzC,cAAM,gBAAiB,SAAQ,QAAQ;IAErC,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,sBAAsB,CAAS;IAEvC,OAAO,CAAC,eAAe,CAAK;gBAEhB,GAAG,EAAE,MAAM;IAMvB,OAAO,CAAC,YAAY;IAKb,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAShC,eAAe,IAAI,IAAI;IAM9B,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAU1B;AAED,cAAM,gBAAiB,SAAQ,QAAQ;IAErC,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,WAAW,CAA+B;IAElD,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,eAAe,CAAK;gBAEhB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM;IAU9F,OAAO,CAAC,YAAY;IAKb,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAgBhC,eAAe,IAAI,IAAI;IAS9B,OAAO,CAAC,gBAAgB;IAUxB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAY1B;AAED,aAAK,WAAW,GAAG;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,gBAAgB,CAAC;IAC9B,WAAW,EAAE,gBAAgB,CAAC;CAC/B,CAAC;AAEF,qBAAa,sBAAuB,SAAQ,YAAY;IAEtD,OAAO,CAAC,QAAQ,CAAC,yCAAyC,CAAM;IAChE,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAK;IAEpD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,WAAW,CAAqB;IAExC,OAAO,CAAC,YAAY,CAA4C;IAEhE,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,kBAAkB,CAAC,CAAiB;IAE5C,OAAO,CAAC,mBAAmB,CAAgB;IAC3C,OAAO,CAAC,oBAAoB,CAAS;IAErC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM;IA0B9F,OAAO,CAAC,UAAU;IAgBL,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC;YAkBzC,0BAA0B;IAmCxC,OAAO,CAAC,kCAAkC;IAgBnC,mBAAmB,IAAI,IAAI;IAMlC,OAAO,CAAC,uBAAuB;YAYjB,wBAAwB;IAgEtC,OAAO,CAAC,cAAc;IAiBf,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAUxC,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB;IAsCzB,OAAO,CAAC,QAAQ;CAYjB"}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalLivestreamManager.js","sourceRoot":"","sources":["../../src/plugin/controller/LocalLivestreamManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { EventEmitter } from 'node:stream';
|
|
3
3
|
import { Camera } from 'eufy-security-client';
|
|
4
|
-
import { CameraConfig } from '
|
|
4
|
+
import { CameraConfig } from '../utils/configTypes';
|
|
5
5
|
import { EufySecurityPlatform } from '../platform';
|
|
6
6
|
import { LocalLivestreamManager } from './LocalLivestreamManager';
|
|
7
|
-
import { Logger } from '
|
|
7
|
+
import { Logger } from '../utils/logger';
|
|
8
|
+
import { SnapshotRequest } from 'homebridge';
|
|
8
9
|
/**
|
|
9
10
|
* possible performance settings:
|
|
10
11
|
* 1. snapshots as current as possible (weak homebridge performance) -> forceRefreshSnapshot
|
|
@@ -38,7 +39,7 @@ export declare class SnapshotManager extends EventEmitter {
|
|
|
38
39
|
constructor(platform: EufySecurityPlatform, device: Camera, cameraConfig: CameraConfig, livestreamManager: LocalLivestreamManager, log: Logger);
|
|
39
40
|
private onRingEvent;
|
|
40
41
|
private onEvent;
|
|
41
|
-
getSnapshotBuffer(): Promise<Buffer>;
|
|
42
|
+
getSnapshotBuffer(request: SnapshotRequest): Promise<Buffer>;
|
|
42
43
|
private getNewestSnapshotBuffer;
|
|
43
44
|
private getBalancedSnapshot;
|
|
44
45
|
private getNewestCloudSnapshot;
|
|
@@ -53,5 +54,6 @@ export declare class SnapshotManager extends EventEmitter {
|
|
|
53
54
|
private getCameraSource;
|
|
54
55
|
private urlsAreEqual;
|
|
55
56
|
private getUrlWithoutParameters;
|
|
57
|
+
private resizeSnapshot;
|
|
56
58
|
}
|
|
57
59
|
//# sourceMappingURL=SnapshotManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SnapshotManager.d.ts","sourceRoot":"","sources":["../../src/plugin/controller/SnapshotManager.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAY,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,MAAM,EAAuC,MAAM,sBAAsB,CAAC;AAGnF,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAwB7C;;;;;;;;;;;;;;;GAeG;AAEH,qBAAa,eAAgB,SAAQ,YAAY;IAE/C,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,GAAG,CAAC;IACZ,OAAO,CAAC,iBAAiB,CAAC;IAE1B,OAAO,CAAC,iBAAiB,CAAC,CAAW;IACrC,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,OAAO,CAAC,oBAAoB,CAAC,CAAiB;gBAGlC,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM;IA4D9I,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;YAalB,sBAAsB;YAMtB,oBAAoB;YAuBpB,gBAAgB;IAmC9B,OAAO,CAAC,iBAAiB;IAuCzB,OAAO,CAAC,aAAa;YAQP,0BAA0B;YA4B1B,wBAAwB;YA0CxB,eAAe;IA0B7B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,uBAAuB;YAQjB,cAAc;CAY7B"}
|
|
@@ -7,11 +7,10 @@ exports.SnapshotManager = void 0;
|
|
|
7
7
|
const node_https_1 = __importDefault(require("node:https"));
|
|
8
8
|
const node_fs_1 = require("node:fs");
|
|
9
9
|
const node_stream_1 = require("node:stream");
|
|
10
|
-
const child_process_1 = require("child_process");
|
|
11
10
|
const eufy_security_client_1 = require("eufy-security-client");
|
|
12
11
|
const ffmpeg_for_homebridge_1 = __importDefault(require("ffmpeg-for-homebridge"));
|
|
13
|
-
const UniversalStream_1 = require("./UniversalStream");
|
|
14
12
|
const utils_1 = require("../utils/utils");
|
|
13
|
+
const ffmpeg_1 = require("../utils/ffmpeg");
|
|
15
14
|
const SnapshotBlackPath = require.resolve('../../media/Snapshot-black.png');
|
|
16
15
|
let MINUTES_TO_WAIT_FOR_AUTOMATIC_REFRESH_TO_BEGIN = 1; // should be incremented by 1 for every device
|
|
17
16
|
/**
|
|
@@ -103,38 +102,45 @@ class SnapshotManager extends node_stream_1.EventEmitter {
|
|
|
103
102
|
this.lastEvent = Date.now();
|
|
104
103
|
}
|
|
105
104
|
}
|
|
106
|
-
async getSnapshotBuffer() {
|
|
105
|
+
async getSnapshotBuffer(request) {
|
|
107
106
|
// return a new snapshot it it is recent enough (not more than 15 seconds)
|
|
108
107
|
if (this.currentSnapshot) {
|
|
109
108
|
const diff = Math.abs((Date.now() - this.currentSnapshot.timestamp) / 1000);
|
|
110
109
|
if (diff <= 15) {
|
|
111
|
-
return
|
|
110
|
+
return this.resizeSnapshot(this.currentSnapshot.image, request);
|
|
112
111
|
}
|
|
113
112
|
}
|
|
114
113
|
const diff = (Date.now() - this.lastRingEvent) / 1000;
|
|
115
114
|
if (this.cameraConfig.immediateRingNotificationWithoutSnapshot && diff < 5) {
|
|
116
115
|
this.log.debug(this.device.getName(), 'Sending empty snapshot to speed up homekit notification for ring event.');
|
|
117
116
|
if (this.blackSnapshot) {
|
|
118
|
-
return
|
|
117
|
+
return this.resizeSnapshot(this.blackSnapshot, request);
|
|
119
118
|
}
|
|
120
119
|
else {
|
|
121
120
|
return Promise.reject('Prioritize ring notification over snapshot request. But could not supply empty snapshot.');
|
|
122
121
|
}
|
|
123
122
|
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
123
|
+
let snapshot = Buffer.from([]);
|
|
124
|
+
try {
|
|
125
|
+
if (this.cameraConfig.snapshotHandlingMethod === 1) {
|
|
126
|
+
// return a preferablly most recent snapshot every time
|
|
127
|
+
snapshot = await this.getNewestSnapshotBuffer();
|
|
128
|
+
}
|
|
129
|
+
else if (this.cameraConfig.snapshotHandlingMethod === 2) {
|
|
130
|
+
// balanced method
|
|
131
|
+
snapshot = await this.getBalancedSnapshot();
|
|
132
|
+
}
|
|
133
|
+
else if (this.cameraConfig.snapshotHandlingMethod === 3) {
|
|
134
|
+
// fastest method with potentially old snapshots
|
|
135
|
+
snapshot = await this.getNewestCloudSnapshot();
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
return Promise.reject('No suitable handling method for snapshots defined');
|
|
139
|
+
}
|
|
140
|
+
return this.resizeSnapshot(snapshot, request);
|
|
135
141
|
}
|
|
136
|
-
|
|
137
|
-
return Promise.reject(
|
|
142
|
+
catch (err) {
|
|
143
|
+
return Promise.reject(err);
|
|
138
144
|
}
|
|
139
145
|
}
|
|
140
146
|
async getNewestSnapshotBuffer() {
|
|
@@ -379,73 +385,38 @@ class SnapshotManager extends node_stream_1.EventEmitter {
|
|
|
379
385
|
}
|
|
380
386
|
}
|
|
381
387
|
async getCurrentCameraSnapshot() {
|
|
388
|
+
var _a;
|
|
382
389
|
const source = await this.getCameraSource();
|
|
383
390
|
if (!source) {
|
|
384
391
|
return Promise.reject('No camera source detected.');
|
|
385
392
|
}
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
this.log.error(line, this.device.getName() + '] [Snapshot');
|
|
414
|
-
}
|
|
415
|
-
});
|
|
416
|
-
});
|
|
417
|
-
ffmpeg.on('close', () => {
|
|
418
|
-
if (ffmpegTimeout) {
|
|
419
|
-
clearTimeout(ffmpegTimeout);
|
|
420
|
-
}
|
|
421
|
-
if (snapshotBuffer.length > 0) {
|
|
422
|
-
resolve(snapshotBuffer);
|
|
423
|
-
}
|
|
424
|
-
else {
|
|
425
|
-
reject(' Failed to fetch snapshot.');
|
|
426
|
-
}
|
|
427
|
-
if (source.livestreamId !== null) {
|
|
428
|
-
this.livestreamManager.stopProxyStream(source.livestreamId);
|
|
429
|
-
}
|
|
430
|
-
const runtime = (Date.now() - startTime) / 1000;
|
|
431
|
-
let message = 'Fetching snapshot took ' + runtime + ' seconds.';
|
|
432
|
-
if (runtime < 5) {
|
|
433
|
-
this.log.debug(message, this.device.getName(), this.cameraConfig.videoConfig.debug);
|
|
434
|
-
}
|
|
435
|
-
else {
|
|
436
|
-
if (!this.cameraConfig.unbridge) {
|
|
437
|
-
message += ' It is highly recommended you switch to unbridge mode.';
|
|
438
|
-
}
|
|
439
|
-
if (runtime < 22) {
|
|
440
|
-
this.log.warn(message, this.device.getName());
|
|
441
|
-
}
|
|
442
|
-
else {
|
|
443
|
-
message += ' The request has timed out.';
|
|
444
|
-
this.log.error(message, this.device.getName());
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
});
|
|
448
|
-
});
|
|
393
|
+
const parameters = await ffmpeg_1.FFmpegParameters.forSnapshot((_a = this.cameraConfig.videoConfig) === null || _a === void 0 ? void 0 : _a.debug);
|
|
394
|
+
if (source.url) {
|
|
395
|
+
parameters.setInputSource(source.url);
|
|
396
|
+
}
|
|
397
|
+
else if (source.stream && source.livestreamId) {
|
|
398
|
+
await parameters.setInputStream(source.stream);
|
|
399
|
+
}
|
|
400
|
+
else {
|
|
401
|
+
return Promise.reject('No valid camera source detected.');
|
|
402
|
+
}
|
|
403
|
+
if (this.cameraConfig.delayCameraSnapshot) {
|
|
404
|
+
parameters.setDelayedSnapshot();
|
|
405
|
+
}
|
|
406
|
+
try {
|
|
407
|
+
const ffmpeg = new ffmpeg_1.FFmpeg(`[${this.device.getName()}] [Snapshot Process]`, parameters, this.log);
|
|
408
|
+
const buffer = await ffmpeg.getResult();
|
|
409
|
+
if (source.livestreamId) {
|
|
410
|
+
this.livestreamManager.stopProxyStream(source.livestreamId);
|
|
411
|
+
}
|
|
412
|
+
return Promise.resolve(buffer);
|
|
413
|
+
}
|
|
414
|
+
catch (err) {
|
|
415
|
+
if (source.livestreamId) {
|
|
416
|
+
this.livestreamManager.stopProxyStream(source.livestreamId);
|
|
417
|
+
}
|
|
418
|
+
return Promise.reject(err);
|
|
419
|
+
}
|
|
449
420
|
}
|
|
450
421
|
async getCameraSource() {
|
|
451
422
|
if ((0, utils_1.is_rtsp_ready)(this.device, this.cameraConfig, this.log)) {
|
|
@@ -464,9 +435,8 @@ class SnapshotManager extends node_stream_1.EventEmitter {
|
|
|
464
435
|
else {
|
|
465
436
|
try {
|
|
466
437
|
const streamData = await this.livestreamManager.getLocalLivestream();
|
|
467
|
-
const uVideoStream = (0, UniversalStream_1.StreamInput)(streamData.videostream, this.device.getName() + '_video', this.platform.eufyPath, this.log);
|
|
468
438
|
return {
|
|
469
|
-
|
|
439
|
+
stream: streamData.videostream,
|
|
470
440
|
livestreamId: streamData.id,
|
|
471
441
|
};
|
|
472
442
|
}
|
|
@@ -486,6 +456,13 @@ class SnapshotManager extends node_stream_1.EventEmitter {
|
|
|
486
456
|
}
|
|
487
457
|
return url.substring(0, endIndex);
|
|
488
458
|
}
|
|
459
|
+
async resizeSnapshot(snapshot, request) {
|
|
460
|
+
var _a;
|
|
461
|
+
const parameters = await ffmpeg_1.FFmpegParameters.forSnapshot((_a = this.cameraConfig.videoConfig) === null || _a === void 0 ? void 0 : _a.debug);
|
|
462
|
+
parameters.setup(this.cameraConfig, request);
|
|
463
|
+
const ffmpeg = new ffmpeg_1.FFmpeg(`[${this.device.getName()}] [Snapshot Resize Process]`, parameters, this.log);
|
|
464
|
+
return ffmpeg.getResult(snapshot);
|
|
465
|
+
}
|
|
489
466
|
}
|
|
490
467
|
exports.SnapshotManager = SnapshotManager;
|
|
491
468
|
//# sourceMappingURL=SnapshotManager.js.map
|