homebridge-unifi-protect 5.1.2 → 5.2.0
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 +2 -2
- package/config.schema.json +7 -0
- package/dist/protect-accessory.js +3 -1
- package/dist/protect-accessory.js.map +1 -1
- package/dist/protect-camera.js +49 -2
- package/dist/protect-camera.js.map +1 -1
- package/dist/protect-platform.js.map +1 -1
- package/dist/protect-record.js +22 -2
- package/dist/protect-record.js.map +1 -1
- package/dist/protect-timeshift.js +37 -4
- package/dist/protect-timeshift.js.map +1 -1
- package/dist/settings.js +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,7 +28,7 @@ For the more technically inclined - this plugin has continued to pioneer the Hom
|
|
|
28
28
|
- **Full HomeKit support for the UniFi Protect ecosystem.** All generally available UniFi Protect devices are supported, including cameras, doorbells, lights, sensors, and ViewPorts.
|
|
29
29
|
|
|
30
30
|
- **[Complete HomeKit Secure Video support for all UniFi Protect cameras.](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/HomeKitSecureVideo.md)** Complete HomeKit Secure Video support, without the need for additional plugins or software beyond FFmpeg. Another community first. We weren't the first to do HKSV, but we are the first to do it seamlessly without the need for additional tools to get a complete solution.
|
|
31
|
-
|
|
31
|
+
|
|
32
32
|
- **Blazing fast video streaming.** Video streaming from HomeKit will start within in 1-2 seconds for cameras, in most cases. I've spent the time to optimize the video streaming experience to ensure it feels very responsive, and *just works*.
|
|
33
33
|
|
|
34
34
|
- **[Full UniFi Protect Doorbell support.](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/Doorbell.md).** This plugin provides complete support for [UniFi Protect Doorbells](https://store.ui.com/collections/unifi-protect/products/uvc-g4-doorbell). We support all the features of the doorbell including - doorbell rings, two-way audio, and the use of the onboard LCD screen for messages. Two-way audio has caveats you should be aware of.
|
|
@@ -65,7 +65,7 @@ I hope to continue to work on this one to get AEC working for two-way audio. [Yo
|
|
|
65
65
|
* [Feature Options](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/FeatureOptions.md): granular options to allow you to set the camera quality individually, show or hide specific cameras, controllers, and more.
|
|
66
66
|
* [Audio Options](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/AudioOptions.md): options to further tailor how audio is handled from Protect, such as background noise reduction.
|
|
67
67
|
* [Doorbells](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/Doorbell.md): how UniFi Protect doorbell support works in this plugin, and how to use all the available features including doorbell messages.
|
|
68
|
-
* [HomeKit Secure Video](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/
|
|
68
|
+
* [HomeKit Secure Video](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/HomeKitSecureVideo.md): how HomeKit Secure Video support works in this plugin with UniFi Protect.
|
|
69
69
|
* [Liveview Scenes](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/Liveviews.md): use the UniFi Protect liveviews feature (available in the UniFi Protect controller webUI) to create motion-detection scenes.
|
|
70
70
|
* [MQTT](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/MQTT.md): how to configure MQTT support.
|
|
71
71
|
* [Advanced Configuration](https://github.com/hjdhjd/homebridge-unifi-protect/blob/master/docs/AdvancedOptions.md): complete list of configuration options available in this plugin.
|
package/config.schema.json
CHANGED
|
@@ -113,6 +113,7 @@
|
|
|
113
113
|
},
|
|
114
114
|
|
|
115
115
|
"name": {
|
|
116
|
+
|
|
116
117
|
"type": "string",
|
|
117
118
|
"title": "Plugin Name",
|
|
118
119
|
"required": true,
|
|
@@ -121,6 +122,7 @@
|
|
|
121
122
|
},
|
|
122
123
|
|
|
123
124
|
"options": {
|
|
125
|
+
|
|
124
126
|
"type": "array",
|
|
125
127
|
"title": "Feature Options",
|
|
126
128
|
|
|
@@ -134,6 +136,7 @@
|
|
|
134
136
|
},
|
|
135
137
|
|
|
136
138
|
"motionDuration": {
|
|
139
|
+
|
|
137
140
|
"type": "integer",
|
|
138
141
|
"title": "Motion Event Duration (seconds)",
|
|
139
142
|
"required": false,
|
|
@@ -144,6 +147,7 @@
|
|
|
144
147
|
},
|
|
145
148
|
|
|
146
149
|
"ringDuration": {
|
|
150
|
+
|
|
147
151
|
"type": "integer",
|
|
148
152
|
"title": "Ring Event Duration (seconds)",
|
|
149
153
|
"required": false,
|
|
@@ -154,6 +158,7 @@
|
|
|
154
158
|
},
|
|
155
159
|
|
|
156
160
|
"verboseFfmpeg": {
|
|
161
|
+
|
|
157
162
|
"type": "boolean",
|
|
158
163
|
"title": "Verbose FFmpeg Logging",
|
|
159
164
|
"required": false,
|
|
@@ -161,6 +166,7 @@
|
|
|
161
166
|
},
|
|
162
167
|
|
|
163
168
|
"videoEncoder": {
|
|
169
|
+
|
|
164
170
|
"type": "string",
|
|
165
171
|
"title": "Video Encoder",
|
|
166
172
|
"required": false,
|
|
@@ -169,6 +175,7 @@
|
|
|
169
175
|
},
|
|
170
176
|
|
|
171
177
|
"videoProcessor": {
|
|
178
|
+
|
|
172
179
|
"type": "string",
|
|
173
180
|
"title": "Video Processor",
|
|
174
181
|
"required": false,
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProtectAccessory = exports.ProtectBase = exports.PROTECT_SWITCH_MOTION_TRIGGER = exports.PROTECT_SWITCH_MOTION_SENSOR = exports.PROTECT_SWITCH_DOORBELL_TRIGGER = exports.PROTECT_CONTACT_SENSOR_ALARM_SOUND = exports.PROTECT_CONTACT_SENSOR = exports.PROTECT_CONTACT_MOTION_SMARTDETECT = void 0;
|
|
3
|
+
exports.ProtectAccessory = exports.ProtectBase = exports.PROTECT_SWITCH_MOTION_TRIGGER = exports.PROTECT_SWITCH_MOTION_SENSOR = exports.PROTECT_SWITCH_HKSV_RECORDING = exports.PROTECT_SWITCH_DOORBELL_TRIGGER = exports.PROTECT_CONTACT_SENSOR_ALARM_SOUND = exports.PROTECT_CONTACT_SENSOR = exports.PROTECT_CONTACT_MOTION_SMARTDETECT = void 0;
|
|
4
4
|
// Manage our contact sensor types.
|
|
5
5
|
exports.PROTECT_CONTACT_MOTION_SMARTDETECT = "ContactMotionSmartDetect";
|
|
6
6
|
exports.PROTECT_CONTACT_SENSOR = "ContactSensor";
|
|
7
7
|
exports.PROTECT_CONTACT_SENSOR_ALARM_SOUND = "ContactAlarmSound";
|
|
8
8
|
// Manage our switch types.
|
|
9
9
|
exports.PROTECT_SWITCH_DOORBELL_TRIGGER = "DoorbellTrigger";
|
|
10
|
+
exports.PROTECT_SWITCH_HKSV_RECORDING = "HKSVRecordingSwitch";
|
|
10
11
|
exports.PROTECT_SWITCH_MOTION_SENSOR = "MotionSensorSwitch";
|
|
11
12
|
exports.PROTECT_SWITCH_MOTION_TRIGGER = "MotionSensorTrigger";
|
|
12
13
|
class ProtectBase {
|
|
@@ -165,6 +166,7 @@ class ProtectAccessory extends ProtectBase {
|
|
|
165
166
|
[
|
|
166
167
|
exports.PROTECT_CONTACT_MOTION_SMARTDETECT.toUpperCase(),
|
|
167
168
|
exports.PROTECT_SWITCH_DOORBELL_TRIGGER.toUpperCase(),
|
|
169
|
+
exports.PROTECT_SWITCH_HKSV_RECORDING.toUpperCase(),
|
|
168
170
|
exports.PROTECT_SWITCH_MOTION_SENSOR.toUpperCase(),
|
|
169
171
|
exports.PROTECT_SWITCH_MOTION_TRIGGER.toUpperCase(),
|
|
170
172
|
exports.PROTECT_CONTACT_SENSOR.toUpperCase(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-accessory.js","sourceRoot":"","sources":["../src/protect-accessory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"protect-accessory.js","sourceRoot":"","sources":["../src/protect-accessory.ts"],"names":[],"mappings":"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"}
|
package/dist/protect-camera.js
CHANGED
|
@@ -20,17 +20,24 @@ class ProtectCamera extends protect_accessory_1.ProtectAccessory {
|
|
|
20
20
|
this.smartDetectTypes = [];
|
|
21
21
|
// Save the device object before we wipeout the context.
|
|
22
22
|
const device = this.accessory.context.device;
|
|
23
|
-
// Default
|
|
23
|
+
// Default to enabling camera motion detection.
|
|
24
24
|
let detectMotion = true;
|
|
25
25
|
// Save the motion sensor switch state before we wipeout the context.
|
|
26
26
|
if (this.accessory.context.detectMotion !== undefined) {
|
|
27
27
|
detectMotion = this.accessory.context.detectMotion;
|
|
28
28
|
}
|
|
29
|
+
// Default to enabling HKSV recording.
|
|
30
|
+
let hksvRecording = true;
|
|
31
|
+
// Save the HKSV recording switch state before we wipeout the context.
|
|
32
|
+
if (this.accessory.context.hksvRecording !== undefined) {
|
|
33
|
+
hksvRecording = this.accessory.context.hksvRecording;
|
|
34
|
+
}
|
|
29
35
|
// Clean out the context object in case it's been polluted somehow.
|
|
30
36
|
this.accessory.context = {};
|
|
31
37
|
this.accessory.context.device = device;
|
|
32
38
|
this.accessory.context.nvr = (_a = this.nvr.nvrApi.bootstrap) === null || _a === void 0 ? void 0 : _a.nvr.mac;
|
|
33
39
|
this.accessory.context.detectMotion = detectMotion;
|
|
40
|
+
this.accessory.context.hksvRecording = hksvRecording;
|
|
34
41
|
// If the camera supports it, check to see if we have smart motion events enabled.
|
|
35
42
|
if (device.featureFlags.hasSmartDetect && ((_b = this.nvr) === null || _b === void 0 ? void 0 : _b.optionEnabled(device, "Motion.SmartDetect", false))) {
|
|
36
43
|
// We deal with smart motion detection options here and save them on the ProtectCamera instance because
|
|
@@ -58,6 +65,7 @@ class ProtectCamera extends protect_accessory_1.ProtectAccessory {
|
|
|
58
65
|
this.configureTwoWayAudio();
|
|
59
66
|
// Configure HomeKit Secure Video.
|
|
60
67
|
this.configureHksv();
|
|
68
|
+
this.configureHksvSwitch();
|
|
61
69
|
// Configure our video stream.
|
|
62
70
|
await this.configureVideoStream();
|
|
63
71
|
// Configure our camera details.
|
|
@@ -468,7 +476,7 @@ class ProtectCamera extends protect_accessory_1.ProtectAccessory {
|
|
|
468
476
|
}
|
|
469
477
|
// HomeKit Secure Video support requires an enabled motion sensor. If one isn't enabled, we're done.
|
|
470
478
|
if (!((_b = this.nvr) === null || _b === void 0 ? void 0 : _b.optionEnabled(device, "Motion.Sensor"))) {
|
|
471
|
-
this.log.info("%s: Disabling HomeKit Secure Video support. You must enable motion sensor support in order to use HomeKit Secure Video.");
|
|
479
|
+
this.log.info("%s: Disabling HomeKit Secure Video support. You must enable motion sensor support in order to use HomeKit Secure Video.", this.name());
|
|
472
480
|
return false;
|
|
473
481
|
}
|
|
474
482
|
this.isHksv = true;
|
|
@@ -482,6 +490,45 @@ class ProtectCamera extends protect_accessory_1.ProtectAccessory {
|
|
|
482
490
|
}
|
|
483
491
|
return true;
|
|
484
492
|
}
|
|
493
|
+
// Configure a switch to manually enable or disable HKSV recording for a camera.
|
|
494
|
+
configureHksvSwitch() {
|
|
495
|
+
var _a, _b, _c;
|
|
496
|
+
// Find the switch service, if it exists.
|
|
497
|
+
let switchService = this.accessory.getServiceById(this.hap.Service.Switch, protect_accessory_1.PROTECT_SWITCH_HKSV_RECORDING);
|
|
498
|
+
// If we don't have HKSV or the HKSV recording switch, disable the switch and we're done.
|
|
499
|
+
if (!((_a = this.nvr) === null || _a === void 0 ? void 0 : _a.optionEnabled(this.accessory.context.device, "Video.HKSV")) ||
|
|
500
|
+
!((_b = this.nvr) === null || _b === void 0 ? void 0 : _b.optionEnabled(this.accessory.context.device, "Video.HKSV.Recording.Switch", false))) {
|
|
501
|
+
if (switchService) {
|
|
502
|
+
this.accessory.removeService(switchService);
|
|
503
|
+
}
|
|
504
|
+
// We want to default this back to recording whenever we disable the recording switch.
|
|
505
|
+
this.accessory.context.hksvRecording;
|
|
506
|
+
return false;
|
|
507
|
+
}
|
|
508
|
+
// Add the switch to the camera, if needed.
|
|
509
|
+
if (!switchService) {
|
|
510
|
+
switchService = new this.hap.Service.Switch(this.accessory.displayName + " Recording", protect_accessory_1.PROTECT_SWITCH_HKSV_RECORDING);
|
|
511
|
+
if (!switchService) {
|
|
512
|
+
this.log.error("%s: Unable to add the HomeKit Secure Video recording switch.", this.name());
|
|
513
|
+
return false;
|
|
514
|
+
}
|
|
515
|
+
this.accessory.addService(switchService);
|
|
516
|
+
}
|
|
517
|
+
// Activate or deactivate HKSV recording.
|
|
518
|
+
(_c = switchService
|
|
519
|
+
.getCharacteristic(this.hap.Characteristic.On)) === null || _c === void 0 ? void 0 : _c.onGet(() => {
|
|
520
|
+
return this.accessory.context.hksvRecording;
|
|
521
|
+
}).onSet((value) => {
|
|
522
|
+
if (this.accessory.context.hksvRecording !== value) {
|
|
523
|
+
this.log.info("%s: HomeKit Secure Video event recording has been %s.", this.name(), value === true ? "enabled" : "disabled");
|
|
524
|
+
}
|
|
525
|
+
this.accessory.context.hksvRecording = value === true;
|
|
526
|
+
});
|
|
527
|
+
// Initialize the switch.
|
|
528
|
+
switchService.updateCharacteristic(this.hap.Characteristic.On, this.accessory.context.hksvRecording);
|
|
529
|
+
this.log.info("%s: Enabling HomeKit Secure Video recording switch.", this.name());
|
|
530
|
+
return true;
|
|
531
|
+
}
|
|
485
532
|
// Configure MQTT capabilities of this camera.
|
|
486
533
|
configureMqtt() {
|
|
487
534
|
var _a, _b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-camera.js","sourceRoot":"","sources":["../src/protect-camera.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protect-camera.js","sourceRoot":"","sources":["../src/protect-camera.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-platform.js","sourceRoot":"","sources":["../src/protect-platform.ts"],"names":[],"mappings":";;;;;;AAYA,yCAKoB;AAEpB,+CAA2C;AAC3C,gDAAwB;AAExB,MAAa,eAAe;IAS1B,YAAY,GAAY,EAAE,MAAsB,EAAE,GAAQ;;QAExD,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QAEf,2CAA2C;QAC3C,IAAG,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"protect-platform.js","sourceRoot":"","sources":["../src/protect-platform.ts"],"names":[],"mappings":"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"}
|
package/dist/protect-record.js
CHANGED
|
@@ -93,6 +93,19 @@ class ProtectRecordingDelegate {
|
|
|
93
93
|
// Handle the actual recording stream request.
|
|
94
94
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
95
95
|
async *handleRecordingStreamRequest(streamId) {
|
|
96
|
+
// If we've explicitly disabled HKSV recording, we're done right now.
|
|
97
|
+
if (!this.accessory.context.hksvRecording) {
|
|
98
|
+
const streamHeader = await this.timeshift.getStreamHeader();
|
|
99
|
+
if (streamHeader) {
|
|
100
|
+
yield { data: streamHeader, isLast: true };
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
// We should never get to this point, but in case we do, this is a failsafe to ensure that no video
|
|
104
|
+
// recording can ever take place if we've disabled it through the HKSV recording switch accessory.
|
|
105
|
+
// It will generate a warning in Homebridge that can be ignored, but it will ensure nothing can be recorded.
|
|
106
|
+
yield { data: Buffer.alloc(0), isLast: true };
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
96
109
|
// Start transmitting our timeshift buffer and process it through FFmpeg.
|
|
97
110
|
if (!this.startTransmitting() || !this.ffmpegStream) {
|
|
98
111
|
// Something went wrong, so we gracefully tell HomeKit we have no packets to transmit and return.
|
|
@@ -201,7 +214,9 @@ class ProtectRecordingDelegate {
|
|
|
201
214
|
this.transmitListener = null;
|
|
202
215
|
}
|
|
203
216
|
// Inform the user.
|
|
204
|
-
|
|
217
|
+
if (this.accessory.context.hksvRecording) {
|
|
218
|
+
this.log.info("%s: HomeKit Secure Video has recorded a %s second motion event.", this.name(), Math.round((this.recordedSegments * this.timeshift.segmentLength) / 1000));
|
|
219
|
+
}
|
|
205
220
|
// If we have a reason for stopping defined, and it's noteworthy, inform the user.
|
|
206
221
|
let reasonDescription;
|
|
207
222
|
switch (reason) {
|
|
@@ -217,7 +232,7 @@ class ProtectRecordingDelegate {
|
|
|
217
232
|
default:
|
|
218
233
|
break;
|
|
219
234
|
}
|
|
220
|
-
if (reason !== 0 /* NORMAL */) {
|
|
235
|
+
if ((reason !== undefined) && (reason !== 0 /* NORMAL */)) {
|
|
221
236
|
this.log.error("%s: HomeKit Secure Video event recording ended abnormally: %s", this.name(), reasonDescription);
|
|
222
237
|
}
|
|
223
238
|
}
|
|
@@ -225,6 +240,11 @@ class ProtectRecordingDelegate {
|
|
|
225
240
|
get isRecording() {
|
|
226
241
|
return this._isRecording;
|
|
227
242
|
}
|
|
243
|
+
// Return our current HomeKit Secure Video recording configuration.
|
|
244
|
+
get recordingConfiguration() {
|
|
245
|
+
var _a;
|
|
246
|
+
return (_a = this.recordingConfig) !== null && _a !== void 0 ? _a : null;
|
|
247
|
+
}
|
|
228
248
|
}
|
|
229
249
|
exports.ProtectRecordingDelegate = ProtectRecordingDelegate;
|
|
230
250
|
//# sourceMappingURL=protect-record.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-record.js","sourceRoot":"","sources":["../src/protect-record.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"protect-record.js","sourceRoot":"","sources":["../src/protect-record.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,10 +15,14 @@ class ProtectTimeshiftBuffer extends events_1.EventEmitter {
|
|
|
15
15
|
this.livestream = new unifi_protect_1.ProtectLivestream(protectCamera.nvr.nvrApi, protectCamera.platform.log);
|
|
16
16
|
this.log = protectCamera.platform.log;
|
|
17
17
|
this.name = protectCamera.name.bind(protectCamera);
|
|
18
|
+
this.nvr = protectCamera.nvr;
|
|
19
|
+
this.protectCamera = protectCamera;
|
|
18
20
|
// We use 100ms in segment resolution for our timeshift buffer to ensure we provide an optimal
|
|
19
|
-
// timeshifting experience. It's a very small amount of additional overhead
|
|
20
|
-
// a much better HKSV event recording.
|
|
21
|
-
|
|
21
|
+
// timeshifting experience. It's a very small amount of additional overhead for most modern CPUs,
|
|
22
|
+
// but the result is a much better HKSV event recording. We may eventually allow for a larger segment
|
|
23
|
+
// resolution in order to give devices at the lower end of the performance curve some added cushion,
|
|
24
|
+
// albeit at the expense of a suboptimal user experience when reviewing HKSV recorded events.
|
|
25
|
+
this._segmentLength = settings_1.PROTECT_HKSV_SEGMENT_RESOLUTION;
|
|
22
26
|
this._isTransmitting = false;
|
|
23
27
|
this.configureTimeshiftBuffer();
|
|
24
28
|
}
|
|
@@ -65,10 +69,20 @@ class ProtectTimeshiftBuffer extends events_1.EventEmitter {
|
|
|
65
69
|
}
|
|
66
70
|
// Start the livestream and begin creating our timeshift buffer.
|
|
67
71
|
async start(channelId) {
|
|
72
|
+
var _a, _b, _c, _d, _e, _f;
|
|
73
|
+
// Ensure we have sane values configured for the segment resolution.
|
|
74
|
+
if ((_b = (_a = this.protectCamera.stream.hksv) === null || _a === void 0 ? void 0 : _a.recordingConfiguration) === null || _b === void 0 ? void 0 : _b.mediaContainerConfiguration.fragmentLength) {
|
|
75
|
+
if ((this.segmentLength < 100) ||
|
|
76
|
+
(this.segmentLength > (((_d = (_c = this.protectCamera.stream.hksv) === null || _c === void 0 ? void 0 : _c.recordingConfiguration) === null || _d === void 0 ? void 0 : _d.mediaContainerConfiguration.fragmentLength) / 2))) {
|
|
77
|
+
this._segmentLength = ((_f = (_e = this.protectCamera.stream.hksv) === null || _e === void 0 ? void 0 : _e.recordingConfiguration) === null || _f === void 0 ? void 0 : _f.mediaContainerConfiguration.fragmentLength) / 2;
|
|
78
|
+
this.log.error("%s: An invalid HomeKit Secure Video segment length was configured. " +
|
|
79
|
+
"Choosing a safe value instead, though one that provides a less than ideal event clip viewing experience: %s.", this.name(), this.segmentLength);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
68
82
|
// Clear out the timeshift buffer, if it's been previously filled, and then fire up the timeshift buffer.
|
|
69
83
|
this.buffer = [];
|
|
70
84
|
// Start the livestream and start buffering.
|
|
71
|
-
if (!(await this.livestream.start(this.accessory.context.device.id, channelId,
|
|
85
|
+
if (!(await this.livestream.start(this.accessory.context.device.id, channelId, this.segmentLength))) {
|
|
72
86
|
return false;
|
|
73
87
|
}
|
|
74
88
|
return true;
|
|
@@ -98,6 +112,25 @@ class ProtectTimeshiftBuffer extends events_1.EventEmitter {
|
|
|
98
112
|
// Signal our livestream listener that it's time to start transmitting our queued segments and timeshift.
|
|
99
113
|
this._isTransmitting = true;
|
|
100
114
|
}
|
|
115
|
+
// Return the fMP4 stream header for an HKSV session.
|
|
116
|
+
async getStreamHeader() {
|
|
117
|
+
// Keep looping until we see both, but don't loop for more than two seconds, as a failsafe.
|
|
118
|
+
for (let i = 0; i < 20; i++) {
|
|
119
|
+
// We have what we're looking for. We're done.
|
|
120
|
+
if (this.livestream.ftyp && this.livestream.moov) {
|
|
121
|
+
break;
|
|
122
|
+
}
|
|
123
|
+
// Let's try again shortly.
|
|
124
|
+
// eslint-disable-next-line no-await-in-loop
|
|
125
|
+
await this.nvr.sleep(100);
|
|
126
|
+
}
|
|
127
|
+
// We still don't have the boxes that make up the stream header. Time to give up.
|
|
128
|
+
if (!this.livestream.ftyp || !this.livestream.moov) {
|
|
129
|
+
return null;
|
|
130
|
+
}
|
|
131
|
+
// Return the header.
|
|
132
|
+
return Buffer.concat([this.livestream.ftyp, this.livestream.moov]);
|
|
133
|
+
}
|
|
101
134
|
// Check if a segment is the FTYP box.
|
|
102
135
|
isFtyp(segment) {
|
|
103
136
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-timeshift.js","sourceRoot":"","sources":["../src/protect-timeshift.ts"],"names":[],"mappings":";;;AAKA,iDAAuE;AACvE,mCAAsC;AACtC,yCAA6D;
|
|
1
|
+
{"version":3,"file":"protect-timeshift.js","sourceRoot":"","sources":["../src/protect-timeshift.ts"],"names":[],"mappings":"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"}
|
package/dist/settings.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PROTECT_HKSV_BUFFER_LENGTH = exports.PROTECT_HKSV_SEGMENT_LENGTH = exports.
|
|
3
|
+
exports.PROTECT_HKSV_BUFFER_LENGTH = exports.PROTECT_HKSV_SEGMENT_LENGTH = exports.PROTECT_HKSV_SEGMENT_RESOLUTION = exports.PROTECT_TWOWAY_HEARTBEAT_INTERVAL = exports.PROTECT_RING_DURATION = exports.PROTECT_NVR_UNIFIOS_REFRESH_INTERVAL = exports.PROTECT_MQTT_TOPIC = exports.PROTECT_MQTT_RECONNECT_INTERVAL = exports.PROTECT_MOTION_DURATION = exports.PROTECT_LOGIN_REFRESH_INTERVAL = exports.PROTECT_HOMEKIT_IDR_INTERVAL = exports.PROTECT_FFMPEG_VERBOSE_DURATION = exports.PROTECT_FFMPEG_OPTIONS = exports.PROTECT_FFMPEG_AUDIO_FILTER_LOWPASS = exports.PROTECT_FFMPEG_AUDIO_FILTER_HIGHPASS = exports.PROTECT_EVENTS_HEARTBEAT_INTERVAL = exports.PROTECT_API_TIMEOUT = exports.PROTECT_API_RETRY_INTERVAL = exports.PROTECT_API_ERROR_LIMIT = exports.PLATFORM_NAME = exports.PLUGIN_NAME = void 0;
|
|
4
4
|
/* Copyright(C) 2017-2022, HJD (https://github.com/hjdhjd). All rights reserved.
|
|
5
5
|
*
|
|
6
6
|
* settings.ts: Settings and constants for homebridge-unifi-protect.
|
|
@@ -45,7 +45,7 @@ exports.PROTECT_RING_DURATION = 3;
|
|
|
45
45
|
// FFmpeg's input timeout interval.
|
|
46
46
|
exports.PROTECT_TWOWAY_HEARTBEAT_INTERVAL = 3.5;
|
|
47
47
|
// HomeKit Secure Video segment resolution, in milliseconds. This defines the resolution of our buffer.
|
|
48
|
-
exports.
|
|
48
|
+
exports.PROTECT_HKSV_SEGMENT_RESOLUTION = 100;
|
|
49
49
|
// HomeKit Secure Video segment length, in milliseconds. HomeKit only supports this value currently.
|
|
50
50
|
exports.PROTECT_HKSV_SEGMENT_LENGTH = 4000;
|
|
51
51
|
// HomeKit Secure Video buffer length, in milliseconds. This defines how far back in time we can look when we see a motion event.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "homebridge-unifi-protect",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.2.0",
|
|
4
4
|
"displayName": "Homebridge UniFi Protect",
|
|
5
5
|
"description": "Homebridge UniFi Protect plugin providing complete HomeKit integration for the UniFi Protect ecosystem with full support for most features including autoconfiguration, motion detection, multiple controllers, and realtime updates.",
|
|
6
6
|
"author": {
|