livekit-client 0.12.2 → 0.13.0

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.
Files changed (81) hide show
  1. package/.eslintrc.js +1 -0
  2. package/.github/workflows/publish.yaml +1 -3
  3. package/dist/api/SignalClient.d.ts +3 -1
  4. package/dist/api/SignalClient.js +8 -0
  5. package/dist/api/SignalClient.js.map +1 -1
  6. package/dist/connect.d.ts +23 -0
  7. package/dist/connect.js +93 -0
  8. package/dist/connect.js.map +1 -0
  9. package/dist/index.d.ts +2 -1
  10. package/dist/index.js +2 -1
  11. package/dist/index.js.map +1 -1
  12. package/dist/options.d.ts +5 -3
  13. package/dist/options.js.map +1 -1
  14. package/dist/proto/livekit_models.d.ts +15 -0
  15. package/dist/proto/livekit_models.js +129 -1
  16. package/dist/proto/livekit_models.js.map +1 -1
  17. package/dist/proto/livekit_rtc.d.ts +16 -1
  18. package/dist/proto/livekit_rtc.js +116 -1
  19. package/dist/proto/livekit_rtc.js.map +1 -1
  20. package/dist/room/DeviceManager.d.ts +10 -0
  21. package/dist/room/DeviceManager.js +77 -0
  22. package/dist/room/DeviceManager.js.map +1 -0
  23. package/dist/room/RTCEngine.d.ts +1 -1
  24. package/dist/room/RTCEngine.js +8 -7
  25. package/dist/room/RTCEngine.js.map +1 -1
  26. package/dist/room/Room.d.ts +45 -2
  27. package/dist/room/Room.js +108 -2
  28. package/dist/room/Room.js.map +1 -1
  29. package/dist/room/defaults.d.ts +3 -0
  30. package/dist/room/defaults.js +13 -0
  31. package/dist/room/defaults.js.map +1 -0
  32. package/dist/room/events.d.ts +23 -2
  33. package/dist/room/events.js +22 -1
  34. package/dist/room/events.js.map +1 -1
  35. package/dist/room/participant/LocalParticipant.d.ts +28 -0
  36. package/dist/room/participant/LocalParticipant.js +127 -13
  37. package/dist/room/participant/LocalParticipant.js.map +1 -1
  38. package/dist/room/participant/Participant.d.ts +14 -0
  39. package/dist/room/participant/Participant.js +39 -0
  40. package/dist/room/participant/Participant.js.map +1 -1
  41. package/dist/room/participant/RemoteParticipant.d.ts +2 -0
  42. package/dist/room/participant/RemoteParticipant.js +14 -0
  43. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  44. package/dist/room/track/LocalAudioTrack.d.ts +3 -0
  45. package/dist/room/track/LocalAudioTrack.js +37 -0
  46. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  47. package/dist/room/track/LocalTrack.d.ts +6 -2
  48. package/dist/room/track/LocalTrack.js +34 -5
  49. package/dist/room/track/LocalTrack.js.map +1 -1
  50. package/dist/room/track/LocalTrackPublication.d.ts +6 -3
  51. package/dist/room/track/LocalTrackPublication.js +21 -2
  52. package/dist/room/track/LocalTrackPublication.js.map +1 -1
  53. package/dist/room/track/LocalVideoTrack.d.ts +3 -2
  54. package/dist/room/track/LocalVideoTrack.js +34 -5
  55. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  56. package/dist/room/track/RemoteAudioTrack.d.ts +2 -0
  57. package/dist/room/track/RemoteAudioTrack.js +8 -0
  58. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  59. package/dist/room/track/RemoteVideoTrack.d.ts +1 -0
  60. package/dist/room/track/RemoteVideoTrack.js +6 -1
  61. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  62. package/dist/room/track/Track.d.ts +14 -2
  63. package/dist/room/track/Track.js +42 -0
  64. package/dist/room/track/Track.js.map +1 -1
  65. package/dist/room/track/TrackPublication.d.ts +1 -0
  66. package/dist/room/track/TrackPublication.js +2 -0
  67. package/dist/room/track/TrackPublication.js.map +1 -1
  68. package/dist/room/track/create.d.ts +23 -0
  69. package/dist/{livekit.js → room/track/create.js} +72 -109
  70. package/dist/room/track/create.js.map +1 -0
  71. package/dist/room/track/options.d.ts +42 -17
  72. package/dist/room/track/options.js +11 -6
  73. package/dist/room/track/options.js.map +1 -1
  74. package/dist/version.d.ts +2 -2
  75. package/dist/version.js +2 -2
  76. package/example/index.html +51 -20
  77. package/example/sample.ts +195 -79
  78. package/example/webpack.config.js +8 -2
  79. package/package.json +2 -2
  80. package/dist/livekit.d.ts +0 -44
  81. package/dist/livekit.js.map +0 -1
