livekit-client 1.1.3 → 1.1.4

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.
@@ -109,6 +109,7 @@ declare class Room extends Room_base {
109
109
  * @param deviceId
110
110
  */
111
111
  switchActiveDevice(kind: MediaDeviceKind, deviceId: string): Promise<void>;
112
+ private recreateEngine;
112
113
  private onTrackAdded;
113
114
  private handleRestarting;
114
115
  private handleRestarted;
@@ -1 +1 @@
1
- {"version":3,"file":"Room.d.ts","sourceRoot":"","sources":["../../../src/room/Room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Room.d.ts","sourceRoot":"","sources":["../../../src/room/Room.ts"],"names":[],"mappings":"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"}
@@ -14,10 +14,11 @@ export default class LocalParticipant extends Participant {
14
14
  videoTracks: Map<string, LocalTrackPublication>;
15
15
  /** map of track sid => all published tracks */
16
16
  tracks: Map<string, LocalTrackPublication>;
17
+ /** @internal */
18
+ engine: RTCEngine;
17
19
  private pendingPublishing;
18
20
  private cameraError;
19
21
  private microphoneError;
20
- private engine;
21
22
  private participantTrackPermissions;
22
23
  private allParticipantsAllowedToSubscribe;
23
24
  private roomOptions?;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export default class LocalAudioTrack extends LocalTrack {
6
6
  /** @internal */
7
7
  stopOnMute: boolean;
8
8
  private prevStats?;
9
- constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints);
9
+ constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints, userProvidedTrack?: boolean);
10
10
  setDeviceId(deviceId: string): Promise<void>;
11
11
  mute(): Promise<LocalAudioTrack>;
12
12
  unmute(): Promise<LocalAudioTrack>;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalAudioTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalAudioTrack.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAoC,MAAM,UAAU,CAAC;AAE9E,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAIhD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,UAAU;IACrD,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,gBAAgB;IAChB,UAAU,EAAE,OAAO,CAAS;IAE5B,OAAO,CAAC,SAAS,CAAC,CAAmB;gBAEzB,UAAU,EAAE,gBAAgB,EAAE,WAAW,CAAC,EAAE,qBAAqB;IAKvE,WAAW,CAAC,QAAQ,EAAE,MAAM;IAU5B,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAWhC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC;IASlC,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB;cAWhC,OAAO,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAOjF,YAAY;IASZ,OAAO,CAAC,aAAa,CAsBnB;IAEI,cAAc,IAAI,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAyBvD,eAAe;CAStB"}
1
+ {"version":3,"file":"LocalAudioTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalAudioTrack.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAoC,MAAM,UAAU,CAAC;AAE9E,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAIhD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,UAAU;IACrD,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,gBAAgB;IAChB,UAAU,EAAE,OAAO,CAAS;IAE5B,OAAO,CAAC,SAAS,CAAC,CAAmB;gBAGnC,UAAU,EAAE,gBAAgB,EAC5B,WAAW,CAAC,EAAE,qBAAqB,EACnC,iBAAiB,UAAO;IAMpB,WAAW,CAAC,QAAQ,EAAE,MAAM;IAU5B,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAWhC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC;IASlC,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB;cAWhC,OAAO,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAOjF,YAAY;IASZ,OAAO,CAAC,aAAa,CAsBnB;IAEI,cAAc,IAAI,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAyBvD,eAAe;CAStB"}
@@ -8,18 +8,20 @@ export default class LocalTrack extends Track {
8
8
  protected constraints: MediaTrackConstraints;
9
9
  protected wasMuted: boolean;
10
10
  protected reacquireTrack: boolean;
11
- protected constructor(mediaTrack: MediaStreamTrack, kind: Track.Kind, constraints?: MediaTrackConstraints);
11
+ protected providedByUser: boolean;
12
+ protected constructor(mediaTrack: MediaStreamTrack, kind: Track.Kind, constraints?: MediaTrackConstraints, userProvidedTrack?: boolean);
12
13
  get id(): string;
13
14
  get dimensions(): Track.Dimensions | undefined;
14
15
  private _isUpstreamPaused;
15
16
  get isUpstreamPaused(): boolean;
17
+ get isUserProvided(): boolean;
16
18
  /**
17
19
  * @returns DeviceID of the device that is currently being used for this track
18
20
  */
19
21
  getDeviceId(): Promise<string | undefined>;
20
22
  mute(): Promise<LocalTrack>;
21
23
  unmute(): Promise<LocalTrack>;
22
- replaceTrack(track: MediaStreamTrack): Promise<LocalTrack>;
24
+ replaceTrack(track: MediaStreamTrack, userProvidedTrack?: boolean): Promise<LocalTrack>;
23
25
  protected restart(constraints?: MediaTrackConstraints): Promise<LocalTrack>;
24
26
  protected setTrackMuted(muted: boolean): void;
25
27
  protected get needsReAcquisition(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalTrack.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAgC,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,KAAK;IAC3C,gBAAgB;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,gBAAgB;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB,SAAS,CAAC,WAAW,EAAE,qBAAqB,CAAC;IAE7C,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE5B,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAElC,SAAS,aACP,UAAU,EAAE,gBAAgB,EAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,WAAW,CAAC,EAAE,qBAAqB;IASrC,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,UAAU,IAAI,KAAK,CAAC,UAAU,GAAG,SAAS,CAa7C;IAED,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,IAAI,gBAAgB,YAEnB;IAED;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAW1C,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC;IAK3B,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC;IAK7B,YAAY,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;cA+BhD,OAAO,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAiDjF,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO;IAUtC,SAAS,KAAK,kBAAkB,IAAI,OAAO,CAO1C;cAEe,0BAA0B;IAmB1C,OAAO,CAAC,WAAW,CAKjB;IAEI,aAAa;IAeb,cAAc;CAarB"}
1
+ {"version":3,"file":"LocalTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalTrack.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAgC,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,KAAK;IAC3C,gBAAgB;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,gBAAgB;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB,SAAS,CAAC,WAAW,EAAE,qBAAqB,CAAC;IAE7C,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE5B,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAElC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAElC,SAAS,aACP,UAAU,EAAE,gBAAgB,EAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,WAAW,CAAC,EAAE,qBAAqB,EACnC,iBAAiB,UAAQ;IAU3B,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,UAAU,IAAI,KAAK,CAAC,UAAU,GAAG,SAAS,CAa7C;IAED,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,IAAI,gBAAgB,YAEnB;IAED,IAAI,cAAc,YAEjB;IAED;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAW1C,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC;IAK3B,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC;IAK7B,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,UAAO,GAAG,OAAO,CAAC,UAAU,CAAC;cAgC1E,OAAO,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAiDjF,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO;IAUtC,SAAS,KAAK,kBAAkB,IAAI,OAAO,CAO1C;cAEe,0BAA0B;IAmB1C,OAAO,CAAC,WAAW,CAKjB;IAEI,aAAa;IAeb,cAAc;CAarB"}
@@ -17,7 +17,7 @@ export default class LocalVideoTrack extends LocalTrack {
17
17
  private encodings?;
18
18
  private simulcastCodecs;
19
19
  private subscribedCodecs?;
20
- constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints);
20
+ constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints, userProvidedTrack?: boolean);
21
21
  get isSimulcast(): boolean;
22
22
  startMonitor(signalClient: SignalClient): void;
23
23
  stop(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalVideoTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalVideoTrack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAoC,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE9E,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAI5D,qBAAa,kBAAkB;IAC7B,KAAK,EAAE,UAAU,CAAC;IAElB,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,SAAS,CAAC,EAAE,wBAAwB,EAAE,CAAC;gBAE3B,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB;CAIlE;AAID,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,UAAU;IAErD,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,OAAO,CAAC,SAAS,CAAC,CAAgC;IAElD,OAAO,CAAC,SAAS,CAAC,CAA6B;IAE/C,OAAO,CAAC,eAAe,CAGnB;IAEJ,OAAO,CAAC,gBAAgB,CAAC,CAAoB;gBAEjC,UAAU,EAAE,gBAAgB,EAAE,WAAW,CAAC,EAAE,qBAAqB;IAI7E,IAAI,WAAW,IAAI,OAAO,CAKzB;IAGD,YAAY,CAAC,YAAY,EAAE,YAAY;IAiBvC,IAAI;IAWE,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAUhC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC;IASlC,cAAc,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IA2CnD,oBAAoB,CAAC,UAAU,EAAE,YAAY;IAYvC,WAAW,CAAC,QAAQ,EAAE,MAAM;IAY5B,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB;IAWhD,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,wBAAwB,EAAE,GAAG,kBAAkB;IAchG,uBAAuB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY;IAgB/D;;;OAGG;IACG,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAwC3E;;;OAGG;IACG,mBAAmB,CAAC,SAAS,EAAE,iBAAiB,EAAE;IASxD,OAAO,CAAC,aAAa,CA4BnB;cAEc,0BAA0B;CAO3C;AA6DD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAW5D;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,wBAAwB,EAAE,GACrC,UAAU,EAAE,CA2Bd"}
1
+ {"version":3,"file":"LocalVideoTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/track/LocalVideoTrack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAoC,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE9E,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAI5D,qBAAa,kBAAkB;IAC7B,KAAK,EAAE,UAAU,CAAC;IAElB,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,SAAS,CAAC,EAAE,wBAAwB,EAAE,CAAC;gBAE3B,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB;CAIlE;AAID,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,UAAU;IAErD,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,OAAO,CAAC,SAAS,CAAC,CAAgC;IAElD,OAAO,CAAC,SAAS,CAAC,CAA6B;IAE/C,OAAO,CAAC,eAAe,CAGnB;IAEJ,OAAO,CAAC,gBAAgB,CAAC,CAAoB;gBAG3C,UAAU,EAAE,gBAAgB,EAC5B,WAAW,CAAC,EAAE,qBAAqB,EACnC,iBAAiB,UAAO;IAK1B,IAAI,WAAW,IAAI,OAAO,CAKzB;IAGD,YAAY,CAAC,YAAY,EAAE,YAAY;IAiBvC,IAAI;IAWE,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAUhC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC;IASlC,cAAc,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IA2CnD,oBAAoB,CAAC,UAAU,EAAE,YAAY;IAYvC,WAAW,CAAC,QAAQ,EAAE,MAAM;IAY5B,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB;IAWhD,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,wBAAwB,EAAE,GAAG,kBAAkB;IAchG,uBAAuB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY;IAgB/D;;;OAGG;IACG,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAwC3E;;;OAGG;IACG,mBAAmB,CAAC,SAAS,EAAE,iBAAiB,EAAE;IASxD,OAAO,CAAC,aAAa,CA4BnB;cAEc,0BAA0B;CAO3C;AA6DD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAW5D;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,wBAAwB,EAAE,GACrC,UAAU,EAAE,CA2Bd"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "livekit-client",
3
- "version": "1.1.3",
3
+ "version": "1.1.4",
4
4
  "description": "JavaScript/TypeScript client SDK for LiveKit",
5
5
  "main": "./dist/livekit-client.umd.js",
6
6
  "unpkg": "./dist/livekit-client.umd.js",
package/src/room/Room.ts CHANGED
@@ -170,6 +170,10 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
170
170
  })
171
171
  .on(EngineEvent.Restarting, this.handleRestarting)
172
172
  .on(EngineEvent.Restarted, this.handleRestarted);
173
+
174
+ if (this.localParticipant) {
175
+ this.localParticipant.engine = this.engine;
176
+ }
173
177
  }
174
178
 
175
179
  /**
@@ -287,7 +291,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
287
291
  this.metadata = joinResponse.room!.metadata;
288
292
  this.emit(RoomEvent.SignalConnected);
289
293
  } catch (err) {
290
- this.engine.close();
294
+ this.recreateEngine();
291
295
  this.setAndEmitConnectionState(ConnectionState.Disconnected);
292
296
  throw err;
293
297
  }
@@ -296,14 +300,14 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
296
300
  return new Promise<Room>((resolve, reject) => {
297
301
  const connectTimeout = setTimeout(() => {
298
302
  // timeout
299
- this.engine.close();
303
+ this.recreateEngine();
300
304
  this.setAndEmitConnectionState(ConnectionState.Disconnected);
301
305
  reject(new ConnectionError('could not connect after timeout'));
302
306
  }, maxICEConnectTimeout);
303
307
  const abortHandler = () => {
304
308
  log.warn('closing engine');
305
309
  clearTimeout(connectTimeout);
306
- this.engine.close();
310
+ this.recreateEngine();
307
311
  this.setAndEmitConnectionState(ConnectionState.Disconnected);
308
312
  reject(new ConnectionError('room connection has been cancelled'));
309
313
  };
@@ -495,6 +499,18 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
495
499
  }
496
500
  }
497
501
 
502
+ private recreateEngine() {
503
+ this.engine.close();
504
+ /* @ts-ignore */
505
+ this.engine = undefined;
506
+
507
+ // clear out existing remote participants, since they may have attached
508
+ // the old engine
509
+ this.participants.clear();
510
+
511
+ this.createEngine();
512
+ }
513
+
498
514
  private onTrackAdded(
499
515
  mediaTrack: MediaStreamTrack,
500
516
  stream: MediaStream,
@@ -508,7 +524,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
508
524
  if (this.state === ConnectionState.Connecting || this.state === ConnectionState.Reconnecting) {
509
525
  setTimeout(() => {
510
526
  this.onTrackAdded(mediaTrack, stream, receiver);
511
- }, 10);
527
+ }, 50);
512
528
  return;
513
529
  }
