livekit-client 0.15.4 → 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 (41) hide show
  1. package/dist/api/SignalClient.d.ts +3 -2
  2. package/dist/api/SignalClient.js +11 -3
  3. package/dist/api/SignalClient.js.map +1 -1
  4. package/dist/proto/livekit_rtc.d.ts +15 -10
  5. package/dist/proto/livekit_rtc.js +36 -22
  6. package/dist/proto/livekit_rtc.js.map +1 -1
  7. package/dist/room/RTCEngine.d.ts +8 -2
  8. package/dist/room/RTCEngine.js +137 -42
  9. package/dist/room/RTCEngine.js.map +1 -1
  10. package/dist/room/Room.d.ts +7 -0
  11. package/dist/room/Room.js +66 -16
  12. package/dist/room/Room.js.map +1 -1
  13. package/dist/room/events.d.ts +5 -3
  14. package/dist/room/events.js +5 -3
  15. package/dist/room/events.js.map +1 -1
  16. package/dist/room/participant/LocalParticipant.d.ts +1 -2
  17. package/dist/room/participant/LocalParticipant.js +5 -5
  18. package/dist/room/participant/LocalParticipant.js.map +1 -1
  19. package/dist/room/participant/RemoteParticipant.js +3 -0
  20. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  21. package/dist/room/track/LocalTrackPublication.d.ts +2 -0
  22. package/dist/room/track/LocalTrackPublication.js.map +1 -1
  23. package/dist/room/track/RemoteTrackPublication.d.ts +1 -1
  24. package/dist/room/track/RemoteTrackPublication.js +7 -1
  25. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  26. package/dist/room/track/Track.js +9 -5
  27. package/dist/room/track/Track.js.map +1 -1
  28. package/dist/version.d.ts +2 -2
  29. package/dist/version.js +2 -2
  30. package/package.json +2 -2
  31. package/src/api/SignalClient.ts +14 -4
  32. package/src/proto/livekit_rtc.ts +55 -41
  33. package/src/room/RTCEngine.ts +145 -47
  34. package/src/room/Room.ts +92 -37
  35. package/src/room/events.ts +5 -3
  36. package/src/room/participant/LocalParticipant.ts +5 -5
  37. package/src/room/participant/RemoteParticipant.ts +3 -0
  38. package/src/room/track/LocalTrackPublication.ts +3 -0
  39. package/src/room/track/RemoteTrackPublication.ts +8 -2
  40. package/src/room/track/Track.ts +11 -5
  41. package/src/version.ts +2 -2
@@ -24,21 +24,25 @@ const PCTransport_1 = __importDefault(require("./PCTransport"));
24
24
  const utils_1 = require("./utils");
25
25
  const lossyDataChannel = '_lossy';
26
26
  const reliableDataChannel = '_reliable';
27
- const maxReconnectRetries = 5;
28
- exports.maxICEConnectTimeout = 5 * 1000;
27
+ const maxReconnectRetries = 10;
28
+ const minReconnectWait = 1 * 1000;
29
+ const maxReconnectDuration = 60 * 1000;
30
+ exports.maxICEConnectTimeout = 15 * 1000;
29
31
  /** @internal */
