From f556ae7ff35c0dddcac547837a5c714170af6db4 Mon Sep 17 00:00:00 2001 From: Koushik Dutta Date: Mon, 25 Aug 2025 10:02:39 -0700 Subject: [PATCH] webrtc/sdk: initial lossless datachannel api --- packages/client/package-lock.json | 8 ++++---- packages/client/package.json | 2 +- sdk/package-lock.json | 4 ++-- sdk/package.json | 2 +- sdk/types/package-lock.json | 4 ++-- sdk/types/package.json | 2 +- sdk/types/scrypted_python/scrypted_sdk/types.py | 2 +- sdk/types/src/types.input.ts | 7 +++++++ server/package-lock.json | 8 ++++---- server/package.json | 2 +- 10 files changed, 24 insertions(+), 17 deletions(-) diff --git a/packages/client/package-lock.json b/packages/client/package-lock.json index a5628b1b6..7ac054a79 100644 --- a/packages/client/package-lock.json +++ b/packages/client/package-lock.json @@ -21,7 +21,7 @@ "typescript": "^5.8.3" }, "peerDependencies": { - "@scrypted/types": "^0.5.23" + "@scrypted/types": "^0.5.34" } }, "node_modules/@cspotcode/source-map-support": { @@ -83,9 +83,9 @@ } }, "node_modules/@scrypted/types": { - "version": "0.5.23", - "resolved": "https://registry.npmjs.org/@scrypted/types/-/types-0.5.23.tgz", - "integrity": "sha512-is/UJHgS3lvEuXyb+C/OPeIP5CKp+M6SQt1l/WFJr1Oj+KYYHGU8Ztlh/qOmAWgONhg286N4/cLNzTtAAh4YnA==", + "version": "0.5.34", + "resolved": "https://registry.npmjs.org/@scrypted/types/-/types-0.5.34.tgz", + "integrity": "sha512-BjZLJ2NrxlNSBfyEwW/CH9mg4nE1eBoCIJjCrwGpEzg862sPNhdJFKC/3gaUBCB4VOe2SpnK2s6EC4yDkb3SsA==", "license": "ISC", "peer": true, "dependencies": { diff --git a/packages/client/package.json b/packages/client/package.json index fcc1909f0..91b477760 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -19,7 +19,7 @@ "typescript": "^5.8.3" }, "peerDependencies": { - "@scrypted/types": "^0.5.23" + "@scrypted/types": "^0.5.34" }, "dependencies": { "engine.io-client": "^6.6.3", diff --git a/sdk/package-lock.json b/sdk/package-lock.json index d7820af3a..9cd33a61b 100644 --- a/sdk/package-lock.json +++ b/sdk/package-lock.json @@ -1,12 +1,12 @@ { "name": "@scrypted/sdk", - "version": "0.5.35", + "version": "0.5.36", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@scrypted/sdk", - "version": "0.5.35", + "version": "0.5.36", "license": "ISC", "dependencies": { "@babel/preset-typescript": "^7.27.1", diff --git a/sdk/package.json b/sdk/package.json index 6e0c48aef..c644ec844 100644 --- a/sdk/package.json +++ b/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@scrypted/sdk", - "version": "0.5.35", + "version": "0.5.36", "description": "", "main": "dist/src/index.js", "exports": { diff --git a/sdk/types/package-lock.json b/sdk/types/package-lock.json index 711a83638..f75c44485 100644 --- a/sdk/types/package-lock.json +++ b/sdk/types/package-lock.json @@ -1,12 +1,12 @@ { "name": "@scrypted/types", - "version": "0.5.33", + "version": "0.5.34", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@scrypted/types", - "version": "0.5.33", + "version": "0.5.34", "license": "ISC", "dependencies": { "openai": "^5.3.0" diff --git a/sdk/types/package.json b/sdk/types/package.json index 6b7176cc4..21000f38e 100644 --- a/sdk/types/package.json +++ b/sdk/types/package.json @@ -1,6 +1,6 @@ { "name": "@scrypted/types", - "version": "0.5.33", + "version": "0.5.34", "description": "", "main": "dist/index.js", "author": "", diff --git a/sdk/types/scrypted_python/scrypted_sdk/types.py b/sdk/types/scrypted_python/scrypted_sdk/types.py index 2ceda50f7..347949ac3 100644 --- a/sdk/types/scrypted_python/scrypted_sdk/types.py +++ b/sdk/types/scrypted_python/scrypted_sdk/types.py @@ -1087,7 +1087,7 @@ class TamperState(TypedDict): pass -TYPES_VERSION = "0.5.33" +TYPES_VERSION = "0.5.34" class AirPurifier: diff --git a/sdk/types/src/types.input.ts b/sdk/types/src/types.input.ts index ab0e774e4..69f510f8e 100644 --- a/sdk/types/src/types.input.ts +++ b/sdk/types/src/types.input.ts @@ -2557,6 +2557,10 @@ export interface RTCMediaObjectTrack { stop(): Promise; } +export interface RTCGeneratorDataChannel { + close(): Promise; +} + /** * @category WebRTC Reference */ @@ -2585,6 +2589,9 @@ export interface RTCConnectionManagement { videoDirection?: 'sendrecv' | 'sendonly' | 'recvonly', audioDirection?: 'sendrecv' | 'sendonly' | 'recvonly', }): Promise; + createRPCGeneratorDataChannel(label: string, generator: AsyncGenerator, options?: { + bufferedAmountLowThreshold?: number, + }): Promise; close(): Promise; probe(): Promise; } diff --git a/server/package-lock.json b/server/package-lock.json index bb58dc00f..67576194e 100644 --- a/server/package-lock.json +++ b/server/package-lock.json @@ -12,7 +12,7 @@ "dependencies": { "@scrypted/ffmpeg-static": "^6.1.0-build3", "@scrypted/node-pty": "^1.0.24", - "@scrypted/types": "^0.5.23", + "@scrypted/types": "^0.5.34", "adm-zip": "^0.5.16", "body-parser": "^2.2.0", "cookie-parser": "^1.4.7", @@ -594,9 +594,9 @@ } }, "node_modules/@scrypted/types": { - "version": "0.5.23", - "resolved": "https://registry.npmjs.org/@scrypted/types/-/types-0.5.23.tgz", - "integrity": "sha512-is/UJHgS3lvEuXyb+C/OPeIP5CKp+M6SQt1l/WFJr1Oj+KYYHGU8Ztlh/qOmAWgONhg286N4/cLNzTtAAh4YnA==", + "version": "0.5.34", + "resolved": "https://registry.npmjs.org/@scrypted/types/-/types-0.5.34.tgz", + "integrity": "sha512-BjZLJ2NrxlNSBfyEwW/CH9mg4nE1eBoCIJjCrwGpEzg862sPNhdJFKC/3gaUBCB4VOe2SpnK2s6EC4yDkb3SsA==", "license": "ISC", "dependencies": { "openai": "^5.3.0" diff --git a/server/package.json b/server/package.json index 958de0c0d..8fb2d02a5 100644 --- a/server/package.json +++ b/server/package.json @@ -5,7 +5,7 @@ "dependencies": { "@scrypted/ffmpeg-static": "^6.1.0-build3", "@scrypted/node-pty": "^1.0.24", - "@scrypted/types": "^0.5.23", + "@scrypted/types": "^0.5.34", "adm-zip": "^0.5.16", "body-parser": "^2.2.0", "cookie-parser": "^1.4.7",