homebridge-unifi-protect 4.4.2 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +8 -12
  3. package/config.schema.json +30 -9
  4. package/dist/index.js +1 -1
  5. package/dist/protect-accessory.js +145 -2
  6. package/dist/protect-accessory.js.map +1 -1
  7. package/dist/protect-camera.js +56 -162
  8. package/dist/protect-camera.js.map +1 -1
  9. package/dist/protect-doorbell.js +14 -26
  10. package/dist/protect-doorbell.js.map +1 -1
  11. package/dist/protect-ffmpeg.js +24 -5
  12. package/dist/protect-ffmpeg.js.map +1 -1
  13. package/dist/protect-light.js +111 -0
  14. package/dist/protect-light.js.map +1 -0
  15. package/dist/protect-liveviews.js +2 -2
  16. package/dist/protect-liveviews.js.map +1 -1
  17. package/dist/protect-mqtt.js +47 -19
  18. package/dist/protect-mqtt.js.map +1 -1
  19. package/dist/protect-nvr-events.js +205 -61
  20. package/dist/protect-nvr-events.js.map +1 -1
  21. package/dist/protect-nvr-systeminfo.js +174 -0
  22. package/dist/protect-nvr-systeminfo.js.map +1 -0
  23. package/dist/protect-nvr.js +167 -61
  24. package/dist/protect-nvr.js.map +1 -1
  25. package/dist/protect-options.js +7 -0
  26. package/dist/protect-options.js.map +1 -0
  27. package/dist/protect-platform.js +9 -3
  28. package/dist/protect-platform.js.map +1 -1
  29. package/dist/protect-rtp.js +1 -1
  30. package/dist/protect-rtp.js.map +1 -1
  31. package/dist/protect-securitysystem.js +3 -4
  32. package/dist/protect-securitysystem.js.map +1 -1
  33. package/dist/protect-sensor.js +357 -0
  34. package/dist/protect-sensor.js.map +1 -0
  35. package/dist/protect-stream.js +76 -23
  36. package/dist/protect-stream.js.map +1 -1
  37. package/dist/protect-viewer.js +170 -0
  38. package/dist/protect-viewer.js.map +1 -0
  39. package/dist/settings.js +6 -2
  40. package/dist/settings.js.map +1 -1
  41. package/package.json +15 -17
  42. package/dist/protect-api-updates.js +0 -166
  43. package/dist/protect-api-updates.js.map +0 -1
  44. package/dist/protect-api.js +0 -555
  45. package/dist/protect-api.js.map +0 -1
  46. package/dist/protect-types.js +0 -3
  47. package/dist/protect-types.js.map +0 -1
@@ -9,7 +9,7 @@ const protect_nvr_1 = require("./protect-nvr");
9
9
  const util_1 = __importDefault(require("util"));