30
32
  class RTCEngine extends events_1.EventEmitter {
31
33
  constructor() {
32
34
  super();
33
35
  this.rtcConfig = {};
34
36
  this.subscriberPrimary = false;
35
- this.iceConnected = false;
37
+ this.pcConnected = false;
36
38
  this.isClosed = true;
37
39
  this.pendingTrackResolvers = {};
38
40
  // true if publisher connection has already been established.
39
41
  // this is helpful to know if we need to restart ICE on the publisher connection
40
42
  this.hasPublished = false;
41
43
  this.reconnectAttempts = 0;
44
+ this.reconnectStart = 0;
45
+ this.fullReconnect = false;
42
46
  this.handleDataChannel = ({ channel }) => __awaiter(this, void 0, void 0, function* () {
43
47
  if (!channel) {
44
48
  return;
@@ -84,20 +88,51 @@ class RTCEngine extends events_1.EventEmitter {
84
88
  return;
85
89
  }
86
90
  logger_1.default.debug(`${connection} disconnected`);
87
- if (this.reconnectAttempts >= maxReconnectRetries) {
88
- logger_1.default.info('could not connect to signal after', maxReconnectRetries, 'attempts. giving up');
89
- this.emit(events_2.EngineEvent.Disconnected);
90
- this.close();
91
- return;
91
+ if (this.reconnectAttempts === 0) {
92
+ // only reset start time on the first try
93
+ this.reconnectStart = Date.now();
92
94
  }
93
95
  const delay = (this.reconnectAttempts * this.reconnectAttempts) * 300;
94
- setTimeout(() => {
95
- this.reconnect()
96
- .then(() => {
96
+ setTimeout(() => __awaiter(this, void 0, void 0, function* () {
97
+ if (this.isClosed) {
98
+ return;
99
+ }
100
+ try {
101
+ if (this.fullReconnect) {
102
+ yield this.restartConnection();
103
+ }
104
+ else {
105
+ yield this.resumeConnection();
106
+ }
97
107
  this.reconnectAttempts = 0;
98
- })
99
- .catch(this.handleDisconnect);
100
- }, delay);
108
+ this.fullReconnect = false;
109
+ }
110
+ catch (e) {
111
+ this.reconnectAttempts += 1;
112
+ let recoverable = true;
113
+ if (e instanceof errors_1.UnexpectedConnectionState) {
114
+ logger_1.default.debug('received unrecoverable error', e.message);
115
+ // unrecoverable
116
+ recoverable = false;
117
+ }
118
+ else if (!(e instanceof SignalReconnectError)) {
119
+ // cannot resume
120
+ this.fullReconnect = true;
121
+ }
122
+ const duration = Date.now() - this.reconnectStart;
123
+ if (this.reconnectAttempts >= maxReconnectRetries || duration > maxReconnectDuration) {
124
+ recoverable = false;
125
+ }
126
+ if (recoverable) {
127
+ this.handleDisconnect('reconnect');
128
+ }
129
+ else {
130
+ logger_1.default.info(`could not recover connection after ${maxReconnectRetries} attempts, ${duration}ms. giving up`);
131
+ this.emit(events_2.EngineEvent.Disconnected);
132
+ this.close();
133
+ }
134
+ }
135
+ }), delay);
101
136
  };
102
137
  this.client = new SignalClient_1.SignalClient();
103
138
  }
@@ -105,8 +140,8 @@ class RTCEngine extends events_1.EventEmitter {
105
140
  return __awaiter(this, void 0, void 0, function* () {
106
141
  this.url = url;
107
142
  this.token = token;
143
+ this.signalOpts = opts;
108
144
  const joinResponse = yield this.client.join(url, token, opts);
109
- this.emit(events_2.EngineEvent.SignalConnected);
110
145
  this.isClosed = false;
111
146
  this.subscriberPrimary = joinResponse.subscriberPrimary;
112
147
  if (!this.publisher) {
@@ -203,22 +238,23 @@ class RTCEngine extends events_1.EventEmitter {
203
238
  // in subscriber primary mode, server side opens sub data channels.
204
239
  this.subscriber.pc.ondatachannel = this.handleDataChannel;
205
240
  }
206
- primaryPC.oniceconnectionstatechange = () => {
207
- if (primaryPC.iceConnectionState === 'connected') {
208
- logger_1.default.trace('ICE connected');
209
- if (!this.iceConnected) {
210
- this.iceConnected = true;
241
+ this.primaryPC = primaryPC;
242
+ primaryPC.onconnectionstatechange = () => {
243
+ if (primaryPC.connectionState === 'connected') {
244
+ logger_1.default.trace('pc connected');
245
+ if (!this.pcConnected) {
246
+ this.pcConnected = true;
211
247
  this.emit(events_2.EngineEvent.Connected);
212
248
  }
213
249
  getConnectedAddress(primaryPC).then((v) => {
214
250
  this.connectedServerAddr = v;
215
251
  });
216
252
  }
217
- else if (primaryPC.iceConnectionState === 'failed') {
253
+ else if (primaryPC.connectionState === 'failed') {
218
254
  // on Safari, PeerConnection will switch to 'disconnected' during renegotiation
219
- logger_1.default.trace('ICE disconnected');
220
- if (this.iceConnected) {
221
- this.iceConnected = false;
255
+ logger_1.default.trace('pc disconnected');
256
+ if (this.pcConnected) {
257
+ this.pcConnected = false;
222
258
  this.handleDisconnect('peerconnection');
223
259
  }
224
260
  }
@@ -281,49 +317,106 @@ class RTCEngine extends events_1.EventEmitter {
281
317
  delete this.pendingTrackResolvers[res.cid];
282
318
  resolve(res.track);
283
319
  };
320
+ this.client.onTokenRefresh = (token) => {
321
+ this.token = token;
322
+ };
284
323
  this.client.onClose = () => {
285
324
  this.handleDisconnect('signal');
286
325
  };
287
- this.client.onLeave = () => {
288
- this.emit(events_2.EngineEvent.Disconnected);
289
- this.close();
326
+ this.client.onLeave = (leave) => {
327
+ if (leave === null || leave === void 0 ? void 0 : leave.canReconnect) {
328
+ this.fullReconnect = true;
329
+ this.primaryPC = undefined;
330
+ }
331
+ else {
332
+ this.emit(events_2.EngineEvent.Disconnected);
333
+ this.close();
334
+ }
290
335
  };
291
336
  }
292
- reconnect() {
337
+ restartConnection() {
338
+ var _a, _b;
293
339
  return __awaiter(this, void 0, void 0, function* () {
294
- if (this.isClosed) {
295
- return;
296
- }
297
340
  if (!this.url || !this.token) {
298
- throw new errors_1.ConnectionError('could not reconnect, url or token not saved');
341
+ // permanent failure, don't attempt reconnection
342
+ throw new errors_1.UnexpectedConnectionState('could not reconnect, url or token not saved');
299
343
  }
300
- logger_1.default.info('reconnecting to signal connection, attempt', this.reconnectAttempts);
344
+ logger_1.default.info('reconnecting, attempt', this.reconnectAttempts);
301
345
  if (this.reconnectAttempts === 0) {
302
- this.emit(events_2.EngineEvent.Reconnecting);
346
+ this.emit(events_2.EngineEvent.Restarting);
347
+ }
348
+ this.primaryPC = undefined;
349
+ (_a = this.publisher) === null || _a === void 0 ? void 0 : _a.close();
350
+ this.publisher = undefined;
351
+ (_b = this.subscriber) === null || _b === void 0 ? void 0 : _b.close();
352
+ this.subscriber = undefined;
353
+ let joinResponse;
354
+ try {
355
+ joinResponse = yield this.join(this.url, this.token, this.signalOpts);
356
+ }
357
+ catch (e) {
358
+ throw new SignalReconnectError();
359
+ }
360
+ yield this.waitForPCConnected();
361
+ // reconnect success
362
+ this.emit(events_2.EngineEvent.Restarted, joinResponse);
363
+ });
364
+ }
365
+ resumeConnection() {
366
+ return __awaiter(this, void 0, void 0, function* () {
367
+ if (!this.url || !this.token) {
368
+ // permanent failure, don't attempt reconnection
369
+ throw new errors_1.UnexpectedConnectionState('could not reconnect, url or token not saved');
303
370
  }
304
- this.reconnectAttempts += 1;
305
- yield this.client.reconnect(this.url, this.token);
306
- this.emit(events_2.EngineEvent.SignalConnected);
307
371
  // trigger publisher reconnect
308
372
  if (!this.publisher || !this.subscriber) {
309
373
  throw new errors_1.UnexpectedConnectionState('publisher and subscriber connections unset');
310
374
  }
375
+ logger_1.default.info('resuming signal connection, attempt', this.reconnectAttempts);
376
+ if (this.reconnectAttempts === 0) {
377
+ this.emit(events_2.EngineEvent.Resuming);
378
+ }
379
+ try {
380
+ yield this.client.reconnect(this.url, this.token);
381
+ }
382
+ catch (e) {
383
+ throw new SignalReconnectError();
384
+ }
385
+ this.emit(events_2.EngineEvent.SignalResumed);
311
386
  this.subscriber.restartingIce = true;
312
387
  // only restart publisher if it's needed
313
388
  if (this.hasPublished) {
314
389
  yield this.publisher.createAndSendOffer({ iceRestart: true });
315
390
  }
391
+ yield this.waitForPCConnected();
392
+ // resume success
393
+ this.emit(events_2.EngineEvent.Resumed);
394
+ });
395
+ }
396
+ waitForPCConnected() {
397
+ var _a;
398
+ return __awaiter(this, void 0, void 0, function* () {
316
399
  const startTime = (new Date()).getTime();
317
- while ((new Date()).getTime() - startTime < exports.maxICEConnectTimeout * 2) {
318
- if (this.iceConnected) {
319
- // reconnect success
320
- this.emit(events_2.EngineEvent.Reconnected);
400
+ let now = startTime;
401
+ this.pcConnected = false;
402
+ while (now - startTime < exports.maxICEConnectTimeout) {
403
+ // if there is no connectionstatechange callback fired
404
+ // check connectionstate after minReconnectWait
405
+ if (this.primaryPC === undefined) {
406
+ // we can abort early, connection is hosed
407
+ break;
408
+ }
409
+ else if (now - startTime > minReconnectWait && ((_a = this.primaryPC) === null || _a === void 0 ? void 0 : _a.connectionState) === 'connected') {
410
+ this.pcConnected = true;
411
+ }
412
+ if (this.pcConnected) {
321
413
  return;
322
414
  }
323
415
  yield utils_1.sleep(100);
416
+ now = (new Date()).getTime();
324
417
  }
325
418
  // have not reconnected, throw
326
- throw new errors_1.ConnectionError('could not establish ICE connection');
419
+ throw new errors_1.ConnectionError('could not establish PC connection');
327
420
  });
328
421
  }
329
422
  /* @internal */
@@ -421,4 +514,6 @@ function getConnectedAddress(pc) {
421
514
  return candidates.get(selectedID);
422
515
  });
423
516
  }
517
+ class SignalReconnectError extends Error {
518
+ }
424
519
  //# sourceMappingURL=RTCEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RTCEngine.js","sourceRoot":"","sources":["../../src/room/RTCEngine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mCAAsC;AACtC,sDAAkE;AAClE,uDAA4B;AAC5B,4DAAiF;AACjF,sDAI8B;AAC9B,qCAAyF;AACzF,qCAAuC;AACvC,gEAAwC;AACxC,mCAAgC;AAEhC,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAClC,MAAM,mBAAmB,GAAG,WAAW,CAAC;AACxC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AACjB,QAAA,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC;AAE7C,gBAAgB;AAChB,MAAqB,SAAU,SAAQ,qBAAY;IAwCjD;QACE,KAAK,EAAE,CAAC;QAlCV,cAAS,GAAqB,EAAE,CAAC;QAYzB,sBAAiB,GAAY,KAAK,CAAC;QAEnC,iBAAY,GAAY,KAAK,CAAC;QAE9B,aAAQ,GAAY,IAAI,CAAC;QAEzB,0BAAqB,GAAiD,EAAE,CAAC;QAEjF,6DAA6D;QAC7D,gFAAgF;QACxE,iBAAY,GAAY,KAAK,CAAC;QAO9B,sBAAiB,GAAW,CAAC,CAAC;QAgO9B,sBAAiB,GAAG,CAAO,EAAE,OAAO,EAAuB,EAAE,EAAE;YACrE,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO;aACR;YACD,IAAI,OAAO,CAAC,KAAK,KAAK,mBAAmB,EAAE;gBACzC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;aAC9B;iBAAM,IAAI,OAAO,CAAC,KAAK,KAAK,gBAAgB,EAAE;gBAC7C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;aAC3B;iBAAM;gBACL,OAAO;aACR;YACD,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAC7C,CAAC,CAAA,CAAC;QAEM,sBAAiB,GAAG,CAAO,OAAqB,EAAE,EAAE;YAC1D,SAAS;YACT,IAAI,MAA+B,CAAC;YACpC,IAAI,OAAO,CAAC,IAAI,YAAY,WAAW,EAAE;gBACvC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;aACvB;iBAAM,IAAI,OAAO,CAAC,IAAI,YAAY,IAAI,EAAE;gBACvC,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;aAC3C;iBAAM;gBACL,gBAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBACjD,OAAO;aACR;YACD,MAAM,EAAE,GAAG,2BAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;YACrD,IAAI,EAAE,CAAC,OAAO,EAAE;gBACd,2BAA2B;gBAC3B,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,oBAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;aAClE;iBAAM,IAAI,EAAE,CAAC,IAAI,EAAE;gBAClB,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,kBAAkB,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;aAC7D;QACH,CAAC,CAAA,CAAC;QAEF,oFAAoF;QACpF,2EAA2E;QAC3E,iEAAiE;QACzD,qBAAgB,GAAG,CAAC,UAAkB,EAAE,EAAE;YAChD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,OAAO;aACR;YACD,gBAAG,CAAC,KAAK,CAAC,GAAG,UAAU,eAAe,CAAC,CAAC;YACxC,IAAI,IAAI,CAAC,iBAAiB,IAAI,mBAAmB,EAAE;gBACjD,gBAAG,CAAC,IAAI,CACN,mCAAmC,EACnC,mBAAmB,EACnB,qBAAqB,CACtB,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,YAAY,CAAC,CAAC;gBACpC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,OAAO;aACR;YAED,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC;YACtE,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,SAAS,EAAE;qBACb,IAAI,CAAC,GAAG,EAAE;oBACT,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC7B,CAAC,CAAC;qBACD,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAClC,CAAC,EAAE,KAAK,CAAC,CAAC;QACZ,CAAC,CAAC;QAvRA,IAAI,CAAC,MAAM,GAAG,IAAI,2BAAY,EAAE,CAAC;IACnC,CAAC;IAEK,IAAI,CAAC,GAAW,EAAE,KAAa,EAAE,IAAoB;;YACzD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YAEnB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,eAAe,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YAEtB,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC,iBAAiB,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;aAC9B;YAED,eAAe;YACf,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAC3B,IAAI,CAAC,SAAS,EAAE,CAAC;aAClB;YAED,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,cAAc,KAAK,QAAQ,EAAE;YACnE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;;gBAChD,IAAI;oBACF,MAAA,IAAI,CAAC,SAAS,0CAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;iBACxC;gBAAC,OAAO,CAAC,EAAE;oBACV,gBAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;iBACtC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;SAC5B;QACD,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;SAC7B;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,QAAQ,CAAC,GAAoB;QAC3B,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACvC,MAAM,IAAI,0BAAiB,CACzB,qDAAqD,CACtD,CAAC;SACH;QACD,OAAO,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE;YACxC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,QAAgB,EAAE,KAAc;QAC/C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,wBAAwB;;QAC1B,OAAO,MAAA,IAAI,CAAC,aAAa,0CAAE,UAAU,CAAC;IACxC,CAAC;IAED,IAAI,sBAAsB;QACxB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAEO,SAAS,CAAC,YAA0B;QAC1C,qBAAqB;QACrB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;YACrC,OAAO;SACR;QAED,oDAAoD;QACpD,IAAI,YAAY,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;YACzD,MAAM,aAAa,GAAmB,EAAE,CAAC;YACzC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBAC5C,MAAM,YAAY,GAAiB;oBACjC,IAAI,EAAE,SAAS,CAAC,IAAI;iBACrB,CAAC;gBACF,IAAI,SAAS,CAAC,QAAQ;oBAAE,YAAY,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;gBACnE,IAAI,SAAS,CAAC,UAAU,EAAE;oBAAE,YAAY,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;iBAAE;gBAC7E,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,aAAa,CAAC;SAC3C;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,cAAc,GAAG,CAAC,EAAE,EAAE,EAAE;YACxC,IAAI,CAAC,EAAE,CAAC,SAAS;gBAAE,OAAO;YAC1B,gBAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,0BAAY,CAAC,SAAS,CAAC,CAAC;QACrE,CAAC,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,cAAc,GAAG,CAAC,EAAE,EAAE,EAAE;YACzC,IAAI,CAAC,EAAE,CAAC,SAAS;gBAAE,OAAO;YAC1B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,0BAAY,CAAC,UAAU,CAAC,CAAC;QACtE,CAAC,CAAC;QAEF,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YACjC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,IAAI,YAAY,CAAC,iBAAiB,EAAE;YAClC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,mEAAmE;YACnE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC;SAC3D;QACD,SAAS,CAAC,0BAA0B,GAAG,GAAG,EAAE;YAC1C,IAAI,SAAS,CAAC,kBAAkB,KAAK,WAAW,EAAE;gBAChD,gBAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;oBACzB,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,SAAS,CAAC,CAAC;iBAClC;gBACD,mBAAmB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC;aACJ;iBAAM,IAAI,SAAS,CAAC,kBAAkB,KAAK,QAAQ,EAAE;gBACpD,+EAA+E;gBAC/E,gBAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBAC9B,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;oBAE1B,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;iBACzC;aACF;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAiB,EAAE,EAAE;YACjD,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,eAAe,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC/E,CAAC,CAAC;QAEF,gBAAgB;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,EAAE;YACnE,sCAAsC;YACtC,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,CAAC;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,iBAAiB,CAAC,mBAAmB,EAAE;YACzE,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,yEAAyE;QACzE,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAEnD,6BAA6B;QAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAO,EAAE,EAAE,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,OAAO;aACR;YACD,gBAAG,CAAC,KAAK,CACP,wBAAwB,EACxB,EAAE,CAAC,IAAI,EACP,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,cAAc,CACjC,CAAC;YACF,MAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAChD,CAAC,CAAA,CAAC;QAEF,2BAA2B;QAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE;YAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACvC,OAAO;aACR;YACD,gBAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC5D,IAAI,MAAM,KAAK,0BAAY,CAAC,SAAS,EAAE;gBACrC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;aAC3C;iBAAM;gBACL,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;aAC5C;QACH,CAAC,CAAC;QAEF,8CAA8C;QAC9C,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAO,EAAE,EAAE,EAAE;YACjC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,OAAO;aACR;YACD,gBAAG,CAAC,KAAK,CACP,uBAAuB,EACvB,EAAE,CAAC,IAAI,EACP,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,cAAc,CAClC,CAAC;YACF,MAAM,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;YAE/C,mBAAmB;YACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;YACvD,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC,CAAA,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,qBAAqB,GAAG,CAAC,GAA2B,EAAE,EAAE;YAClE,gBAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,EAAE;gBACZ,gBAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;gBAClD,OAAO;aACR;YACD,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,KAAM,CAAC,CAAC;QACtB,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,YAAY,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC,CAAC;IACJ,CAAC;IAiEa,SAAS;;YACrB,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,OAAO;aACR;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBAC5B,MAAM,IAAI,wBAAe,CAAC,6CAA6C,CAAC,CAAC;aAC1E;YACD,gBAAG,CAAC,IAAI,CAAC,4CAA4C,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAE/E,IAAI,IAAI,CAAC,iBAAiB,KAAK,CAAC,EAAE;gBAChC,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,YAAY,CAAC,CAAC;aACrC;YACD,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;YAE5B,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAClD,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,eAAe,CAAC,CAAC;YAEvC,8BAA8B;YAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACvC,MAAM,IAAI,kCAAyB,CAAC,4CAA4C,CAAC,CAAC;aACnF;YACD,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;YAErC,wCAAwC;YACxC,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;aAC/D;YAED,MAAM,SAAS,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YAEzC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,SAAS,GAAG,4BAAoB,GAAG,CAAC,EAAE;gBACpE,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,oBAAoB;oBACpB,IAAI,CAAC,IAAI,CAAC,oBAAW,CAAC,WAAW,CAAC,CAAC;oBACnC,OAAO;iBACR;gBACD,MAAM,aAAK,CAAC,GAAG,CAAC,CAAC;aAClB;YAED,8BAA8B;YAC9B,MAAM,IAAI,wBAAe,CAAC,oCAAoC,CAAC,CAAC;QAClE,CAAC;KAAA;IAED,eAAe;IACT,cAAc,CAAC,MAAkB,EAAE,IAAqB;;YAC5D,MAAM,GAAG,GAAG,2BAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;YAE/C,yCAAyC;YACzC,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAE1C,IAAI,IAAI,KAAK,gCAAe,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE;gBAClD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACxB;iBAAM,IAAI,IAAI,KAAK,gCAAe,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC/D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC3B;QACH,CAAC;KAAA;IAEa,wBAAwB,CAAC,IAAqB;;;YAC1D,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAC3B,OAAO;aACR;YAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,wBAAe,CAAC,8BAA8B,CAAC,CAAC;aAC3D;YAED,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,kBAAkB,KAAK,UAAU,EAAE;gBACzF,oBAAoB;gBACpB,IAAI,CAAC,SAAS,EAAE,CAAC;aAClB;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,UAAU,MAAK,MAAM,EAAE;gBACxC,OAAO;aACR;YAED,qCAAqC;YACrC,MAAM,OAAO,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,4BAAoB,CAAC;YAC9D,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE;gBACvC,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,IAAI,CAAA,MAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,0CAAE,UAAU,MAAK,MAAM,EAAE;oBACzF,OAAO;iBACR;gBACD,MAAM,aAAK,CAAC,EAAE,CAAC,CAAC;aACjB;YAED,MAAM,IAAI,wBAAe,CAAC,mDAAmD,MAAA,IAAI,CAAC,SAAS,0CAAE,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;;KACvH;IAED,gBAAgB;IAChB,SAAS;QACP,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO;SACR;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;IAC7B,CAAC;IAEO,kBAAkB,CAAC,IAAqB;QAC9C,IAAI,IAAI,KAAK,gCAAe,CAAC,KAAK,EAAE;YAClC,OAAO,IAAI,CAAC,OAAO,CAAC;SACrB;QAAC,IAAI,IAAI,KAAK,gCAAe,CAAC,QAAQ,EAAE;YACvC,OAAO,IAAI,CAAC,UAAU,CAAC;SACxB;IACH,CAAC;CACF;AA7aD,4BA6aC;AAED,SAAe,mBAAmB,CAAC,EAAqB;;;QACtD,IAAI,uBAAuB,GAAG,EAAE,CAAC;QACjC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAoC,CAAC;QACnE,qBAAqB;QACrB,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC7C,MAAM,KAAK,GAAmB,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;QAClD,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClB,QAAQ,CAAC,CAAC,IAAI,EAAE;gBACd,KAAK,WAAW;oBACd,uBAAuB,GAAG,CAAC,CAAC,uBAAuB,CAAC;oBACpD,MAAM;gBACR,KAAK,gBAAgB;oBACnB,IAAI,uBAAuB,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,EAAE;wBAChD,uBAAuB,GAAG,CAAC,CAAC,EAAE,CAAC;qBAChC;oBACD,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;oBAC5B,MAAM;gBACR,KAAK,kBAAkB;oBACrB,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/C,MAAM;gBACR,QAAQ;aACT;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,uBAAuB,KAAK,EAAE,EAAE;YAClC,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,UAAU,GAAG,MAAA,cAAc,CAAC,GAAG,CAAC,uBAAuB,CAAC,0CAAE,iBAAiB,CAAC;QAClF,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;;CACnC"}
1
+ {"version":3,"file":"RTCEngine.js","sourceRoot":"","sources":["../../src/room/RTCEngine.ts"],"names":[],"mappings":"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"}
@@ -98,6 +98,8 @@ declare class Room extends EventEmitter {
98
98
  */
99
99
  switchActiveDevice(kind: MediaDeviceKind, deviceId: string): Promise<void>;
100
100
  private onTrackAdded;
101
+ private handleRestarting;
102
+ private handleRestarted;
101
103
  private handleDisconnect;
102
104
  private handleParticipantUpdates;
103
105
  private handleParticipantDisconnected;
@@ -114,6 +116,11 @@ declare class Room extends EventEmitter {
114
116
  private acquireAudioContext;
115
117
  private getOrCreateParticipant;
116
118
  private sendSyncState;
119
+ /**
120
+ * After resuming, we'll need to notify the server of the current
121
+ * subscription settings.
122
+ */
123
+ private updateSubscriptions;
117
124
  /** @internal */
118
125
  emit(event: string | symbol, ...args: any[]): boolean;
119
126
  }
package/dist/room/Room.js CHANGED
@@ -44,6 +44,7 @@ const LocalParticipant_1 = __importDefault(require("./participant/LocalParticipa
44
44
  const RemoteParticipant_1 = __importDefault(require("./participant/RemoteParticipant"));
45
45
  const RTCEngine_1 = __importStar(require("./RTCEngine"));
46
46
  const defaults_1 = require("./track/defaults");
47
+ const RemoteTrackPublication_1 = __importDefault(require("./track/RemoteTrackPublication"));
47
48
  const Track_1 = require("./track/Track");
48
49
  const utils_1 = require("./utils");
49
50
  var RoomState;
@@ -179,10 +180,42 @@ class Room extends events_1.EventEmitter {
179
180
  this.onBeforeUnload = () => {
180
181
  this.disconnect();
181
182
  };
183
+ this.handleRestarting = () => {
184
+ this.state = RoomState.Reconnecting;
185
+ this.emit(events_2.RoomEvent.Reconnecting);
186
+ // also unwind existing participants & existing subscriptions
187
+ for (const p of this.participants.values()) {
188
+ this.handleParticipantDisconnected(p.sid, p);
189
+ }
190
+ };
191
+ this.handleRestarted = (joinResponse) => __awaiter(this, void 0, void 0, function* () {
192
+ this.state = RoomState.Connected;
193
+ this.emit(events_2.RoomEvent.Reconnected);
194
+ // rehydrate participants
195
+ if (joinResponse.participant) {
196
+ // with a restart, the sid will have changed, we'll map our understanding to it
197
+ this.localParticipant.sid = joinResponse.participant.sid;
198
+ this.handleParticipantUpdates([joinResponse.participant]);
199
+ }
200
+ this.handleParticipantUpdates(joinResponse.otherParticipants);
201
+ // unpublish & republish tracks
202
+ const localPubs = [];
203
+ this.localParticipant.tracks.forEach((pub) => {
204
+ if (pub.track) {
205
+ localPubs.push(pub);
206
+ }
207
+ });
208
+ yield Promise.all(localPubs.map((pub) => __awaiter(this, void 0, void 0, function* () {
209
+ const track = pub.track;
210
+ this.localParticipant.unpublishTrack(track, false);
211
+ this.localParticipant.publishTrack(track, pub.options);
212
+ })));
213
+ });
182
214
  this.handleParticipantUpdates = (participantInfos) => {
183
215
  // handle changes to participant state, and send events
184
216
  participantInfos.forEach((info) => {
185
- if (info.sid === this.localParticipant.sid) {
217
+ if (info.sid === this.localParticipant.sid
218
+ || info.identity === this.localParticipant.identity) {
186
219
  this.localParticipant.updateInfo(info);
187
220
  return;
188
221
  }
@@ -348,33 +381,37 @@ class Room extends events_1.EventEmitter {
348
381
  }
349
382
  this.engine = new RTCEngine_1.default();
350
383
  this.engine.client.signalLatency = this.options.expSignalLatency;
351
- this.engine.on(events_2.EngineEvent.MediaTrackAdded, (mediaTrack, stream, receiver) => {
352
- this.onTrackAdded(mediaTrack, stream, receiver);
353
- });
354
- this.engine.on(events_2.EngineEvent.Disconnected, () => {
355
- this.handleDisconnect();
356
- });
357
384
  this.engine.client.onParticipantUpdate = this.handleParticipantUpdates;
358
385
  this.engine.client.onRoomUpdate = this.handleRoomUpdate;
359
386
  this.engine.client.onSpeakersChanged = this.handleSpeakersChanged;
360
387
  this.engine.client.onStreamStateUpdate = this.handleStreamStateUpdate;
361
388
  this.engine.client.onSubscriptionPermissionUpdate = this.handleSubscriptionPermissionUpdate;
362
- this.engine.on(events_2.EngineEvent.ActiveSpeakersUpdate, this.handleActiveSpeakersUpdate);
363
- this.engine.on(events_2.EngineEvent.DataPacketReceived, this.handleDataPacket);
364
- this.engine.on(events_2.EngineEvent.Reconnecting, () => {
389
+ this.engine.client.onConnectionQuality = this.handleConnectionQualityUpdate;
390
+ this.engine
391
+ .on(events_2.EngineEvent.MediaTrackAdded, (mediaTrack, stream, receiver) => {
392
+ this.onTrackAdded(mediaTrack, stream, receiver);
393
+ })
394
+ .on(events_2.EngineEvent.Disconnected, () => {
395
+ this.handleDisconnect();
396
+ })
397
+ .on(events_2.EngineEvent.ActiveSpeakersUpdate, this.handleActiveSpeakersUpdate)
398
+ .on(events_2.EngineEvent.DataPacketReceived, this.handleDataPacket)
399
+ .on(events_2.EngineEvent.Resuming, () => {
365
400
  this.state = RoomState.Reconnecting;
366
401
  this.emit(events_2.RoomEvent.Reconnecting);
367
- });
368
- this.engine.on(events_2.EngineEvent.Reconnected, () => {
402
+ })
403
+ .on(events_2.EngineEvent.Resumed, () => {
369
404
  this.state = RoomState.Connected;
370
405
  this.emit(events_2.RoomEvent.Reconnected);
371
- });
372
- this.engine.on(events_2.EngineEvent.SignalConnected, () => {
406
+ this.updateSubscriptions();
407
+ })
408
+ .on(events_2.EngineEvent.SignalResumed, () => {
373
409
  if (this.state === RoomState.Reconnecting) {
374
410
  this.sendSyncState();
375
411
  }
376
- });
377
- this.engine.client.onConnectionQuality = this.handleConnectionQualityUpdate;
412
+ })
413
+ .on(events_2.EngineEvent.Restarting, this.handleRestarting)
414
+ .on(events_2.EngineEvent.Restarted, this.handleRestarted);
378
415
  }
379
416
  /**
380
417
  * getLocalDevices abstracts navigator.mediaDevices.enumerateDevices.
@@ -666,6 +703,19 @@ class Room extends events_1.EventEmitter {
666
703
  publishTracks: this.localParticipant.publishedTracksInfo(),
667
704
  });
668
705
  }
706
+ /**
707
+ * After resuming, we'll need to notify the server of the current
708
+ * subscription settings.
709
+ */
710
+ updateSubscriptions() {
711
+ for (const p of this.participants.values()) {
712
+ for (const pub of p.videoTracks.values()) {
713
+ if (pub.isSubscribed && pub instanceof RemoteTrackPublication_1.default) {
714
+ pub.emitTrackUpdate();
715
+ }
716
+ }
717
+ }
718
+ }
669
719
  /** @internal */
670
720
  emit(event, ...args) {
671
721
  logger_1.default.debug('room event', event, ...args);
@@ -1 +1 @@
1
- {"version":3,"file":"Room.js","sourceRoot":"","sources":["../../src/room/Room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Room.js","sourceRoot":"","sources":["../../src/room/Room.ts"],"names":[],"mappings":"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"}
@@ -325,9 +325,11 @@ export declare enum ParticipantEvent {
325
325
  export declare enum EngineEvent {
326
326
  Connected = "connected",
327
327
  Disconnected = "disconnected",
328
- Reconnecting = "reconnecting",
329
- Reconnected = "reconnected",
330
- SignalConnected = "singalConnected",
328
+ Resuming = "resuming",
329
+ Resumed = "resumed",
330
+ Restarting = "restarting",
331
+ Restarted = "restarted",
332
+ SignalResumed = "signalResumed",
331
333
  MediaTrackAdded = "mediaTrackAdded",
332
334
  ActiveSpeakersUpdate = "activeSpeakersUpdate",
333
335
  DataPacketReceived = "dataPacketReceived"
@@ -332,9 +332,11 @@ var EngineEvent;
332
332
  (function (EngineEvent) {
333
333
  EngineEvent["Connected"] = "connected";
334
334
  EngineEvent["Disconnected"] = "disconnected";
335
- EngineEvent["Reconnecting"] = "reconnecting";
336
- EngineEvent["Reconnected"] = "reconnected";
337
- EngineEvent["SignalConnected"] = "singalConnected";
335
+ EngineEvent["Resuming"] = "resuming";
336
+ EngineEvent["Resumed"] = "resumed";
337
+ EngineEvent["Restarting"] = "restarting";
338
+ EngineEvent["Restarted"] = "restarted";
339
+ EngineEvent["SignalResumed"] = "signalResumed";
338
340
  EngineEvent["MediaTrackAdded"] = "mediaTrackAdded";
339
341
  EngineEvent["ActiveSpeakersUpdate"] = "activeSpeakersUpdate";
340
342
  EngineEvent["DataPacketReceived"] = "dataPacketReceived";
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/room/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/room/events.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACH,IAAY,SAkNX;AAlND,WAAY,SAAS;IACnB;;;OAGG;IACH,0CAA6B,CAAA;IAE7B;;OAEG;IACH,wCAA2B,CAAA;IAE3B;;;OAGG;IACH,0CAA6B,CAAA;IAE7B;;OAEG;IACH,wDAA2C,CAAA;IAE3C;;;;;;OAMG;IACH,0DAA6C,CAAA;IAE7C;;;;;OAKG;IACH,gEAAmD,CAAA;IAEnD;;;;;;;;OAQG;IACH,8CAAiC,CAAA;IAEjC;;;;;OAKG;IACH,gDAAmC,CAAA;IAEnC;;;;OAIG;IACH,gEAAmD,CAAA;IAEnD;;;;OAIG;IACH,kDAAqC,CAAA;IAErC;;;;;OAKG;IACH,oDAAuC,CAAA;IAEvC;;;;OAIG;IACH,sCAAyB,CAAA;IAEzB;;;;OAIG;IACH,0CAA6B,CAAA;IAE7B;;;;;OAKG;IACH,wDAA2C,CAAA;IAE3C;;;;;;;;OAQG;IACH,4DAA+C,CAAA;IAE/C;;;;;;;OAOG;IACH,4DAA+C,CAAA;IAE/C;;;OAGG;IACH,gDAAmC,CAAA;IAEnC;;;;;;;;OAQG;IACH,sEAAyD,CAAA;IAEzD;;;;;;;OAOG;IACH,wDAA2C,CAAA;IAE3C;;;;;;OAMG;IACH,0CAA6B,CAAA;IAE7B;;;;;;OAMG;IACH,kEAAqD,CAAA;IAErD;;;;;;;;;OASG;IACH,gEAAmD,CAAA;IAEnD;;;;;;;;;OASG;IACH,sFAAyE,CAAA;IAEzE;;;;OAIG;IACH,gEAAmD,CAAA;IAEnD;;;;;;;;OAQG;IACH,oDAAuC,CAAA;AACzC,CAAC,EAlNW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAkNpB;AAED,IAAY,gBA+IX;AA/ID,WAAY,gBAAgB;IAC1B;;;;;;;;OAQG;IACH,qDAAiC,CAAA;IAEjC;;;;;OAKG;IACH,uDAAmC,CAAA;IAEnC;;;;OAIG;IACH,uEAAmD,CAAA;IAEnD;;;;OAIG;IACH,yDAAqC,CAAA;IAErC;;;;;OAKG;IACH,2DAAuC,CAAA;IAEvC;;;;OAIG;IACH,6CAAyB,CAAA;IAEzB;;;;OAIG;IACH,iDAA6B,CAAA;IAE7B;;;;;OAKG;IACH,+DAA2C,CAAA;IAE3C;;;;;;;;OAQG;IACH,mEAA+C,CAAA;IAE/C;;;OAGG;IACH,uDAAmC,CAAA;IAEnC;;;;;;;;;OASG;IACH,6EAAyD,CAAA;IAEzD;;;;;;OAMG;IACH,iDAA6B,CAAA;IAE7B;;;;OAIG;IACH,2DAAuC,CAAA;IAEvC;;;;;;OAMG;IACH,yEAAqD,CAAA;IAErD;;;;;;;;OAQG;IACH,uEAAmD,CAAA;IAEnD;;;;;;;;OAQG;IACH,6FAAyE,CAAA;IAEzE,iCAAiC;IACjC,gBAAgB;IAChB,2DAAuC,CAAA;AACzC,CAAC,EA/IW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QA+I3B;AAED,gBAAgB;AAChB,IAAY,WAWX;AAXD,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,4CAA6B,CAAA;IAC7B,oCAAqB,CAAA;IACrB,kCAAmB,CAAA;IACnB,wCAAyB,CAAA;IACzB,sCAAuB,CAAA;IACvB,8CAA+B,CAAA;IAC/B,kDAAmC,CAAA;IACnC,4DAA6C,CAAA;IAC7C,wDAAyC,CAAA;AAC3C,CAAC,EAXW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAWtB;AAED,IAAY,UAiBX;AAjBD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,6BAAe,CAAA;IACf,iCAAmB,CAAA;IACnB,6BAAe,CAAA;IACf,gBAAgB;IAChB,+CAAiC,CAAA;IACjC,gBAAgB;IAChB,uDAAyC,CAAA;IACzC,gBAAgB;IAChB,2DAA6C,CAAA;IAC7C,gBAAgB;IAChB,yDAA2C,CAAA;IAC3C,gBAAgB;IAChB,qDAAuC,CAAA;IACvC,gBAAgB;IAChB,+DAAiD,CAAA;AACnD,CAAC,EAjBW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAiBrB"}