514
530
  if (this.state === ConnectionState.Disconnected) {
@@ -538,14 +554,14 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
538
554
  }
539
555
 
540
556
  private handleRestarting = () => {
541
- if (this.setAndEmitConnectionState(ConnectionState.Reconnecting)) {
542
- this.emit(RoomEvent.Reconnecting);
543
- }
544
-
545
557
  // also unwind existing participants & existing subscriptions
546
558
  for (const p of this.participants.values()) {
547
559
  this.handleParticipantDisconnected(p.sid, p);
548
560
  }
561
+
562
+ if (this.setAndEmitConnectionState(ConnectionState.Reconnecting)) {
563
+ this.emit(RoomEvent.Reconnecting);
564
+ }
549
565
  };
550
566
 
551
567
  private handleRestarted = async (joinResponse: JoinResponse) => {
@@ -576,7 +592,10 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
576
592
  const track = pub.track!;
577
593
  this.localParticipant.unpublishTrack(track, false);
578
594
  if (!track.isMuted) {
579
- if (track instanceof LocalAudioTrack || track instanceof LocalVideoTrack) {
595
+ if (
596
+ (track instanceof LocalAudioTrack || track instanceof LocalVideoTrack) &&
597
+ !track.isUserProvided
598
+ ) {
580
599
  // we need to restart the track before publishing, often a full reconnect
581
600
  // is necessary because computer had gone to sleep.
582
601
  log.debug('restarting existing track', {
@@ -650,7 +669,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
650
669
  this.handleParticipantDisconnected(info.sid, remoteParticipant);
651
670
  } else if (isNewParticipant) {
652
671
  // fire connected event
653
- this.emit(RoomEvent.ParticipantConnected, remoteParticipant);
672
+ this.emitWhenConnected(RoomEvent.ParticipantConnected, remoteParticipant);
654
673
  } else {
655
674
  // just update, no events
656
675
  remoteParticipant.updateInfo(info);
@@ -669,7 +688,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
669
688
  participant.tracks.forEach((publication) => {
670
689
  participant.unpublishTrack(publication.trackSid, true);
671
690
  });
672
- this.emit(RoomEvent.ParticipantDisconnected, participant);
691
+ this.emitWhenConnected(RoomEvent.ParticipantDisconnected, participant);
673
692
  }
674
693
 
675
694
  // updates are sent only when there's a change to speaker ordering
@@ -704,7 +723,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
704
723
  });
705
724
 
706
725
  this.activeSpeakers = activeSpeakers;
707
- this.emit(RoomEvent.ActiveSpeakersChanged, activeSpeakers);
726
+ this.emitWhenConnected(RoomEvent.ActiveSpeakersChanged, activeSpeakers);
708
727
  };
709
728
 
710
729
  // process list of changed speakers
@@ -733,7 +752,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
733
752
  const activeSpeakers = Array.from(lastSpeakers.values());
734
753
  activeSpeakers.sort((a, b) => b.audioLevel - a.audioLevel);
735
754
  this.activeSpeakers = activeSpeakers;
736
- this.emit(RoomEvent.ActiveSpeakersChanged, activeSpeakers);
755
+ this.emitWhenConnected(RoomEvent.ActiveSpeakersChanged, activeSpeakers);
737
756
  };
738
757
 
739
758
  private handleStreamStateUpdate = (streamStateUpdate: StreamStateUpdate) => {
@@ -748,7 +767,12 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
748
767
  }
749
768
  pub.track.streamState = Track.streamStateFromProto(streamState.state);
750
769
  participant.emit(ParticipantEvent.TrackStreamStateChanged, pub, pub.track.streamState);
751
- this.emit(ParticipantEvent.TrackStreamStateChanged, pub, pub.track.streamState, participant);
770
+ this.emitWhenConnected(
771
+ ParticipantEvent.TrackStreamStateChanged,
772
+ pub,
773
+ pub.track.streamState,
774
+ participant,
775
+ );
752
776
  });