10
10
  class ProtectPlatform {
11
11
  constructor(log, config, api) {
12
- var _a, _b;
12
+ var _a, _b, _c;
13
13
  this.accessories = [];
14
14
  this.api = api;
15
15
  this.configOptions = [];
@@ -27,7 +27,9 @@ class ProtectPlatform {
27
27
  ffmpegOptions: (_a = config.ffmpegOptions) !== null && _a !== void 0 ? _a : settings_1.PROTECT_FFMPEG_OPTIONS,
28
28
  motionDuration: (_b = config.motionDuration) !== null && _b !== void 0 ? _b : settings_1.PROTECT_MOTION_DURATION,
29
29
  options: config.options,
30
+ ringDuration: (_c = config.ringDuration) !== null && _c !== void 0 ? _c : settings_1.PROTECT_RING_DURATION,
30
31
  verboseFfmpeg: config.verboseFfmpeg === true,
32
+ videoEncoder: config.videoEncoder,
31
33
  videoProcessor: config.videoProcessor
32
34
  };
33
35
  // We need a UniFi Protect controller configured to do anything.
@@ -52,6 +54,10 @@ class ProtectPlatform {
52
54
  if (this.config.motionDuration < 2) {
53
55
  this.config.motionDuration = 2;
54
56
  }
57
+ // Ring trigger duration. Make sure it's never less than 4 seconds so we can ensure automations work.
58
+ if (this.config.motionDuration < 4) {
59
+ this.config.motionDuration = 4;
60
+ }
55
61
  // Loop through each configured NVR and instantiate it.
56
62
  for (const controllerConfig of this.config.controllers) {
57
63
  // We need an address, or there's nothing to do.
@@ -82,10 +88,10 @@ class ProtectPlatform {
82
88
  // intentionally avoid doing anything significant here, and save all that logic
83
89
  // for device discovery.
84
90
  configureAccessory(accessory) {
85
- // Delete the UniFi Protect camera pointer on startup. This will be set by device discovery.
91
+ // Delete the UniFi Protect device pointer on startup. This will be set by device discovery.
86
92
  // Notably, we do NOT clear out the NVR pointer, because we need to maintain the mapping between
87
93
  // camera and NVR.
88
- delete accessory.context.camera;
94
+ delete accessory.context.device;
89
95
  // Add this to the accessory array so we can track it.
90
96
  this.accessories.push(accessory);
91
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"protect-platform.js","sourceRoot":"","sources":["../src/protect-platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protect-platform.js","sourceRoot":"","sources":["../src/protect-platform.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ class RtpDemuxer {
20
20
  this.delegate = streamingDelegate;
21
21
  this.log = streamingDelegate.log;
22
22
  this.inputPort = inputPort;
23
- this.socket = dgram_1.createSocket(ipFamily === "ipv6" ? "udp6" : "udp4");
23
+ this.socket = (0, dgram_1.createSocket)(ipFamily === "ipv6" ? "udp6" : "udp4");
24
24
  // Catch errors when they happen on our demuxer.
25
25
  this.socket.on("error", (error) => {
26
26
  this.log.error("%s: RtpDemuxer Error: %s", this.delegate.protectCamera.name(), error);
@@ -1 +1 @@
1
- {"version":3,"file":"protect-rtp.js","sourceRoot":"","sources":["../src/protect-rtp.ts"],"names":[],"mappings":";;;AAQA,yCAA+D;AAE/D,iCAAqC;AAErC;;;;;;;;;GASG;AACH,MAAa,UAAU;IASrB,oCAAoC;IACpC,YAAY,iBAA2C,EAAE,QAA2B,EAAG,SAAiB,EAAE,QAAgB,EAAE,OAAe;QAEzI,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC/E,IAAI,CAAC,QAAQ,GAAG,iBAAiB,CAAC;QAClC,IAAI,CAAC,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,oBAAY,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC;QAEnE,gDAAgD;QAChD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAG,EAAE;YACjC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;YACtF,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YAEhC,oCAAoC;YACpC,IAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;gBAEzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;aAEhC;iBAAM;gBAEL,kHAAkH;gBAClH,8GAA8G;gBAC9G,4CAA4C;gBAC5C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAErC,iCAAiC;gBACjC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAClC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBAExB,mDAAmD;gBACnD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;aAEjC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,sFAAsF,EAC/F,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEzE,wBAAwB;QACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED,4FAA4F;IACpF,SAAS,CAAC,IAAY;QAE5B,iCAAiC;QACjC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAElC,qGAAqG;QACrG,oGAAoG;QACpG,oBAAoB;QACpB,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YAEpC,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAE1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEvB,CAAC,EAAE,4CAAiC,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,gCAAgC;IACzB,KAAK;QACV,IAAI,CAAC,KAAK,CAAC,iDAAiD,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAElH,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,wFAAwF;IAChF,cAAc,CAAC,OAAe;QACpC,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACrC,CAAC;IAED,kDAAkD;IAC1C,YAAY,CAAC,OAAe;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAEjD,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC;IACnD,CAAC;CACF;AA9FD,gCA8FC"}
1
+ {"version":3,"file":"protect-rtp.js","sourceRoot":"","sources":["../src/protect-rtp.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ProtectSecuritySystem = void 0;
4
- const protect_camera_1 = require("./protect-camera");
5
4
  const protect_accessory_1 = require("./protect-accessory");
6
5
  class ProtectSecuritySystem extends protect_accessory_1.ProtectAccessory {
7
6
  // Configure a security system accessory for HomeKit.
@@ -9,7 +8,7 @@ class ProtectSecuritySystem extends protect_accessory_1.ProtectAccessory {
9
8
  var _a;
10
9
  const accessory = this.accessory;
11
10
  let securityState = this.hap.Characteristic.SecuritySystemCurrentState.STAY_ARM;
12
- // Save the motion sensor switch state before we wipeout the context.
11
+ // Save the security system state before we wipeout the context.
13
12
  if (accessory.context.securityState !== undefined) {
14
13
  securityState = accessory.context.securityState;
15
14
  }
@@ -298,14 +297,14 @@ class ProtectSecuritySystem extends protect_accessory_1.ProtectAccessory {
298
297
  // check to see if this is one of the cameras we want to turn on motion detection for.
299
298
  if (((newState !== SecuritySystemCurrentState.DISARMED) ||
300
299
  ((newState === SecuritySystemCurrentState.DISARMED) && targetCameraIds.length)) &&
301
- targetCameraIds.some(thisCameraId => thisCameraId === targetAccessory.context.camera.id)) {
300
+ targetCameraIds.some(thisCameraId => thisCameraId === targetAccessory.context.device.id)) {
302
301
  targetState = true;
303
302
  }
304
303
  // Only take action to change motion detection state if needed.
305
304
  if (targetAccessory.context.detectMotion !== targetState) {
306
305
  targetAccessory.context.detectMotion = targetState;
307
306
  // Update the switch service, if present.
308
- const motionSwitch = targetAccessory.getServiceById(hap.Service.Switch, protect_camera_1.PROTECT_SWITCH_MOTION_SENSOR);
307
+ const motionSwitch = targetAccessory.getServiceById(hap.Service.Switch, protect_accessory_1.PROTECT_SWITCH_MOTION_SENSOR);
309
308
  if (motionSwitch) {
310
309
  motionSwitch.updateCharacteristic(hap.Characteristic.On, targetAccessory.context.detectMotion);
311
310
  }
@@ -1 +1 @@
1
- {"version":3,"file":"protect-securitysystem.js","sourceRoot":"","sources":["../src/protect-securitysystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protect-securitysystem.js","sourceRoot":"","sources":["../src/protect-securitysystem.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,357 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProtectSensor = void 0;
4
+ /* Copyright(C) 2019-2022, HJD (https://github.com/hjdhjd). All rights reserved.
5
+ *
6
+ * protect-sensor.ts: Sensor device class for UniFi Protect.
7
+ */
8
+ const protect_accessory_1 = require("./protect-accessory");
9
+ class ProtectSensor extends protect_accessory_1.ProtectAccessory {
10
+ // Initialize and configure the sensor accessory for HomeKit.
11
+ async configureDevice() {
12
+ var _a;
13
+ // Save the device object before we wipeout the context.
14
+ const device = this.accessory.context.device;
15
+ // Clean out the context object in case it's been polluted somehow.
16
+ this.accessory.context = {};
17
+ this.accessory.context.device = device;
18
+ this.accessory.context.nvr = (_a = this.nvr.nvrApi.bootstrap) === null || _a === void 0 ? void 0 : _a.nvr.mac;
19
+ // Configure accessory information.
20
+ this.configureInfo();
21
+ // Configure accessory services.
22
+ const enabledSensors = this.updateDevice();
23
+ // Configure MQTT services.
24
+ this.configureMqtt();
25
+ // Inform the user what we're enabling on startup.
26
+ if (enabledSensors.length) {
27
+ this.log.info("%s: Enabled sensor%s: %s.", this.name(), enabledSensors.length > 1 ? "s" : "", enabledSensors.join(", "));
28
+ }
29
+ else {
30
+ this.log.info("%s: No sensors enabled.", this.name());
31
+ }
32
+ return Promise.resolve(true);
33
+ }
34
+ // Update accessory services and characteristics.
35
+ updateDevice() {
36
+ var _a, _b;
37
+ const enabledSensors = [];
38
+ // Configure the alarm sound sensor.
39
+ if (this.configureAlarmSoundSensor()) {
40
+ enabledSensors.push("alarm sound");
41
+ }
42
+ // Configure the ambient light sensor.
43
+ if (this.configureAmbientLightSensor()) {
44
+ enabledSensors.push("ambient light");
45
+ }
46
+ // Configure the contact sensor.
47
+ if (this.configureContactSensor()) {
48
+ enabledSensors.push("contact");
49
+ }
50
+ // Configure the humidity sensor.
51
+ if (this.configureHumiditySensor()) {
52
+ enabledSensors.push("humidity");
53
+ }
54
+ // Configure the motion sensor.
55
+ if (this.configureMotionSensor((_b = (_a = this.accessory.context.device) === null || _a === void 0 ? void 0 : _a.motionSettings) === null || _b === void 0 ? void 0 : _b.isEnabled)) {
56
+ // Sensor accessories also support battery, connection, and tamper status...we need to handle those ourselves.
57
+ const motionService = this.accessory.getService(this.hap.Service.MotionSensor);
58
+ if (motionService) {
59
+ // Update the state characteristics.
60
+ this.configureStateCharacteristics(motionService);
61
+ }
62
+ enabledSensors.push("motion sensor");
63
+ }
64
+ // Configure the temperature sensor.
65
+ if (this.configureTemperatureSensor()) {
66
+ enabledSensors.push("temperature");
67
+ }
68
+ return enabledSensors;
69
+ }
70
+ // Configure the alarm sound sensor for HomeKit.
71
+ configureAlarmSoundSensor() {
72
+ var _a, _b;
73
+ const device = this.accessory.context.device;
74
+ // Find the service, if it exists.
75
+ let contactService = this.accessory.getServiceById(this.hap.Service.ContactSensor, protect_accessory_1.PROTECT_CONTACT_SENSOR_ALARM_SOUND);
76
+ // Have we disabled the alarm sound sensor?
77
+ if (!((_a = device === null || device === void 0 ? void 0 : device.alarmSettings) === null || _a === void 0 ? void 0 : _a.isEnabled)) {
78
+ if (contactService) {
79
+ this.accessory.removeService(contactService);
80
+ this.log.info("%s: Disabling alarm sound contact sensor.", this.name());
81
+ }
82
+ return false;
83
+ }
84
+ // Add the service to the accessory, if needed.
85
+ if (!contactService) {
86
+ contactService = new this.hap.Service.ContactSensor(this.accessory.displayName + " Alarm Sound", protect_accessory_1.PROTECT_CONTACT_SENSOR_ALARM_SOUND);
87
+ if (!contactService) {
88
+ this.log.error("%s: Unable to add alarm sound contact sensor.", this.name());
89
+ return false;
90
+ }
91
+ this.accessory.addService(contactService);
92
+ this.log.info("%s: Enabling alarm sound contact sensor.", this.name());
93
+ }
94
+ // Retrieve the current contact sensor state when requested.
95
+ (_b = contactService.getCharacteristic(this.hap.Characteristic.ContactSensorState)) === null || _b === void 0 ? void 0 : _b.onGet(() => {
96
+ return this.getAlarmSound();
97
+ });
98
+ // Update the sensor.
99
+ contactService.updateCharacteristic(this.hap.Characteristic.ContactSensorState, this.getAlarmSound());
100
+ // Update the state characteristics.
101
+ this.configureStateCharacteristics(contactService);
102
+ return true;
103
+ }
104
+ // Configure the ambient light sensor for HomeKit.
105
+ configureAmbientLightSensor() {
106
+ var _a, _b;
107
+ const device = this.accessory.context.device;
108
+ // Find the service, if it exists.
109
+ let lightService = this.accessory.getService(this.hap.Service.LightSensor);
110
+ // Have we disabled the light sensor?
111
+ if (!((_a = device === null || device === void 0 ? void 0 : device.lightSettings) === null || _a === void 0 ? void 0 : _a.isEnabled)) {
112
+ if (lightService) {
113
+ this.accessory.removeService(lightService);
114
+ this.log.info("%s: Disabling ambient light sensor.", this.name());
115
+ }
116
+ return false;
117
+ }
118
+ // Add the service to the accessory, if needed.
119
+ if (!lightService) {
120
+ lightService = new this.hap.Service.LightSensor(this.accessory.displayName);
121
+ if (!lightService) {
122
+ this.log.error("%s: Unable to add ambient light sensor.", this.name());
123
+ return false;
124
+ }
125
+ this.accessory.addService(lightService);
126
+ this.log.info("%s: Enabling ambient light sensor.", this.name());
127
+ }
128
+ // Retrieve the current light level when requested.
129
+ (_b = lightService.getCharacteristic(this.hap.Characteristic.CurrentAmbientLightLevel)) === null || _b === void 0 ? void 0 : _b.onGet(() => {
130
+ // The minimum value for ambient light in HomeKit is 0.0001. I have no idea why...but it is. Honor it.
131
+ const value = this.getAmbientLight();
132
+ return value >= 0.0001 ? value : 0.0001;
133
+ });
134
+ // Update the sensor. The minimum value for ambient light in HomeKit is 0.0001. I have no idea why...but it is. Honor it.
135
+ const value = this.getAmbientLight();
136
+ lightService.updateCharacteristic(this.hap.Characteristic.CurrentAmbientLightLevel, value >= 0.0001 ? value : 0.0001);
137
+ // Update the state characteristics.
138
+ this.configureStateCharacteristics(lightService);
139
+ return true;
140
+ }
141
+ // Configure the contact sensor for HomeKit.
142
+ configureContactSensor() {
143
+ var _a;
144
+ const device = this.accessory.context.device;
145
+ // Find the service, if it exists.
146
+ let contactService = this.accessory.getServiceById(this.hap.Service.ContactSensor, protect_accessory_1.PROTECT_CONTACT_SENSOR);
147
+ // Have we disabled the sensor?
148
+ if (!(device === null || device === void 0 ? void 0 : device.mountType) || (device.mountType === "none")) {
149
+ if (contactService) {
150
+ this.accessory.removeService(contactService);
151
+ this.log.info("%s: Disabling contact sensor.", this.name());
152
+ }
153
+ return false;
154
+ }
155
+ // Add the service to the accessory, if needed.
156
+ if (!contactService) {
157
+ contactService = new this.hap.Service.ContactSensor(this.accessory.displayName, protect_accessory_1.PROTECT_CONTACT_SENSOR);
158
+ if (!contactService) {
159
+ this.log.error("%s: Unable to add contact sensor.", this.name());
160
+ return false;
161
+ }
162
+ this.accessory.addService(contactService);
163
+ this.log.info("%s: Enabling contact sensor.", this.name());
164
+ }
165
+ // Retrieve the current contact sensor state when requested.
166
+ (_a = contactService.getCharacteristic(this.hap.Characteristic.ContactSensorState)) === null || _a === void 0 ? void 0 : _a.onGet(() => {
167
+ return this.getContact();
168
+ });
169
+ // Update the sensor.
170
+ contactService.updateCharacteristic(this.hap.Characteristic.ContactSensorState, this.getContact());
171
+ // Update the state characteristics.
172
+ this.configureStateCharacteristics(contactService);
173
+ return true;
174
+ }
175
+ // Configure the humidity sensor for HomeKit.
176
+ configureHumiditySensor() {
177
+ var _a, _b;
178
+ const device = this.accessory.context.device;
179
+ // Find the service, if it exists.
180
+ let humidityService = this.accessory.getService(this.hap.Service.HumiditySensor);
181
+ // Have we disabled the sensor?
182
+ if (!((_a = device === null || device === void 0 ? void 0 : device.humiditySettings) === null || _a === void 0 ? void 0 : _a.isEnabled)) {
183
+ if (humidityService) {
184
+ this.accessory.removeService(humidityService);
185
+ this.log.info("%s: Disabling humidity sensor.", this.name());
186
+ }
187
+ return false;
188
+ }
189
+ // Add the service to the accessory, if needed.
190
+ if (!humidityService) {
191
+ humidityService = new this.hap.Service.HumiditySensor(this.accessory.displayName);
192
+ if (!humidityService) {
193
+ this.log.error("%s: Unable to add humidity sensor.", this.name());
194
+ return false;
195
+ }
196
+ this.accessory.addService(humidityService);
197
+ this.log.info("%s: Enabling humidity sensor.", this.name());
198
+ }
199
+ // Retrieve the current humidity when requested.
200
+ (_b = humidityService.getCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity)) === null || _b === void 0 ? void 0 : _b.onGet(() => {
201
+ const value = this.getHumidity();
202
+ return value < 0 ? 0 : value;
203
+ });
204
+ // Update the sensor.
205
+ const value = this.getHumidity();
206
+ humidityService.updateCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity, value < 0 ? 0 : value);
207
+ // Update the state characteristics.
208
+ this.configureStateCharacteristics(humidityService);
209
+ return true;
210
+ }
211
+ // Configure the temperature sensor for HomeKit.
212
+ configureTemperatureSensor() {
213
+ var _a, _b;
214
+ const device = this.accessory.context.device;
215
+ // Find the service, if it exists.
216
+ let temperatureService = this.accessory.getService(this.hap.Service.TemperatureSensor);
217
+ // Have we disabled the temperature sensor?
218
+ if (!((_a = device === null || device === void 0 ? void 0 : device.temperatureSettings) === null || _a === void 0 ? void 0 : _a.isEnabled)) {
219
+ if (temperatureService) {
220
+ this.accessory.removeService(temperatureService);
221
+ this.log.info("%s: Disabling temperature sensor.", this.name());
222
+ }
223
+ return false;
224
+ }
225
+ // Add the service to the accessory, if needed.
226
+ if (!temperatureService) {
227
+ temperatureService = new this.hap.Service.TemperatureSensor(this.accessory.displayName);
228
+ if (!temperatureService) {
229
+ this.log.error("%s: Unable to add temperature sensor.", this.name());
230
+ return false;
231
+ }
232
+ this.accessory.addService(temperatureService);
233
+ this.log.info("%s: Enabling temperature sensor.", this.name());
234
+ }
235
+ // Retrieve the current temperature when requested.
236
+ (_b = temperatureService.getCharacteristic(this.hap.Characteristic.CurrentTemperature)) === null || _b === void 0 ? void 0 : _b.onGet(() => {
237
+ const value = this.getTemperature();
238
+ return value < 0 ? 0 : value;
239
+ });
240
+ // Update the sensor.
241
+ const value = this.getTemperature();
242
+ temperatureService.updateCharacteristic(this.hap.Characteristic.CurrentTemperature, value < 0 ? 0 : value);
243
+ // Update the state characteristics.
244
+ this.configureStateCharacteristics(temperatureService);
245
+ return true;
246
+ }
247
+ // Configure the active connection status in HomeKit.
248
+ configureActiveStatus(service) {
249
+ var _a;
250
+ const device = this.accessory.context.device;
251
+ // Retrieve the current connection status when requested.
252
+ (_a = service.getCharacteristic(this.hap.Characteristic.StatusActive)) === null || _a === void 0 ? void 0 : _a.onGet(() => {
253
+ return this.accessory.context.device.state === "CONNECTED";
254
+ });
255
+ // Update the current connection status.
256
+ service.updateCharacteristic(this.hap.Characteristic.StatusActive, device.state === "CONNECTED");
257
+ return true;
258
+ }
259
+ // Configure the battery status in HomeKit.
260
+ configureBatteryStatus(service) {
261
+ var _a, _b;
262
+ const device = this.accessory.context.device;
263
+ // Retrieve the current battery status when requested.
264
+ (_a = service.getCharacteristic(this.hap.Characteristic.StatusLowBattery)) === null || _a === void 0 ? void 0 : _a.onGet(() => {
265
+ var _a;
266
+ return (_a = this.accessory.context.device.batteryStatus) === null || _a === void 0 ? void 0 : _a.isLow;
267
+ });
268
+ // Update the battery status.
269
+ service.updateCharacteristic(this.hap.Characteristic.StatusLowBattery, (_b = device.batteryStatus) === null || _b === void 0 ? void 0 : _b.isLow);
270
+ return true;
271
+ }
272
+ // Configure the tamper status in HomeKit.
273
+ configureTamperedStatus(service) {
274
+ var _a;
275
+ const device = this.accessory.context.device;
276
+ // Retrieve the current tamper status when requested.
277
+ (_a = service.getCharacteristic(this.hap.Characteristic.StatusTampered)) === null || _a === void 0 ? void 0 : _a.onGet(() => {
278
+ return this.accessory.context.device.tamperingDetectedAt !== null;
279
+ });
280
+ // Update the tamper status.
281
+ service.updateCharacteristic(this.hap.Characteristic.StatusTampered, device.tamperingDetectedAt !== null);
282
+ return true;
283
+ }
284
+ // Configure the additional state characteristics in HomeKit.
285
+ configureStateCharacteristics(service) {
286
+ // Update the active connection status.
287
+ this.configureActiveStatus(service);
288
+ // Update the battery status.
289
+ this.configureBatteryStatus(service);
290
+ // Update the tamper status.
291
+ this.configureTamperedStatus(service);
292
+ return true;
293
+ }
294
+ // Get the current alarm sound information.
295
+ getAlarmSound() {
296
+ var _a;
297
+ // Return true if we are not null, meaning the alarm has sounded.
298
+ const value = this.accessory.context.device.alarmTriggeredAt !== null;
299
+ // Save the state change and publish to MQTT.
300
+ if (value !== this.savedAlarmSound) {
301
+ this.savedAlarmSound = value;
302
+ (_a = this.nvr.mqtt) === null || _a === void 0 ? void 0 : _a.publish(this.accessory, "alarmsound", value.toString());
303
+ }
304
+ return value;
305
+ }
306
+ // Get the current ambient light information.
307
+ getAmbientLight() {
308
+ var _a;
309
+ return (_a = this.accessory.context.device.stats.light.value) !== null && _a !== void 0 ? _a : -1;
310
+ }
311
+ // Get the current contact sensor information.
312
+ getContact() {
313
+ var _a;
314
+ // Return true if we are open.
315
+ const value = this.accessory.context.device.isOpened;
316
+ // Save the state change and publish to MQTT.
317
+ if (value !== this.savedContact) {
318
+ this.savedContact = value;
319
+ (_a = this.nvr.mqtt) === null || _a === void 0 ? void 0 : _a.publish(this.accessory, "contact", value.toString());
320
+ }
321
+ return value;
322
+ }
323
+ // Get the current humidity information.
324
+ getHumidity() {
325
+ var _a;
326
+ return (_a = this.accessory.context.device.stats.humidity.value) !== null && _a !== void 0 ? _a : -1;
327
+ }
328
+ // Get the current temperature information.
329
+ getTemperature() {
330
+ var _a;
331
+ return (_a = this.accessory.context.device.stats.temperature.value) !== null && _a !== void 0 ? _a : -1;
332
+ }
333
+ // Configure MQTT capabilities for sensors.
334
+ configureMqtt() {
335
+ var _a, _b, _c, _d, _e, _f;
336
+ if (!((_a = this.nvrApi.bootstrap) === null || _a === void 0 ? void 0 : _a.nvr.mac)) {
337
+ return;
338
+ }
339
+ (_b = this.nvr.mqtt) === null || _b === void 0 ? void 0 : _b.subscribeGet(this.accessory, this.name(), "alarmsound", "Alarm sound", () => {
340
+ return this.getAlarmSound().toString();
341
+ });
342
+ (_c = this.nvr.mqtt) === null || _c === void 0 ? void 0 : _c.subscribeGet(this.accessory, this.name(), "ambientlight", "Ambient light", () => {
343
+ return this.getAmbientLight().toString();
344
+ });
345
+ (_d = this.nvr.mqtt) === null || _d === void 0 ? void 0 : _d.subscribeGet(this.accessory, this.name(), "contact", "Contact sensor", () => {
346
+ return this.getContact().toString();
347
+ });
348
+ (_e = this.nvr.mqtt) === null || _e === void 0 ? void 0 : _e.subscribeGet(this.accessory, this.name(), "humidity", "Humidity", () => {
349
+ return this.getHumidity().toString();
350
+ });
351
+ (_f = this.nvr.mqtt) === null || _f === void 0 ? void 0 : _f.subscribeGet(this.accessory, this.name(), "temperature", "Temperature", () => {
352
+ return this.getTemperature().toString();
353
+ });
354
+ }
355
+ }
356
+ exports.ProtectSensor = ProtectSensor;
357
+ //# sourceMappingURL=protect-sensor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protect-sensor.js","sourceRoot":"","sources":["../src/protect-sensor.ts"],"names":[],"mappings":"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"}