@webex/plugin-meetings 3.12.0-next.6 → 3.12.0-next.7

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.
@@ -679,8 +679,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
679
679
  * @returns {null}
680
680
  */
681
681
  (0, _defineProperty3.default)(_this, "handleLLMOnline", function () {
682
- // @ts-ignore
683
- _this.webex.internal.llm.off('online', _this.handleLLMOnline);
682
+ _this.restoreLLMSubscriptionsIfNeeded();
684
683
  _triggerProxy.default.trigger(_this, {
685
684
  file: 'meeting/index',
686
685
  function: 'handleLLMOnline'
@@ -4325,44 +4324,34 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4325
4324
  });
4326
4325
  _this19.updateLLMConnection();
4327
4326
  });
4328
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, /*#__PURE__*/function () {
4329
- var _ref37 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee1(payload) {
4330
- var _this19$rtcMetrics;
4331
- return _regenerator.default.wrap(function (_context1) {
4332
- while (1) switch (_context1.prev = _context1.next) {
4333
- case 0:
4334
- _this19.stopKeepAlive();
4335
- if (payload) {
4336
- _triggerProxy.default.trigger(_this19, {
4337
- file: 'meeting/index',
4338
- function: 'setUpLocusInfoSelfListener'
4339
- }, _constants.EVENT_TRIGGERS.MEETING_SELF_GUEST_ADMITTED, {
4340
- payload: payload
4341
- });
4327
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, function (payload) {
4328
+ var _this19$rtcMetrics;
4329
+ _this19.stopKeepAlive();
4330
+ if (payload) {
4331
+ _triggerProxy.default.trigger(_this19, {
4332
+ file: 'meeting/index',
4333
+ function: 'setUpLocusInfoSelfListener'
4334
+ }, _constants.EVENT_TRIGGERS.MEETING_SELF_GUEST_ADMITTED, {
4335
+ payload: payload
4336
+ });
4342
4337
 
4343
- // @ts-ignore
4344
- _this19.webex.internal.newMetrics.submitClientEvent({
4345
- name: 'client.lobby.exited',
4346
- options: {
4347
- meetingId: _this19.id
4348
- }
4349
- });
4350
- _metrics.default.sendBehavioralMetric(_constants2.default.GUEST_EXITED_LOBBY, {
4351
- correlation_id: _this19.correlationId
4352
- });
4353
- }
4354
- (_this19$rtcMetrics = _this19.rtcMetrics) === null || _this19$rtcMetrics === void 0 ? void 0 : _this19$rtcMetrics.sendNextMetrics();
4355
- _this19.updateLLMConnection();
4356
- case 1:
4357
- case "end":
4358
- return _context1.stop();
4338
+ // @ts-ignore
4339
+ _this19.webex.internal.newMetrics.submitClientEvent({
4340
+ name: 'client.lobby.exited',
4341
+ options: {
4342
+ meetingId: _this19.id
4359
4343
  }
4360
- }, _callee1);
4361
- }));
4362
- return function (_x9) {
4363
- return _ref37.apply(this, arguments);
4364
- };
4365
- }());
4344
+ });
4345
+ _metrics.default.sendBehavioralMetric(_constants2.default.GUEST_EXITED_LOBBY, {
4346
+ correlation_id: _this19.correlationId
4347
+ });
4348
+ }
4349
+ (_this19$rtcMetrics = _this19.rtcMetrics) === null || _this19$rtcMetrics === void 0 ? void 0 : _this19$rtcMetrics.sendNextMetrics();
4350
+ _this19.ensureDefaultDatachannelTokenAfterAdmit().catch(function (error) {
4351
+ _loggerProxy.default.logger.warn("Meeting:index#setUpLocusInfoSelfListener --> failed post-admit token prefetch flow: ".concat((error === null || error === void 0 ? void 0 : error.message) || String(error)));
4352
+ });
4353
+ _this19.updateLLMConnection();
4354
+ });
4366
4355
 
4367
4356
  // @ts-ignore - check if MEDIA_INACTIVITY exists
4368
4357
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_INACTIVITY, function () {
@@ -4482,49 +4471,49 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4482
4471
  }
4483
4472
  });
4484
4473
  this.locusInfo.on(_constants.EVENTS.DESTROY_MEETING, /*#__PURE__*/function () {
4485
- var _ref38 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee10(payload) {
4474
+ var _ref37 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee1(payload) {
4486
4475
  var _t9;
4487
- return _regenerator.default.wrap(function (_context10) {
4488
- while (1) switch (_context10.prev = _context10.next) {
4476
+ return _regenerator.default.wrap(function (_context1) {
4477
+ while (1) switch (_context1.prev = _context1.next) {
4489
4478
  case 0:
4490
4479
  if (!_this20.wirelessShare) {
4491
- _context10.next = 2;
4480
+ _context1.next = 2;
4492
4481
  break;
4493
4482
  }
4494
4483
  if (!_this20.mediaProperties.shareVideoStream) {
4495
- _context10.next = 1;
4484
+ _context1.next = 1;
4496
4485
  break;
4497
4486
  }
4498
- _context10.next = 1;
4487
+ _context1.next = 1;
4499
4488
  return _this20.setLocalShareVideoStream(undefined);
4500
4489
  case 1:
4501
4490
  if (!_this20.mediaProperties.shareAudioStream) {
4502
- _context10.next = 2;
4491
+ _context1.next = 2;
4503
4492
  break;
4504
4493
  }
4505
- _context10.next = 2;
4494
+ _context1.next = 2;
4506
4495
  return _this20.setLocalShareAudioStream(undefined);
4507
4496
  case 2:
4508
4497
  if (!payload.shouldLeave) {
4509
- _context10.next = 7;
4498
+ _context1.next = 7;
4510
4499
  break;
4511
4500
  }
4512
- _context10.prev = 3;
4513
- _context10.next = 4;
4501
+ _context1.prev = 3;
4502
+ _context1.next = 4;
4514
4503
  return _this20.leave({
4515
4504
  reason: payload.reason
4516
4505
  });
4517
4506
  case 4:
4518
4507
  _loggerProxy.default.logger.warn('Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. The meeting has been left, but has not been destroyed, you should see a later event for leave.');
4519
- _context10.next = 6;
4508
+ _context1.next = 6;
4520
4509
  break;
4521
4510
  case 5:
4522
- _context10.prev = 5;
4523
- _t9 = _context10["catch"](3);
4511
+ _context1.prev = 5;
4512
+ _t9 = _context1["catch"](3);
4524
4513
  // @ts-ignore
4525
4514
  _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this20, ", error: ").concat(_t9));
4526
4515
  case 6:
4527
- _context10.next = 8;
4516
+ _context1.next = 8;
4528
4517
  break;
4529
4518
  case 7:
4530
4519
  _loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> MEETING_REMOVED_REASON', payload.reason);
@@ -4538,12 +4527,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4538
4527
  });
4539
4528
  case 8:
4540
4529
  case "end":
4541
- return _context10.stop();
4530
+ return _context1.stop();
4542
4531
  }
4543
- }, _callee10, null, [[3, 5]]);
4532
+ }, _callee1, null, [[3, 5]]);
4544
4533
  }));
4545
- return function (_x0) {
4546
- return _ref38.apply(this, arguments);
4534
+ return function (_x9) {
4535
+ return _ref37.apply(this, arguments);
4547
4536
  };
4548
4537
  }());
4549
4538
  }
