@camera.ui/camera-ui-eufy 0.0.19 → 0.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/camera.d.ts +2 -1
- package/dist/camera.js +17 -12
- package/dist/camera.js.map +1 -1
- package/dist/eufy/LocalLiveStreamManager.d.ts +2 -2
- package/dist/eufy/LocalLiveStreamManager.js +13 -13
- package/dist/eufy/LocalLiveStreamManager.js.map +1 -1
- package/dist/eufy/Talkback.d.ts +2 -2
- package/dist/eufy/Talkback.js +9 -9
- package/dist/eufy/Talkback.js.map +1 -1
- package/package.json +11 -8
package/dist/camera.d.ts
CHANGED
|
@@ -8,7 +8,8 @@ export declare class Camera implements CameraDelegate {
|
|
|
8
8
|
private home;
|
|
9
9
|
private eufyClient;
|
|
10
10
|
private eufyDevice;
|
|
11
|
-
private
|
|
11
|
+
private pluginLogger;
|
|
12
|
+
private cameraLogger;
|
|
12
13
|
private ffmpegPath?;
|
|
13
14
|
private rtspServer;
|
|
14
15
|
private localLivestreamManager;
|
package/dist/camera.js
CHANGED
|
@@ -8,7 +8,8 @@ export class Camera {
|
|
|
8
8
|
home;
|
|
9
9
|
eufyClient;
|
|
10
10
|
eufyDevice;
|
|
11
|
-
|
|
11
|
+
pluginLogger;
|
|
12
|
+
cameraLogger;
|
|
12
13
|
ffmpegPath;
|
|
13
14
|
rtspServer;
|
|
14
15
|
localLivestreamManager;
|
|
@@ -18,7 +19,8 @@ export class Camera {
|
|
|
18
19
|
this.home = home;
|
|
19
20
|
this.eufyClient = eufyClient;
|
|
20
21
|
this.eufyDevice = eufyDevice;
|
|
21
|
-
this.
|
|
22
|
+
this.pluginLogger = logger;
|
|
23
|
+
this.cameraLogger = logger;
|
|
22
24
|
}
|
|
23
25
|
async createCameraDevice() {
|
|
24
26
|
await this.createRTSPServer();
|
|
@@ -28,7 +30,7 @@ export class Camera {
|
|
|
28
30
|
// const streamUrls = [this.rtspServer.streamUrl, `ffmpeg:${transcodedSourceName}#video=copy#audio=opus`];
|
|
29
31
|
const cameraDevice = Array.from(this.platform.cameras.values()).find((camera) => camera.nativeId === this.eufyDevice.getSerial());
|
|
30
32
|
if (!cameraDevice) {
|
|
31
|
-
this.
|
|
33
|
+
this.pluginLogger.log(this.home.name, 'Adding camera', this.eufyDevice.getName());
|
|
32
34
|
this.cameraDevice = await this.platform.api.deviceManager.createCamera({
|
|
33
35
|
name: this.eufyDevice.getName(),
|
|
34
36
|
nativeId: this.eufyDevice.getSerial(),
|
|
@@ -55,8 +57,9 @@ export class Camera {
|
|
|
55
57
|
await this.cameraDevice.updateCameraSource(cameraDevice.streamSource._id, { urls: streamUrls });
|
|
56
58
|
}
|
|
57
59
|
this.cameraDevice.setDelegate('cameraDelegate', this);
|
|
58
|
-
this.
|
|
59
|
-
this.
|
|
60
|
+
this.cameraLogger = this.cameraDevice.logger;
|
|
61
|
+
this.localLivestreamManager = new LocalLivestreamManager(this.home, this.eufyClient, this.eufyDevice, this.cameraDevice, this.cameraLogger);
|
|
62
|
+
this.talkbackStream = new TalkbackStream(this.home, this.eufyClient, this.eufyDevice, this.cameraDevice, this.cameraLogger);
|
|
60
63
|
const ffmpegPath = await this.platform.api.coreManager.getFFmpegPath();
|
|
61
64
|
this.rtspServer.changeFFmpegPath(ffmpegPath);
|
|
62
65
|
await this.cameraDevice.connect();
|
|
@@ -88,14 +91,16 @@ export class Camera {
|
|
|
88
91
|
else {
|
|
89
92
|
stream = {
|
|
90
93
|
name: 'Eufy',
|
|
91
|
-
url:
|
|
94
|
+
url: async () => {
|
|
95
|
+
return this.eufyDevice.getPropertyValue(PropertyName.DeviceRTSPStreamUrl);
|
|
96
|
+
},
|
|
92
97
|
};
|
|
93
98
|
}
|
|
94
99
|
const rtspLogger = {
|
|
95
|
-
// log: this.
|
|
96
|
-
warn: this.
|
|
97
|
-
error: this.
|
|
98
|
-
// debug: this.
|
|
100
|
+
// log: this.cameraLogger.log.bind(this.logger),
|
|
101
|
+
warn: this.cameraLogger.warn.bind(this.cameraLogger),
|
|
102
|
+
error: this.cameraLogger.error.bind(this.cameraLogger),
|
|
103
|
+
// debug: this.cameraLogger.trace.bind(this.logger),
|
|
99
104
|
};
|
|
100
105
|
this.rtspServer = await RTSPSingleServer.initialize({ stream }, rtspLogger);
|
|
101
106
|
await this.rtspServer.listen();
|
|
@@ -108,7 +113,7 @@ export class Camera {
|
|
|
108
113
|
stationStream.audiostream.pipe(streamProcess.cp.stdio[5]);
|
|
109
114
|
}
|
|
110
115
|
catch (error) {
|
|
111
|
-
this.
|
|
116
|
+
this.cameraLogger.error(this.home.name, 'Failed to start local livestream:', error);
|
|
112
117
|
streamProcess.kill();
|
|
113
118
|
}
|
|
114
119
|
});
|
|
@@ -121,7 +126,7 @@ export class Camera {
|
|
|
121
126
|
}
|
|
122
127
|
}
|
|
123
128
|
checkStates() {
|
|
124
|
-
this.
|
|
129
|
+
this.cameraLogger.debug('Checking states...');
|
|
125
130
|
}
|
|
126
131
|
}
|
|
127
132
|
//# sourceMappingURL=camera.js.map
|
package/dist/camera.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"camera.js","sourceRoot":"","sources":["../src/camera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AASpD,MAAM,OAAO,MAAM;IACV,YAAY,CAAgB;IAE3B,QAAQ,CAAO;IACf,IAAI,CAAW;IACf,UAAU,CAAe;IACzB,UAAU,CAAa;IACvB,
|
|
1
|
+
{"version":3,"file":"camera.js","sourceRoot":"","sources":["../src/camera.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,9 +19,9 @@ export declare class LocalLivestreamManager extends EventEmitter {
|
|
|
19
19
|
private eufyClient;
|
|
20
20
|
private cameraDevice;
|
|
21
21
|
private home;
|
|
22
|
-
private
|
|
22
|
+
private cameraLogger;
|
|
23
23
|
private serial_number;
|
|
24
|
-
constructor(home: EufyHome, eufyClient: EufySecurity, eufyDevice: Device, cameraDevice: CameraDevice,
|
|
24
|
+
constructor(home: EufyHome, eufyClient: EufySecurity, eufyDevice: Device, cameraDevice: CameraDevice, cameraLogger: LoggerService);
|
|
25
25
|
private initialize;
|
|
26
26
|
getLocalLivestream(): Promise<StationStream>;
|
|
27
27
|
private startAndGetLocalLiveStream;
|
|
@@ -8,13 +8,13 @@ export class LocalLivestreamManager extends EventEmitter {
|
|
|
8
8
|
eufyClient;
|
|
9
9
|
cameraDevice;
|
|
10
10
|
home;
|
|
11
|
-
|
|
11
|
+
cameraLogger;
|
|
12
12
|
serial_number;
|
|
13
|
-
constructor(home, eufyClient, eufyDevice, cameraDevice,
|
|
13
|
+
constructor(home, eufyClient, eufyDevice, cameraDevice, cameraLogger) {
|
|
14
14
|
super();
|
|
15
15
|
this.eufyClient = eufyClient;
|
|
16
16
|
this.serial_number = eufyDevice.getSerial();
|
|
17
|
-
this.
|
|
17
|
+
this.cameraLogger = cameraLogger;
|
|
18
18
|
this.home = home;
|
|
19
19
|
this.cameraDevice = cameraDevice;
|
|
20
20
|
this.initialize();
|
|
@@ -34,10 +34,10 @@ export class LocalLivestreamManager extends EventEmitter {
|
|
|
34
34
|
}
|
|
35
35
|
// Get the local livestream.
|
|
36
36
|
async getLocalLivestream() {
|
|
37
|
-
this.
|
|
37
|
+
this.cameraLogger.debug(this.home.name, 'New instance requests livestream.');
|
|
38
38
|
if (this.stationStream) {
|
|
39
39
|
const runtime = (Date.now() - this.livestreamStartedAt) / 1000;
|
|
40
|
-
this.
|
|
40
|
+
this.cameraLogger.debug(this.home.name, 'Using livestream that was started ' + runtime + ' seconds ago.');
|
|
41
41
|
return this.stationStream;
|
|
42
42
|
}
|
|
43
43
|
else {
|
|
@@ -47,14 +47,14 @@ export class LocalLivestreamManager extends EventEmitter {
|
|
|
47
47
|
// Start and get the local livestream.
|
|
48
48
|
async startAndGetLocalLiveStream() {
|
|
49
49
|
return new Promise((resolve, reject) => {
|
|
50
|
-
this.
|
|
50
|
+
this.cameraLogger.debug(this.home.name, 'Start new station livestream...');
|
|
51
51
|
if (!this.livestreamIsStarting) {
|
|
52
52
|
// prevent multiple stream starts from eufy station
|
|
53
53
|
this.livestreamIsStarting = true;
|
|
54
54
|
this.eufyClient.startStationLivestream(this.serial_number);
|
|
55
55
|
}
|
|
56
56
|
else {
|
|
57
|
-
this.
|
|
57
|
+
this.cameraLogger.debug(this.home.name, 'stream is already starting. waiting...');
|
|
58
58
|
}
|
|
59
59
|
// Hard stop
|
|
60
60
|
const hardStop = setTimeout(() => {
|
|
@@ -64,7 +64,7 @@ export class LocalLivestreamManager extends EventEmitter {
|
|
|
64
64
|
}, 15 * 1000);
|
|
65
65
|
this.once('livestream start', async () => {
|
|
66
66
|
if (this.stationStream !== null) {
|
|
67
|
-
this.
|
|
67
|
+
this.cameraLogger.debug(this.home.name, 'New livestream started.');
|
|
68
68
|
clearTimeout(hardStop);
|
|
69
69
|
this.livestreamIsStarting = false;
|
|
70
70
|
resolve(this.stationStream);
|
|
@@ -77,14 +77,14 @@ export class LocalLivestreamManager extends EventEmitter {
|
|
|
77
77
|
}
|
|
78
78
|
// Stop the local livestream.
|
|
79
79
|
stopLocalLiveStream() {
|
|
80
|
-
this.
|
|
80
|
+
this.cameraLogger.debug(this.home.name, 'Stopping station livestream.');
|
|
81
81
|
this.eufyClient.stopStationLivestream(this.serial_number);
|
|
82
82
|
this.initialize();
|
|
83
83
|
}
|
|
84
84
|
// Handle the station livestream stop event.
|
|
85
85
|
onStationLivestreamStop(station, device) {
|
|
86
86
|
if (device.getSerial() === this.serial_number) {
|
|
87
|
-
this.
|
|
87
|
+
this.cameraLogger.debug(this.home.name, `${station.getName()} station livestream for ${device.getName()} has stopped.`);
|
|
88
88
|
this.initialize();
|
|
89
89
|
}
|
|
90
90
|
}
|
|
@@ -94,16 +94,16 @@ export class LocalLivestreamManager extends EventEmitter {
|
|
|
94
94
|
if (this.stationStream) {
|
|
95
95
|
const diff = (Date.now() - this.stationStream.createdAt) / 1000;
|
|
96
96
|
if (diff < 5) {
|
|
97
|
-
this.
|
|
97
|
+
this.cameraLogger.warn(this.home.name, 'Second livestream was started from station. Ignore.');
|
|
98
98
|
return;
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
this.initialize(); // important to prevent unwanted behaviour when the eufy station emits the 'livestream start' event multiple times
|
|
102
|
-
this.
|
|
102
|
+
this.cameraLogger.debug(this.home.name, station.getName() + ' station livestream (P2P session) for ' + device.getName() + ' has started.');
|
|
103
103
|
this.livestreamStartedAt = Date.now();
|
|
104
104
|
const createdAt = Date.now();
|
|
105
105
|
this.stationStream = { station, device, metadata, videostream, audiostream, createdAt };
|
|
106
|
-
this.
|
|
106
|
+
this.cameraLogger.debug(this.home.name, 'Stream metadata: ', this.stationStream.metadata);
|
|
107
107
|
this.emit('livestream start');
|
|
108
108
|
}
|
|
109
109
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalLiveStreamManager.js","sourceRoot":"","sources":["../../src/eufy/LocalLiveStreamManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiB3C,mDAAmD;AACnD,MAAM,OAAO,sBAAuB,SAAQ,YAAY;IACrC,8BAA8B,GAAG,CAAC,CAAC;IAE5C,aAAa,GAAyB,IAAI,CAAC;IAE3C,mBAAmB,GAAkB,IAAI,CAAC;IAC1C,oBAAoB,GAAG,KAAK,CAAC;IAE7B,UAAU,CAAe;IACzB,YAAY,CAAe;IAC3B,IAAI,CAAW;IACf,
|
|
1
|
+
{"version":3,"file":"LocalLiveStreamManager.js","sourceRoot":"","sources":["../../src/eufy/LocalLiveStreamManager.ts"],"names":[],"mappings":"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"}
|
package/dist/eufy/Talkback.d.ts
CHANGED
|
@@ -9,10 +9,10 @@ export declare class TalkbackStream extends Duplex {
|
|
|
9
9
|
private targetStream?;
|
|
10
10
|
private eufyClient;
|
|
11
11
|
private cameraSN;
|
|
12
|
-
private
|
|
12
|
+
private cameraLogger;
|
|
13
13
|
private home;
|
|
14
14
|
private cameraDevice;
|
|
15
|
-
constructor(home: EufyHome, eufyClient: EufySecurity, eufyDevice: Device, cameraDevice: CameraDevice,
|
|
15
|
+
constructor(home: EufyHome, eufyClient: EufySecurity, eufyDevice: Device, cameraDevice: CameraDevice, cameraLogger: LoggerService);
|
|
16
16
|
private onTalkbackStarted;
|
|
17
17
|
private onTalkbackStopped;
|
|
18
18
|
stopTalkbackStream(): void;
|
package/dist/eufy/Talkback.js
CHANGED
|
@@ -6,14 +6,14 @@ export class TalkbackStream extends Duplex {
|
|
|
6
6
|
targetStream;
|
|
7
7
|
eufyClient;
|
|
8
8
|
cameraSN;
|
|
9
|
-
|
|
9
|
+
cameraLogger;
|
|
10
10
|
home;
|
|
11
11
|
cameraDevice;
|
|
12
|
-
constructor(home, eufyClient, eufyDevice, cameraDevice,
|
|
12
|
+
constructor(home, eufyClient, eufyDevice, cameraDevice, cameraLogger) {
|
|
13
13
|
super();
|
|
14
14
|
this.home = home;
|
|
15
15
|
this.eufyClient = eufyClient;
|
|
16
|
-
this.
|
|
16
|
+
this.cameraLogger = cameraLogger;
|
|
17
17
|
this.cameraDevice = cameraDevice;
|
|
18
18
|
this.cameraSN = eufyDevice.getSerial();
|
|
19
19
|
this.eufyClient.on('station talkback start', this.onTalkbackStarted.bind(this));
|
|
@@ -23,7 +23,7 @@ export class TalkbackStream extends Duplex {
|
|
|
23
23
|
if (device.getSerial() !== this.cameraSN) {
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
|
-
this.
|
|
26
|
+
this.cameraLogger.debug(this.home.name, 'talkback started event from station ' + station.getName());
|
|
27
27
|
if (this.targetStream) {
|
|
28
28
|
this.unpipe(this.targetStream);
|
|
29
29
|
}
|
|
@@ -34,7 +34,7 @@ export class TalkbackStream extends Duplex {
|
|
|
34
34
|
if (device.getSerial() !== this.cameraSN) {
|
|
35
35
|
return;
|
|
36
36
|
}
|
|
37
|
-
this.
|
|
37
|
+
this.cameraLogger.debug(this.home.name, 'talkback stopped event from station ' + station.getName());
|
|
38
38
|
if (this.targetStream) {
|
|
39
39
|
this.unpipe(this.targetStream);
|
|
40
40
|
}
|
|
@@ -74,18 +74,18 @@ export class TalkbackStream extends Duplex {
|
|
|
74
74
|
startTalkback() {
|
|
75
75
|
if (!this.talkbackStarted) {
|
|
76
76
|
this.talkbackStarted = true;
|
|
77
|
-
this.
|
|
77
|
+
this.cameraLogger.debug(this.home.name, 'starting talkback');
|
|
78
78
|
this.eufyClient.startStationTalkback(this.cameraSN).catch((err) => {
|
|
79
|
-
this.
|
|
79
|
+
this.cameraLogger.error(this.home.name, 'talkback could not be started: ' + err);
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
stopTalkback() {
|
|
84
84
|
if (this.talkbackStarted) {
|
|
85
85
|
this.talkbackStarted = false;
|
|
86
|
-
this.
|
|
86
|
+
this.cameraLogger.debug(this.home.name, 'stopping talkback');
|
|
87
87
|
this.eufyClient.stopStationTalkback(this.cameraSN).catch((err) => {
|
|
88
|
-
this.
|
|
88
|
+
this.cameraLogger.error(this.home.name, 'talkback could not be stopped: ' + err);
|
|
89
89
|
});
|
|
90
90
|
}
|
|
91
91
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Talkback.js","sourceRoot":"","sources":["../../src/eufy/Talkback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAOrC,MAAM,OAAO,cAAe,SAAQ,MAAM;IAChC,SAAS,GAAkB,EAAE,CAAC;IAC9B,eAAe,GAAG,KAAK,CAAC;IACxB,mBAAmB,CAAkB;IAErC,YAAY,CAAY;IAExB,UAAU,CAAe;IACzB,QAAQ,CAAS;IACjB,
|
|
1
|
+
{"version":3,"file":"Talkback.js","sourceRoot":"","sources":["../../src/eufy/Talkback.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"displayName": "Eufy",
|
|
3
3
|
"name": "@camera.ui/camera-ui-eufy",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.20",
|
|
5
5
|
"description": "camera.ui eufy plugin",
|
|
6
6
|
"author": "seydx (https://github.com/seydx/camera.ui)",
|
|
7
7
|
"main": "./dist/index.js",
|
|
@@ -15,16 +15,16 @@
|
|
|
15
15
|
"prepublishOnly": "npm i --package-lock-only && npm run lint && npm run format && npm run build"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@camera.ui/rtsp": "^0.0.
|
|
18
|
+
"@camera.ui/rtsp": "^0.0.40",
|
|
19
19
|
"eufy-security-client": "^3.1.1"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
|
-
"@camera.ui/types": "^0.0.
|
|
22
|
+
"@camera.ui/types": "^0.0.77",
|
|
23
23
|
"@rushstack/eslint-patch": "^1.10.4",
|
|
24
|
-
"@types/node": "^22.7.
|
|
24
|
+
"@types/node": "^22.7.6",
|
|
25
25
|
"@types/ws": "^8.5.12",
|
|
26
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
27
|
-
"@typescript-eslint/parser": "^8.
|
|
26
|
+
"@typescript-eslint/eslint-plugin": "^8.10.0",
|
|
27
|
+
"@typescript-eslint/parser": "^8.10.0",
|
|
28
28
|
"concurrently": "^9.0.1",
|
|
29
29
|
"eslint": "8.57.0",
|
|
30
30
|
"eslint-config-prettier": "^9.1.0",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"url": "https://github.com/seydx/camera.ui/issues"
|
|
39
39
|
},
|
|
40
40
|
"engines": {
|
|
41
|
-
"camera.ui": ">=0.0.34-alpha.
|
|
41
|
+
"camera.ui": ">=0.0.34-alpha.2",
|
|
42
42
|
"node": ">=20.17.0"
|
|
43
43
|
},
|
|
44
44
|
"homepage": "https://github.com/seydx/camera.ui#readme",
|
|
@@ -58,6 +58,9 @@
|
|
|
58
58
|
"objectDetection",
|
|
59
59
|
"ptz"
|
|
60
60
|
],
|
|
61
|
-
"dependencies": []
|
|
61
|
+
"dependencies": [],
|
|
62
|
+
"options": {
|
|
63
|
+
"extendedMotionDetection": false
|
|
64
|
+
}
|
|
62
65
|
}
|
|
63
66
|
}
|