various: update wrtc

This commit is contained in:
Koushik Dutta
2022-03-24 11:32:38 -07:00
parent 38083aa603
commit bd68e2bd9f
7 changed files with 45 additions and 120 deletions

View File

@@ -30,16 +30,7 @@ export function isPeerConnectionAlive(pc: RTCPeerConnection) {
let wrtc: any;
function initalizeWebRtc() {
if (wrtc)
return;
try {
wrtc = require('wrtc');
}
catch (e) {
console.warn('loading wrtc failed. trying @koush/wrtc fallback.');
wrtc = require('@koush/wrtc');
}
wrtc = require('@koush/wrtc');
Object.assign(global, wrtc);
}

View File

@@ -9,11 +9,10 @@
"version": "0.0.228",
"license": "Apache-2.0",
"dependencies": {
"@koush/wrtc": "^0.5.2",
"@koush/wrtc": "^0.5.3",
"@scrypted/common": "../../common",
"@scrypted/sdk": "file:../../sdk",
"mime": "^3.0.0",
"query-string": "^7.1.1",
"router": "^1.3.6",
"typescript": "^4.5.5"
},
@@ -78,7 +77,10 @@
"license": "ISC",
"dependencies": {
"@koush/werift": "file:../external/werift/packages/webrtc",
"@koush/wrtc": "^0.5.3",
"@scrypted/sdk": "file:../sdk",
"http-auth-utils": "^3.0.2",
"node-fetch-commonjs": "^3.1.1",
"typescript": "^4.4.3"
},
"devDependencies": {
@@ -87,7 +89,7 @@
},
"../../sdk": {
"name": "@scrypted/sdk",
"version": "0.0.173",
"version": "0.0.177",
"license": "ISC",
"dependencies": {
"@babel/preset-typescript": "^7.16.7",
@@ -121,9 +123,9 @@
}
},
"node_modules/@koush/wrtc": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.2.tgz",
"integrity": "sha512-3RItD1uLqJPC/OJDX+OSkVYZAu25D16vH7z6bul4g0pSqXRuqrRagBHChWP9TxHRVe1ycAtTm9DzVzeXWMThYg==",
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.3.tgz",
"integrity": "sha512-hQqoSZS3/1pUJo3v91oXqFPRQZnqVxiGbEvYE4QsCGUv1hoqGyvr9Kj47RUP9xdYkHMra9HSWFqPj61U8PdSRQ==",
"hasInstallScript": true,
"dependencies": {
"@mapbox/node-pre-gyp": "^1.0.8",
@@ -339,14 +341,6 @@
"node": ">=0.10.0"
}
},
"node_modules/decode-uri-component": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
"integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
"engines": {
"node": ">=0.10"
}
},
"node_modules/define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
@@ -396,14 +390,6 @@
"is-arrayish": "^0.2.1"
}
},
"node_modules/filter-obj": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz",
"integrity": "sha1-mzERErxsYSehbgFsbF1/GeCAXFs=",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/find-up": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
@@ -995,23 +981,6 @@
"node": ">=0.10.0"
}
},
"node_modules/query-string": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/query-string/-/query-string-7.1.1.tgz",
"integrity": "sha512-MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w==",
"dependencies": {
"decode-uri-component": "^0.2.0",
"filter-obj": "^1.1.0",
"split-on-first": "^1.0.0",
"strict-uri-encode": "^2.0.0"
},
"engines": {
"node": ">=6"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/read-pkg": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
@@ -1189,22 +1158,6 @@
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz",
"integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA=="
},
"node_modules/split-on-first": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz",
"integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==",
"engines": {
"node": ">=6"
}
},
"node_modules/strict-uri-encode": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz",
"integrity": "sha1-ucczDHBChi9rFC3CdLvMWGbONUY=",
"engines": {
"node": ">=4"
}
},
"node_modules/string_decoder": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
@@ -1406,9 +1359,9 @@
},
"dependencies": {
"@koush/wrtc": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.2.tgz",
"integrity": "sha512-3RItD1uLqJPC/OJDX+OSkVYZAu25D16vH7z6bul4g0pSqXRuqrRagBHChWP9TxHRVe1ycAtTm9DzVzeXWMThYg==",
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.3.tgz",
"integrity": "sha512-hQqoSZS3/1pUJo3v91oXqFPRQZnqVxiGbEvYE4QsCGUv1hoqGyvr9Kj47RUP9xdYkHMra9HSWFqPj61U8PdSRQ==",
"requires": {
"@mapbox/node-pre-gyp": "^1.0.8",
"domexception": "^1.0.1",
@@ -1447,8 +1400,11 @@
"version": "file:../../common",
"requires": {
"@koush/werift": "file:../external/werift/packages/webrtc",
"@koush/wrtc": "^0.5.3",
"@scrypted/sdk": "file:../sdk",
"@types/node": "^16.9.0",
"http-auth-utils": "^3.0.2",
"node-fetch-commonjs": "^3.1.1",
"typescript": "^4.4.3"
}
},
@@ -1600,11 +1556,6 @@
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
},
"decode-uri-component": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
"integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU="
},
"define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
@@ -1645,11 +1596,6 @@
"is-arrayish": "^0.2.1"
}
},
"filter-obj": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz",
"integrity": "sha1-mzERErxsYSehbgFsbF1/GeCAXFs="
},
"find-up": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
@@ -2090,17 +2036,6 @@
"pinkie": "^2.0.0"
}
},
"query-string": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/query-string/-/query-string-7.1.1.tgz",
"integrity": "sha512-MplouLRDHBZSG9z7fpuAAcI7aAYjDLhtsiVZsevsfaHWDS2IDdORKbSd1kWUA+V4zyva/HZoSfpwnYMMQDhb0w==",
"requires": {
"decode-uri-component": "^0.2.0",
"filter-obj": "^1.1.0",
"split-on-first": "^1.0.0",
"strict-uri-encode": "^2.0.0"
}
},
"read-pkg": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
@@ -2239,16 +2174,6 @@
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz",
"integrity": "sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA=="
},
"split-on-first": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz",
"integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw=="
},
"strict-uri-encode": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz",
"integrity": "sha1-ucczDHBChi9rFC3CdLvMWGbONUY="
},
"string_decoder": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",

