livekit-client 0.15.1 → 0.16.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 (120) hide show
  1. package/dist/api/SignalClient.d.ts +11 -3
  2. package/dist/api/SignalClient.js +92 -28
  3. package/dist/api/SignalClient.js.map +1 -1
  4. package/dist/index.d.ts +4 -2
  5. package/dist/index.js +5 -3
  6. package/dist/index.js.map +1 -1
  7. package/dist/options.d.ts +5 -0
  8. package/dist/proto/livekit_models.d.ts +48 -0
  9. package/dist/proto/livekit_models.js +367 -5
  10. package/dist/proto/livekit_models.js.map +1 -1
  11. package/dist/proto/livekit_rtc.d.ts +50 -11
  12. package/dist/proto/livekit_rtc.js +300 -22
  13. package/dist/proto/livekit_rtc.js.map +1 -1
  14. package/dist/room/PCTransport.js +4 -0
  15. package/dist/room/PCTransport.js.map +1 -1
  16. package/dist/room/RTCEngine.d.ts +10 -2
  17. package/dist/room/RTCEngine.js +182 -42
  18. package/dist/room/RTCEngine.js.map +1 -1
  19. package/dist/room/Room.d.ts +15 -0
  20. package/dist/room/Room.js +165 -20
  21. package/dist/room/Room.js.map +1 -1
  22. package/dist/room/events.d.ts +42 -20
  23. package/dist/room/events.js +41 -19
  24. package/dist/room/events.js.map +1 -1
  25. package/dist/room/participant/LocalParticipant.d.ts +25 -4
  26. package/dist/room/participant/LocalParticipant.js +50 -23
  27. package/dist/room/participant/LocalParticipant.js.map +1 -1
  28. package/dist/room/participant/Participant.d.ts +3 -1
  29. package/dist/room/participant/Participant.js +1 -0
  30. package/dist/room/participant/Participant.js.map +1 -1
  31. package/dist/room/participant/ParticipantTrackPermission.d.ts +19 -0
  32. package/dist/room/participant/ParticipantTrackPermission.js +16 -0
  33. package/dist/room/participant/ParticipantTrackPermission.js.map +1 -0
  34. package/dist/room/participant/RemoteParticipant.d.ts +2 -2
  35. package/dist/room/participant/RemoteParticipant.js +11 -16
  36. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  37. package/dist/room/participant/publishUtils.js +1 -1
  38. package/dist/room/participant/publishUtils.js.map +1 -1
  39. package/dist/room/participant/publishUtils.test.js +9 -0
  40. package/dist/room/participant/publishUtils.test.js.map +1 -1
  41. package/dist/room/track/LocalTrack.d.ts +0 -3
  42. package/dist/room/track/LocalTrack.js +1 -6
  43. package/dist/room/track/LocalTrack.js.map +1 -1
  44. package/dist/room/track/LocalTrackPublication.d.ts +5 -1
  45. package/dist/room/track/LocalTrackPublication.js +15 -5
  46. package/dist/room/track/LocalTrackPublication.js.map +1 -1
  47. package/dist/room/track/LocalVideoTrack.d.ts +1 -1
  48. package/dist/room/track/LocalVideoTrack.js +7 -6
  49. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  50. package/dist/room/track/RemoteAudioTrack.d.ts +5 -14
  51. package/dist/room/track/RemoteAudioTrack.js +7 -32
  52. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  53. package/dist/room/track/RemoteTrack.d.ts +14 -0
  54. package/dist/room/track/RemoteTrack.js +47 -0
  55. package/dist/room/track/RemoteTrack.js.map +1 -0
  56. package/dist/room/track/RemoteTrackPublication.d.ts +10 -2
  57. package/dist/room/track/RemoteTrackPublication.js +51 -12
  58. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  59. package/dist/room/track/RemoteVideoTrack.d.ts +3 -9
  60. package/dist/room/track/RemoteVideoTrack.js +8 -29
  61. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  62. package/dist/room/track/Track.d.ts +3 -0
  63. package/dist/room/track/Track.js +14 -5
  64. package/dist/room/track/Track.js.map +1 -1
  65. package/dist/room/track/TrackPublication.d.ts +14 -1
  66. package/dist/room/track/TrackPublication.js +24 -7
  67. package/dist/room/track/TrackPublication.js.map +1 -1
  68. package/dist/room/track/create.js +5 -0
  69. package/dist/room/track/create.js.map +1 -1
  70. package/dist/room/utils.d.ts +2 -0
  71. package/dist/room/utils.js +32 -1
  72. package/dist/room/utils.js.map +1 -1
  73. package/dist/version.d.ts +2 -2
  74. package/dist/version.js +2 -2
  75. package/package.json +5 -3
  76. package/src/api/SignalClient.ts +444 -0
  77. package/src/connect.ts +100 -0
  78. package/src/index.ts +47 -0
  79. package/src/logger.ts +22 -0
  80. package/src/options.ts +152 -0
  81. package/src/proto/livekit_models.ts +1863 -0
  82. package/src/proto/livekit_rtc.ts +3415 -0
  83. package/src/room/DeviceManager.ts +57 -0
  84. package/src/room/PCTransport.ts +86 -0
  85. package/src/room/RTCEngine.ts +582 -0
  86. package/src/room/Room.ts +840 -0
  87. package/src/room/errors.ts +65 -0
  88. package/src/room/events.ts +398 -0
  89. package/src/room/participant/LocalParticipant.ts +685 -0
  90. package/src/room/participant/Participant.ts +214 -0
  91. package/src/room/participant/ParticipantTrackPermission.ts +32 -0
  92. package/src/room/participant/RemoteParticipant.ts +241 -0
  93. package/src/room/participant/publishUtils.test.ts +105 -0
  94. package/src/room/participant/publishUtils.ts +180 -0
  95. package/src/room/stats.ts +130 -0
  96. package/src/room/track/LocalAudioTrack.ts +112 -0
  97. package/src/room/track/LocalTrack.ts +124 -0
  98. package/src/room/track/LocalTrackPublication.ts +66 -0
  99. package/src/room/track/LocalVideoTrack.test.ts +70 -0
  100. package/src/room/track/LocalVideoTrack.ts +416 -0
  101. package/src/room/track/RemoteAudioTrack.ts +58 -0
  102. package/src/room/track/RemoteTrack.ts +59 -0
  103. package/src/room/track/RemoteTrackPublication.ts +198 -0
  104. package/src/room/track/RemoteVideoTrack.ts +213 -0
  105. package/src/room/track/Track.ts +307 -0
  106. package/src/room/track/TrackPublication.ts +120 -0
  107. package/src/room/track/create.ts +120 -0
  108. package/src/room/track/defaults.ts +23 -0
  109. package/src/room/track/options.ts +229 -0
  110. package/src/room/track/types.ts +8 -0
  111. package/src/room/track/utils.test.ts +93 -0
  112. package/src/room/track/utils.ts +76 -0
  113. package/src/room/utils.ts +74 -0
  114. package/src/version.ts +2 -0
  115. package/.github/workflows/publish.yaml +0 -55
  116. package/.github/workflows/test.yaml +0 -36
  117. package/example/index.html +0 -248
  118. package/example/sample.ts +0 -621
  119. package/example/styles.css +0 -144
  120. package/example/webpack.config.js +0 -33