@@ -4661,31 +4650,31 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4661
4650
  }, {
4662
4651
  key: "beRightBack",
4663
4652
  value: (function () {
4664
- var _beRightBack = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee11(enabled) {
4653
+ var _beRightBack = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee10(enabled) {
4665
4654
  var _this22 = this;
4666
4655
  var errorMessage, error, _errorMessage, _error;
4667
- return _regenerator.default.wrap(function (_context11) {
4668
- while (1) switch (_context11.prev = _context11.next) {
4656
+ return _regenerator.default.wrap(function (_context10) {
4657
+ while (1) switch (_context10.prev = _context10.next) {
4669
4658
  case 0:
4670
4659
  if (this.isMultistream) {
4671
- _context11.next = 1;
4660
+ _context10.next = 1;
4672
4661
  break;
4673
4662
  }
4674
4663
  errorMessage = 'Meeting:index#beRightBack --> Not a multistream meeting';
4675
4664
  error = new Error(errorMessage);
4676
4665
  _loggerProxy.default.logger.error(error);
4677
- return _context11.abrupt("return", _promise.default.reject(error));
4666
+ return _context10.abrupt("return", _promise.default.reject(error));
4678
4667
  case 1:
4679
4668
  if (this.mediaProperties.webrtcMediaConnection) {
4680
- _context11.next = 2;
4669
+ _context10.next = 2;
4681
4670
  break;
4682
4671
  }
4683
4672
  _errorMessage = 'Meeting:index#beRightBack --> WebRTC media connection is not defined';
4684
4673
  _error = new Error(_errorMessage);
4685
4674
  _loggerProxy.default.logger.error(_error);
4686
- return _context11.abrupt("return", _promise.default.reject(_error));
4675
+ return _context10.abrupt("return", _promise.default.reject(_error));
4687
4676
  case 2:
4688
- return _context11.abrupt("return", this.brbState.enable(enabled, this.sendSlotManager).then(function () {
4677
+ return _context10.abrupt("return", this.brbState.enable(enabled, this.sendSlotManager).then(function () {
4689
4678
  if (_this22.audio && enabled) {
4690
4679
  // locus mutes the participant with brb enabled request,
4691
4680
  // so we need to explicitly update remote mute for correct logic flow
@@ -4696,11 +4685,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4696
4685
  }));
4697
4686
  case 3:
4698
4687
  case "end":
4699
- return _context11.stop();
4688
+ return _context10.stop();
4700
4689
  }
4701
- }, _callee11, this);
4690
+ }, _callee10, this);
4702
4691
  }));
4703
- function beRightBack(_x1) {
4692
+ function beRightBack(_x0) {
4704
4693
  return _beRightBack.apply(this, arguments);
4705
4694
  }
4706
4695
  return beRightBack;
@@ -5373,11 +5362,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5373
5362
  }, {
5374
5363
  key: "setLocalAudioStream",
5375
5364
  value: (function () {
5376
- var _setLocalAudioStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee12(localStream) {
5365
+ var _setLocalAudioStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee11(localStream) {
5377
5366
  var _this$audio2;
5378
5367
  var oldStream;
5379
- return _regenerator.default.wrap(function (_context12) {
5380
- while (1) switch (_context12.prev = _context12.next) {
5368
+ return _regenerator.default.wrap(function (_context11) {
5369
+ while (1) switch (_context11.prev = _context11.next) {
5381
5370
  case 0:
5382
5371
  oldStream = this.mediaProperties.audioStream;
5383
5372
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localAudioStreamMuteStateHandler);
@@ -5391,21 +5380,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5391
5380
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.localAudioStreamMuteStateHandler);
5392
5381
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5393
5382
  if (!(!this.isMultistream || !localStream)) {
5394
- _context12.next = 1;
5383
+ _context11.next = 1;
5395
5384
  break;
5396
5385
  }
5397
- _context12.next = 1;
5386
+ _context11.next = 1;
5398
5387
  return this.unpublishStream(_internalMediaCore.MediaType.AudioMain, oldStream);
5399
5388
  case 1:
5400
- _context12.next = 2;
5389
+ _context11.next = 2;
5401
5390
  return this.publishStream(_internalMediaCore.MediaType.AudioMain, this.mediaProperties.audioStream);
5402
5391
  case 2:
5403
5392
  case "end":
5404
- return _context12.stop();
5393
+ return _context11.stop();
5405
5394
  }
5406
- }, _callee12, this);
5395
+ }, _callee11, this);
5407
5396
  }));
5408
- function setLocalAudioStream(_x10) {
5397
+ function setLocalAudioStream(_x1) {
5409
5398
  return _setLocalAudioStream.apply(this, arguments);
5410
5399
  }
5411
5400
  return setLocalAudioStream;
@@ -5421,11 +5410,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5421
5410
  }, {
5422
5411
  key: "setLocalVideoStream",
5423
5412
  value: (function () {
5424
- var _setLocalVideoStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee13(localStream) {
5413
+ var _setLocalVideoStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee12(localStream) {
5425
5414
  var _this$video2;
5426
5415
  var oldStream;
5427
- return _regenerator.default.wrap(function (_context13) {
5428
- while (1) switch (_context13.prev = _context13.next) {
5416
+ return _regenerator.default.wrap(function (_context12) {
5417
+ while (1) switch (_context12.prev = _context12.next) {
5429
5418
  case 0:
5430
5419
  oldStream = this.mediaProperties.videoStream;
5431
5420
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localVideoStreamMuteStateHandler);
@@ -5441,21 +5430,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5441
5430
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5442
5431
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.ConstraintsChange, this.localConstraintsChangeHandler);
5443
5432
  if (!(!this.isMultistream || !localStream)) {
5444
- _context13.next = 1;
5433
+ _context12.next = 1;
5445
5434
  break;
5446
5435
  }
5447
- _context13.next = 1;
5436
+ _context12.next = 1;
5448
5437
  return this.unpublishStream(_internalMediaCore.MediaType.VideoMain, oldStream);
5449
5438
  case 1:
5450
- _context13.next = 2;
5439
+ _context12.next = 2;
5451
5440
  return this.publishStream(_internalMediaCore.MediaType.VideoMain, this.mediaProperties.videoStream);
5452
5441
  case 2:
5453
5442
  case "end":
5454
- return _context13.stop();
5443
+ return _context12.stop();
5455
5444
  }
5456
- }, _callee13, this);
5445
+ }, _callee12, this);
5457
5446
  }));
5458
- function setLocalVideoStream(_x11) {
5447
+ function setLocalVideoStream(_x10) {
5459
5448
  return _setLocalVideoStream.apply(this, arguments);
5460
5449
  }
5461
5450
  return setLocalVideoStream;
@@ -5472,10 +5461,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5472
5461
  }, {
5473
5462
  key: "setLocalShareVideoStream",
5474
5463
  value: (function () {
5475
- var _setLocalShareVideoStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee14(localDisplayStream) {
5464
+ var _setLocalShareVideoStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee13(localDisplayStream) {
5476
5465
  var oldStream;
5477
- return _regenerator.default.wrap(function (_context14) {
5478
- while (1) switch (_context14.prev = _context14.next) {
5466
+ return _regenerator.default.wrap(function (_context13) {
5467
+ while (1) switch (_context13.prev = _context13.next) {
5479
5468
  case 0:
5480
5469
  oldStream = this.mediaProperties.shareVideoStream;
5481
5470
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.handleShareVideoStreamMuteStateChange);
@@ -5487,21 +5476,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5487
5476
  localDisplayStream === null || localDisplayStream === void 0 ? void 0 : localDisplayStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5488
5477
  this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareStream();
5489
5478
  if (!(!this.isMultistream || !localDisplayStream)) {
5490
- _context14.next = 1;
5479
+ _context13.next = 1;
5491
5480
  break;
5492
5481
  }
5493
- _context14.next = 1;
5482
+ _context13.next = 1;
5494
5483
  return this.unpublishStream(_internalMediaCore.MediaType.VideoSlides, oldStream);
5495
5484
  case 1:
5496
- _context14.next = 2;
5485
+ _context13.next = 2;
5497
5486
  return this.publishStream(_internalMediaCore.MediaType.VideoSlides, this.mediaProperties.shareVideoStream);
5498
5487
  case 2:
5499
5488
  case "end":
5500
- return _context14.stop();
5489
+ return _context13.stop();
5501
5490
  }
5502
- }, _callee14, this);
5491
+ }, _callee13, this);
5503
5492
  }));
5504
- function setLocalShareVideoStream(_x12) {
5493
+ function setLocalShareVideoStream(_x11) {
5505
5494
  return _setLocalShareVideoStream.apply(this, arguments);
5506
5495
  }
5507
5496
  return setLocalShareVideoStream;
@@ -5517,10 +5506,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5517
5506
  }, {
5518
5507
  key: "setLocalShareAudioStream",
5519
5508
  value: (function () {
5520
- var _setLocalShareAudioStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee15(localSystemAudioStream) {
5509
+ var _setLocalShareAudioStream = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee14(localSystemAudioStream) {
5521
5510
  var oldStream;
5522
- return _regenerator.default.wrap(function (_context15) {
5523
- while (1) switch (_context15.prev = _context15.next) {
5511
+ return _regenerator.default.wrap(function (_context14) {
5512
+ while (1) switch (_context14.prev = _context14.next) {
5524
5513
  case 0:
5525
5514
  oldStream = this.mediaProperties.shareAudioStream;
5526
5515
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.Ended, this.handleShareAudioStreamEnded);
@@ -5530,21 +5519,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5530
5519
  localSystemAudioStream === null || localSystemAudioStream === void 0 ? void 0 : localSystemAudioStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5531
5520
  this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareStream();
5532
5521
  if (!(!this.isMultistream || !localSystemAudioStream)) {
5533
- _context15.next = 1;
5522
+ _context14.next = 1;
5534
5523
  break;
5535
5524
  }
5536
- _context15.next = 1;
5525
+ _context14.next = 1;
5537
5526
  return this.unpublishStream(_internalMediaCore.MediaType.AudioSlides, oldStream);
5538
5527
  case 1:
5539
- _context15.next = 2;
5528
+ _context14.next = 2;
5540
5529
  return this.publishStream(_internalMediaCore.MediaType.AudioSlides, this.mediaProperties.shareAudioStream);
5541
5530
  case 2:
5542
5531
  case "end":
5543
- return _context15.stop();
5532
+ return _context14.stop();
5544
5533
  }
5545
- }, _callee15, this);
5534
+ }, _callee14, this);
5546
5535
  }));
5547
- function setLocalShareAudioStream(_x13) {
5536
+ function setLocalShareAudioStream(_x12) {
5548
5537
  return _setLocalShareAudioStream.apply(this, arguments);
5549
5538
  }
5550
5539
  return setLocalShareAudioStream;
@@ -5983,7 +5972,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5983
5972
  }, {
5984
5973
  key: "joinWithMedia",
5985
5974
  value: (function () {
5986
- var _joinWithMedia = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee16() {
5975
+ var _joinWithMedia = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee15() {
5987
5976
  var _this30 = this;
5988
5977
  var options,
5989
5978
  mediaOptions,
@@ -6006,20 +5995,20 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6006
5995
  shouldRetry,
6007
5996
  _error2,
6008
5997
  _error3,
6009
- _args16 = arguments,
5998
+ _args15 = arguments,
6010
5999
  _t0,
6011
6000
  _t1;
6012
- return _regenerator.default.wrap(function (_context16) {
6013
- while (1) switch (_context16.prev = _context16.next) {
6001
+ return _regenerator.default.wrap(function (_context15) {
6002
+ while (1) switch (_context15.prev = _context15.next) {
6014
6003
  case 0:
6015
- options = _args16.length > 0 && _args16[0] !== undefined ? _args16[0] : {};
6004
+ options = _args15.length > 0 && _args15[0] !== undefined ? _args15[0] : {};
6016
6005
  mediaOptions = options.mediaOptions, _options$joinOptions = options.joinOptions, joinOptions = _options$joinOptions === void 0 ? {} : _options$joinOptions;
6017
6006
  _this$joinWithMediaRe = this.joinWithMediaRetryInfo, isRetry = _this$joinWithMediaRe.isRetry, prevJoinResponse = _this$joinWithMediaRe.prevJoinResponse;
6018
6007
  if (mediaOptions !== null && mediaOptions !== void 0 && mediaOptions.allowMediaInLobby) {
6019
- _context16.next = 1;
6008
+ _context15.next = 1;
6020
6009
  break;
6021
6010
  }
6022
- return _context16.abrupt("return", _promise.default.reject(new _parameter.default('joinWithMedia() can only be used with allowMediaInLobby set to true')));
6011
+ return _context15.abrupt("return", _promise.default.reject(new _parameter.default('joinWithMedia() can only be used with allowMediaInLobby set to true')));
6023
6012
  case 1:
6024
6013
  this.allowMediaInLobby = true;
6025
6014
  _loggerProxy.default.logger.info('Meeting:index#joinWithMedia called');
@@ -6031,39 +6020,39 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6031
6020
  in case WebRTC is not available at all.
6032
6021
  */
6033
6022
  if (!(_webCapabilities.WebCapabilities.supportsRTCPeerConnection() === _webCapabilities.CapabilityState.NOT_CAPABLE)) {
6034
- _context16.next = 2;
6023
+ _context15.next = 2;
6035
6024
  break;
6036
6025
  }
6037
6026
  throw new _internalMediaCore.Errors.WebrtcApiNotAvailableError('RTCPeerConnection API is not available in this environment');
6038
6027
  case 2:
6039
- _context16.prev = 2;
6028
+ _context15.prev = 2;
6040
6029
  forceTurnDiscovery = false;
6041
6030
  if (joinResponse) {
6042
- _context16.next = 7;
6031
+ _context15.next = 7;
6043
6032
  break;
6044
6033
  }
6045
- _context16.next = 3;
6034
+ _context15.next = 3;
6046
6035
  return this.roap.generateTurnDiscoveryRequestMessage(this, true);
6047
6036
  case 3:
6048
- turnDiscoveryRequest = _context16.sent;
6037
+ turnDiscoveryRequest = _context15.sent;
6049
6038
  turnDiscoverySkippedReason = turnDiscoveryRequest.turnDiscoverySkippedReason;
6050
6039
  joinOptions.roapMessage = turnDiscoveryRequest.roapMessage;
6051
6040
  _loggerProxy.default.logger.info('Meeting:index#joinWithMedia ---> calling join with joinOptions, ', joinOptions);
6052
- _context16.next = 4;
6041
+ _context15.next = 4;
6053
6042
  return this.join(joinOptions);
6054
6043
  case 4:
6055
- joinResponse = _context16.sent;
6044
+ joinResponse = _context15.sent;
6056
6045
  joined = true;
6057
6046
 
6058
6047
  // if we sent out TURN discovery Roap message with join, process the TURN discovery response
6059
6048
  if (!joinOptions.roapMessage) {
6060
- _context16.next = 6;
6049
+ _context15.next = 6;
6061
6050
  break;
6062
6051
  }
6063
- _context16.next = 5;
6052
+ _context15.next = 5;
6064
6053
  return this.roap.handleTurnDiscoveryHttpResponse(this, joinResponse);
6065
6054
  case 5:
6066
- _yield$this$roap$hand = _context16.sent;
6055
+ _yield$this$roap$hand = _context15.sent;
6067
6056
  turnServerInfo = _yield$this$roap$hand.turnServerInfo;
6068
6057
  turnDiscoverySkippedReason = _yield$this$roap$hand.turnDiscoverySkippedReason;
6069
6058
  this.turnDiscoverySkippedReason = turnDiscoverySkippedReason;
@@ -6072,7 +6061,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6072
6061
  this.roap.abortTurnDiscovery();
6073
6062
  }
6074
6063
  case 6:
6075
- _context16.next = 8;
6064
+ _context15.next = 8;
6076
6065
  break;
6077
6066
  case 7:
6078
6067
  // This is a retry, when join succeeded but addMedia failed, so we'll just call addMedia() again,
@@ -6080,24 +6069,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6080
6069
  forceTurnDiscovery = true;
6081
6070
  joined = true;
6082
6071
  case 8:
6083
- _context16.next = 9;
6072
+ _context15.next = 9;
6084
6073
  return this.addMediaInternal(function () {
6085
6074
  return _this30.joinWithMediaRetryInfo.isRetry ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
6086
6075
  }, turnServerInfo, forceTurnDiscovery, mediaOptions);
6087
6076
  case 9:
6088
- mediaResponse = _context16.sent;
6077
+ mediaResponse = _context15.sent;
6089
6078
  this.joinWithMediaRetryInfo = {
6090
6079
  isRetry: false,
6091
6080
  prevJoinResponse: undefined
6092
6081
  };
6093
- return _context16.abrupt("return", {
6082
+ return _context15.abrupt("return", {
6094
6083
  join: joinResponse,
6095
6084
  media: mediaResponse,
6096
6085
  multistreamEnabled: this.isMultistream
6097
6086
  });
6098
6087
  case 10:
6099
- _context16.prev = 10;
6100
- _t0 = _context16["catch"](2);
6088
+ _context15.prev = 10;
6089
+ _t0 = _context15["catch"](2);
6101
6090
  _loggerProxy.default.logger.error('Meeting:index#joinWithMedia --> ', _t0);
6102
6091
  this.roap.abortTurnDiscovery();
6103
6092
 
@@ -6124,21 +6113,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6124
6113
 
6125
6114
  // we only want to call leave if join was successful and this was a retry or we won't be doing any more retries
6126
6115
  if (!(joined && (isRetry || !shouldRetry))) {
6127
- _context16.next = 14;
6116
+ _context15.next = 14;
6128
6117
  break;
6129
6118
  }
6130
- _context16.prev = 11;
6131
- _context16.next = 12;
6119
+ _context15.prev = 11;
6120
+ _context15.next = 12;
6132
6121
  return this.leave({
6133
6122
  resourceId: joinOptions === null || joinOptions === void 0 ? void 0 : joinOptions.resourceId,
6134
6123
  reason: 'joinWithMedia failure'
6135
6124
  });
6136
6125
  case 12:
6137
- _context16.next = 14;
6126
+ _context15.next = 14;
6138
6127
  break;
6139
6128
  case 13:
6140
- _context16.prev = 13;
6141
- _t1 = _context16["catch"](11);
6129
+ _context15.prev = 13;
6130
+ _t1 = _context15["catch"](11);
6142
6131
  _loggerProxy.default.logger.error('Meeting:index#joinWithMedia --> leave error', _t1);
6143
6132
  leaveError = _t1;
6144
6133
  case 14:
@@ -6154,13 +6143,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6154
6143
  type: _t0.name
6155
6144
  });
6156
6145
  if (!shouldRetry) {
6157
- _context16.next = 15;
6146
+ _context15.next = 15;
6158
6147
  break;
6159
6148
  }
6160
6149
  _loggerProxy.default.logger.warn('Meeting:index#joinWithMedia --> retrying call to joinWithMedia');
6161
6150
  this.joinWithMediaRetryInfo.isRetry = true;
6162
6151
  this.joinWithMediaRetryInfo.prevJoinResponse = joinResponse;
6163
- return _context16.abrupt("return", this.joinWithMedia(options));
6152
+ return _context15.abrupt("return", this.joinWithMedia(options));
6164
6153
  case 15:
6165
6154
  this.joinWithMediaRetryInfo = {
6166
6155
  isRetry: false,
@@ -6169,9 +6158,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6169
6158
  throw _t0;
6170
6159
  case 16:
6171
6160
  case "end":
6172
- return _context16.stop();
6161
+ return _context15.stop();
6173
6162
  }
6174
- }, _callee16, this, [[2, 10], [11, 13]]);
6163
+ }, _callee15, this, [[2, 10], [11, 13]]);
6175
6164
  }));
6176
6165
  function joinWithMedia() {
6177
6166
  return _joinWithMedia.apply(this, arguments);
@@ -6201,20 +6190,20 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6201
6190
  return _promise.default.reject(new _parameter.default('Cannot reconnect, Media has not established to reconnect'));
6202
6191
  }
6203
6192
  this.cleanUpBeforeReconnection();
6204
- return this.reconnectionManager.reconnect(options, /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee17() {
6205
- return _regenerator.default.wrap(function (_context17) {
6206
- while (1) switch (_context17.prev = _context17.next) {
6193
+ return this.reconnectionManager.reconnect(options, /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee16() {
6194
+ return _regenerator.default.wrap(function (_context16) {
6195
+ while (1) switch (_context16.prev = _context16.next) {
6207
6196
  case 0:
6208
- _context17.next = 1;
6197
+ _context16.next = 1;
6209
6198
  return _this31.waitForRemoteSDPAnswer();
6210
6199
  case 1:
6211
- _context17.next = 2;
6200
+ _context16.next = 2;
6212
6201
  return _this31.waitForMediaConnectionConnected();
6213
6202
  case 2:
6214
6203
  case "end":
6215
- return _context17.stop();
6204
+ return _context16.stop();
6216
6205
  }
6217
- }, _callee17);
6206
+ }, _callee16);
6218
6207
  }))).then(function () {
6219
6208
  _loggerProxy.default.logger.log('Meeting:index#reconnect --> Meeting reconnect success');
6220
6209
  }).catch(function (error) {
@@ -6355,30 +6344,30 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6355
6344
  }, {
6356
6345
  key: "startTranscription",
6357
6346
  value: (function () {
6358
- var _startTranscription = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee18(options) {
6347
+ var _startTranscription = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee17(options) {
6359
6348
  var _t10;
6360
- return _regenerator.default.wrap(function (_context18) {
6361
- while (1) switch (_context18.prev = _context18.next) {
6349
+ return _regenerator.default.wrap(function (_context17) {
6350
+ while (1) switch (_context17.prev = _context17.next) {
6362
6351
  case 0:
6363
6352
  if (!this.isJoined()) {
6364
- _context18.next = 5;
6353
+ _context17.next = 5;
6365
6354
  break;
6366
6355
  }
6367
6356
  _loggerProxy.default.logger.info('Meeting:index#startTranscription --> Attempting to enable transcription!');
6368
- _context18.prev = 1;
6357
+ _context17.prev = 1;
6369
6358
  if (!this.areVoiceaEventsSetup) {
6370
6359
  this.setUpVoiceaListeners();
6371
6360
  }
6372
6361
 
6373
6362
  // @ts-ignore
6374
- _context18.next = 2;
6363
+ _context17.next = 2;
6375
6364
  return this.webex.internal.voicea.turnOnCaptions(options === null || options === void 0 ? void 0 : options.spokenLanguage);
6376
6365
  case 2:
6377
- _context18.next = 4;
6366
+ _context17.next = 4;
6378
6367
  break;
6379
6368
  case 3:
6380
- _context18.prev = 3;
6381
- _t10 = _context18["catch"](1);
6369
+ _context17.prev = 3;
6370
+ _t10 = _context17["catch"](1);
6382
6371
  _loggerProxy.default.logger.error("Meeting:index#startTranscription --> ".concat(_t10));
6383
6372
  _metrics.default.sendBehavioralMetric(_constants2.default.RECEIVE_TRANSCRIPTION_FAILURE, {
6384
6373
  correlation_id: this.correlationId,
@@ -6386,18 +6375,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6386
6375
  stack: _t10.stack
6387
6376
  });
6388
6377
  case 4:
6389
- _context18.next = 6;
6378
+ _context17.next = 6;
6390
6379
  break;
6391
6380
  case 5:
6392
6381
  _loggerProxy.default.logger.error("Meeting:index#startTranscription --> meeting joined : ".concat(this.isJoined()));
6393
6382
  throw new Error('Meeting is not joined');
6394
6383
  case 6:
6395
6384
  case "end":
6396
- return _context18.stop();
6385
+ return _context17.stop();
6397
6386
  }
6398
- }, _callee18, this, [[1, 3]]);
6387
+ }, _callee17, this, [[1, 3]]);
6399
6388
  }));
6400
- function startTranscription(_x14) {
6389
+ function startTranscription(_x13) {
6401
6390
  return _startTranscription.apply(this, arguments);
6402
6391
  }
6403
6392
  return startTranscription;
@@ -6443,6 +6432,31 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6443
6432
  function: 'triggerStopReceivingTranscriptionEvent'
6444
6433
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION);
6445
6434
  }
6435
+
6436
+ /**
6437
+ * Restores LLM subchannel subscriptions after reconnect when captions are active.
6438
+ * @returns {void}
6439
+ */
6440
+ }, {
6441
+ key: "restoreLLMSubscriptionsIfNeeded",
6442
+ value: function restoreLLMSubscriptionsIfNeeded() {
6443
+ try {
6444
+ var _this$webex$internal$, _this$webex$internal$2;
6445
+ // @ts-ignore
6446
+ var isCaptionBoxOn = (_this$webex$internal$ = this.webex.internal.voicea) === null || _this$webex$internal$ === void 0 ? void 0 : (_this$webex$internal$2 = _this$webex$internal$.getIsCaptionBoxOn) === null || _this$webex$internal$2 === void 0 ? void 0 : _this$webex$internal$2.call(_this$webex$internal$);
6447
+ if (!isCaptionBoxOn) {
6448
+ return;
6449
+ }
6450
+
6451
+ // @ts-ignore
6452
+ this.webex.internal.voicea.updateSubchannelSubscriptions({
6453
+ subscribe: ['transcription']
6454
+ });
6455
+ } catch (error) {
6456
+ var msg = (error === null || error === void 0 ? void 0 : error.message) || String(error);
6457
+ _loggerProxy.default.logger.warn("Meeting:index#restoreLLMSubscriptionsIfNeeded --> failed to restore subscriptions after LLM online: ".concat(msg));
6458
+ }
6459
+ }
6446
6460
  }, {
6447
6461
  key: "join",
6448
6462
  value: (
@@ -6459,7 +6473,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6459
6473
  * Scenario D: Joining any other way (sip, pstn, conversationUrl, link just need to specify resourceId)
6460
6474
  */
6461
6475
  function () {
6462
- var _join = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee19() {
6476
+ var _join = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee18() {
6463
6477
  var _this34 = this;
6464
6478
  var options,
6465
6479
  errorMessage,
@@ -6470,26 +6484,26 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6470
6484
  _error4,
6471
6485
  _errorMessage3,
6472
6486
  _error5,
6473
- _args19 = arguments,
6487
+ _args18 = arguments,
6474
6488
  _t11;
6475
- return _regenerator.default.wrap(function (_context19) {
6476
- while (1) switch (_context19.prev = _context19.next) {
6489
+ return _regenerator.default.wrap(function (_context18) {
6490
+ while (1) switch (_context18.prev = _context18.next) {
6477
6491
  case 0:
6478
- options = _args19.length > 0 && _args19[0] !== undefined ? _args19[0] : {};
6492
+ options = _args18.length > 0 && _args18[0] !== undefined ? _args18[0] : {};
6479
6493
  if (this.webex.meetings.registered) {
6480
- _context19.next = 1;
6494
+ _context18.next = 1;
6481
6495
  break;
6482
6496
  }
6483
6497
  errorMessage = 'Meeting:index#join --> Device not registered';
6484
6498
  error = new Error(errorMessage);
6485
6499
  _loggerProxy.default.logger.error(errorMessage);
6486
- return _context19.abrupt("return", _promise.default.reject(error));
6500
+ return _context18.abrupt("return", _promise.default.reject(error));
6487
6501
  case 1:
6488
6502
  if (!this.deferJoin) {
6489
- _context19.next = 2;
6503
+ _context18.next = 2;
6490
6504
  break;
6491
6505
  }
6492
- return _context19.abrupt("return", this.deferJoin);
6506
+ return _context18.abrupt("return", this.deferJoin);
6493
6507
  case 2:
6494
6508
  // Create a deferred promise for a consistent resolve value from utils.
6495
6509
  // This also prevents redundant API calls.
@@ -6541,15 +6555,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6541
6555
  this.wirelessShare = true;
6542
6556
  }
6543
6557
  if (!options.meetingQuality) {
6544
- _context19.next = 6;
6558
+ _context18.next = 6;
6545
6559
  break;
6546
6560
  }
6547
6561
  if (!(typeof options.meetingQuality === 'string')) {
6548
- _context19.next = 4;
6562
+ _context18.next = 4;
6549
6563
  break;
6550
6564
  }
6551
6565
  if (_constants.QUALITY_LEVELS[options.meetingQuality]) {
6552
- _context19.next = 3;
6566
+ _context18.next = 3;
6553
6567
  break;
6554
6568
  }
6555
6569
  _errorMessage2 = "Meeting:index#join --> ".concat(options.meetingQuality, " not defined");
@@ -6557,16 +6571,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6557
6571
  _loggerProxy.default.logger.error(_errorMessage2);
6558
6572
  joinFailed(_error4);
6559
6573
  this.deferJoin = undefined;
6560
- return _context19.abrupt("return", _promise.default.reject(_error4));
6574
+ return _context18.abrupt("return", _promise.default.reject(_error4));
6561
6575
  case 3:
6562
6576
  this.mediaProperties.setRemoteQualityLevel(options.meetingQuality);
6563
6577
  case 4:
6564
6578
  if (!((0, _typeof2.default)(options.meetingQuality) === 'object')) {
6565
- _context19.next = 6;
6579
+ _context18.next = 6;
6566
6580
  break;
6567
6581
  }
6568
6582
  if (_constants.QUALITY_LEVELS[options.meetingQuality.remote]) {
6569
- _context19.next = 5;
6583
+ _context18.next = 5;
6570
6584
  break;
6571
6585
  }
6572
6586
  _errorMessage3 = "Meeting:index#join --> ".concat(options.meetingQuality.remote, " not defined");
@@ -6574,25 +6588,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6574
6588
  _error5 = new Error(_errorMessage3);
6575
6589
  joinFailed(_error5);
6576
6590
  this.deferJoin = undefined;
6577
- return _context19.abrupt("return", _promise.default.reject(new Error(_errorMessage3)));
6591
+ return _context18.abrupt("return", _promise.default.reject(new Error(_errorMessage3)));
6578
6592
  case 5:
6579
6593
  if (options.meetingQuality.remote) {
6580
6594
  this.mediaProperties.setRemoteQualityLevel(options.meetingQuality.remote);
6581
6595
  }
6582
6596
  case 6:
6583
6597
  this.isMultistream = !!options.enableMultistream;
6584
- _context19.prev = 7;
6585
- _context19.next = 8;
6598
+ _context18.prev = 7;
6599
+ _context18.next = 8;
6586
6600
  return this.checkAndRefreshPermissionToken(_constants.MEETING_PERMISSION_TOKEN_REFRESH_THRESHOLD_IN_SEC, _constants.MEETING_PERMISSION_TOKEN_REFRESH_REASON);
6587
6601
  case 8:
6588
- _context19.next = 10;
6602
+ _context18.next = 10;
6589
6603
  break;
6590
6604
  case 9:
6591
- _context19.prev = 9;
6592
- _t11 = _context19["catch"](7);
6605
+ _context18.prev = 9;
6606
+ _t11 = _context18["catch"](7);
6593
6607
  _loggerProxy.default.logger.error('Meeting:index#join --> Failed to refresh permission token:', _t11);
6594
6608
  if (!(_t11 instanceof _captchaError.default || _t11 instanceof _passwordError.default || _t11 instanceof _permission.default)) {
6595
- _context19.next = 10;
6609
+ _context18.next = 10;
6596
6610
  break;
6597
6611
  }
6598
6612
  this.meetingFiniteStateMachine.fail(_t11);
@@ -6607,9 +6621,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6607
6621
 
6608
6622
  // if refresh permission token requires captcha, password or permission, we are throwing the errors
6609
6623
  // and bubble it up to client
6610
- return _context19.abrupt("return", _promise.default.reject(_t11));
6624
+ return _context18.abrupt("return", _promise.default.reject(_t11));
6611
6625
  case 10:
6612
- return _context19.abrupt("return", _util2.default.joinMeetingOptions(this, options).then(function (join) {
6626
+ return _context18.abrupt("return", _util2.default.joinMeetingOptions(this, options).then(function (join) {
6613
6627
  _this34.meetingFiniteStateMachine.join();
6614
6628
  _this34.setupLocusMediaRequest();
6615
6629
 
@@ -6646,6 +6660,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6646
6660
  _this34.saveDataChannelToken(join);
6647
6661
  // @ts-ignore - config coming from registerPlugin
6648
6662
  if (_this34.config.enableAutomaticLLM) {
6663
+ // @ts-ignore
6664
+ _this34.webex.internal.llm.off('online', _this34.handleLLMOnline);
6649
6665
  // @ts-ignore
6650
6666
  _this34.webex.internal.llm.on('online', _this34.handleLLMOnline);
6651
6667
  _this34.updateLLMConnection().catch(function (error) {
@@ -6663,9 +6679,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6663
6679
  }));
6664
6680
  case 11:
6665
6681
  case "end":
6666
- return _context19.stop();
6682
+ return _context18.stop();
6667
6683
  }
6668
- }, _callee19, this, [[7, 9]]);
6684
+ }, _callee18, this, [[7, 9]]);
6669
6685
  }));
6670
6686
  function join() {
6671
6687
  return _join.apply(this, arguments);
@@ -6749,22 +6765,86 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6749
6765
  }
6750
6766
  }
6751
6767
 
6768
+ /**
6769
+ * Ensures default-session data channel token exists after lobby admission.
6770
+ * Some lobby users do not receive a token until they are admitted.
6771
+ * @returns {Promise<boolean>} true when a new token is fetched and cached
6772
+ */
6773
+ }, {
6774
+ key: "ensureDefaultDatachannelTokenAfterAdmit",
6775
+ value: (function () {
6776
+ var _ensureDefaultDatachannelTokenAfterAdmit = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee19() {
6777
+ var _response$body, datachannelToken, isDataChannelTokenEnabled, response, fetchedDatachannelToken, msg, _t12;
6778
+ return _regenerator.default.wrap(function (_context19) {
6779
+ while (1) switch (_context19.prev = _context19.next) {
6780
+ case 0:
6781
+ _context19.prev = 0;
6782
+ // @ts-ignore
6783
+ datachannelToken = this.webex.internal.llm.getDatachannelToken(); // @ts-ignore
6784
+ _context19.next = 1;
6785
+ return this.webex.internal.llm.isDataChannelTokenEnabled();
6786
+ case 1:
6787
+ isDataChannelTokenEnabled = _context19.sent;
6788
+ if (!(!isDataChannelTokenEnabled || datachannelToken)) {
6789
+ _context19.next = 2;
6790
+ break;
6791
+ }
6792
+ return _context19.abrupt("return", false);
6793
+ case 2:
6794
+ _context19.next = 3;
6795
+ return this.meetingRequest.fetchDatachannelToken({
6796
+ locusUrl: this.locusUrl,
6797
+ requestingParticipantId: this.members.selfId,
6798
+ isPracticeSession: false
6799
+ });
6800
+ case 3:
6801
+ response = _context19.sent;
6802
+ fetchedDatachannelToken = response === null || response === void 0 ? void 0 : (_response$body = response.body) === null || _response$body === void 0 ? void 0 : _response$body.datachannelToken;
6803
+ if (fetchedDatachannelToken) {
6804
+ _context19.next = 4;
6805
+ break;
6806
+ }
6807
+ return _context19.abrupt("return", false);
6808
+ case 4:
6809
+ // @ts-ignore
6810
+ this.webex.internal.llm.setDatachannelToken(fetchedDatachannelToken, _internalPluginLlm.DataChannelTokenType.Default);
6811
+ return _context19.abrupt("return", true);
6812
+ case 5:
6813
+ _context19.prev = 5;
6814
+ _t12 = _context19["catch"](0);
6815
+ msg = (_t12 === null || _t12 === void 0 ? void 0 : _t12.message) || String(_t12);
6816
+ _loggerProxy.default.logger.warn("Meeting:index#ensureDefaultDatachannelTokenAfterAdmit --> failed to proactively fetch default data channel token after admit: ".concat(msg), {
6817
+ statusCode: _t12 === null || _t12 === void 0 ? void 0 : _t12.statusCode
6818
+ });
6819
+ return _context19.abrupt("return", false);
6820
+ case 6:
6821
+ case "end":
6822
+ return _context19.stop();
6823
+ }
6824
+ }, _callee19, this, [[0, 5]]);
6825
+ }));
6826
+ function ensureDefaultDatachannelTokenAfterAdmit() {
6827
+ return _ensureDefaultDatachannelTokenAfterAdmit.apply(this, arguments);
6828
+ }
6829
+ return ensureDefaultDatachannelTokenAfterAdmit;
6830
+ }()
6752
6831
  /**
6753
6832
  * Connects to low latency mercury and reconnects if the address has changed
6754
6833
  * It will also disconnect if called when the meeting has ended
6755
6834
  * @returns {Promise}
6756
6835
  */
6836
+ )
6757
6837
  }, {
6758
6838
  key: "updateLLMConnection",
6759
6839
  value: (function () {
6760
6840
  var _updateLLMConnection = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee20() {
6761
6841
  var _this36 = this;
6762
- var _ref40, _ref40$url, url, _ref40$info, _ref40$info2, _ref40$info2$datachan, datachannelUrl, isJoined, datachannelToken, dataChannelUrl;
6842
+ var _ref39, _ref39$url, url, _ref39$info, _ref39$info2, _ref39$info2$datachan, datachannelUrl, isJoined, datachannelToken, dataChannelUrl;
6763
6843
  return _regenerator.default.wrap(function (_context20) {
6764
6844
  while (1) switch (_context20.prev = _context20.next) {
6765
6845
  case 0:
6766
6846
  // @ts-ignore - Fix type
6767
- _ref40 = this.locusInfo || {}, _ref40$url = _ref40.url, url = _ref40$url === void 0 ? undefined : _ref40$url, _ref40$info = _ref40.info, _ref40$info2 = _ref40$info === void 0 ? {} : _ref40$info, _ref40$info2$datachan = _ref40$info2.datachannelUrl, datachannelUrl = _ref40$info2$datachan === void 0 ? undefined : _ref40$info2$datachan;
6847
+ _ref39 = this.locusInfo || {}, _ref39$url = _ref39.url, url = _ref39$url === void 0 ? undefined : _ref39$url, _ref39$info = _ref39.info, _ref39$info2 = _ref39$info === void 0 ? {} : _ref39$info, _ref39$info2$datachan = _ref39$info2.datachannelUrl, datachannelUrl = _ref39$info2$datachan === void 0 ? undefined : _ref39$info2$datachan;
6768
6848
  isJoined = this.isJoined(); // @ts-ignore
6769
6849
  datachannelToken = this.webex.internal.llm.getDatachannelToken(_internalPluginLlm.DataChannelTokenType.Default);
6770
6850
  dataChannelUrl = datachannelUrl; // @ts-ignore - Fix type
@@ -6997,7 +7077,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6997
7077
  }
6998
7078
  });
6999
7079
  this.locusInfo.once(_constants.LOCUSINFO.EVENTS.SELF_OBSERVING, /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee21() {
7000
- var mediaSettings, _t12;
7080
+ var mediaSettings, _t13;
7001
7081
  return _regenerator.default.wrap(function (_context21) {
7002
7082
  while (1) switch (_context21.prev = _context21.next) {
7003
7083
  case 0:
@@ -7054,13 +7134,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7054
7134
  break;
7055
7135
  case 6:
7056
7136
  _context21.prev = 6;
7057
- _t12 = _context21["catch"](0);
7058
- _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _t12);
7137
+ _t13 = _context21["catch"](0);
7138
+ _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _t13);
7059
7139
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
7060
7140
  correlation_id: _this40.correlationId,
7061
7141
  locus_id: _this40.locusUrl.split('/').pop(),
7062
- reason: _t12.message,
7063
- stack: _t12.stack
7142
+ reason: _t13.message,
7143
+ stack: _t13.stack
7064
7144
  });
7065
7145
  _this40.isMoveToInProgress = false;
7066
7146
  case 7:
@@ -7235,7 +7315,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7235
7315
  }
7236
7316
  }, _callee22, this);
7237
7317
  }));
7238
- function createMediaConnection(_x15, _x16) {
7318
+ function createMediaConnection(_x14, _x15) {
7239
7319
  return _createMediaConnection.apply(this, arguments);
7240
7320
  }
7241
7321
  return createMediaConnection;
@@ -7275,7 +7355,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7275
7355
  value: (function () {
7276
7356
  var _setUpLocalStreamReferences = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee23(localStreams) {
7277
7357
  var _localStreams$microph, _localStreams$camera, _localStreams$screenS, _localStreams$screenS2, _localStreams$screenS3, _localStreams$screenS4, _localStreams$screenS5, _localStreams$screenS6;
7278
- var setUpStreamPromises, _t13;
7358
+ var setUpStreamPromises, _t14;
7279
7359
  return _regenerator.default.wrap(function (_context23) {
7280
7360
  while (1) switch (_context23.prev = _context23.next) {
7281
7361
  case 0:
@@ -7300,16 +7380,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7300
7380
  break;
7301
7381
  case 3:
7302
7382
  _context23.prev = 3;
7303
- _t13 = _context23["catch"](1);
7304
- _loggerProxy.default.logger.error("Meeting:index#addMedia():setUpLocalStreamReferences --> Error , ", _t13);
7305
- throw _t13;
7383
+ _t14 = _context23["catch"](1);
7384
+ _loggerProxy.default.logger.error("Meeting:index#addMedia():setUpLocalStreamReferences --> Error , ", _t14);
7385
+ throw _t14;
7306
7386
  case 4:
7307
7387
  case "end":
7308
7388
  return _context23.stop();
7309
7389
  }
7310
7390
  }, _callee23, this, [[1, 3]]);
7311
7391
  }));
7312
- function setUpLocalStreamReferences(_x17) {
7392
+ function setUpLocalStreamReferences(_x16) {
7313
7393
  return _setUpLocalStreamReferences.apply(this, arguments);
7314
7394
  }
7315
7395
  return setUpLocalStreamReferences;
@@ -7325,7 +7405,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7325
7405
  key: "waitForMediaConnectionConnected",
7326
7406
  value: (function () {
7327
7407
  var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee24() {
7328
- var iceConnected, _this$mediaProperties9, _this$mediaProperties0, _this$mediaProperties1, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12, _this$mediaProperties13, timedOutError, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
7408
+ var iceConnected, _this$mediaProperties9, _this$mediaProperties0, _this$mediaProperties1, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12, _this$mediaProperties13, timedOutError, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
7329
7409
  return _regenerator.default.wrap(function (_context24) {
7330
7410
  while (1) switch (_context24.prev = _context24.next) {
7331
7411
  case 0:
@@ -7337,53 +7417,53 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7337
7417
  break;
7338
7418
  case 2:
7339
7419
  _context24.prev = 2;
7340
- _t14 = _context24["catch"](0);
7341
- iceConnected = _t14.iceConnected;
7420
+ _t15 = _context24["catch"](0);
7421
+ iceConnected = _t15.iceConnected;
7342
7422
  if (this.hasMediaConnectionConnectedAtLeastOnce) {
7343
7423
  _context24.next = 4;
7344
7424
  break;
7345
7425
  }
7346
- _t15 = this.webex.internal.newMetrics;
7347
- _t16 = !this.turnServerUsed;
7348
- _t17 = this.addMediaData.icePhaseCallback();
7349
- _t18 = this.webex.internal.newMetrics.callDiagnosticMetrics;
7350
- _t19 = _internalPluginMetrics.CallDiagnosticUtils;
7351
- _t20 = ((_this$mediaProperties9 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties9 === void 0 ? void 0 : (_this$mediaProperties0 = _this$mediaProperties9.multistreamConnection) === null || _this$mediaProperties0 === void 0 ? void 0 : (_this$mediaProperties1 = _this$mediaProperties0.pc) === null || _this$mediaProperties1 === void 0 ? void 0 : (_this$mediaProperties10 = _this$mediaProperties1.pc) === null || _this$mediaProperties10 === void 0 ? void 0 : _this$mediaProperties10.signalingState) || ((_this$mediaProperties11 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties11 === void 0 ? void 0 : (_this$mediaProperties12 = _this$mediaProperties11.mediaConnection) === null || _this$mediaProperties12 === void 0 ? void 0 : (_this$mediaProperties13 = _this$mediaProperties12.pc) === null || _this$mediaProperties13 === void 0 ? void 0 : _this$mediaProperties13.signalingState) || 'unknown';
7352
- _t21 = iceConnected;
7353
- _t22 = this.turnServerUsed;
7426
+ _t16 = this.webex.internal.newMetrics;
7427
+ _t17 = !this.turnServerUsed;
7428
+ _t18 = this.addMediaData.icePhaseCallback();
7429
+ _t19 = this.webex.internal.newMetrics.callDiagnosticMetrics;
7430
+ _t20 = _internalPluginMetrics.CallDiagnosticUtils;
7431
+ _t21 = ((_this$mediaProperties9 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties9 === void 0 ? void 0 : (_this$mediaProperties0 = _this$mediaProperties9.multistreamConnection) === null || _this$mediaProperties0 === void 0 ? void 0 : (_this$mediaProperties1 = _this$mediaProperties0.pc) === null || _this$mediaProperties1 === void 0 ? void 0 : (_this$mediaProperties10 = _this$mediaProperties1.pc) === null || _this$mediaProperties10 === void 0 ? void 0 : _this$mediaProperties10.signalingState) || ((_this$mediaProperties11 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties11 === void 0 ? void 0 : (_this$mediaProperties12 = _this$mediaProperties11.mediaConnection) === null || _this$mediaProperties12 === void 0 ? void 0 : (_this$mediaProperties13 = _this$mediaProperties12.pc) === null || _this$mediaProperties13 === void 0 ? void 0 : _this$mediaProperties13.signalingState) || 'unknown';
7432
+ _t22 = iceConnected;
7433
+ _t23 = this.turnServerUsed;
7354
7434
  _context24.next = 3;
7355
7435
  return this.webex.meetings.reachability.isWebexMediaBackendUnreachable().catch(function () {
7356
7436
  return false;
7357
7437
  });
7358
7438
  case 3:
7359
- _t23 = _context24.sent;
7360
- _t24 = _t19.generateClientErrorCodeForIceFailure.call(_t19, {
7361
- signalingState: _t20,
7362
- iceConnected: _t21,
7363
- turnServerUsed: _t22,
7364
- unreachable: _t23
7439
+ _t24 = _context24.sent;
7440
+ _t25 = _t20.generateClientErrorCodeForIceFailure.call(_t20, {
7441
+ signalingState: _t21,
7442
+ iceConnected: _t22,
7443
+ turnServerUsed: _t23,
7444
+ unreachable: _t24
7365
7445
  });
7366
- _t25 = _t18.getErrorPayloadForClientErrorCode.call(_t18, {
7367
- clientErrorCode: _t24
7446
+ _t26 = _t19.getErrorPayloadForClientErrorCode.call(_t19, {
7447
+ clientErrorCode: _t25
7368
7448
  });
7369
- _t26 = [_t25];
7370
- _t27 = {
7371
- canProceed: _t16,
7372
- icePhase: _t17,
7373
- errors: _t26
7374
- };
7449
+ _t27 = [_t26];
7375
7450
  _t28 = {
7451
+ canProceed: _t17,
7452
+ icePhase: _t18,
7453
+ errors: _t27
7454
+ };
7455
+ _t29 = {
7376
7456
  meetingId: this.id,
7377
- rawError: _t14
7457
+ rawError: _t15
7378
7458
  };
7379
- _t15.submitClientEvent.call(_t15, {
7459
+ _t16.submitClientEvent.call(_t16, {
7380
7460
  name: 'client.ice.end',
7381
- payload: _t27,
7382
- options: _t28
7461
+ payload: _t28,
7462
+ options: _t29
7383
7463
  });
7384
7464
  case 4:
7385
7465
  timedOutError = new Error("Timed out waiting for media connection to be connected, correlationId=".concat(this.correlationId));
7386
- timedOutError.cause = _t14;
7466
+ timedOutError.cause = _t15;
7387
7467
  throw timedOutError;
7388
7468
  case 5:
7389
7469
  case "end":
@@ -7519,7 +7599,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7519
7599
  key: "retryEstablishMediaConnectionWithForcedTurnDiscovery",
7520
7600
  value: (function () {
7521
7601
  var _retryEstablishMediaConnectionWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee26(remoteMediaManagerConfig, bundlePolicy) {
7522
- var LOG_HEADER, _t29;
7602
+ var LOG_HEADER, _t30;
7523
7603
  return _regenerator.default.wrap(function (_context26) {
7524
7604
  while (1) switch (_context26.prev = _context26.next) {
7525
7605
  case 0:
@@ -7532,16 +7612,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7532
7612
  break;
7533
7613
  case 3:
7534
7614
  _context26.prev = 3;
7535
- _t29 = _context26["catch"](1);
7536
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " retry with TURN-TLS failed, media connection unable to connect, "), _t29);
7537
- throw _t29;
7615
+ _t30 = _context26["catch"](1);
7616
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " retry with TURN-TLS failed, media connection unable to connect, "), _t30);
7617
+ throw _t30;
7538
7618
  case 4:
7539
7619
  case "end":
7540
7620
  return _context26.stop();
7541
7621
  }
7542
7622
  }, _callee26, this, [[1, 3]]);
7543
7623
  }));
7544
- function retryEstablishMediaConnectionWithForcedTurnDiscovery(_x18, _x19) {
7624
+ function retryEstablishMediaConnectionWithForcedTurnDiscovery(_x17, _x18) {
7545
7625
  return _retryEstablishMediaConnectionWithForcedTurnDiscovery.apply(this, arguments);
7546
7626
  }
7547
7627
  return retryEstablishMediaConnectionWithForcedTurnDiscovery;
@@ -7593,7 +7673,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7593
7673
  }
7594
7674
  }, _callee27, this);
7595
7675
  }));
7596
- function retryWithForcedTurnDiscovery(_x20, _x21) {
7676
+ function retryWithForcedTurnDiscovery(_x19, _x20) {
7597
7677
  return _retryWithForcedTurnDiscovery.apply(this, arguments);
7598
7678
  }
7599
7679
  return retryWithForcedTurnDiscovery;
@@ -7638,7 +7718,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7638
7718
  }
7639
7719
  }, _callee28, this);
7640
7720
  }));
7641
- function handleWaitForMediaConnectionConnectedError(_x22, _x23, _x24) {
7721
+ function handleWaitForMediaConnectionConnectedError(_x21, _x22, _x23) {
7642
7722
  return _handleWaitForMediaConnectionConnectedError.apply(this, arguments);
7643
7723
  }
7644
7724
  return handleWaitForMediaConnectionConnectedError;
@@ -7690,7 +7770,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7690
7770
  }
7691
7771
  }, _callee29, this);
7692
7772
  }));
7693
- function doTurnDiscovery(_x25, _x26) {
7773
+ function doTurnDiscovery(_x24, _x25) {
7694
7774
  return _doTurnDiscovery.apply(this, arguments);
7695
7775
  }
7696
7776
  return doTurnDiscovery;
@@ -7711,7 +7791,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7711
7791
  value: (function () {
7712
7792
  var _establishMediaConnection = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee30(remoteMediaManagerConfig, bundlePolicy, isForced, turnServerInfo) {
7713
7793
  var _this$locusMediaReque;
7714
- var LOG_HEADER, isReconnecting, _yield$this$doTurnDis, mc, _t30, _t31;
7794
+ var LOG_HEADER, isReconnecting, _yield$this$doTurnDis, mc, _t31, _t32;
7715
7795
  return _regenerator.default.wrap(function (_context30) {
7716
7796
  while (1) switch (_context30.prev = _context30.next) {
7717
7797
  case 0:
@@ -7759,9 +7839,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7759
7839
  break;
7760
7840
  case 8:
7761
7841
  _context30.prev = 8;
7762
- _t30 = _context30["catch"](1);
7763
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "), _t30);
7764
- throw _t30;
7842
+ _t31 = _context30["catch"](1);
7843
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "), _t31);
7844
+ throw _t31;
7765
7845
  case 9:
7766
7846
  _context30.prev = 9;
7767
7847
  _context30.next = 10;
@@ -7771,16 +7851,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7771
7851
  break;
7772
7852
  case 11:
7773
7853
  _context30.prev = 11;
7774
- _t31 = _context30["catch"](9);
7854
+ _t32 = _context30["catch"](9);
7775
7855
  _context30.next = 12;
7776
- return this.handleWaitForMediaConnectionConnectedError(_t31, remoteMediaManagerConfig, bundlePolicy);
7856
+ return this.handleWaitForMediaConnectionConnectedError(_t32, remoteMediaManagerConfig, bundlePolicy);
7777
7857
  case 12:
7778
7858
  case "end":
7779
7859
  return _context30.stop();
7780
7860
  }
7781
7861
  }, _callee30, this, [[1, 8], [9, 11]]);
7782
7862
  }));
7783
- function establishMediaConnection(_x27, _x28, _x29, _x30) {
7863
+ function establishMediaConnection(_x26, _x27, _x28, _x29) {
7784
7864
  return _establishMediaConnection.apply(this, arguments);
7785
7865
  }
7786
7866
  return establishMediaConnection;
@@ -7930,7 +8010,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7930
8010
  key: "cleanUpBeforeReconnection",
7931
8011
  value: function () {
7932
8012
  var _cleanUpBeforeReconnection = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee34() {
7933
- var _t32;
8013
+ var _t33;
7934
8014
  return _regenerator.default.wrap(function (_context34) {
7935
8015
  while (1) switch (_context34.prev = _context34.next) {
7936
8016
  case 0:
@@ -7951,8 +8031,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7951
8031
  break;
7952
8032
  case 3:
7953
8033
  _context34.prev = 3;
7954
- _t32 = _context34["catch"](0);
7955
- _loggerProxy.default.logger.error('Meeting:index#cleanUpBeforeReconnection --> Error during cleanup: ', _t32);
8034
+ _t33 = _context34["catch"](0);
8035
+ _loggerProxy.default.logger.error('Meeting:index#cleanUpBeforeReconnection --> Error during cleanup: ', _t33);
7956
8036
  case 4:
7957
8037
  case "end":
7958
8038
  return _context34.stop();
@@ -8088,8 +8168,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8088
8168
  _numTransports,
8089
8169
  _iceCandidateErrors,
8090
8170
  _args35 = arguments,
8091
- _t33,
8092
- _t34;
8171
+ _t34,
8172
+ _t35;
8093
8173
  return _regenerator.default.wrap(function (_context35) {
8094
8174
  while (1) switch (_context35.prev = _context35.next) {
8095
8175
  case 0:
@@ -8185,8 +8265,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8185
8265
  break;
8186
8266
  case 8:
8187
8267
  _context35.prev = 8;
8188
- _t33 = _context35["catch"](6);
8189
- if (!(_t33 instanceof _multistreamNotSupportedError.default)) {
8268
+ _t34 = _context35["catch"](6);
8269
+ if (!(_t34 instanceof _multistreamNotSupportedError.default)) {
8190
8270
  _context35.next = 11;
8191
8271
  break;
8192
8272
  }
@@ -8200,7 +8280,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8200
8280
  _context35.next = 12;
8201
8281
  break;
8202
8282
  case 11:
8203
- throw _t33;
8283
+ throw _t34;
8204
8284
  case 12:
8205
8285
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " media connected, finalizing..."));
8206
8286
  if (!this.mediaProperties.hasLocalShareStream()) {
@@ -8256,8 +8336,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8256
8336
  break;
8257
8337
  case 16:
8258
8338
  _context35.prev = 16;
8259
- _t34 = _context35["catch"](4);
8260
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _t34);
8339
+ _t35 = _context35["catch"](4);
8340
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _t35);
8261
8341
 
8262
8342
  // @ts-ignore
8263
8343
  _context35.next = 17;
@@ -8274,9 +8354,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8274
8354
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_FAILURE, _objectSpread(_objectSpread(_objectSpread({
8275
8355
  correlation_id: this.correlationId,
8276
8356
  locus_id: this.locusUrl.split('/').pop(),
8277
- reason: _t34.message,
8278
- stack: _t34.stack,
8279
- code: _t34.code,
8357
+ reason: _t35.message,
8358
+ stack: _t35.stack,
8359
+ code: _t35.code,
8280
8360
  selectedCandidatePairChanges: _selectedCandidatePairChanges,
8281
8361
  numTransports: _numTransports,
8282
8362
  turnDiscoverySkippedReason: this.turnDiscoverySkippedReason,
@@ -8299,12 +8379,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8299
8379
  file: 'meeting/index',
8300
8380
  function: 'addMedia'
8301
8381
  }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
8302
- if (_t34 instanceof _internalMediaCore.Errors.SdpError) {
8382
+ if (_t35 instanceof _internalMediaCore.Errors.SdpError) {
8303
8383
  this.leave({
8304
8384
  reason: _constants.MEETING_REMOVED_REASON.MEETING_CONNECTION_FAILED
8305
8385
  });
8306
8386
  }
8307
- throw _t34;
8387
+ throw _t35;
8308
8388
  case 20:
8309
8389
  _context35.prev = 20;
8310
8390
  this.addMediaData.icePhaseCallback = DEFAULT_ICE_PHASE_CALLBACK;
@@ -8315,7 +8395,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8315
8395
  }
8316
8396
  }, _callee35, this, [[4, 16, 20, 21], [6, 8]]);
8317
8397
  }));
8318
- function addMediaInternal(_x31, _x32, _x33) {
8398
+ function addMediaInternal(_x30, _x31, _x32) {
8319
8399
  return _addMediaInternal.apply(this, arguments);
8320
8400
  }
8321
8401
  return addMediaInternal;
@@ -8447,7 +8527,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8447
8527
  }
8448
8528
  }, _callee36, this);
8449
8529
  }));
8450
- function updateMedia(_x34) {
8530
+ function updateMedia(_x33) {
8451
8531
  return _updateMedia.apply(this, arguments);
8452
8532
  }
8453
8533
  return updateMedia;
@@ -8588,7 +8668,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8588
8668
  };
8589
8669
  _loggerProxy.default.logger.log('Meeting:index#leave --> Leaving a meeting');
8590
8670
  return _util2.default.leaveMeeting(this, options).then(/*#__PURE__*/function () {
8591
- var _ref42 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee37(leave) {
8671
+ var _ref41 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee37(leave) {
8592
8672
  return _regenerator.default.wrap(function (_context37) {
8593
8673
  while (1) switch (_context37.prev = _context37.next) {
8594
8674
  case 0:
@@ -8623,8 +8703,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8623
8703
  }
8624
8704
  }, _callee37);
8625
8705
  }));
8626
- return function (_x35) {
8627
- return _ref42.apply(this, arguments);
8706
+ return function (_x34) {
8707
+ return _ref41.apply(this, arguments);
8628
8708
  };
8629
8709
  }()).catch(function (error) {
8630
8710
  // CA team recommends submitting this *after* locus /leave
@@ -9289,7 +9369,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9289
9369
  locus_id: this.locusId
9290
9370
  });
9291
9371
  return _util2.default.endMeetingForAll(this).then(/*#__PURE__*/function () {
9292
- var _ref43 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee38(end) {
9372
+ var _ref42 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee38(end) {
9293
9373
  return _regenerator.default.wrap(function (_context38) {
9294
9374
  while (1) switch (_context38.prev = _context38.next) {
9295
9375
  case 0:
@@ -9309,8 +9389,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9309
9389
  }
9310
9390
  }, _callee38);
9311
9391
  }));
9312
- return function (_x36) {
9313
- return _ref43.apply(this, arguments);
9392
+ return function (_x35) {
9393
+ return _ref42.apply(this, arguments);
9314
9394
  };
9315
9395
  }()).catch(function (error) {
9316
9396
  _this56.meetingFiniteStateMachine.fail(error);
@@ -9374,12 +9454,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9374
9454
  */
9375
9455
  }, {
9376
9456
  key: "extendMeeting",
9377
- value: function extendMeeting(_ref44) {
9378
- var meetingPolicyUrl = _ref44.meetingPolicyUrl,
9379
- meetingInstanceId = _ref44.meetingInstanceId,
9380
- participantId = _ref44.participantId,
9381
- _ref44$extensionMinut = _ref44.extensionMinutes,
9382
- extensionMinutes = _ref44$extensionMinut === void 0 ? 30 : _ref44$extensionMinut;
9457
+ value: function extendMeeting(_ref43) {
9458
+ var meetingPolicyUrl = _ref43.meetingPolicyUrl,
9459
+ meetingInstanceId = _ref43.meetingInstanceId,
9460
+ participantId = _ref43.participantId,
9461
+ _ref43$extensionMinut = _ref43.extensionMinutes,
9462
+ extensionMinutes = _ref43$extensionMinut === void 0 ? 30 : _ref43$extensionMinut;
9383
9463
  if (!meetingInstanceId || !participantId) {
9384
9464
  return _promise.default.reject(new Error('Missing meetingInstanceId or participantId'));
9385
9465
  }
@@ -9492,7 +9572,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9492
9572
  }
9493
9573
  }, _callee39, this);
9494
9574
  }));
9495
- function enableMusicMode(_x37) {
9575
+ function enableMusicMode(_x36) {
9496
9576
  return _enableMusicMode.apply(this, arguments);
9497
9577
  }
9498
9578
  return enableMusicMode;
@@ -9616,7 +9696,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9616
9696
  }
9617
9697
  }, _callee40, this);
9618
9698
  }));
9619
- function publishStream(_x38, _x39) {
9699
+ function publishStream(_x37, _x38) {
9620
9700
  return _publishStream.apply(this, arguments);
9621
9701
  }
9622
9702
  return publishStream;
@@ -9661,7 +9741,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9661
9741
  }
9662
9742
  }, _callee41, this);
9663
9743
  }));
9664
- function unpublishStream(_x40, _x41) {
9744
+ function unpublishStream(_x39, _x40) {
9665
9745
  return _unpublishStream.apply(this, arguments);
9666
9746
  }
9667
9747
  return unpublishStream;
@@ -9800,7 +9880,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9800
9880
  }
9801
9881
  }, _callee42, this);
9802
9882
  }));
9803
- function publishStreams(_x42) {
9883
+ function publishStreams(_x41) {
9804
9884
  return _publishStreams.apply(this, arguments);
9805
9885
  }
9806
9886
  return publishStreams;
@@ -9875,7 +9955,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9875
9955
  }
9876
9956
  }, _callee43, this);
9877
9957
  }));
