mirror of
https://github.com/tsightler/ring-mqtt.git
synced 2025-09-26 21:01:12 +08:00
Release 5.7.0
Release v5.7.0
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
FROM alpine:3.18
|
||||
FROM alpine:3.20
|
||||
|
||||
ENV LANG="C.UTF-8" \
|
||||
PS1="$(whoami)@$(hostname):$(pwd)$ " \
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,3 +1,16 @@
|
||||
## v5.7.0
|
||||
This release implements the new FCMv1 APIs for push notifications as the legacy FCM/GCM API has been deprecated and will begin to shutdown starting on July 22nd, 2024. While the transition to this new API should be transparent for most users, there are a lot of changes under the hood, including in several upstream dependencies and a completely new format for the push notificaitons themselves While the goal is to make this transition as seemless as possible, 100% success can't be guaranteed. Cameras have been heavily tested with the new format but, due to no access to a Ring Intercom, those devices have not been tested with the new format and problems are likely. If you have a Ring Intercom and have issues with this version please open an issue and provide logs.
|
||||
|
||||
**Minor Enhancements**
|
||||
- A significant amount of work has gone into improving the reliability of streaming, especially the live stream. In prior versions various failure scenarios could lead to states where future streaming requests would not succeed and the only recourse was to restart the entire addon/container. Hours of testing have gone into this version and many such issues have been addressed.
|
||||
|
||||
**Dependency Updates**
|
||||
- ring-client-api v13.0.0
|
||||
- go2rtc v1.9.4 (custom build to fix a hang on exit issue)
|
||||
- NodeJS v20.13.1
|
||||
- s6-overlay v3.2.0.0
|
||||
- Alpine Linux 3.20.1
|
||||
|
||||
## v5.6.7
|
||||
This release is intended to address an ongoing instability with websocket connections by using a newer API endpoint for requesting tickets.
|
||||
|
||||
|
34
package-lock.json
generated
34
package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "ring-mqtt",
|
||||
"version": "5.7.0-dev",
|
||||
"version": "5.7.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "ring-mqtt",
|
||||
"version": "5.7.0-dev",
|
||||
"version": "5.7.0",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"aedes": "0.51.2",
|
||||
@@ -123,9 +123,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@eneris/push-receiver": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/@eneris/push-receiver/-/push-receiver-4.1.2.tgz",
|
||||
"integrity": "sha512-suFj61/W1aDEPcNfAxdAi/IP9guMQEZi7mdW6NDhGy729kdsMYBWeu17pekFoKdyfp4zGI2SZ6o83nRbcRVzaQ==",
|
||||
"version": "4.1.3",
|
||||
"resolved": "https://registry.npmjs.org/@eneris/push-receiver/-/push-receiver-4.1.3.tgz",
|
||||
"integrity": "sha512-WttSqWuMqcxw1dP2zAP2hZn+SaeMakSDQp1kfm5ctpy37hJ4/MPrx4ZnovXFLftqp7fpKD+p1DdfBuNDW9Gl1Q==",
|
||||
"dependencies": {
|
||||
"http_ece": "^1.2.0",
|
||||
"jsonwebtoken": "^9.0.2",
|
||||
@@ -243,9 +243,9 @@
|
||||
"integrity": "sha512-eFrYUPDVHeuwWHluTG1kwNQUEUcFjVKYwPkU8z9DR1JH3AW7JtJsG9cRVGmwz809kKtGfwGJj58juCZxEvnI/g=="
|
||||
},
|
||||
"node_modules/@noble/curves": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.0.tgz",
|
||||
"integrity": "sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==",
|
||||
"version": "1.4.2",
|
||||
"resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz",
|
||||
"integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==",
|
||||
"dependencies": {
|
||||
"@noble/hashes": "1.4.0"
|
||||
},
|
||||
@@ -540,9 +540,9 @@
|
||||
"integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA=="
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "20.14.8",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.8.tgz",
|
||||
"integrity": "sha512-DO+2/jZinXfROG7j7WKFn/3C6nFwxy2lLpgLjEXJz+0XKphZlTLJ14mo8Vfg8X5BWN6XjyESXq+LcYdT7tR3bA==",
|
||||
"version": "20.14.9",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz",
|
||||
"integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==",
|
||||
"dependencies": {
|
||||
"undici-types": "~5.26.4"
|
||||
}
|
||||
@@ -2796,9 +2796,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/lru-cache": {
|
||||
"version": "10.2.2",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz",
|
||||
"integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==",
|
||||
"version": "10.3.0",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz",
|
||||
"integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==",
|
||||
"engines": {
|
||||
"node": "14 || >=16.14"
|
||||
}
|
||||
@@ -2976,9 +2976,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/mqtt": {
|
||||
"version": "5.7.2",
|
||||
"resolved": "https://registry.npmjs.org/mqtt/-/mqtt-5.7.2.tgz",
|
||||
"integrity": "sha512-b5xIA9J/K1LTubSWKaNYYLxYIusQdip6o9/8bRWad2TelRr8xLifjQt+SnamDAwMp3O6NdvR9E8ae7VMuN02kg==",
|
||||
"version": "5.7.3",
|
||||
"resolved": "https://registry.npmjs.org/mqtt/-/mqtt-5.7.3.tgz",
|
||||
"integrity": "sha512-v+5la6Q6zjl0AWsI7ICDA/K3hclkNj7CMa0khMugCC+LKPLrQF+sSQb/9ckezZLMvcBC1tXhRzqmcagQoDl9fQ==",
|
||||
"dependencies": {
|
||||
"@types/readable-stream": "^4.0.5",
|
||||
"@types/ws": "^8.5.9",
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ring-mqtt",
|
||||
"version": "5.7.0-dev",
|
||||
"version": "5.7.0",
|
||||
"type": "module",
|
||||
"description": "Ring Devices via MQTT",
|
||||
"main": "ring-mqtt.js",
|
||||
@@ -23,6 +23,9 @@
|
||||
"devDependencies": {
|
||||
"eslint": "^7.32.0"
|
||||
},
|
||||
"overrides": {
|
||||
"@eneris/push-receiver": "4.1.3"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1",
|
||||
"start": "node ring-mqtt.js"
|
||||
|
@@ -55,6 +55,7 @@ stop() {
|
||||
|
||||
# Send kill signal to monitor script and wait for it to exit
|
||||
local pids=$(jobs -pr)
|
||||
# local pids=$(pgrep -f "monitor-stream.sh ${1} ${2} ${3} ${4}" | grep -v ^$$\$)
|
||||
[ -n "$pids" ] && kill $pids
|
||||
wait
|
||||
cleanup
|
||||
@@ -63,6 +64,8 @@ stop() {
|
||||
# If control script is still runnning send kill signal and exit
|
||||
cleanup() {
|
||||
rm -f /tmp/ring-mqtt-${device_id}.lock
|
||||
# For some reason sleeping for 100ms seems to keep go2rtc from hanging
|
||||
sleep .1
|
||||
for fd in $(ls /proc/$$/fd); do
|
||||
eval "exec $fd>&-"
|
||||
done
|
||||
|
@@ -39,9 +39,7 @@ else
|
||||
;;
|
||||
esac
|
||||
rm -f /usr/local/bin/go2rtc
|
||||
#curl -L -s -o /usr/local/bin/go2rtc "https://github.com/AlexxIT/go2rtc/releases/download/${GO2RTC_VERSION}/go2rtc_linux_${GO2RTC_ARCH}"
|
||||
# Temporarily use customer go2rtc builds
|
||||
cp "/app/ring-mqtt-${BRANCH}/bin/go2rtc_linux_${GO2RTC_ARCH}" /usr/local/bin/go2rtc
|
||||
curl -L -s -o /usr/local/bin/go2rtc "https://github.com/AlexxIT/go2rtc/releases/download/${GO2RTC_VERSION}/go2rtc_linux_${GO2RTC_ARCH}"
|
||||
chmod +x /usr/local/bin/go2rtc
|
||||
|
||||
case "${APK_ARCH}" in
|
||||
|
Reference in New Issue
Block a user