@@ -1,6 +1,6 @@
1
1
  import 'webrtc-adapter';
2
2
  import { ParticipantInfo, Room, SpeakerInfo, VideoLayer } from '../proto/livekit_models';
3
- import { AddTrackRequest, ConnectionQualityUpdate, JoinResponse, SignalRequest, SignalTarget, StreamStateUpdate, SubscribedQualityUpdate, TrackPublishedResponse, UpdateSubscription, UpdateTrackSettings } from '../proto/livekit_rtc';
3
+ import { AddTrackRequest, ConnectionQualityUpdate, JoinResponse, LeaveRequest, SessionDescription, SignalRequest, SignalTarget, SimulateScenario, StreamStateUpdate, SubscribedQualityUpdate, SubscriptionPermissionUpdate, SyncState, TrackPermission, TrackPublishedResponse, UpdateSubscription, UpdateTrackSettings } from '../proto/livekit_rtc';
4
4
  interface ConnectOpts {
5
5
  autoSubscribe?: boolean;
6
6
  /** internal */
@@ -13,6 +13,8 @@ export interface SignalOptions {
13
13
  export declare class SignalClient {
14
14
  isConnected: boolean;
15
15
  useJSON: boolean;
16
+ /** simulate signaling latency by delaying messages */
17
+ signalLatency?: number;
16
18
  onClose?: (reason: string) => void;
17
19
  onAnswer?: (sd: RTCSessionDescriptionInit) => void;
18
20
  onOffer?: (sd: RTCSessionDescriptionInit) => void;
@@ -26,7 +28,9 @@ export declare class SignalClient {
26
28
  onConnectionQuality?: (update: ConnectionQualityUpdate) => void;
27
29
  onStreamStateUpdate?: (update: StreamStateUpdate) => void;
28
30
  onSubscribedQualityUpdate?: (update: SubscribedQualityUpdate) => void;
29
- onLeave?: () => void;
31
+ onSubscriptionPermissionUpdate?: (update: SubscriptionPermissionUpdate) => void;
32
+ onTokenRefresh?: (token: string) => void;
33
+ onLeave?: (leave: LeaveRequest) => void;
30
34
  ws?: WebSocket;
31
35
  constructor(useJSON?: boolean);
32
36
  join(url: string, token: string, opts?: SignalOptions): Promise<JoinResponse>;
@@ -40,10 +44,14 @@ export declare class SignalClient {
40
44
  sendAddTrack(req: AddTrackRequest): void;
41
45
  sendUpdateTrackSettings(settings: UpdateTrackSettings): void;
42
46
  sendUpdateSubscription(sub: UpdateSubscription): void;
47
+ sendSyncState(sync: SyncState): void;
43
48
  sendUpdateVideoLayers(trackSid: string, layers: VideoLayer[]): void;
49
+ sendUpdateSubscriptionPermissions(allParticipants: boolean, trackPermissions: TrackPermission[]): void;
50
+ sendSimulateScenario(scenario: SimulateScenario): void;
44
51
  sendLeave(): void;
45
- sendRequest(req: SignalRequest): void;
52
+ sendRequest(req: SignalRequest): Promise<void>;
46
53
  private handleSignalResponse;
47
54
  private handleWSError;
48
55
  }
56
+ export declare function toProtoSessionDescription(rsd: RTCSessionDescription | RTCSessionDescriptionInit): SessionDescription;
49
57
  export {};
@@ -12,12 +12,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.SignalClient = void 0;
15
+ exports.toProtoSessionDescription = exports.SignalClient = void 0;
16
16
  require("webrtc-adapter");
17
17
  const logger_1 = __importDefault(require("../logger"));
18
18
  const livekit_rtc_1 = require("../proto/livekit_rtc");
19
19
  const errors_1 = require("../room/errors");
20
- const version_1 = require("../version");
20
+ const utils_1 = require("../room/utils");
21
21
  /** @internal */
22
22
  class SignalClient {
23
23
  constructor(useJSON = false) {
@@ -26,6 +26,9 @@ class SignalClient {
26
26
  }
27
27
  join(url, token, opts) {
28
28
  return __awaiter(this, void 0, void 0, function* () {
29
+ // during a full reconnect, we'd want to start the sequence even if currently
30
+ // connected
31
+ this.isConnected = false;
29
32
  const res = yield this.connect(url, token, {
30
33
  autoSubscribe: opts === null || opts === void 0 ? void 0 : opts.autoSubscribe,
31
34
  });
@@ -46,13 +49,8 @@ class SignalClient {
46
49
  // strip trailing slash
47
50
  url = url.replace(/\/$/, '');
48
51
  url += '/rtc';
49
- let params = `?access_token=${token}&protocol=${version_1.protocolVersion}&sdk=js&version=${version_1.version}`;
50
- if (opts.reconnect) {
51
- params += '&reconnect=1';
52
- }
53
- if (opts.autoSubscribe !== undefined) {
54
- params += `&auto_subscribe=${opts.autoSubscribe ? '1' : '0'}`;
55
- }
52
+ const clientInfo = utils_1.getClientInfo();
53
+ const params = createConnectionParams(token, clientInfo, opts);
56
54
  return new Promise((resolve, reject) => {
57
55
  logger_1.default.debug('connecting to', url + params);
58
56
  this.ws = undefined;
@@ -61,7 +59,7 @@ class SignalClient {
61
59
  ws.onerror = (ev) => __awaiter(this, void 0, void 0, function* () {
62
60
  if (!this.ws) {
63
61
  try {
64
- const resp = yield fetch(`http${url.substr(2)}/validate${params}`);
62
+ const resp = yield fetch(`http${url.substring(2)}/validate${params}`);
65
63
  if (!resp.ok) {
66
64
  const msg = yield resp.text();
67
65
  reject(new errors_1.ConnectionError(msg));
@@ -86,7 +84,7 @@ class SignalClient {
86
84
  resolve();
87
85
  }
88
86
  };
89
- ws.onmessage = (ev) => {
87
+ ws.onmessage = (ev) => __awaiter(this, void 0, void 0, function* () {
90
88
  // not considered connected until JoinResponse is received
91
89
  let msg;
92
90
  if (typeof ev.data === 'string') {
@@ -111,10 +109,13 @@ class SignalClient {
111
109
  }
112
110
  return;
113
111
  }
112
+ if (this.signalLatency) {
113
+ yield utils_1.sleep(this.signalLatency);
114
+ }
114
115
  this.handleSignalResponse(msg);
115
- };
116
+ });
116
117
  ws.onclose = (ev) => {
117
- if (!this.isConnected)
118
+ if (!this.isConnected || this.ws !== ws)
118
119
  return;
119
120
  logger_1.default.debug('websocket connection closed', ev.reason);
120
121
  this.isConnected = false;
@@ -149,7 +150,7 @@ class SignalClient {
149
150
  });
150
151
  }
151
152
  sendIceCandidate(candidate, target) {
152
- logger_1.default.debug('sending ice candidate', candidate);
153
+ logger_1.default.trace('sending ice candidate', candidate);
153
154
  this.sendRequest({
154
155
  trickle: {
155
156
  candidateInit: JSON.stringify(candidate),
@@ -176,6 +177,9 @@ class SignalClient {
176
177
  sendUpdateSubscription(sub) {
177
178
  this.sendRequest({ subscription: sub });
178
179
  }
180
+ sendSyncState(sync) {
181
+ this.sendRequest({ syncState: sync });
182
+ }
179
183
  sendUpdateVideoLayers(trackSid, layers) {
180
184
  this.sendRequest({
181
185
  updateLayers: {
@@ -184,25 +188,43 @@ class SignalClient {
184
188
  },
185
189
  });
186
190
  }
191
+ sendUpdateSubscriptionPermissions(allParticipants, trackPermissions) {
192
+ this.sendRequest({
193
+ subscriptionPermission: {
194
+ allParticipants,
195
+ trackPermissions,
196
+ },
197
+ });
198
+ }
199
+ sendSimulateScenario(scenario) {
200
+ this.sendRequest({
201
+ simulate: scenario,
202
+ });
203
+ }
187
204
  sendLeave() {
188
205
  this.sendRequest(livekit_rtc_1.SignalRequest.fromPartial({ leave: {} }));
189
206
  }
190
207
  sendRequest(req) {
191
- if (!this.ws) {
192
- logger_1.default.error('cannot send signal request before connected');
193
- return;
194
- }
195
- try {
196
- if (this.useJSON) {
197
- this.ws.send(JSON.stringify(livekit_rtc_1.SignalRequest.toJSON(req)));
208
+ return __awaiter(this, void 0, void 0, function* () {
209
+ if (this.signalLatency) {
210
+ yield utils_1.sleep(this.signalLatency);
198
211
  }
199
- else {
200
- this.ws.send(livekit_rtc_1.SignalRequest.encode(req).finish());
212
+ if (!this.ws) {
213
+ logger_1.default.error('cannot send signal request before connected');
214
+ return;
201
215
  }
202
- }
203
- catch (e) {
204
- logger_1.default.error('error sending signal message', e);
205
- }
216
+ try {
217
+ if (this.useJSON) {
218
+ this.ws.send(JSON.stringify(livekit_rtc_1.SignalRequest.toJSON(req)));
219
+ }
220
+ else {
221
+ this.ws.send(livekit_rtc_1.SignalRequest.encode(req).finish());
222
+ }
223
+ }
224
+ catch (e) {
225
+ logger_1.default.error('error sending signal message', e);
226
+ }
227
+ });
206
228
  }
207
229
  handleSignalResponse(msg) {
208
230
  if (msg.answer) {
@@ -240,7 +262,7 @@ class SignalClient {
240
262
  }
241
263
  else if (msg.leave) {
242
264
  if (this.onLeave) {
243
- this.onLeave();
265
+ this.onLeave(msg.leave);
244
266
  }
245
267
  }
246
268
  else if (msg.mute) {
@@ -268,6 +290,16 @@ class SignalClient {
268
290
  this.onSubscribedQualityUpdate(msg.subscribedQualityUpdate);
269
291
  }
270
292
  }
293
+ else if (msg.subscriptionPermissionUpdate) {
294
+ if (this.onSubscriptionPermissionUpdate) {
295
+ this.onSubscriptionPermissionUpdate(msg.subscriptionPermissionUpdate);
296
+ }
297
+ }
298
+ else if (msg.refreshToken) {
299
+ if (this.onTokenRefresh) {
300
+ this.onTokenRefresh(msg.refreshToken);
301
+ }
302
+ }
271
303
  else {
272
304
  logger_1.default.debug('unsupported message', msg);
273
305
  }
@@ -301,4 +333,36 @@ function toProtoSessionDescription(rsd) {
301
333
  };
302
334
  return sd;
303
335
  }
336
+ exports.toProtoSessionDescription = toProtoSessionDescription;
337
+ function createConnectionParams(token, info, opts) {
338
+ const params = new URLSearchParams();
339
+ params.set('access_token', token);
340
+ // opts
341
+ if (opts === null || opts === void 0 ? void 0 : opts.reconnect) {
342
+ params.set('reconnect', '1');
343
+ }
344
+ if ((opts === null || opts === void 0 ? void 0 : opts.autoSubscribe) !== undefined) {
345
+ params.set('auto_subscribe', opts.autoSubscribe ? '1' : '0');
346
+ }
347
+ // ClientInfo
348
+ params.set('sdk', 'js');
349
+ params.set('version', info.version);
350
+ params.set('protocol', info.protocol.toString());
351
+ if (info.deviceModel) {
352
+ params.set('device_model', info.deviceModel);
353
+ }
354
+ if (info.os) {
355
+ params.set('os', info.os);
356
+ }
357
+ if (info.osVersion) {
358
+ params.set('os_version', info.osVersion);
359
+ }
360
+ if (info.browser) {
361
+ params.set('browser', info.browser);
362
+ }
363
+ if (info.browserVersion) {
364
+ params.set('browser_version', info.browserVersion);
365
+ }
366
+ return `?${params.toString()}`;
367
+ }
304
368
  //# sourceMappingURL=SignalClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SignalClient.js","sourceRoot":"","sources":["../../src/api/SignalClient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,0BAAwB;AACxB,uDAA4B;AAI5B,sDAa8B;AAC9B,2CAAiD;AACjD,wCAAsD;AActD,gBAAgB;AAChB,MAAa,YAAY;IAoCvB,YAAY,UAAmB,KAAK;QAClC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEK,IAAI,CACR,GAAW,EACX,KAAa,EACb,IAAoB;;YAEpB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE;gBACzC,aAAa,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa;aACnC,CAAC,CAAC;YACH,OAAO,GAAmB,CAAC;QAC7B,CAAC;KAAA;IAEK,SAAS,CAAC,GAAW,EAAE,KAAa;;YACxC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE;gBAC7B,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;QACL,CAAC;KAAA;IAED,OAAO,CACL,GAAW,EACX,KAAa,EACb,IAAiB;QAEjB,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;YAC1B,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACjC;QACD,uBAAuB;QACvB,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7B,GAAG,IAAI,MAAM,CAAC;QACd,IAAI,MAAM,GAAG,iBAAiB,KAAK,aAAa,yBAAe,mBAAmB,iBAAO,EAAE,CAAC;QAC5F,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,MAAM,IAAI,cAAc,CAAC;SAC1B;QACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;YACpC,MAAM,IAAI,mBAAmB,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;SAC/D;QAED,OAAO,IAAI,OAAO,CAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1D,gBAAG,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC;YACzC,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;YACpB,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;YACvC,EAAE,CAAC,UAAU,GAAG,aAAa,CAAC;YAE9B,EAAE,CAAC,OAAO,GAAG,CAAO,EAAS,EAAE,EAAE;gBAC/B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;oBACZ,IAAI;wBACF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;wBACnE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;4BACZ,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;4BAC9B,MAAM,CAAC,IAAI,wBAAe,CAAC,GAAG,CAAC,CAAC,CAAC;yBAClC;6BAAM;4BACL,MAAM,CAAC,IAAI,wBAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC;yBAC/C;qBACF;oBAAC,OAAO,CAAC,EAAE;wBACV,MAAM,CAAC,IAAI,wBAAe,CAAC,0BAA0B,CAAC,CAAC,CAAC;qBACzD;oBACD,OAAO;iBACR;gBACD,uBAAuB;gBACvB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC,CAAA,CAAC;YAEF,EAAE,CAAC,MAAM,GAAG,GAAG,EAAE;gBACf,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;gBACb,IAAI,IAAI,CAAC,SAAS,EAAE;oBAClB,4DAA4D;oBAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,OAAO,EAAE,CAAC;iBACX;YACH,CAAC,CAAC;YAEF,EAAE,CAAC,SAAS,GAAG,CAAC,EAAgB,EAAE,EAAE;gBAClC,0DAA0D;gBAC1D,IAAI,GAAmB,CAAC;gBACxB,IAAI,OAAO,EAAE,CAAC,IAAI,KAAK,QAAQ,EAAE;oBAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBACjC,GAAG,GAAG,4BAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;iBACrC;qBAAM,IAAI,EAAE,CAAC,IAAI,YAAY,WAAW,EAAE;oBACzC,GAAG,GAAG,4BAAc,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;iBACtD;qBAAM;oBACL,gBAAG,CAAC,KAAK,CAAC,oCAAoC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;oBAChE,OAAO;iBACR;gBAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;oBACrB,2BAA2B;oBAC3B,IAAI,GAAG,CAAC,IAAI,EAAE;wBACZ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;wBACxB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;qBACnB;yBAAM;wBACL,MAAM,CAAC,IAAI,wBAAe,CAAC,+BAA+B,CAAC,CAAC,CAAC;qBAC9D;oBACD,OAAO;iBACR;gBAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YACjC,CAAC,CAAC;YAEF,EAAE,CAAC,OAAO,GAAG,CAAC,EAAc,EAAE,EAAE;gBAC9B,IAAI,CAAC,IAAI,CAAC,WAAW;oBAAE,OAAO;gBAE9B,gBAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;gBACpD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;gBACzB,IAAI,IAAI,CAAC,OAAO;oBAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC1C,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;oBAClB,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;iBACrB;YACH,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK;;QACH,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,IAAI,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC;QACpC,MAAA,IAAI,CAAC,EAAE,0CAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;IACtB,CAAC;IAED,8BAA8B;IAC9B,SAAS,CAAC,KAAgC;QACxC,gBAAG,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC;YACf,KAAK,EAAE,yBAAyB,CAAC,KAAK,CAAC;SACxC,CAAC,CAAC;IACL,CAAC;IAED,kCAAkC;IAClC,UAAU,CAAC,MAAiC;QAC1C,gBAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC;YACf,MAAM,EAAE,yBAAyB,CAAC,MAAM,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,SAA8B,EAAE,MAAoB;QACnE,gBAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC;YACf,OAAO,EAAE;gBACP,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;gBACxC,MAAM;aACP;SACF,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,QAAgB,EAAE,KAAc;QAC5C,IAAI,CAAC,WAAW,CAAC;YACf,IAAI,EAAE;gBACJ,GAAG,EAAE,QAAQ;gBACb,KAAK;aACN;SACF,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,GAAoB;QAC/B,IAAI,CAAC,WAAW,CAAC;YACf,QAAQ,EAAE,6BAAe,CAAC,WAAW,CAAC,GAAG,CAAC;SAC3C,CAAC,CAAC;IACL,CAAC;IAED,uBAAuB,CAAC,QAA6B;QACnD,IAAI,CAAC,WAAW,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,sBAAsB,CAAC,GAAuB;QAC5C,IAAI,CAAC,WAAW,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,qBAAqB,CAAC,QAAgB,EAAE,MAAoB;QAC1D,IAAI,CAAC,WAAW,CAAC;YACf,YAAY,EAAE;gBACZ,QAAQ;gBACR,MAAM;aACP;SACF,CAAC,CAAC;IACL,CAAC;IAED,SAAS;QACP,IAAI,CAAC,WAAW,CAAC,2BAAa,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,WAAW,CAAC,GAAkB;QAC5B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACZ,gBAAG,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACzD,OAAO;SACR;QAED,IAAI;YACF,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,2BAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACzD;iBAAM;gBACL,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,2BAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;aAClD;SACF;QAAC,OAAO,CAAC,EAAE;YACV,gBAAG,CAAC,KAAK,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC;SAC9C;IACH,CAAC;IAEO,oBAAoB,CAAC,GAAmB;QAC9C,IAAI,GAAG,CAAC,MAAM,EAAE;YACd,MAAM,EAAE,GAAG,2BAA2B,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;aACnB;SACF;aAAM,IAAI,GAAG,CAAC,KAAK,EAAE;YACpB,MAAM,EAAE,GAAG,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;aAClB;SACF;aAAM,IAAI,GAAG,CAAC,OAAO,EAAE;YACtB,MAAM,SAAS,GAAwB,IAAI,CAAC,KAAK,CAC/C,GAAG,CAAC,OAAO,CAAC,aAAa,CAC1B,CAAC;YACF,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;aAC/C;SACF;aAAM,IAAI,GAAG,CAAC,MAAM,EAAE;YACrB,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;aACnD;SACF;aAAM,IAAI,GAAG,CAAC,cAAc,EAAE;YAC7B,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBAC9B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;aAChD;SACF;aAAM,IAAI,GAAG,CAAC,eAAe,EAAE;YAC9B,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;aACtD;SACF;aAAM,IAAI,GAAG,CAAC,KAAK,EAAE;YACpB,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;SACF;aAAM,IAAI,GAAG,CAAC,IAAI,EAAE;YACnB,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACxD;SACF;aAAM,IAAI,GAAG,CAAC,UAAU,EAAE;YACzB,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAK,CAAC,CAAC;aACzC;SACF;aAAM,IAAI,GAAG,CAAC,iBAAiB,EAAE;YAChC,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;aACjD;SACF;aAAM,IAAI,GAAG,CAAC,iBAAiB,EAAE;YAChC,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;aACjD;SACF;aAAM,IAAI,GAAG,CAAC,uBAAuB,EAAE;YACtC,IAAI,IAAI,CAAC,yBAAyB,EAAE;gBAClC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;aAC7D;SACF;aAAM;YACL,gBAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;SACvC;IACH,CAAC;IAEO,aAAa,CAAC,EAAS;QAC7B,gBAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IACnC,CAAC;CACF;AA3SD,oCA2SC;AAED,SAAS,2BAA2B,CAClC,EAAsB;IAEtB,MAAM,GAAG,GAA8B;QACrC,IAAI,EAAE,OAAO;QACb,GAAG,EAAE,EAAE,CAAC,GAAG;KACZ,CAAC;IACF,QAAQ,EAAE,CAAC,IAAI,EAAE;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO,CAAC;QACb,KAAK,UAAU,CAAC;QAChB,KAAK,UAAU;YACb,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACnB,MAAM;QACR;YACE,MAAM;KACT;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,yBAAyB,CAChC,GAAsD;IAEtD,MAAM,EAAE,GAAuB;QAC7B,GAAG,EAAE,GAAG,CAAC,GAAI;QACb,IAAI,EAAE,GAAG,CAAC,IAAK;KAChB,CAAC;IACF,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"SignalClient.js","sourceRoot":"","sources":["../../src/api/SignalClient.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ import { setLogLevel } from './logger';
2
2
  import { DataPacket_Kind, VideoQuality } from './proto/livekit_models';
3
3
  import LocalParticipant from './room/participant/LocalParticipant';
4
4
  import Participant, { ConnectionQuality } from './room/participant/Participant';
5
+ import { ParticipantTrackPermission } from './room/participant/ParticipantTrackPermission';
5
6
  import RemoteParticipant from './room/participant/RemoteParticipant';
6
7
  import Room, { RoomState } from './room/Room';
7
8
  import LocalAudioTrack from './room/track/LocalAudioTrack';
@@ -9,9 +10,10 @@ import LocalTrack from './room/track/LocalTrack';
9
10
  import LocalTrackPublication from './room/track/LocalTrackPublication';
10
11
  import LocalVideoTrack from './room/track/LocalVideoTrack';
11
12
  import RemoteAudioTrack from './room/track/RemoteAudioTrack';
13
+ import RemoteTrack from './room/track/RemoteTrack';
12
14
  import RemoteTrackPublication from './room/track/RemoteTrackPublication';
13
15
  import RemoteVideoTrack from './room/track/RemoteVideoTrack';
14
- import TrackPublication from './room/track/TrackPublication';
16
+ import { TrackPublication } from './room/track/TrackPublication';
15
17
  export * from './connect';
16
18
  export * from './options';
17
19
  export * from './room/errors';
@@ -21,4 +23,4 @@ export * from './room/track/options';
21
23
  export * from './room/track/Track';
22
24
  export * from './room/track/types';
23
25
  export * from './version';
24
- export { setLogLevel, Room, RoomState, DataPacket_Kind, ConnectionQuality, Participant, RemoteParticipant, LocalParticipant, LocalAudioTrack, LocalVideoTrack, LocalTrack, LocalTrackPublication, RemoteAudioTrack, RemoteVideoTrack, RemoteTrackPublication, TrackPublication, VideoQuality, };
26
+ export { setLogLevel, Room, RoomState, DataPacket_Kind, ConnectionQuality, Participant, RemoteParticipant, LocalParticipant, LocalAudioTrack, LocalVideoTrack, LocalTrack, LocalTrackPublication, RemoteTrack, RemoteAudioTrack, RemoteVideoTrack, RemoteTrackPublication, ParticipantTrackPermission, TrackPublication, VideoQuality, };
package/dist/index.js CHANGED
@@ -25,7 +25,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
25
25
  return (mod && mod.__esModule) ? mod : { "default": mod };
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.VideoQuality = exports.TrackPublication = exports.RemoteTrackPublication = exports.RemoteVideoTrack = exports.RemoteAudioTrack = exports.LocalTrackPublication = exports.LocalTrack = exports.LocalVideoTrack = exports.LocalAudioTrack = exports.LocalParticipant = exports.RemoteParticipant = exports.Participant = exports.ConnectionQuality = exports.DataPacket_Kind = exports.RoomState = exports.Room = exports.setLogLevel = void 0;
28
+ exports.VideoQuality = exports.TrackPublication = exports.RemoteTrackPublication = exports.RemoteVideoTrack = exports.RemoteAudioTrack = exports.RemoteTrack = exports.LocalTrackPublication = exports.LocalTrack = exports.LocalVideoTrack = exports.LocalAudioTrack = exports.LocalParticipant = exports.RemoteParticipant = exports.Participant = exports.ConnectionQuality = exports.DataPacket_Kind = exports.RoomState = exports.Room = exports.setLogLevel = void 0;
29
29
  const logger_1 = require("./logger");
30
30
  Object.defineProperty(exports, "setLogLevel", { enumerable: true, get: function () { return logger_1.setLogLevel; } });
31
31
  const livekit_models_1 = require("./proto/livekit_models");
@@ -51,12 +51,14 @@ const LocalVideoTrack_1 = __importDefault(require("./room/track/LocalVideoTrack"
51
51
  exports.LocalVideoTrack = LocalVideoTrack_1.default;
52
52
  const RemoteAudioTrack_1 = __importDefault(require("./room/track/RemoteAudioTrack"));
53
53
  exports.RemoteAudioTrack = RemoteAudioTrack_1.default;
54
+ const RemoteTrack_1 = __importDefault(require("./room/track/RemoteTrack"));
55
+ exports.RemoteTrack = RemoteTrack_1.default;
54
56
  const RemoteTrackPublication_1 = __importDefault(require("./room/track/RemoteTrackPublication"));
55
57
  exports.RemoteTrackPublication = RemoteTrackPublication_1.default;
56
58
  const RemoteVideoTrack_1 = __importDefault(require("./room/track/RemoteVideoTrack"));
57
59
  exports.RemoteVideoTrack = RemoteVideoTrack_1.default;
58
- const TrackPublication_1 = __importDefault(require("./room/track/TrackPublication"));
59
- exports.TrackPublication = TrackPublication_1.default;
60
+ const TrackPublication_1 = require("./room/track/TrackPublication");
61
+ Object.defineProperty(exports, "TrackPublication", { enumerable: true, get: function () { return TrackPublication_1.TrackPublication; } });
60
62
  __exportStar(require("./connect"), exports);
61
63
  __exportStar(require("./options"), exports);
62
64
  __exportStar(require("./room/errors"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAuC;AAyBrC,4FAzBO,oBAAW,OAyBP;AAxBb,2DAAuE;AA2BrE,gGA3BO,gCAAe,OA2BP;AAaf,6FAxCwB,6BAAY,OAwCxB;AAvCd,2FAAmE;AA8BjE,2BA9BK,0BAAgB,CA8BL;AA7BlB,8EAAgF;AA2B9E,sBA3BK,qBAAW,CA2BL;AADX,kGA1BoB,+BAAiB,OA0BpB;AAzBnB,6FAAqE;AA2BnE,4BA3BK,2BAAiB,CA2BL;AA1BnB,oDAA8C;AAqB5C,eArBK,cAAI,CAqBL;AACJ,0FAtBa,gBAAS,OAsBb;AArBX,mFAA2D;AA2BzD,0BA3BK,yBAAe,CA2BL;AA1BjB,yEAAiD;AA4B/C,qBA5BK,oBAAU,CA4BL;AA3BZ,+FAAuE;AA4BrE,gCA5BK,+BAAqB,CA4BL;AA3BvB,mFAA2D;AAyBzD,0BAzBK,yBAAe,CAyBL;AAxBjB,qFAA6D;AA2B3D,2BA3BK,0BAAgB,CA2BL;AA1BlB,iGAAyE;AA4BvE,iCA5BK,gCAAsB,CA4BL;AA3BxB,qFAA6D;AA0B3D,2BA1BK,0BAAgB,CA0BL;AAzBlB,qFAA6D;AA2B3D,2BA3BK,0BAAgB,CA2BL;AAzBlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,sDAAoC;AACpC,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAuC;AA2BrC,4FA3BO,oBAAW,OA2BP;AA1Bb,2DAAuE;AA6BrE,gGA7BO,gCAAe,OA6BP;AAef,6FA5CwB,6BAAY,OA4CxB;AA3Cd,2FAAmE;AAgCjE,2BAhCK,0BAAgB,CAgCL;AA/BlB,8EAAgF;AA6B9E,sBA7BK,qBAAW,CA6BL;AADX,kGA5BoB,+BAAiB,OA4BpB;AA1BnB,6FAAqE;AA4BnE,4BA5BK,2BAAiB,CA4BL;AA3BnB,oDAA8C;AAsB5C,eAtBK,cAAI,CAsBL;AACJ,0FAvBa,gBAAS,OAuBb;AAtBX,mFAA2D;AA4BzD,0BA5BK,yBAAe,CA4BL;AA3BjB,yEAAiD;AA6B/C,qBA7BK,oBAAU,CA6BL;AA5BZ,+FAAuE;AA6BrE,gCA7BK,+BAAqB,CA6BL;AA5BvB,mFAA2D;AA0BzD,0BA1BK,yBAAe,CA0BL;AAzBjB,qFAA6D;AA6B3D,2BA7BK,0BAAgB,CA6BL;AA5BlB,2EAAmD;AA2BjD,sBA3BK,qBAAW,CA2BL;AA1Bb,iGAAyE;AA6BvE,iCA7BK,gCAAsB,CA6BL;AA5BxB,qFAA6D;AA2B3D,2BA3BK,0BAAgB,CA2BL;AA1BlB,oEAAiE;AA6B/D,iGA7BO,mCAAgB,OA6BP;AA3BlB,4CAA0B;AAC1B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,sDAAoC;AACpC,uDAAqC;AACrC,qDAAmC;AACnC,qDAAmC;AACnC,4CAA0B"}
package/dist/options.d.ts CHANGED
@@ -42,6 +42,11 @@ export interface RoomOptions {
42
42
  * experimental flag, disable client managed layer pause when publishing capability is limited
43
43
  */
44
44
  expDisableLayerPause?: boolean;
45
+ /**
46
+ * @internal
47
+ * experimental flag, introduce a delay before sending signaling messages
48
+ */
49
+ expSignalLatency?: number;
45
50
  }
46
51
  /**
47
52
  * Options for Room.connect()
@@ -22,6 +22,7 @@ export declare enum VideoQuality {
22
22
  LOW = 0,
23
23
  MEDIUM = 1,
24
24
  HIGH = 2,
25
+ OFF = 3,
25
26
  UNRECOGNIZED = -1
26
27
  }
27
28
  export declare function videoQualityFromJSON(object: any): VideoQuality;
@@ -60,6 +61,7 @@ export interface ParticipantInfo {
60
61
  joinedAt: number;
61
62
  hidden: boolean;
62
63
  recorder: boolean;
64
+ name: string;
63
65
  }
64
66
  export declare enum ParticipantInfo_State {
65
67
  /** JOINING - websocket' connected, but not offered yet */
@@ -93,6 +95,9 @@ export interface TrackInfo {
93
95
  /** source of media */
94
96
  source: TrackSource;
95
97
  layers: VideoLayer[];
98
+ /** mime type of codec */
99
+ mimeType: string;
100
+ mid: string;
96
101
  }
97
102
  /** provide information about available spatial layers */
98
103
  export interface VideoLayer {
@@ -102,6 +107,7 @@ export interface VideoLayer {
102
107
  height: number;
103
108
  /** target bitrate, server will measure actual */
104
109
  bitrate: number;
110
+ ssrc: number;
105
111
  }
106
112
  /** new DataPacket API */
107
113
  export interface DataPacket {
@@ -134,6 +140,34 @@ export interface UserPacket {
134
140
  /** the ID of the participants who will receive the message (the message will be sent to all the people in the room if this variable is empty) */
135
141
  destinationSids: string[];
136
142
  }
143
+ export interface ParticipantTracks {
144
+ /** participant ID of participant to whom the tracks belong */
145
+ participantSid: string;
146
+ trackSids: string[];
147
+ }
148
+ /** details about the client */
149
+ export interface ClientInfo {
150
+ sdk: ClientInfo_SDK;
151
+ version: string;
152
+ protocol: number;
153
+ os: string;
154
+ osVersion: string;
155
+ deviceModel: string;
156
+ browser: string;
157
+ browserVersion: string;
158
+ }
159
+ export declare enum ClientInfo_SDK {
160
+ UNKNOWN = 0,
161
+ JS = 1,
162
+ SWIFT = 2,
163
+ ANDROID = 3,
164
+ FLUTTER = 4,
165
+ GO = 5,
166
+ UNITY = 6,
167
+ UNRECOGNIZED = -1
168
+ }
169
+ export declare function clientInfo_SDKFromJSON(object: any): ClientInfo_SDK;
170
+ export declare function clientInfo_SDKToJSON(object: ClientInfo_SDK): string;
137
171
  export declare const Room: {
138
172
  encode(message: Room, writer?: _m0.Writer): _m0.Writer;
139
173
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): Room;
@@ -197,6 +231,20 @@ export declare const UserPacket: {
197
231
  toJSON(message: UserPacket): unknown;
198
232
  fromPartial(object: DeepPartial<UserPacket>): UserPacket;
199
233
  };
234
+ export declare const ParticipantTracks: {
235
+ encode(message: ParticipantTracks, writer?: _m0.Writer): _m0.Writer;
236
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ParticipantTracks;
237
+ fromJSON(object: any): ParticipantTracks;
238
+ toJSON(message: ParticipantTracks): unknown;
239
+ fromPartial(object: DeepPartial<ParticipantTracks>): ParticipantTracks;
240
+ };
241
+ export declare const ClientInfo: {
242
+ encode(message: ClientInfo, writer?: _m0.Writer): _m0.Writer;
243
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ClientInfo;
244
+ fromJSON(object: any): ClientInfo;
245
+ toJSON(message: ClientInfo): unknown;
246
+ fromPartial(object: DeepPartial<ClientInfo>): ClientInfo;
247
+ };
200
248
  declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
201
249
  export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
202
250
  [K in keyof T]?: DeepPartial<T[K]>;