View File

@@ -30,7 +30,7 @@
]
},
"dependencies": {
"@koush/wrtc": "^0.5.2",
"@koush/wrtc": "^0.5.3",
"@scrypted/common": "../../common",
"@scrypted/sdk": "file:../../sdk",
"mime": "^3.0.0",

View File

@@ -61,6 +61,9 @@ export class MediaCore extends ScryptedDeviceBase implements DeviceProvider, Buf
if (path === ScryptedInterface.Camera) {
return await systemManager.getDeviceById<Camera>(id).takePicture() as any;
}
if (path === ScryptedInterface.VideoCamera) {
return await systemManager.getDeviceById<VideoCamera>(id).getVideoStream() as any;
}
else {
throw new Error('Unrecognized Scrypted Media interface.')
}

View File

@@ -1,16 +1,16 @@
{
"name": "@scrypted/google-home",
"version": "0.0.43",
"version": "0.0.45",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@scrypted/google-home",
"version": "0.0.43",
"version": "0.0.45",
"dependencies": {
"@googleapis/homegraph": "^2.0.0",
"@homebridge/ciao": "^1.1.3",
"@koush/wrtc": "^0.5.2",
"@koush/wrtc": "^0.5.3",
"actions-on-google": "^3.0.0",
"axios": "^0.21.1",
"google-auth-library": "^7.9.2",
@@ -32,7 +32,10 @@
"license": "ISC",
"dependencies": {
"@koush/werift": "file:../external/werift/packages/webrtc",
"@koush/wrtc": "^0.5.3",
"@scrypted/sdk": "file:../sdk",
"http-auth-utils": "^3.0.2",
"node-fetch-commonjs": "^3.1.1",
"typescript": "^4.4.3"
},
"devDependencies": {
@@ -41,7 +44,7 @@
},
"../../sdk": {
"name": "@scrypted/sdk",
"version": "0.0.173",
"version": "0.0.177",
"dev": true,
"license": "ISC",
"dependencies": {
@@ -104,9 +107,9 @@
}
},
"node_modules/@koush/wrtc": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.2.tgz",
"integrity": "sha512-3RItD1uLqJPC/OJDX+OSkVYZAu25D16vH7z6bul4g0pSqXRuqrRagBHChWP9TxHRVe1ycAtTm9DzVzeXWMThYg==",
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.3.tgz",
"integrity": "sha512-hQqoSZS3/1pUJo3v91oXqFPRQZnqVxiGbEvYE4QsCGUv1hoqGyvr9Kj47RUP9xdYkHMra9HSWFqPj61U8PdSRQ==",
"hasInstallScript": true,
"dependencies": {
"@mapbox/node-pre-gyp": "^1.0.8",
@@ -1108,9 +1111,9 @@
}
},
"node_modules/node-forge": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz",
"integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==",
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.0.tgz",
"integrity": "sha512-08ARB91bUi6zNKzVmaj3QO7cr397uiDT2nJ63cHjyNtCTWIgvS47j3eT0WfzUwS9+6Z5YshRaoasFkXCKrIYbA==",
"engines": {
"node": ">= 6.13.0"
}
@@ -1811,9 +1814,9 @@
}
},
"@koush/wrtc": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.2.tgz",
"integrity": "sha512-3RItD1uLqJPC/OJDX+OSkVYZAu25D16vH7z6bul4g0pSqXRuqrRagBHChWP9TxHRVe1ycAtTm9DzVzeXWMThYg==",
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/@koush/wrtc/-/wrtc-0.5.3.tgz",
"integrity": "sha512-hQqoSZS3/1pUJo3v91oXqFPRQZnqVxiGbEvYE4QsCGUv1hoqGyvr9Kj47RUP9xdYkHMra9HSWFqPj61U8PdSRQ==",
"requires": {
"@mapbox/node-pre-gyp": "^1.0.8",
"domexception": "^1.0.1",
@@ -1842,8 +1845,11 @@
"version": "file:../../common",
"requires": {
"@koush/werift": "file:../external/werift/packages/webrtc",
"@koush/wrtc": "^0.5.3",
"@scrypted/sdk": "file:../sdk",
"@types/node": "^16.9.0",
"http-auth-utils": "^3.0.2",
"node-fetch-commonjs": "^3.1.1",
"typescript": "^4.4.3"
}
},
@@ -2621,9 +2627,9 @@
}
},
"node-forge": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz",
"integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w=="
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.0.tgz",
"integrity": "sha512-08ARB91bUi6zNKzVmaj3QO7cr397uiDT2nJ63cHjyNtCTWIgvS47j3eT0WfzUwS9+6Z5YshRaoasFkXCKrIYbA=="
},
"nopt": {
"version": "5.0.0",

View File

@@ -32,7 +32,7 @@
"dependencies": {
"@googleapis/homegraph": "^2.0.0",
"@homebridge/ciao": "^1.1.3",
"@koush/wrtc": "^0.5.2",
"@koush/wrtc": "^0.5.3",
"actions-on-google": "^3.0.0",
"axios": "^0.21.1",
"google-auth-library": "^7.9.2",
@@ -40,11 +40,11 @@
"url-parse": "^1.5.1"
},
"devDependencies": {
"@scrypted/sdk": "file:../../sdk",
"@scrypted/common": "file:../../common",
"@scrypted/sdk": "file:../../sdk",
"@types/debug": "^4.1.5",
"@types/lodash": "^4.14.168",
"@types/url-parse": "^1.4.3"
},
"version": "0.0.43"
"version": "0.0.45"
}

View File

@@ -21,7 +21,7 @@ addSupportedType({
probe(device) {
return device.interfaces.includes(ScryptedInterface.TemperatureSetting) && device.interfaces.includes(ScryptedInterface.Thermometer);
},
async getSyncResponse(device: ScryptedDevice & TemperatureSetting) {
async getSyncResponse(device: ScryptedDevice & TemperatureSetting & Thermometer) {
const ret = syncResponse(device, 'action.devices.types.THERMOSTAT');
ret.traits.push('action.devices.traits.TemperatureSetting');