753
777
  };
754
778
 
@@ -768,7 +792,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
768
792
  pub,
769
793
  pub.subscriptionStatus,
770
794
  );
771
- this.emit(
795
+ this.emitWhenConnected(
772
796
  ParticipantEvent.TrackSubscriptionPermissionChanged,
773
797
  pub,
774
798
  pub.subscriptionStatus,
@@ -809,7 +833,7 @@ class Room extends (EventEmitter as new () => TypedEmitter<RoomEventCallbacks>)
809
833
 
810
834
  private handleRoomUpdate = (r: RoomModel) => {
811
835
  this.metadata = r.metadata;
812
- this.emit(RoomEvent.RoomMetadataChanged, r.metadata);
836
+ this.emitWhenConnected(RoomEvent.RoomMetadataChanged, r.metadata);
813
837
  };
814
838
 
815
839
  private handleConnectionQualityUpdate = (update: ConnectionQualityUpdate) => {
@@ -42,14 +42,15 @@ export default class LocalParticipant extends Participant {
42
42
  /** map of track sid => all published tracks */
43
43
  tracks: Map<string, LocalTrackPublication>;
44
44
 
45
+ /** @internal */
46
+ engine: RTCEngine;
47
+
45
48
  private pendingPublishing = new Set<Track.Source>();
46
49
 
47
50
  private cameraError: Error | undefined;
48
51
 
49
52
  private microphoneError: Error | undefined;
50
53
 
51
- private engine: RTCEngine;
52
-
53
54
  private participantTrackPermissions: Array<ParticipantTrackPermission> = [];
54
55
 
55
56
  private allParticipantsAllowedToSubscribe: boolean = true;
@@ -366,11 +367,11 @@ export default class LocalParticipant extends Participant {
366
367
  if (tracks.length === 0) {
367
368
  throw new TrackInvalidError('no video track found');
368
369
  }
369
- const screenVideo = new LocalVideoTrack(tracks[0]);
370
+ const screenVideo = new LocalVideoTrack(tracks[0], undefined, false);
370
371
  screenVideo.source = Track.Source.ScreenShare;
371
372
  const localTracks: Array<LocalTrack> = [screenVideo];
372
373
  if (stream.getAudioTracks().length > 0) {
373
- const screenAudio = new LocalAudioTrack(stream.getAudioTracks()[0]);
374
+ const screenAudio = new LocalAudioTrack(stream.getAudioTracks()[0], undefined, false);
374
375
  screenAudio.source = Track.Source.ScreenShareAudio;
375
376
  localTracks.push(screenAudio);
376
377
  }
@@ -395,10 +396,10 @@ export default class LocalParticipant extends Participant {
395
396
  if (track instanceof MediaStreamTrack) {
396
397
  switch (track.kind) {
397
398
  case 'audio':
398
- track = new LocalAudioTrack(track);
399
+ track = new LocalAudioTrack(track, undefined, true);
399
400
  break;
400
401
  case 'video':
401
- track = new LocalVideoTrack(track);
402
+ track = new LocalVideoTrack(track, undefined, true);
402
403
  break;
403
404
  default:
404
405
  throw new TrackInvalidError(`unsupported MediaStreamTrack kind ${track.kind}`);
@@ -18,9 +18,9 @@ export function mediaTrackToLocalTrack(
18
18
  ): LocalVideoTrack | LocalAudioTrack {
19
19
  switch (mediaStreamTrack.kind) {
20
20
  case 'audio':
21
- return new LocalAudioTrack(mediaStreamTrack, constraints);
21
+ return new LocalAudioTrack(mediaStreamTrack, constraints, false);
22
22
  case 'video':
23
- return new LocalVideoTrack(mediaStreamTrack, constraints);
23
+ return new LocalVideoTrack(mediaStreamTrack, constraints, false);
24
24
  default:
25
25
  throw new TrackInvalidError(`unsupported track type: ${mediaStreamTrack.kind}`);
26
26
  }
@@ -15,8 +15,12 @@ export default class LocalAudioTrack extends LocalTrack {
15
15
 
16
16
  private prevStats?: AudioSenderStats;
17
17
 
18
- constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints) {
19
- super(mediaTrack, Track.Kind.Audio, constraints);
18
+ constructor(
19
+ mediaTrack: MediaStreamTrack,
20
+ constraints?: MediaTrackConstraints,
21
+ userProvidedTrack = true,
22
+ ) {
23
+ super(mediaTrack, Track.Kind.Audio, constraints, userProvidedTrack);
20
24
  this.checkForSilence();
21
25
  }
22
26
 
@@ -42,7 +46,7 @@ export default class LocalAudioTrack extends LocalTrack {
42
46
  }
43
47
 
44
48
  async unmute(): Promise<LocalAudioTrack> {
45
- if (this.source === Track.Source.Microphone && this.stopOnMute) {
49
+ if (this.source === Track.Source.Microphone && this.stopOnMute && !this.isUserProvided) {
46
50
  log.debug('reacquiring mic track');
47
51
  await this.restartTrack();
48
52
  }
@@ -19,16 +19,20 @@ export default class LocalTrack extends Track {
19
19
 
20
20
  protected reacquireTrack: boolean;
21
21
 
22
+ protected providedByUser: boolean;
23
+
22
24
  protected constructor(
23
25
  mediaTrack: MediaStreamTrack,
24
26
  kind: Track.Kind,
25
27
  constraints?: MediaTrackConstraints,
28
+ userProvidedTrack = false,
26
29
  ) {
27
30
  super(mediaTrack, kind);
28
31
  this._mediaStreamTrack.addEventListener('ended', this.handleEnded);
29
32
  this.constraints = constraints ?? mediaTrack.getConstraints();
30
33
  this.reacquireTrack = false;
31
34
  this.wasMuted = false;
35
+ this.providedByUser = userProvidedTrack;
32
36
  }
33
37
 
34
38
  get id(): string {
@@ -56,6 +60,10 @@ export default class LocalTrack extends Track {
56
60
  return this._isUpstreamPaused;
57
61
  }
58
62
 
63
+ get isUserProvided() {
64
+ return this.providedByUser;
65
+ }
66
+
59
67
  /**
60
68
  * @returns DeviceID of the device that is currently being used for this track
61
69
  */
@@ -80,7 +88,7 @@ export default class LocalTrack extends Track {
80
88
  return this;
81
89
  }
82
90
 
83
- async replaceTrack(track: MediaStreamTrack): Promise<LocalTrack> {
91
+ async replaceTrack(track: MediaStreamTrack, userProvidedTrack = true): Promise<LocalTrack> {
84
92
  if (!this.sender) {
85
93
  throw new TrackInvalidError('unable to replace an unpublished track');
86
94
  }
@@ -108,6 +116,7 @@ export default class LocalTrack extends Track {
108
116
  });
109
117
 
110
118
  this.mediaStream = new MediaStream([track]);
119
+ this.providedByUser = userProvidedTrack;
111
120
  return this;
112
121
  }
113
122
 
@@ -184,7 +193,7 @@ export default class LocalTrack extends Track {
184
193
  if (!isMobile()) return;
185
194
  log.debug(`visibility changed, is in Background: ${this.isInBackground}`);
186
195
 
187
- if (!this.isInBackground && this.needsReAcquisition) {
196
+ if (!this.isInBackground && this.needsReAcquisition && !this.isUserProvided) {
188
197
  log.debug(`track needs to be reaquired, restarting ${this.source}`);
189
198
  await this.restart();
190
199
  this.reacquireTrack = false;
@@ -41,8 +41,12 @@ export default class LocalVideoTrack extends LocalTrack {
41
41
 
42
42
  private subscribedCodecs?: SubscribedCodec[];
43
43
 
44
- constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints) {
45
- super(mediaTrack, Track.Kind.Video, constraints);
44
+ constructor(
45
+ mediaTrack: MediaStreamTrack,
46
+ constraints?: MediaTrackConstraints,
47
+ userProvidedTrack = true,
48
+ ) {
49
+ super(mediaTrack, Track.Kind.Video, constraints, userProvidedTrack);
46
50
  }
47
51
 
48
52
  get isSimulcast(): boolean {
@@ -92,7 +96,7 @@ export default class LocalVideoTrack extends LocalTrack {
92
96
  }
93
97
 
94
98
  async unmute(): Promise<LocalVideoTrack> {
95
- if (this.source === Track.Source.Camera) {
99
+ if (this.source === Track.Source.Camera && !this.isUserProvided) {
96
100
  log.debug('reacquiring camera track');
97
101
  await this.restartTrack();
98
102
  }
@@ -110,11 +110,11 @@ export async function createLocalScreenTracks(
110
110
  if (tracks.length === 0) {
111
111
  throw new TrackInvalidError('no video track found');
112
112
  }
113
- const screenVideo = new LocalVideoTrack(tracks[0]);
113
+ const screenVideo = new LocalVideoTrack(tracks[0], undefined, false);
114
114
  screenVideo.source = Track.Source.ScreenShare;
115
115
  const localTracks: Array<LocalTrack> = [screenVideo];
116
116
  if (stream.getAudioTracks().length > 0) {
117
- const screenAudio = new LocalAudioTrack(stream.getAudioTracks()[0]);
117
+ const screenAudio = new LocalAudioTrack(stream.getAudioTracks()[0], undefined, false);
118
118
  screenAudio.source = Track.Source.ScreenShareAudio;
119
119
  localTracks.push(screenAudio);
120
120
  }