9878
- function unpublishStreams(_x43) {
9958
+ function unpublishStreams(_x42) {
9879
9959
  return _unpublishStreams.apply(this, arguments);
9880
9960
  }
9881
9961
  return unpublishStreams;
@@ -9993,17 +10073,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9993
10073
  }, {
9994
10074
  key: "setStage",
9995
10075
  value: function setStage() {
9996
- var _ref45 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
9997
- _ref45$activeSpeakerP = _ref45.activeSpeakerProportion,
9998
- activeSpeakerProportion = _ref45$activeSpeakerP === void 0 ? 0.5 : _ref45$activeSpeakerP,
9999
- customBackground = _ref45.customBackground,
10000
- customLogo = _ref45.customLogo,
10001
- customNameLabel = _ref45.customNameLabel,
10002
- importantParticipants = _ref45.importantParticipants,
10003
- _ref45$lockAttendeeVi = _ref45.lockAttendeeViewOnStage,
10004
- lockAttendeeViewOnStage = _ref45$lockAttendeeVi === void 0 ? false : _ref45$lockAttendeeVi,
10005
- _ref45$showActiveSpea = _ref45.showActiveSpeaker,
10006
- showActiveSpeaker = _ref45$showActiveSpea === void 0 ? false : _ref45$showActiveSpea;
10076
+ var _ref44 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
10077
+ _ref44$activeSpeakerP = _ref44.activeSpeakerProportion,
10078
+ activeSpeakerProportion = _ref44$activeSpeakerP === void 0 ? 0.5 : _ref44$activeSpeakerP,
10079
+ customBackground = _ref44.customBackground,
10080
+ customLogo = _ref44.customLogo,
10081
+ customNameLabel = _ref44.customNameLabel,
10082
+ importantParticipants = _ref44.importantParticipants,
10083
+ _ref44$lockAttendeeVi = _ref44.lockAttendeeViewOnStage,
10084
+ lockAttendeeViewOnStage = _ref44$lockAttendeeVi === void 0 ? false : _ref44$lockAttendeeVi,
10085
+ _ref44$showActiveSpea = _ref44.showActiveSpeaker,
10086
+ showActiveSpeaker = _ref44$showActiveSpea === void 0 ? false : _ref44$showActiveSpea;
10007
10087
  var videoLayout = {
10008
10088
  overrideDefault: true,
10009
10089
  lockAttendeeViewOnStageOnly: lockAttendeeViewOnStage,
@@ -10108,7 +10188,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
10108
10188
  key: "refreshDataChannelToken",
10109
10189
  value: (function () {
10110
10190
  var _refreshDataChannelToken = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee45() {
10111
- var isPracticeSession, dataChannelTokenType, res, msg, _t35;
10191
+ var isPracticeSession, dataChannelTokenType, res, msg, _t36;
10112
10192
  return _regenerator.default.wrap(function (_context45) {
10113
10193
  while (1) switch (_context45.prev = _context45.next) {
10114
10194
  case 0:
@@ -10131,10 +10211,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
10131
10211
  });
10132
10212
  case 3:
10133
10213
  _context45.prev = 3;
10134
- _t35 = _context45["catch"](1);
10135
- msg = (_t35 === null || _t35 === void 0 ? void 0 : _t35.message) || String(_t35);
10214
+ _t36 = _context45["catch"](1);
10215
+ msg = (_t36 === null || _t36 === void 0 ? void 0 : _t36.message) || String(_t36);
10136
10216
  _loggerProxy.default.logger.warn("Meeting:index#refreshDataChannelToken --> DataChannel token refresh failed (likely locus changed or participant left): ".concat(msg), {
10137
- statusCode: _t35 === null || _t35 === void 0 ? void 0 : _t35.statusCode
10217
+ statusCode: _t36 === null || _t36 === void 0 ? void 0 : _t36.statusCode
10138
10218
  });
10139
10219
  return _context45.abrupt("return", null);
10140
10220
  case 4: