homebridge-ring 14.0.0-beta.0 → 14.0.0-beta.2
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 +22 -0
- package/lib/beam.js +5 -5
- package/lib/camera-source.js +5 -5
- package/lib/camera.js +2 -2
- package/lib/intercom.js +2 -2
- package/lib/location-mode-switch.js +2 -2
- package/lib/lock.js +1 -1
- package/lib/ring-platform.js +1 -1
- package/lib/security-panel.js +1 -1
- package/lib/thermostat.js +1 -1
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# homebridge-ring
|
|
2
2
|
|
|
3
|
+
## 14.0.0-beta.2
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- [`c9919a2`](https://github.com/dgreif/ring/commit/c9919a2a859960d40f2a90587f7a40c8aea4d863) Thanks [@dgreif](https://github.com/dgreif)! - Drop Node 18 support since it has reached end of life
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- [`4d24ccd`](https://github.com/dgreif/ring/commit/4d24ccdbd93f1e761b56c19269c61dbfc46f7331) Thanks [@dgreif](https://github.com/dgreif)! - Use undici for all websocket connections. This fixes https://github.com/dgreif/ring/issues/1605 where websockets were failing to connect for alarms and light hubs. It also allows us to drop the socket.io client, which was a very outdated dependency.
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [[`c9919a2`](https://github.com/dgreif/ring/commit/c9919a2a859960d40f2a90587f7a40c8aea4d863), [`4d24ccd`](https://github.com/dgreif/ring/commit/4d24ccdbd93f1e761b56c19269c61dbfc46f7331)]:
|
|
14
|
+
- ring-client-api@14.0.0-beta.2
|
|
15
|
+
|
|
16
|
+
## 14.0.0-beta.1
|
|
17
|
+
|
|
18
|
+
### Patch Changes
|
|
19
|
+
|
|
20
|
+
- [`abb0f04`](https://github.com/dgreif/ring/commit/abb0f041118ad4e55ed5b68a6138a05415e78fcf) Thanks [@dgreif](https://github.com/dgreif)! - Update dependencies
|
|
21
|
+
|
|
22
|
+
- Updated dependencies [[`dbe2c34`](https://github.com/dgreif/ring/commit/dbe2c34e62c192bbfbafec0a0a6562d92e3f9148), [`abb0f04`](https://github.com/dgreif/ring/commit/abb0f041118ad4e55ed5b68a6138a05415e78fcf)]:
|
|
23
|
+
- ring-client-api@14.0.0-beta.1
|
|
24
|
+
|
|
3
25
|
## 14.0.0-beta.0
|
|
4
26
|
|
|
5
27
|
### Major Changes
|
package/lib/beam.js
CHANGED
|
@@ -3,20 +3,20 @@ import { hap } from "./hap.js";
|
|
|
3
3
|
import { BaseDeviceAccessory } from "./base-device-accessory.js";
|
|
4
4
|
import { logInfo } from 'ring-client-api/util';
|
|
5
5
|
export class Beam extends BaseDeviceAccessory {
|
|
6
|
+
isLightGroup;
|
|
7
|
+
groupId;
|
|
6
8
|
device;
|
|
7
9
|
accessory;
|
|
8
10
|
config;
|
|
9
|
-
isLightGroup;
|
|
10
|
-
groupId;
|
|
11
11
|
constructor(device, accessory, config) {
|
|
12
12
|
super();
|
|
13
13
|
this.device = device;
|
|
14
14
|
this.accessory = accessory;
|
|
15
15
|
this.config = config;
|
|
16
16
|
this.isLightGroup =
|
|
17
|
-
|
|
18
|
-
this.groupId =
|
|
19
|
-
const { Characteristic, Service } = hap, { MotionSensor } = Service, { data: { deviceType }, } =
|
|
17
|
+
device.data.deviceType === RingDeviceType.BeamsLightGroupSwitch;
|
|
18
|
+
this.groupId = device.data.groupId;
|
|
19
|
+
const { Characteristic, Service } = hap, { MotionSensor } = Service, { data: { deviceType }, } = device;
|
|
20
20
|
if (deviceType !== RingDeviceType.BeamsMotionSensor) {
|
|
21
21
|
this.registerCharacteristic({
|
|
22
22
|
characteristicType: Characteristic.On,
|
package/lib/camera-source.js
CHANGED
|
@@ -24,10 +24,6 @@ function getSessionConfig(srtpOptions) {
|
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
26
|
class StreamingSessionWrapper {
|
|
27
|
-
streamingSession;
|
|
28
|
-
prepareStreamRequest;
|
|
29
|
-
ringCamera;
|
|
30
|
-
start;
|
|
31
27
|
audioSsrc = hap.CameraController.generateSynchronisationSource();
|
|
32
28
|
videoSsrc = hap.CameraController.generateSynchronisationSource();
|
|
33
29
|
audioSrtp = generateSrtpOptions();
|
|
@@ -35,6 +31,10 @@ class StreamingSessionWrapper {
|
|
|
35
31
|
audioSplitter = new RtpSplitter();
|
|
36
32
|
videoSplitter = new RtpSplitter();
|
|
37
33
|
transcodedAudioSplitter = new RtpSplitter();
|
|
34
|
+
streamingSession;
|
|
35
|
+
prepareStreamRequest;
|
|
36
|
+
ringCamera;
|
|
37
|
+
start;
|
|
38
38
|
constructor(streamingSession, prepareStreamRequest, ringCamera, start) {
|
|
39
39
|
this.streamingSession = streamingSession;
|
|
40
40
|
this.prepareStreamRequest = prepareStreamRequest;
|
|
@@ -226,10 +226,10 @@ class StreamingSessionWrapper {
|
|
|
226
226
|
}
|
|
227
227
|
}
|
|
228
228
|
export class CameraSource {
|
|
229
|
-
ringCamera;
|
|
230
229
|
controller;
|
|
231
230
|
sessions = {};
|
|
232
231
|
cachedSnapshot;
|
|
232
|
+
ringCamera;
|
|
233
233
|
constructor(ringCamera) {
|
|
234
234
|
this.ringCamera = ringCamera;
|
|
235
235
|
this.controller = new hap.CameraController({
|
package/lib/camera.js
CHANGED
|
@@ -6,11 +6,11 @@ import { TargetValueTimer } from "./target-value-timer.js";
|
|
|
6
6
|
import { delay, logError, logInfo } from 'ring-client-api/util';
|
|
7
7
|
import { firstValueFrom } from 'rxjs';
|
|
8
8
|
export class Camera extends BaseDataAccessory {
|
|
9
|
+
inHomeDoorbellStatus;
|
|
10
|
+
cameraSource;
|
|
9
11
|
device;
|
|
10
12
|
accessory;
|
|
11
13
|
config;
|
|
12
|
-
inHomeDoorbellStatus;
|
|
13
|
-
cameraSource;
|
|
14
14
|
constructor(device, accessory, config) {
|
|
15
15
|
super();
|
|
16
16
|
this.device = device;
|
package/lib/intercom.js
CHANGED
|
@@ -3,11 +3,11 @@ import { BaseDataAccessory } from "./base-data-accessory.js";
|
|
|
3
3
|
import { logError, logInfo } from 'ring-client-api/util';
|
|
4
4
|
import { map, throttleTime } from 'rxjs/operators';
|
|
5
5
|
export class Intercom extends BaseDataAccessory {
|
|
6
|
+
unlocking = false;
|
|
7
|
+
unlockTimeout;
|
|
6
8
|
device;
|
|
7
9
|
accessory;
|
|
8
10
|
config;
|
|
9
|
-
unlocking = false;
|
|
10
|
-
unlockTimeout;
|
|
11
11
|
constructor(device, accessory, config) {
|
|
12
12
|
super();
|
|
13
13
|
this.device = device;
|
|
@@ -17,11 +17,11 @@ function getStateFromMode(mode) {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
export class LocationModeSwitch extends BaseAccessory {
|
|
20
|
+
targetState;
|
|
21
|
+
device;
|
|
20
22
|
location;
|
|
21
23
|
accessory;
|
|
22
24
|
config;
|
|
23
|
-
targetState;
|
|
24
|
-
device;
|
|
25
25
|
constructor(location, accessory, config) {
|
|
26
26
|
super();
|
|
27
27
|
this.location = location;
|
package/lib/lock.js
CHANGED
package/lib/ring-platform.js
CHANGED
|
@@ -110,10 +110,10 @@ function getAccessoryClass(device) {
|
|
|
110
110
|
return null;
|
|
111
111
|
}
|
|
112
112
|
export class RingPlatform {
|
|
113
|
+
homebridgeAccessories = {};
|
|
113
114
|
log;
|
|
114
115
|
config;
|
|
115
116
|
api;
|
|
116
|
-
homebridgeAccessories = {};
|
|
117
117
|
constructor(log, config, api) {
|
|
118
118
|
this.log = log;
|
|
119
119
|
this.config = config;
|
package/lib/security-panel.js
CHANGED
|
@@ -6,10 +6,10 @@ function isValidNightModeBypass(mode) {
|
|
|
6
6
|
return mode && (mode === 'all' || mode === 'some');
|
|
7
7
|
}
|
|
8
8
|
export class SecurityPanel extends BaseDeviceAccessory {
|
|
9
|
+
alarmStates;
|
|
9
10
|
device;
|
|
10
11
|
accessory;
|
|
11
12
|
config;
|
|
12
|
-
alarmStates;
|
|
13
13
|
constructor(device, accessory, config) {
|
|
14
14
|
super();
|
|
15
15
|
this.device = device;
|
package/lib/thermostat.js
CHANGED
|
@@ -5,10 +5,10 @@ import { logDebug, logError, logInfo } from 'ring-client-api/util';
|
|
|
5
5
|
import { BaseDeviceAccessory } from "./base-device-accessory.js";
|
|
6
6
|
import { hap } from "./hap.js";
|
|
7
7
|
export class Thermostat extends BaseDeviceAccessory {
|
|
8
|
+
onTemperature;
|
|
8
9
|
device;
|
|
9
10
|
accessory;
|
|
10
11
|
config;
|
|
11
|
-
onTemperature;
|
|
12
12
|
constructor(device, accessory, config) {
|
|
13
13
|
super();
|
|
14
14
|
this.device = device;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "homebridge-ring",
|
|
3
3
|
"displayName": "Ring",
|
|
4
|
-
"version": "14.0.0-beta.
|
|
4
|
+
"version": "14.0.0-beta.2",
|
|
5
5
|
"description": "Homebridge plugin for Ring doorbells, cameras, security alarm system and smart lighting",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "lib/index.js",
|
|
@@ -14,19 +14,19 @@
|
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@homebridge/camera-utils": "^3.0.0",
|
|
17
|
-
"@homebridge/plugin-ui-utils": "^2.0.
|
|
18
|
-
"ring-client-api": "14.0.0-beta.
|
|
19
|
-
"werift": "0.
|
|
17
|
+
"@homebridge/plugin-ui-utils": "^2.0.2",
|
|
18
|
+
"ring-client-api": "14.0.0-beta.2",
|
|
19
|
+
"werift": "0.22.1"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
22
|
"concurrently": "^9.1.2",
|
|
23
23
|
"eslint-config-shared": "*",
|
|
24
|
-
"homebridge": "1.
|
|
24
|
+
"homebridge": "1.9.0",
|
|
25
25
|
"tsconfig": "*",
|
|
26
|
-
"typescript": "5.
|
|
26
|
+
"typescript": "5.8.3"
|
|
27
27
|
},
|
|
28
28
|
"engines": {
|
|
29
|
-
"node": "^
|
|
29
|
+
"node": "^20 || ^22",
|
|
30
30
|
"homebridge": ">=1.4.0 || ^2.0.0-beta.0"
|
|
31
31
|
},
|
|
32
32
|
"repository": {
|