diff --git a/devices/beam-outdoor-plug.js b/devices/beam-outdoor-plug.js index fd51910..0611874 100644 --- a/devices/beam-outdoor-plug.js +++ b/devices/beam-outdoor-plug.js @@ -1,5 +1,5 @@ import RingSocketDevice from './base-socket-device.js' -import { RingDeviceType } from 'ring-client-api' +import { RingDeviceType } from '@tsightler/ring-client-api' export default class BeamOutdoorPlug extends RingSocketDevice { constructor(deviceInfo) { diff --git a/devices/binary-sensor.js b/devices/binary-sensor.js index c00b51a..ea4525d 100644 --- a/devices/binary-sensor.js +++ b/devices/binary-sensor.js @@ -1,5 +1,5 @@ import RingSocketDevice from './base-socket-device.js' -import { RingDeviceType } from 'ring-client-api' +import { RingDeviceType } from '@tsightler/ring-client-api' export default class BinarySensor extends RingSocketDevice { constructor(deviceInfo) { diff --git a/devices/security-panel.js b/devices/security-panel.js index 9b1e902..cd3933f 100644 --- a/devices/security-panel.js +++ b/devices/security-panel.js @@ -1,5 +1,5 @@ import RingSocketDevice from './base-socket-device.js' -import { allAlarmStates, RingDeviceType } from 'ring-client-api' +import { allAlarmStates, RingDeviceType } from '@tsightler/ring-client-api' import utils from '../lib/utils.js' import state from '../lib/state.js' diff --git a/devices/thermostat.js b/devices/thermostat.js index fbcf99c..3294b2d 100644 --- a/devices/thermostat.js +++ b/devices/thermostat.js @@ -1,5 +1,5 @@ import RingSocketDevice from './base-socket-device.js' -import { RingDeviceType } from 'ring-client-api' +import { RingDeviceType } from '@tsightler/ring-client-api' import utils from '../lib/utils.js' export default class Thermostat extends RingSocketDevice { diff --git a/init-ring-mqtt.js b/init-ring-mqtt.js index c55ba32..073bb81 100644 --- a/init-ring-mqtt.js +++ b/init-ring-mqtt.js @@ -5,8 +5,8 @@ import { fileURLToPath } from 'url' import { readFile } from 'fs/promises' import writeFileAtomic from 'write-file-atomic' import { createHash, randomBytes } from 'crypto' -import { RingRestClient } from 'ring-client-api/rest-client' -import { requestInput } from './node_modules/ring-client-api/lib/util.js' +import { RingRestClient } from '@tsightler/ring-client-api/rest-client' +import { requestInput } from './node_modules/@tsightler/ring-client-api/lib/util.js' async function getRefreshToken(systemId) { let generatedToken diff --git a/lib/ring.js b/lib/ring.js index d09f5ef..e96843d 100644 --- a/lib/ring.js +++ b/lib/ring.js @@ -1,4 +1,4 @@ -import { RingApi, RingDeviceType, RingCamera, RingChime, RingIntercom } from 'ring-client-api' +import { RingApi, RingDeviceType, RingCamera, RingChime, RingIntercom } from '@tsightler/ring-client-api' import chalk from 'chalk' import utils from './utils.js' import go2rtc from './go2rtc.js' @@ -123,6 +123,12 @@ export default new class RingMqtt { this.refreshToken = newRefreshToken state.updateToken(newRefreshToken) }) + + this.client.onNewPushCredentials.subscribe((credentials) => { + debug('Recevied updated push credentials') + state.updatePushCredentials(credentials) + }) + } catch(error) { this.client = false debug(chalk.yellowBright(error.message)) diff --git a/lib/state.js b/lib/state.js index b6015b2..5881616 100644 --- a/lib/state.js +++ b/lib/state.js @@ -74,11 +74,17 @@ export default new class State { } updateToken(newRefreshToken) { - debug('Saving updated refresh token to state file') + debug('Saving refresh token to state file') this.data.ring_token = newRefreshToken this.saveStateFile() } + updatePushCredentials(pushCredentials) { + debug('Saving push credentials to state file') + this.data.push_credentials = pushCredentials.newCredentials + this.saveStateFile() + } + setDeviceSavedState(deviceId, stateData) { this.data.devices[deviceId] = stateData this.saveStateFile() diff --git a/lib/tokenapp.js b/lib/tokenapp.js index de69781..5cabe03 100644 --- a/lib/tokenapp.js +++ b/lib/tokenapp.js @@ -1,4 +1,4 @@ -import { RingRestClient } from '../node_modules/ring-client-api/lib/rest-client.js' +import { RingRestClient } from '../node_modules/@tsightler/ring-client-api/lib/rest-client.js' import utils from './utils.js' import { dirname } from 'path' import { fileURLToPath } from 'url' diff --git a/package-lock.json b/package-lock.json index 82898a3..2888f1a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "5.2.3", "license": "MIT", "dependencies": { + "@tsightler/ring-client-api": "11.7.7-custom1", "aedes": "0.49.0", "body-parser": "^1.20.2", "chalk": "^5.2.0", @@ -19,7 +20,6 @@ "js-yaml": "^4.1.0", "minimist": "^1.2.8", "mqtt": "^4.3.7", - "ring-client-api": "11.7.7", "rxjs": "^7.8.1", "werift": "^0.18.3", "write-file-atomic": "^5.0.1" @@ -535,6 +535,233 @@ "node": ">=14.16" } }, + "node_modules/@tsightler/ring-client-api": { + "version": "11.7.7-custom1", + "resolved": "https://registry.npmjs.org/@tsightler/ring-client-api/-/ring-client-api-11.7.7-custom1.tgz", + "integrity": "sha512-6c9YYOZOslatv26C/K8womrLYfmr57UBDqrn0uFrJL5U02ogdoJWwO6uKLYkkq0spa4yGo2W+glNIAoOu9Gwjw==", + "funding": [ + { + "type": "paypal", + "url": "https://www.paypal.me/dustingreif" + }, + { + "type": "github", + "url": "https://github.com/sponsors/dgreif" + } + ], + "dependencies": { + "@eneris/push-receiver": "^3.1.4", + "@homebridge/camera-utils": "^2.2.0", + "@peculiar/asn1-schema": "^2.3.6", + "@peculiar/webcrypto": "^1.4.3", + "@types/socket.io-client": "1.4.36", + "colors": "1.4.0", + "debug": "^4.3.4", + "got": "^11.8.5", + "json-bigint": "^1.0.0", + "msw": "^1.2.1", + "rxjs": "^7.8.0", + "socket.io-client": "^2.5.0", + "systeminformation": "^5.17.12", + "uuid": "^9.0.0", + "webcrypto-core": "^1.7.7", + "werift": "0.18.2", + "ws": "^8.13.0" + }, + "bin": { + "ring-auth-cli": "lib/ring-auth-cli.js", + "ring-device-data-cli": "lib/ring-device-data-cli.js" + }, + "engines": { + "node": "^16 || ^18" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/werift": { + "version": "0.18.2", + "resolved": "https://registry.npmjs.org/werift/-/werift-0.18.2.tgz", + "integrity": "sha512-0RSrSnRo5SC8Ks7XgwvUtVGyKiRdlg6RxWWSaWv3ey2iTGrcPvUUp06ZGLeYRSablT7yoFpXJEz+JQuhgA+tJQ==", + "dependencies": { + "@fidm/x509": "^1.2.1", + "@minhducsun2002/leb128": "^1.0.0", + "@peculiar/webcrypto": "^1.4.1", + "@peculiar/x509": "^1.9.2", + "@shinyoshiaki/ebml-builder": "^0.0.1", + "aes-js": "^3.1.2", + "binary-data": "^0.6.0", + "buffer-crc32": "^0.2.13", + "date-fns": "^2.29.3", + "debug": "^4.3.4", + "elliptic": "^6.5.4", + "int64-buffer": "^1.0.1", + "ip": "^1.1.8", + "jspack": "^0.0.4", + "lodash": "^4.17.21", + "nano-time": "^1.0.0", + "p-cancelable": "^2.1.1", + "rx.mini": "^1.2.2", + "turbo-crc32": "^1.0.1", + "tweetnacl": "^1.0.3", + "uuid": "^9.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@tsightler/ring-client-api/node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/@types/cacheable-request": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", @@ -4295,233 +4522,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/ring-client-api": { - "version": "11.7.7", - "resolved": "https://registry.npmjs.org/ring-client-api/-/ring-client-api-11.7.7.tgz", - "integrity": "sha512-ah9gc64jrNkR0vJtU/kENnqz24+V2aOfVs+HxRI7L7JTtNqGGpTKRQdhbmOjllEe/Xt4FhEbg2XOY9lyvrFrjQ==", - "funding": [ - { - "type": "paypal", - "url": "https://www.paypal.me/dustingreif" - }, - { - "type": "github", - "url": "https://github.com/sponsors/dgreif" - } - ], - "dependencies": { - "@eneris/push-receiver": "^3.1.4", - "@homebridge/camera-utils": "^2.2.0", - "@peculiar/asn1-schema": "^2.3.6", - "@peculiar/webcrypto": "^1.4.3", - "@types/socket.io-client": "1.4.36", - "colors": "1.4.0", - "debug": "^4.3.4", - "got": "^11.8.5", - "json-bigint": "^1.0.0", - "msw": "^1.2.1", - "rxjs": "^7.8.0", - "socket.io-client": "^2.5.0", - "systeminformation": "^5.17.12", - "uuid": "^9.0.0", - "webcrypto-core": "^1.7.7", - "werift": "0.18.2", - "ws": "^8.13.0" - }, - "bin": { - "ring-auth-cli": "lib/ring-auth-cli.js", - "ring-device-data-cli": "lib/ring-device-data-cli.js" - }, - "engines": { - "node": "^16 || ^18" - } - }, - "node_modules/ring-client-api/node_modules/@sindresorhus/is": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, - "node_modules/ring-client-api/node_modules/@szmarczak/http-timer": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", - "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", - "dependencies": { - "defer-to-connect": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ring-client-api/node_modules/cacheable-lookup": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", - "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", - "engines": { - "node": ">=10.6.0" - } - }, - "node_modules/ring-client-api/node_modules/cacheable-request": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", - "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ring-client-api/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ring-client-api/node_modules/got": { - "version": "11.8.6", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", - "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", - "dependencies": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=10.19.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, - "node_modules/ring-client-api/node_modules/http2-wrapper": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", - "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, - "node_modules/ring-client-api/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/ring-client-api/node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ring-client-api/node_modules/p-cancelable": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/ring-client-api/node_modules/responselike": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", - "dependencies": { - "lowercase-keys": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ring-client-api/node_modules/werift": { - "version": "0.18.2", - "resolved": "https://registry.npmjs.org/werift/-/werift-0.18.2.tgz", - "integrity": "sha512-0RSrSnRo5SC8Ks7XgwvUtVGyKiRdlg6RxWWSaWv3ey2iTGrcPvUUp06ZGLeYRSablT7yoFpXJEz+JQuhgA+tJQ==", - "dependencies": { - "@fidm/x509": "^1.2.1", - "@minhducsun2002/leb128": "^1.0.0", - "@peculiar/webcrypto": "^1.4.1", - "@peculiar/x509": "^1.9.2", - "@shinyoshiaki/ebml-builder": "^0.0.1", - "aes-js": "^3.1.2", - "binary-data": "^0.6.0", - "buffer-crc32": "^0.2.13", - "date-fns": "^2.29.3", - "debug": "^4.3.4", - "elliptic": "^6.5.4", - "int64-buffer": "^1.0.1", - "ip": "^1.1.8", - "jspack": "^0.0.4", - "lodash": "^4.17.21", - "nano-time": "^1.0.0", - "p-cancelable": "^2.1.1", - "rx.mini": "^1.2.2", - "turbo-crc32": "^1.0.1", - "tweetnacl": "^1.0.3", - "uuid": "^9.0.0" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/ring-client-api/node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", diff --git a/package.json b/package.json index eb6f434..5dc51cb 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "js-yaml": "^4.1.0", "minimist": "^1.2.8", "mqtt": "^4.3.7", - "ring-client-api": "11.7.7", + "@tsightler/ring-client-api": "11.7.7-custom1", "write-file-atomic": "^5.0.1", "werift": "^0.18.3", "rxjs": "^7.8.1"