package/.eslintrc.js CHANGED
@@ -8,6 +8,7 @@ module.exports = {
8
8
  'max-classes-per-file': 'off',
9
9
  'no-param-reassign': 'off',
10
10
  'no-await-in-loop': 'off',
11
+ 'no-restricted-syntax': 'off',
11
12
  'consistent-return': 'off',
12
13
  'class-methods-use-this': 'off',
13
14
  '@typescript-eslint/no-use-before-define': 'off',
@@ -48,9 +48,7 @@ jobs:
48
48
  NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
49
49
 
50
50
  - name: S3 Upload
51
- uses: ItsKarma/aws-cli@v1.70.0
52
- with:
53
- args: s3 cp docs/ s3://livekit-docs/client-sdk-js --recursive
51
+ run: aws s3 cp docs/ s3://livekit-docs/client-sdk-js --recursive
54
52
  env:
55
53
  AWS_ACCESS_KEY_ID: ${{ secrets.DOCS_DEPLOY_AWS_ACCESS_KEY }}
56
54
  AWS_SECRET_ACCESS_KEY: ${{ secrets.DOCS_DEPLOY_AWS_API_SECRET }}
@@ -1,5 +1,5 @@
1
1
  import 'webrtc-adapter';
2
- import { ParticipantInfo, SpeakerInfo } from '../proto/livekit_models';
2
+ import { ParticipantInfo, Room, SpeakerInfo } from '../proto/livekit_models';
3
3
  import { AddTrackRequest, JoinResponse, SignalRequest, SignalTarget, TrackPublishedResponse, UpdateSubscription, UpdateTrackSettings, VideoQuality } from '../proto/livekit_rtc';
4
4
  import { Track } from '../room/track/Track';
5
5
  interface ConnectOpts {
@@ -36,6 +36,7 @@ export interface SignalClient {
36
36
  onLocalTrackPublished?: (res: TrackPublishedResponse) => void;
37
37
  onSpeakersChanged?: (res: SpeakerInfo[]) => void;
38
38
  onRemoteMuteChanged?: (trackSid: string, muted: boolean) => void;
39
+ onRoomUpdate?: (room: Room) => void;
39
40
  onLeave?: () => void;
40
41
  }
41
42
  export declare class WSSignalClient {
@@ -50,6 +51,7 @@ export declare class WSSignalClient {
50
51
  onNegotiateRequested?: () => void;
51
52
  onSpeakersChanged?: (res: SpeakerInfo[]) => void;
52
53
  onRemoteMuteChanged?: (trackSid: string, muted: boolean) => void;
54
+ onRoomUpdate?: (room: Room) => void;
53
55
  onLeave?: () => void;
54
56
  ws?: WebSocket;
55
57
  constructor(useJSON?: boolean);
@@ -39,6 +39,9 @@ class WSSignalClient {
39
39
  });
40
40
  }
41
41
  connect(url, token, opts) {
42
+ if (url.startsWith('http')) {
43
+ url = url.replace('http', 'ws');
44
+ }
42
45
  // strip trailing slash
43
46
  url = url.replace(/\/$/, '');
44
47
  url += '/rtc';
@@ -234,6 +237,11 @@ class WSSignalClient {
234
237
  this.onRemoteMuteChanged(msg.mute.sid, msg.mute.muted);
235
238
  }
236
239
  }
240
+ else if (msg.roomUpdate) {
241
+ if (this.onRoomUpdate) {
242
+ this.onRoomUpdate(msg.roomUpdate.room);
243
+ }
244
+ }
237
245
  else {
238
246
  loglevel_1.default.warn('unsupported message', msg);
239
247
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SignalClient.js","sourceRoot":"","sources":["../../src/api/SignalClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SignalClient.js","sourceRoot":"","sources":["../../src/api/SignalClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { ConnectOptions } from './options';
2
+ import Room from './room/Room';
3
+ export { version } from './version';
4
+ /**
5
+ * Connects to a LiveKit room
6
+ *
7
+ * ```typescript
8
+ * connect('wss://myhost.livekit.io', token, {
9
+ * // publish audio and video tracks on joining
10
+ * audio: true,
11
+ * video: {
12
+ * resolution: VideoPresets.hd,
13
+ * facingMode: {
14
+ * ideal: "user",
15
+ * }
16
+ * }
17
+ * })
18
+ * ```
19
+ * @param url URL to LiveKit server
20
+ * @param token AccessToken, a JWT token that includes authentication and room details
21
+ * @param options
22
+ */
23
+ export declare function connect(url: string, token: string, options?: ConnectOptions): Promise<Room>;
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.connect = exports.version = void 0;
16
+ const loglevel_1 = __importDefault(require("loglevel"));
17
+ const SignalClient_1 = require("./api/SignalClient");
18
+ const options_1 = require("./options");
19
+ const Room_1 = __importDefault(require("./room/Room"));
20
+ const create_1 = require("./room/track/create");
21
+ var version_1 = require("./version");
22
+ Object.defineProperty(exports, "version", { enumerable: true, get: function () { return version_1.version; } });
23
+ /**
24
+ * Connects to a LiveKit room
25
+ *
26
+ * ```typescript
27
+ * connect('wss://myhost.livekit.io', token, {
28
+ * // publish audio and video tracks on joining
29
+ * audio: true,
30
+ * video: {
31
+ * resolution: VideoPresets.hd,
32
+ * facingMode: {
33
+ * ideal: "user",
34
+ * }
35
+ * }
36
+ * })
37
+ * ```
38
+ * @param url URL to LiveKit server
39
+ * @param token AccessToken, a JWT token that includes authentication and room details
40
+ * @param options
41
+ */
42
+ function connect(url, token, options) {
43
+ var _a;
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ // set defaults
46
+ options || (options = {});
47
+ options.logLevel || (options.logLevel = options_1.LogLevel.info);
48
+ if (options.audio === undefined)
49
+ options.audio = false;
50
+ if (options.video === undefined)
51
+ options.video = false;
52
+ loglevel_1.default.setLevel(options.logLevel);
53
+ const config = (_a = options.rtcConfig) !== null && _a !== void 0 ? _a : {};
54
+ if (options.iceServers) {
55
+ config.iceServers = options.iceServers;
56
+ }
57
+ const client = new SignalClient_1.WSSignalClient();
58
+ const room = new Room_1.default(client, config);
59
+ // connect to room
60
+ yield room.connect(url, token, {
61
+ autoSubscribe: options === null || options === void 0 ? void 0 : options.autoSubscribe,
62
+ });
63
+ // save default publish options
64
+ const defaultOptions = room.defaultTrackOptions;
65
+ if (options.audioBitrate)
66
+ defaultOptions.audioBitrate = options.audioBitrate;
67
+ if (options.dtx)
68
+ defaultOptions.dtx = options.dtx;
69
+ if (options.simulcast)
70
+ defaultOptions.simulcast = options.simulcast;
71
+ if (options.videoEncoding)
72
+ defaultOptions.videoEncoding = options.videoEncoding;
73
+ if (options.videoCodec)
74
+ defaultOptions.videoCodec = options.videoCodec;
75
+ room.defaultTrackOptions = defaultOptions;
76
+ // add tracks if available
77
+ let { tracks } = options;
78
+ if (!tracks) {
79
+ if (options.audio || options.video) {
80
+ tracks = yield create_1.createLocalTracks({
81
+ audio: options.audio,
82
+ video: options.video,
83
+ });
84
+ }
85
+ }
86
+ if (tracks) {
87
+ yield Promise.all(tracks.map((track) => room.localParticipant.publishTrack(track)));
88
+ }
89
+ return room;
90
+ });
91
+ }
92
+ exports.connect = connect;
93
+ //# sourceMappingURL=connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../src/connect.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,wDAA2B;AAC3B,qDAAoD;AACpD,uCAGmB;AACnB,uDAA+B;AAC/B,gDAAwD;AAGxD,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAEhB;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAsB,OAAO,CAC3B,GAAW,EACX,KAAa,EACb,OAAwB;;;QAExB,eAAe;QACf,OAAO,KAAP,OAAO,GAAK,EAAE,EAAC;QACf,OAAO,CAAC,QAAQ,KAAhB,OAAO,CAAC,QAAQ,GAAK,kBAAQ,CAAC,IAAI,EAAC;QACnC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;YAAE,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QACvD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;YAAE,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QAEvD,kBAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/B,MAAM,MAAM,GAAqB,MAAA,OAAO,CAAC,SAAS,mCAAI,EAAE,CAAC;QACzD,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;SACxC;QAED,MAAM,MAAM,GAAG,IAAI,6BAAc,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,cAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEtC,kBAAkB;QAClB,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE;YAC7B,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa;SACtC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAChD,IAAI,OAAO,CAAC,YAAY;YAAE,cAAc,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QAC7E,IAAI,OAAO,CAAC,GAAG;YAAE,cAAc,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QAClD,IAAI,OAAO,CAAC,SAAS;YAAE,cAAc,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpE,IAAI,OAAO,CAAC,aAAa;YAAE,cAAc,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAChF,IAAI,OAAO,CAAC,UAAU;YAAE,cAAc,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEvE,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC;QAE1C,0BAA0B;QAC1B,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAEzB,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE;gBAClC,MAAM,GAAG,MAAM,0BAAiB,CAAC;oBAC/B,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,KAAK,EAAE,OAAO,CAAC,KAAK;iBACrB,CAAC,CAAC;aACJ;SACF;QAED,IAAI,MAAM,EAAE;YACV,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAC1B,CAAC,KAAoC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,CACpF,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAC;;CACb;AAvDD,0BAuDC"}
package/dist/index.d.ts CHANGED
@@ -12,10 +12,11 @@ import RemoteAudioTrack from './room/track/RemoteAudioTrack';
12
12
  import RemoteTrackPublication from './room/track/RemoteTrackPublication';
13
13
  import RemoteVideoTrack from './room/track/RemoteVideoTrack';
14
14
  import TrackPublication from './room/track/TrackPublication';
15
- export * from './livekit';
15
+ export * from './connect';
16
16
  export * from './options';
17
17
  export * from './room/errors';
18
18
  export * from './room/events';
19
+ export * from './room/track/create';
19
20
  export * from './room/track/options';
20
21
  export * from './room/track/Track';
21
22
  export * from './room/track/types';
package/dist/index.js CHANGED
@@ -55,10 +55,11 @@ const RemoteVideoTrack_1 = __importDefault(require("./room/track/RemoteVideoTrac
55
55
  exports.RemoteVideoTrack = RemoteVideoTrack_1.default;
56
56
  const TrackPublication_1 = __importDefault(require("./room/track/TrackPublication"));
57
57
  exports.TrackPublication = TrackPublication_1.default;
58
- __exportStar(require("./livekit"), exports);
58
+ __exportStar(require("./connect"), exports);
59
59
  __exportStar(require("./options"), exports);
60
60
  __exportStar(require("./room/errors"), exports);
61
61
  __exportStar(require("./room/events"), exports);
62
+ __exportStar(require("./room/track/create"), exports);
62
63
  __exportStar(require("./room/track/options"), exports);
63
64
  __exportStar(require("./room/track/Track"), exports);
64
65
  __exportStar(require("./room/track/types"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAyD;AA0BvD,gGA1BO,gCAAe,OA0BP;AAzBjB,qDAAmD;AAqCjD,6FArCO,0BAAY,OAqCP;AApCd,2FAAmE;AA2BjE,2BA3BK,0BAAgB,CA2BL;AA1BlB,iFAAyD;AAwBvD,sBAxBK,qBAAW,CAwBL;AAvBb,6FAAqE;AAwBnE,4BAxBK,2BAAiB,CAwBL;AAvBnB,oDAA8C;AAmB5C,eAnBK,cAAI,CAmBL;AACJ,0FApBa,gBAAS,OAoBb;AAnBX,mFAA2D;AAwBzD,0BAxBK,yBAAe,CAwBL;AAvBjB,yEAAiD;AAyB/C,qBAzBK,oBAAU,CAyBL;AAxBZ,+FAAuE;AAyBrE,gCAzBK,+BAAqB,CAyBL;AAxBvB,mFAA2D;AAsBzD,0BAtBK,yBAAe,CAsBL;AArBjB,qFAA6D;AAwB3D,2BAxBK,0BAAgB,CAwBL;AAvBlB,iGAAyE;AAyBvE,iCAzBK,gCAAsB,CAyBL;AAxBxB,qFAA6D;AAuB3D,2BAvBK,0BAAgB,CAuBL;AAtBlB,qFAA6D;AAwB3D,2BAxBK,0BAAgB,CAwBL;AAtBlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAyD;AA2BvD,gGA3BO,gCAAe,OA2BP;AA1BjB,qDAAmD;AAsCjD,6FAtCO,0BAAY,OAsCP;AArCd,2FAAmE;AA4BjE,2BA5BK,0BAAgB,CA4BL;AA3BlB,iFAAyD;AAyBvD,sBAzBK,qBAAW,CAyBL;AAxBb,6FAAqE;AAyBnE,4BAzBK,2BAAiB,CAyBL;AAxBnB,oDAA8C;AAoB5C,eApBK,cAAI,CAoBL;AACJ,0FArBa,gBAAS,OAqBb;AApBX,mFAA2D;AAyBzD,0BAzBK,yBAAe,CAyBL;AAxBjB,yEAAiD;AA0B/C,qBA1BK,oBAAU,CA0BL;AAzBZ,+FAAuE;AA0BrE,gCA1BK,+BAAqB,CA0BL;AAzBvB,mFAA2D;AAuBzD,0BAvBK,yBAAe,CAuBL;AAtBjB,qFAA6D;AAyB3D,2BAzBK,0BAAgB,CAyBL;AAxBlB,iGAAyE;AA0BvE,iCA1BK,gCAAsB,CA0BL;AAzBxB,qFAA6D;AAwB3D,2BAxBK,0BAAgB,CAwBL;AAvBlB,qFAA6D;AAyB3D,2BAzBK,0BAAgB,CAyBL;AAvBlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,sDAAoC;AACpC,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
package/dist/options.d.ts CHANGED
@@ -22,12 +22,14 @@ export interface ConnectOptions extends CreateLocalTracksOptions {
22
22
  * [[createLocalTracks]]. when this is passed in, it'll ignore audio and video options
23
23
  */
24
24
  tracks?: LocalTrack[] | MediaStreamTrack[];
25
- /** see [[TrackPublishOptions.videoEncoding]] */
25
+ /** default [[TrackPublishOptions.videoEncoding]] for published tracks */
26
26
  videoEncoding?: VideoEncoding;
27
- /** see [[TrackPublishOptions.videoCodec]] */
27
+ /** default [[TrackPublishOptions.videoCodec]] for published tracks */
28
28
  videoCodec?: VideoCodec;
29
- /** see [[TrackPublishOptions.audioBitrate]] */
29
+ /** default [[TrackPublishOptions.audioBitrate]] for published tracks */
30
30
  audioBitrate?: number;
31
+ /** see [[TrackPublishOptions.dtx]] */
32
+ dtx?: boolean;
31
33
  /** see [[TrackPublishOptions.simulcast]] */
32
34
  simulcast?: boolean;
33
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;AA2CA,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACnB,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;AA8CA,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,6BAAiB,CAAA;AACnB,CAAC,EAPW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAOnB"}
@@ -8,6 +8,15 @@ export declare enum TrackType {
8
8
  }
9
9
  export declare function trackTypeFromJSON(object: any): TrackType;
10
10
  export declare function trackTypeToJSON(object: TrackType): string;
11
+ export declare enum TrackSource {
12
+ UNKNOWN = 0,
13
+ CAMERA = 1,
14
+ MICROPHONE = 2,
15
+ SCREEN_SHARE = 3,
16
+ UNRECOGNIZED = -1
17
+ }
18
+ export declare function trackSourceFromJSON(object: any): TrackSource;
19
+ export declare function trackSourceToJSON(object: TrackSource): string;
11
20
  export interface Room {
12
21
  sid: string;
13
22
  name: string;
@@ -16,6 +25,8 @@ export interface Room {
16
25
  creationTime: number;
17
26
  turnPassword: string;
18
27
  enabledCodecs: Codec[];
28
+ metadata: string;
29
+ numParticipants: number;
19
30
  }
20
31
  export interface Codec {
21
32
  mime: string;
@@ -59,6 +70,10 @@ export interface TrackInfo {
59
70
  height: number;
60
71
  /** true if track is simulcasted */
61
72
  simulcast: boolean;
73
+ /** true if DTX (Discontinuous Transmission) is disabled for audio */
74
+ disableDtx: boolean;
75
+ /** source of media */
76
+ source: TrackSource;
62
77
  }
63
78
  /** new DataPacket API */
64
79
  export interface DataPacket {
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.UserPacket = exports.SpeakerInfo = exports.ActiveSpeakerUpdate = exports.DataPacket = exports.TrackInfo = exports.ParticipantInfo = exports.Codec = exports.Room = exports.dataPacket_KindToJSON = exports.dataPacket_KindFromJSON = exports.DataPacket_Kind = exports.participantInfo_StateToJSON = exports.participantInfo_StateFromJSON = exports.ParticipantInfo_State = exports.trackTypeToJSON = exports.trackTypeFromJSON = exports.TrackType = exports.protobufPackage = void 0;
6
+ exports.UserPacket = exports.SpeakerInfo = exports.ActiveSpeakerUpdate = exports.DataPacket = exports.TrackInfo = exports.ParticipantInfo = exports.Codec = exports.Room = exports.dataPacket_KindToJSON = exports.dataPacket_KindFromJSON = exports.DataPacket_Kind = exports.participantInfo_StateToJSON = exports.participantInfo_StateFromJSON = exports.ParticipantInfo_State = exports.trackSourceToJSON = exports.trackSourceFromJSON = exports.TrackSource = exports.trackTypeToJSON = exports.trackTypeFromJSON = exports.TrackType = exports.protobufPackage = void 0;
7
7
  /* eslint-disable */
8
8
  const long_1 = __importDefault(require("long"));
9
9
  const minimal_1 = __importDefault(require("protobufjs/minimal"));
@@ -46,6 +46,50 @@ function trackTypeToJSON(object) {
46
46
  }
47
47
  }
48
48
  exports.trackTypeToJSON = trackTypeToJSON;
49
+ var TrackSource;
50
+ (function (TrackSource) {
51
+ TrackSource[TrackSource["UNKNOWN"] = 0] = "UNKNOWN";
52
+ TrackSource[TrackSource["CAMERA"] = 1] = "CAMERA";
53
+ TrackSource[TrackSource["MICROPHONE"] = 2] = "MICROPHONE";
54
+ TrackSource[TrackSource["SCREEN_SHARE"] = 3] = "SCREEN_SHARE";
55
+ TrackSource[TrackSource["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
56
+ })(TrackSource = exports.TrackSource || (exports.TrackSource = {}));
57
+ function trackSourceFromJSON(object) {
58
+ switch (object) {
59
+ case 0:
60
+ case "UNKNOWN":
61
+ return TrackSource.UNKNOWN;
62
+ case 1:
63
+ case "CAMERA":
64
+ return TrackSource.CAMERA;
65
+ case 2:
66
+ case "MICROPHONE":
67
+ return TrackSource.MICROPHONE;
68
+ case 3:
69
+ case "SCREEN_SHARE":
70
+ return TrackSource.SCREEN_SHARE;
71
+ case -1:
72
+ case "UNRECOGNIZED":
73
+ default:
74
+ return TrackSource.UNRECOGNIZED;
75
+ }
76
+ }
77
+ exports.trackSourceFromJSON = trackSourceFromJSON;
78
+ function trackSourceToJSON(object) {
79
+ switch (object) {
80
+ case TrackSource.UNKNOWN:
81
+ return "UNKNOWN";
82
+ case TrackSource.CAMERA:
83
+ return "CAMERA";
84
+ case TrackSource.MICROPHONE:
85
+ return "MICROPHONE";
86
+ case TrackSource.SCREEN_SHARE:
87
+ return "SCREEN_SHARE";
88
+ default:
89
+ return "UNKNOWN";
90
+ }
91
+ }
92
+ exports.trackSourceToJSON = trackSourceToJSON;
49
93
  var ParticipantInfo_State;
50
94
  (function (ParticipantInfo_State) {
51
95
  /** JOINING - websocket' connected, but not offered yet */
@@ -133,6 +177,8 @@ const baseRoom = {
133
177
  maxParticipants: 0,
134
178
  creationTime: 0,
135
179
  turnPassword: "",
180
+ metadata: "",
181
+ numParticipants: 0,
136
182
  };
137
183
  exports.Room = {
138
184
  encode(message, writer = minimal_1.default.Writer.create()) {
@@ -157,6 +203,12 @@ exports.Room = {
157
203
  for (const v of message.enabledCodecs) {
158
204
  exports.Codec.encode(v, writer.uint32(58).fork()).ldelim();
159
205
  }
206
+ if (message.metadata !== "") {
207
+ writer.uint32(66).string(message.metadata);
208
+ }
209
+ if (message.numParticipants !== 0) {
210
+ writer.uint32(72).uint32(message.numParticipants);
211
+ }
160
212
  return writer;
161
213
  },
162
214
  decode(input, length) {
@@ -188,6 +240,12 @@ exports.Room = {
188
240
  case 7:
189
241
  message.enabledCodecs.push(exports.Codec.decode(reader, reader.uint32()));
190
242
  break;
243
+ case 8:
244
+ message.metadata = reader.string();
245
+ break;
246
+ case 9:
247
+ message.numParticipants = reader.uint32();
248
+ break;
191
249
  default:
192
250
  reader.skipType(tag & 7);
193
251
  break;
@@ -240,6 +298,19 @@ exports.Room = {
240
298
  message.enabledCodecs.push(exports.Codec.fromJSON(e));
241
299
  }
242
300
  }
301
+ if (object.metadata !== undefined && object.metadata !== null) {
302
+ message.metadata = String(object.metadata);
303
+ }
304
+ else {
305
+ message.metadata = "";
306
+ }
307
+ if (object.numParticipants !== undefined &&
308
+ object.numParticipants !== null) {
309
+ message.numParticipants = Number(object.numParticipants);
310
+ }
311
+ else {
312
+ message.numParticipants = 0;
313
+ }
243
314
  return message;
244
315
  },
245
316
  toJSON(message) {
@@ -260,6 +331,9 @@ exports.Room = {
260
331
  else {
261
332
  obj.enabledCodecs = [];
262
333
  }
334
+ message.metadata !== undefined && (obj.metadata = message.metadata);
335
+ message.numParticipants !== undefined &&
336
+ (obj.numParticipants = message.numParticipants);
263
337
  return obj;
264
338
  },
265
339
  fromPartial(object) {
@@ -307,6 +381,19 @@ exports.Room = {
307
381
  message.enabledCodecs.push(exports.Codec.fromPartial(e));
308
382
  }
309
383
  }
384
+ if (object.metadata !== undefined && object.metadata !== null) {
385
+ message.metadata = object.metadata;
386
+ }
387
+ else {
388
+ message.metadata = "";
389
+ }
390
+ if (object.numParticipants !== undefined &&
391
+ object.numParticipants !== null) {
392
+ message.numParticipants = object.numParticipants;
393
+ }
394
+ else {
395
+ message.numParticipants = 0;
396
+ }
310
397
  return message;
311
398
  },
312
399
  };
@@ -567,6 +654,8 @@ const baseTrackInfo = {
567
654
  width: 0,
568
655
  height: 0,
569
656
  simulcast: false,
657
+ disableDtx: false,
658
+ source: 0,
570
659
  };
571
660
  exports.TrackInfo = {
572
661
  encode(message, writer = minimal_1.default.Writer.create()) {
@@ -591,6 +680,12 @@ exports.TrackInfo = {
591
680
  if (message.simulcast === true) {
592
681
  writer.uint32(56).bool(message.simulcast);
593
682
  }
683
+ if (message.disableDtx === true) {
684
+ writer.uint32(64).bool(message.disableDtx);
685
+ }
686
+ if (message.source !== 0) {
687
+ writer.uint32(72).int32(message.source);
688
+ }
594
689
  return writer;
595
690
  },
596
691
  decode(input, length) {
@@ -621,6 +716,12 @@ exports.TrackInfo = {
621
716
  case 7:
622
717
  message.simulcast = reader.bool();
623
718
  break;
719
+ case 8:
720
+ message.disableDtx = reader.bool();
721
+ break;
722
+ case 9:
723
+ message.source = reader.int32();
724
+ break;
624
725
  default:
625
726
  reader.skipType(tag & 7);
626
727
  break;
@@ -672,6 +773,18 @@ exports.TrackInfo = {
672
773
  else {
673
774
  message.simulcast = false;
674
775
  }
776
+ if (object.disableDtx !== undefined && object.disableDtx !== null) {
777
+ message.disableDtx = Boolean(object.disableDtx);
778
+ }
779
+ else {
780
+ message.disableDtx = false;
781
+ }
782
+ if (object.source !== undefined && object.source !== null) {
783
+ message.source = trackSourceFromJSON(object.source);
784
+ }
785
+ else {
786
+ message.source = 0;
787
+ }
675
788
  return message;
676
789
  },
677
790
  toJSON(message) {
@@ -683,6 +796,9 @@ exports.TrackInfo = {
683
796
  message.width !== undefined && (obj.width = message.width);
684
797
  message.height !== undefined && (obj.height = message.height);
685
798
  message.simulcast !== undefined && (obj.simulcast = message.simulcast);
799
+ message.disableDtx !== undefined && (obj.disableDtx = message.disableDtx);
800
+ message.source !== undefined &&
801
+ (obj.source = trackSourceToJSON(message.source));
686
802
  return obj;
687
803
  },
688
804
  fromPartial(object) {
@@ -729,6 +845,18 @@ exports.TrackInfo = {
729
845
  else {
730
846
  message.simulcast = false;
731
847
  }
848
+ if (object.disableDtx !== undefined && object.disableDtx !== null) {
849
+ message.disableDtx = object.disableDtx;
850
+ }
851
+ else {
852
+ message.disableDtx = false;
853
+ }
854
+ if (object.source !== undefined && object.source !== null) {
855
+ message.source = object.source;
856
+ }
857
+ else {
858
+ message.source = 0;
859
+ }
732
860
  return message;
733
861
  },
734
862
  };