@webex/plugin-meetings 3.7.0-next.62 → 3.7.0-next.64

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.
@@ -510,6 +510,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
510
510
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "turnServerUsed", void 0);
511
511
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "areVoiceaEventsSetup", false);
512
512
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "isMoveToInProgress", false);
513
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "registrationIdStatus", void 0);
513
514
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "brbState", void 0);
514
515
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "voiceaListenerCallbacks", (0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)({}, _internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, function (payload) {
515
516
  _this.transcription.languageOptions = payload;
@@ -2013,6 +2014,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2013
2014
  */
2014
2015
  _this.passwordStatus = _constants.PASSWORD_STATUS.UNKNOWN;
2015
2016
 
2017
+ /**
2018
+ * registrationId status. If it's REGISTRATIONID_STATUS.REQUIRED then verifyRegistrationId() needs to be called
2019
+ * with the correct registrationId before calling join()
2020
+ * @instance
2021
+ * @type {REGISTRATION_ID_STATUS}
2022
+ * @public
2023
+ * @memberof Meeting
2024
+ */
2025
+ _this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.UNKNOWN;
2026
+
2016
2027
  /**
2017
2028
  * Information about required captcha. If null, then no captcha is required. status. If it's PASSWORD_STATUS.REQUIRED then verifyPassword() needs to be called
2018
2029
  * with the correct password before calling join()
@@ -2340,6 +2351,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2340
2351
  } else {
2341
2352
  this.passwordStatus = _constants.PASSWORD_STATUS.NOT_REQUIRED;
2342
2353
  }
2354
+ if (this.registrationIdStatus === _constants.REGISTRATION_ID_STATUS.REQUIRED || this.registrationIdStatus === _constants.REGISTRATION_ID_STATUS.VERIFIED) {
2355
+ this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.VERIFIED;
2356
+ } else {
2357
+ this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.NOT_REQUIRED;
2358
+ }
2343
2359
  _triggerProxy.default.trigger(this, {
2344
2360
  file: 'meetings',
2345
2361
  function: 'fetchMeetingInfo'
@@ -2395,6 +2411,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2395
2411
  value: function prepForFetchMeetingInfo(_ref7, caller) {
2396
2412
  var _ref7$password = _ref7.password,
2397
2413
  password = _ref7$password === void 0 ? null : _ref7$password,
2414
+ _ref7$registrationId = _ref7.registrationId,
2415
+ registrationId = _ref7$registrationId === void 0 ? null : _ref7$registrationId,
2398
2416
  _ref7$captchaCode = _ref7.captchaCode,
2399
2417
  captchaCode = _ref7$captchaCode === void 0 ? null : _ref7$captchaCode,
2400
2418
  _ref7$extraParams = _ref7.extraParams,
@@ -2423,11 +2441,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2423
2441
  key: "fetchMeetingInfoInternal",
2424
2442
  value: (function () {
2425
2443
  var _fetchMeetingInfoInternal = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(_ref8) {
2426
- var destination, destinationType, _ref8$password, password, _ref8$captchaCode, captchaCode, _ref8$extraParams, extraParams, _ref8$sendCAevents, sendCAevents, captchaInfo, info, _err$body, _err$body2;
2444
+ var destination, destinationType, _ref8$password, password, _ref8$captchaCode, captchaCode, _ref8$extraParams, extraParams, _ref8$sendCAevents, sendCAevents, _ref8$registrationId, registrationId, captchaInfo, info, _err$body, _err$body2;
2427
2445
  return _regenerator.default.wrap(function _callee5$(_context5) {
2428
2446
  while (1) switch (_context5.prev = _context5.next) {
2429
2447
  case 0:
2430
- destination = _ref8.destination, destinationType = _ref8.destinationType, _ref8$password = _ref8.password, password = _ref8$password === void 0 ? null : _ref8$password, _ref8$captchaCode = _ref8.captchaCode, captchaCode = _ref8$captchaCode === void 0 ? null : _ref8$captchaCode, _ref8$extraParams = _ref8.extraParams, extraParams = _ref8$extraParams === void 0 ? {} : _ref8$extraParams, _ref8$sendCAevents = _ref8.sendCAevents, sendCAevents = _ref8$sendCAevents === void 0 ? false : _ref8$sendCAevents;
2448
+ destination = _ref8.destination, destinationType = _ref8.destinationType, _ref8$password = _ref8.password, password = _ref8$password === void 0 ? null : _ref8$password, _ref8$captchaCode = _ref8.captchaCode, captchaCode = _ref8$captchaCode === void 0 ? null : _ref8$captchaCode, _ref8$extraParams = _ref8.extraParams, extraParams = _ref8$extraParams === void 0 ? {} : _ref8$extraParams, _ref8$sendCAevents = _ref8.sendCAevents, sendCAevents = _ref8$sendCAevents === void 0 ? false : _ref8$sendCAevents, _ref8$registrationId = _ref8.registrationId, registrationId = _ref8$registrationId === void 0 ? null : _ref8$registrationId;
2431
2449
  _context5.prev = 1;
2432
2450
  captchaInfo = captchaCode ? {
2433
2451
  code: captchaCode,
@@ -2439,7 +2457,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2439
2457
  this.config.installedOrgID, this.locusId, extraParams, {
2440
2458
  meetingId: this.id,
2441
2459
  sendCAevents: sendCAevents
2442
- });
2460
+ }, registrationId);
2443
2461
  case 5:
2444
2462
  info = _context5.sent;
2445
2463
  this.parseMeetingInfo(info === null || info === void 0 ? void 0 : info.body, this.destination, info === null || info === void 0 ? void 0 : info.errors);
@@ -2461,23 +2479,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2461
2479
  throw new _permission.default();
2462
2480
  case 21:
2463
2481
  if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2JoinWebinarError)) {
2464
- _context5.next = 29;
2482
+ _context5.next = 30;
2465
2483
  break;
2466
2484
  }
2467
2485
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WEBINAR_REGISTRATION;
2468
2486
  if (_constants.WEBINAR_ERROR_WEBCAST.includes(_context5.t0.wbxAppApiCode)) {
2469
2487
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NEED_JOIN_WITH_WEBCAST;
2470
- } else if (_constants.WEBINAR_ERROR_REGISTRATIONID.includes(_context5.t0.wbxAppApiCode)) {
2471
- this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WEBINAR_NEED_REGISTRATIONID;
2488
+ } else if (_constants.WEBINAR_ERROR_REGISTRATION_ID.includes(_context5.t0.wbxAppApiCode)) {
2489
+ this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WEBINAR_NEED_REGISTRATION_ID;
2472
2490
  }
2473
2491
  this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
2474
2492
  if (_context5.t0.meetingInfo) {
2475
2493
  this.meetingInfo = _context5.t0.meetingInfo;
2476
2494
  }
2495
+ this.requiredCaptcha = null;
2477
2496
  throw new _joinWebinarError.default();
2478
- case 29:
2497
+ case 30:
2479
2498
  if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2JoinForbiddenError)) {
2480
- _context5.next = 37;
2499
+ _context5.next = 38;
2481
2500
  break;
2482
2501
  }
2483
2502
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.JOIN_FORBIDDEN;
@@ -2491,9 +2510,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2491
2510
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NOT_REACH_JBH;
2492
2511
  }
2493
2512
  throw new _joinForbiddenError.default(this.meetingInfoFailureReason, _context5.t0);
2494
- case 37:
2513
+ case 38:
2495
2514
  if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2PasswordError)) {
2496
- _context5.next = 49;
2515
+ _context5.next = 50;
2497
2516
  break;
2498
2517
  }
2499
2518
  _loggerProxy.default.logger.info( // @ts-ignore
@@ -2508,31 +2527,40 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2508
2527
  this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
2509
2528
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
2510
2529
  if (!this.requiredCaptcha) {
2511
- _context5.next = 46;
2530
+ _context5.next = 47;
2512
2531
  break;
2513
2532
  }
2514
- _context5.next = 46;
2533
+ _context5.next = 47;
2515
2534
  return this.refreshCaptcha();
2516
- case 46:
2535
+ case 47:
2517
2536
  throw new _passwordError.default();
2518
- case 49:
2537
+ case 50:
2519
2538
  if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2CaptchaError)) {
2520
- _context5.next = 58;
2539
+ _context5.next = 60;
2521
2540
  break;
2522
2541
  }
2523
2542
  _loggerProxy.default.logger.info( // @ts-ignore
2524
2543
  "Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - captcha required (code=").concat(_context5.t0 === null || _context5.t0 === void 0 ? void 0 : (_err$body2 = _context5.t0.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.code, ")."));
2525
- this.meetingInfoFailureReason = this.requiredCaptcha ? _constants.MEETING_INFO_FAILURE_REASON.WRONG_CAPTCHA : _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
2544
+ if (this.requiredCaptcha) {
2545
+ this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_CAPTCHA;
2546
+ } else if (_context5.t0.isRegistrationIdRequired) {
2547
+ this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_REGISTRATION_ID;
2548
+ } else {
2549
+ this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
2550
+ }
2526
2551
  this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
2527
2552
  if (_context5.t0.isPasswordRequired) {
2528
2553
  this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
2529
2554
  }
2555
+ if (_context5.t0.isRegistrationIdRequired) {
2556
+ this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.REQUIRED;
2557
+ }
2530
2558
  this.requiredCaptcha = _context5.t0.captchaInfo;
2531
2559
  throw new _captchaError.default();
2532
- case 58:
2560
+ case 60:
2533
2561
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.OTHER;
2534
2562
  throw _context5.t0;
2535
- case 60:
2563
+ case 62:
2536
2564
  case "end":
2537
2565
  return _context5.stop();
2538
2566
  }
@@ -2695,6 +2723,45 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2695
2723
  });
2696
2724
  }
2697
2725
 
2726
+ /**
2727
+ * Checks if the supplied registrationId is correct. It returns a promise with information whether the
2728
+ * registrationId and captcha code were correct or not.
2729
+ * @param {String | undefined} registrationId - can be undefined if only captcha was required
2730
+ * @param {String | undefined} captchaCode - can be undefined if captcha was not required by the server
2731
+ * @param {Boolean} sendCAevents - whether Call Analyzer events should be sent when fetching meeting information
2732
+ * @public
2733
+ * @memberof Meeting
2734
+ * @returns {Promise<{isRegistrationIdValid: boolean, requiredCaptcha: boolean, failureReason: MEETING_INFO_FAILURE_REASON}>}
2735
+ */
2736
+ }, {
2737
+ key: "verifyRegistrationId",
2738
+ value: function verifyRegistrationId(registrationId, captchaCode) {
2739
+ var _this3 = this;
2740
+ var sendCAevents = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
2741
+ return this.fetchMeetingInfo({
2742
+ registrationId: registrationId,
2743
+ captchaCode: captchaCode,
2744
+ sendCAevents: sendCAevents
2745
+ }).then(function () {
2746
+ _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_REGISTRATION_ID_SUCCESS);
2747
+ return {
2748
+ isRegistrationIdValid: true,
2749
+ requiredCaptcha: null,
2750
+ failureReason: _constants.MEETING_INFO_FAILURE_REASON.NONE
2751
+ };
2752
+ }).catch(function (error) {
2753
+ _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_REGISTRATION_ID_ERROR);
2754
+ if (error instanceof _joinWebinarError.default || error instanceof _captchaError.default) {
2755
+ return {
2756
+ isRegistrationIdValid: _this3.registrationIdStatus === _constants.REGISTRATION_ID_STATUS.VERIFIED,
2757
+ requiredCaptcha: _this3.requiredCaptcha,
2758
+ failureReason: error instanceof _joinWebinarError.default ? _constants.MEETING_INFO_FAILURE_REASON.WRONG_REGISTRATION_ID : _this3.meetingInfoFailureReason
2759
+ };
2760
+ }
2761
+ throw error;
2762
+ });
2763
+ }
2764
+
2698
2765
  /**
2699
2766
  * Refreshes the captcha. As a result the meeting will have new captcha id, image and audio.
2700
2767
  * If the refresh operation fails, meeting remains with the old captcha properties.
@@ -2705,7 +2772,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2705
2772
  }, {
2706
2773
  key: "refreshCaptcha",
2707
2774
  value: function refreshCaptcha() {
2708
- var _this3 = this;
2775
+ var _this4 = this;
2709
2776
  if (!this.requiredCaptcha) {
2710
2777
  return _promise.default.reject(new Error('There is no captcha to refresh'));
2711
2778
  }
@@ -2720,11 +2787,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2720
2787
  captchaRefreshUrl: "".concat(this.requiredCaptcha.refreshURL, "&siteFullName=").concat(hostname),
2721
2788
  captchaId: this.requiredCaptcha.captchaId
2722
2789
  }).then(function (response) {
2723
- _this3.requiredCaptcha.captchaId = response.body.captchaID;
2724
- _this3.requiredCaptcha.verificationImageURL = response.body.verificationImageURL;
2725
- _this3.requiredCaptcha.verificationAudioURL = response.body.verificationAudioURL;
2790
+ _this4.requiredCaptcha.captchaId = response.body.captchaID;
2791
+ _this4.requiredCaptcha.verificationImageURL = response.body.verificationImageURL;
2792
+ _this4.requiredCaptcha.verificationAudioURL = response.body.verificationAudioURL;
2726
2793
  }).catch(function (error) {
2727
- _loggerProxy.default.logger.error("Meeting:index#refreshCaptcha --> Error Unable to refresh captcha for ".concat(_this3.destination, " - ").concat(error));
2794
+ _loggerProxy.default.logger.error("Meeting:index#refreshCaptcha --> Error Unable to refresh captcha for ".concat(_this4.destination, " - ").concat(error));
2728
2795
  throw error;
2729
2796
  });
2730
2797
  }
@@ -2787,47 +2854,47 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2787
2854
  }, {
2788
2855
  key: "setUpBreakoutsListener",
2789
2856
  value: function setUpBreakoutsListener() {
2790
- var _this4 = this;
2857
+ var _this5 = this;
2791
2858
  this.breakouts.on(_constants.BREAKOUTS.EVENTS.BREAKOUTS_CLOSING, function () {
2792
- _triggerProxy.default.trigger(_this4, {
2859
+ _triggerProxy.default.trigger(_this5, {
2793
2860
  file: 'meeting/index',
2794
2861
  function: 'setUpBreakoutsListener'
2795
2862
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_CLOSING);
2796
2863
  });
2797
2864
  this.breakouts.on(_constants.BREAKOUTS.EVENTS.MESSAGE, function (messageEvent) {
2798
- _triggerProxy.default.trigger(_this4, {
2865
+ _triggerProxy.default.trigger(_this5, {
2799
2866
  file: 'meeting/index',
2800
2867
  function: 'setUpBreakoutsListener'
2801
2868
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_MESSAGE, messageEvent);
2802
2869
  });
2803
2870
  this.breakouts.on(_constants.BREAKOUTS.EVENTS.MEMBERS_UPDATE, function () {
2804
- _triggerProxy.default.trigger(_this4, {
2871
+ _triggerProxy.default.trigger(_this5, {
2805
2872
  file: 'meeting/index',
2806
2873
  function: 'setUpBreakoutsListener'
2807
2874
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
2808
2875
  });
2809
2876
  this.breakouts.on(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN, function () {
2810
- if (_this4.isJoined()) {
2811
- _triggerProxy.default.trigger(_this4, {
2877
+ if (_this5.isJoined()) {
2878
+ _triggerProxy.default.trigger(_this5, {
2812
2879
  file: 'meeting/index',
2813
2880
  function: 'setUpBreakoutsListener'
2814
2881
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_ASK_RETURN_TO_MAIN);
2815
2882
  }
2816
2883
  });
2817
2884
  this.breakouts.on(_constants.BREAKOUTS.EVENTS.LEAVE_BREAKOUT, function () {
2818
- _triggerProxy.default.trigger(_this4, {
2885
+ _triggerProxy.default.trigger(_this5, {
2819
2886
  file: 'meeting/index',
2820
2887
  function: 'setUpBreakoutsListener'
2821
2888
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_LEAVE);
2822
2889
  });
2823
2890
  this.breakouts.on(_constants.BREAKOUTS.EVENTS.ASK_FOR_HELP, function (helpEvent) {
2824
- _triggerProxy.default.trigger(_this4, {
2891
+ _triggerProxy.default.trigger(_this5, {
2825
2892
  file: 'meeting/index',
2826
2893
  function: 'setUpBreakoutsListener'
2827
2894
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_ASK_FOR_HELP, helpEvent);
2828
2895
  });
2829
2896
  this.breakouts.on(_constants.BREAKOUTS.EVENTS.PRE_ASSIGNMENTS_UPDATE, function () {
2830
- _triggerProxy.default.trigger(_this4, {
2897
+ _triggerProxy.default.trigger(_this5, {
2831
2898
  file: 'meeting/index',
2832
2899
  function: 'setUpBreakoutsListener'
2833
2900
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_PRE_ASSIGNMENTS_UPDATE);
@@ -2843,17 +2910,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2843
2910
  }, {
2844
2911
  key: "setUpInterpretationListener",
2845
2912
  value: function setUpInterpretationListener() {
2846
- var _this5 = this;
2913
+ var _this6 = this;
2847
2914
  // TODO: check if its getting used or not
2848
2915
  this.simultaneousInterpretation.on(_constants.INTERPRETATION.EVENTS.SUPPORT_LANGUAGES_UPDATE, function () {
2849
- _triggerProxy.default.trigger(_this5, {
2916
+ _triggerProxy.default.trigger(_this6, {
2850
2917
  file: 'meeting/index',
2851
2918
  function: 'setUpInterpretationListener'
2852
2919
  }, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_SUPPORT_LANGUAGES_UPDATE);
2853
2920
  });
2854
2921
  // TODO: check if its getting used or not
2855
2922
  this.simultaneousInterpretation.on(_constants.INTERPRETATION.EVENTS.HANDOFF_REQUESTS_ARRIVED, function (payload) {
2856
- _triggerProxy.default.trigger(_this5, {
2923
+ _triggerProxy.default.trigger(_this6, {
2857
2924
  file: 'meeting/index',
2858
2925
  function: 'setUpInterpretationListener'
2859
2926
  }, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_HANDOFF_REQUESTS_ARRIVED, payload);
@@ -2895,30 +2962,30 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2895
2962
  }, {
2896
2963
  key: "setUpLocusInfoMediaInactiveListener",
2897
2964
  value: function setUpLocusInfoMediaInactiveListener() {
2898
- var _this6 = this;
2965
+ var _this7 = this;
2899
2966
  // User gets kicked off the meeting due to inactivity or user did a refresh
2900
2967
  this.locusInfo.on(_constants.EVENTS.DISCONNECT_DUE_TO_INACTIVITY, function (res) {
2901
2968
  // https:// jira-eng-gpk2.cisco.com/jira/browse/SPARK-240520
2902
2969
  // TODO: send custom parameter explaining why the inactivity happened
2903
2970
  // refresh , no media or network got dsconnected or something else
2904
2971
  _metrics.default.sendBehavioralMetric(_constants2.default.DISCONNECT_DUE_TO_INACTIVITY, {
2905
- correlation_id: _this6.correlationId,
2906
- locus_id: _this6.locusId
2972
+ correlation_id: _this7.correlationId,
2973
+ locus_id: _this7.locusId
2907
2974
  });
2908
2975
 
2909
2976
  // Upload logs on media inactivity
2910
2977
  // Normally media should not be inactive
2911
- _triggerProxy.default.trigger(_this6, {
2978
+ _triggerProxy.default.trigger(_this7, {
2912
2979
  file: 'meeting/index',
2913
2980
  function: 'setUpLocusInfoMediaInactiveListener'
2914
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this6);
2981
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this7);
2915
2982
  _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMediaInactiveListener --> Meeting disconnected due to inactivity: ".concat(res.reason));
2916
2983
 
2917
2984
  // @ts-ignore - config coming from registerPlugin
2918
- if (_this6.config.reconnection.autoRejoin) {
2919
- _this6.reconnect();
2985
+ if (_this7.config.reconnection.autoRejoin) {
2986
+ _this7.reconnect();
2920
2987
  } else {
2921
- _triggerProxy.default.trigger(_this6, {
2988
+ _triggerProxy.default.trigger(_this7, {
2922
2989
  file: 'meeting/index',
2923
2990
  function: 'setUpLocusInfoMediaInactiveListener'
2924
2991
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_LEFT, res.reason);
@@ -2935,16 +3002,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2935
3002
  }, {
2936
3003
  key: "setUpLocusInfoAssignHostListener",
2937
3004
  value: function setUpLocusInfoAssignHostListener() {
2938
- var _this7 = this;
3005
+ var _this8 = this;
2939
3006
  this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_CAN_ASSIGN_HOST, function (payload) {
2940
- var changed = _this7.inMeetingActions.set({
3007
+ var changed = _this8.inMeetingActions.set({
2941
3008
  canAssignHost: payload.canAssignHost
2942
3009
  });
2943
3010
  if (changed) {
2944
- _triggerProxy.default.trigger(_this7, {
3011
+ _triggerProxy.default.trigger(_this8, {
2945
3012
  file: 'meeting/index',
2946
3013
  function: 'setUpLocusInfoAssignHostListener'
2947
- }, _constants.EVENT_TRIGGERS.MEETING_ACTIONS_UPDATE, _this7.inMeetingActions.get());
3014
+ }, _constants.EVENT_TRIGGERS.MEETING_ACTIONS_UPDATE, _this8.inMeetingActions.get());
2948
3015
  }
2949
3016
  });
2950
3017
  }
@@ -2958,9 +3025,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2958
3025
  }, {
2959
3026
  key: "setUpLocusFullStateListener",
2960
3027
  value: function setUpLocusFullStateListener() {
2961
- var _this8 = this;
3028
+ var _this9 = this;
2962
3029
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.FULL_STATE_MEETING_STATE_CHANGE, function (payload) {
2963
- _triggerProxy.default.trigger(_this8, {
3030
+ _triggerProxy.default.trigger(_this9, {
2964
3031
  file: 'meeting/index',
2965
3032
  function: 'setUpLocusFullStateListener'
2966
3033
  }, _constants.EVENT_TRIGGERS.MEETING_STATE_CHANGE, {
@@ -2968,7 +3035,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2968
3035
  });
2969
3036
  });
2970
3037
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.FULL_STATE_TYPE_UPDATE, function (payload) {
2971
- _this8.members.locusFullStateTypeUpdate(payload);
3038
+ _this9.members.locusFullStateTypeUpdate(payload);
2972
3039
  });
2973
3040
  }
2974
3041
 
@@ -3007,13 +3074,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3007
3074
  }, {
3008
3075
  key: "setUpLocusSelfListener",
3009
3076
  value: function setUpLocusSelfListener() {
3010
- var _this9 = this;
3077
+ var _this10 = this;
3011
3078
  this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_SELF, function (payload) {
3012
- _this9.members.locusSelfUpdate(payload);
3013
- _this9.pstnUpdate(payload);
3079
+ _this10.members.locusSelfUpdate(payload);
3080
+ _this10.pstnUpdate(payload);
3014
3081
 
3015
3082
  // If user moved to a JOINED state and there is a pending floor grant trigger it
3016
- _this9.requestScreenShareFloorIfPending();
3083
+ _this10.requestScreenShareFloorIfPending();
3017
3084
  });
3018
3085
  }
3019
3086
 
@@ -3027,14 +3094,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3027
3094
  }, {
3028
3095
  key: "pstnUpdate",
3029
3096
  value: function pstnUpdate(payload) {
3030
- var _this10 = this;
3097
+ var _this11 = this;
3031
3098
  if (this.locusInfo.self) {
3032
3099
  var _payload$newSelf, _payload$newSelf2;
3033
3100
  var dialInPstnDevice = (_payload$newSelf = payload.newSelf) === null || _payload$newSelf === void 0 ? void 0 : _payload$newSelf.pstnDevices.find(function (device) {
3034
- return device.url === _this10.dialInUrl;
3101
+ return device.url === _this11.dialInUrl;
3035
3102
  });
3036
3103
  var dialOutPstnDevice = (_payload$newSelf2 = payload.newSelf) === null || _payload$newSelf2 === void 0 ? void 0 : _payload$newSelf2.pstnDevices.find(function (device) {
3037
- return device.url === _this10.dialOutUrl;
3104
+ return device.url === _this11.dialOutUrl;
3038
3105
  });
3039
3106
  var changed = false;
3040
3107
  if (dialInPstnDevice) {
@@ -3083,9 +3150,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3083
3150
  }, {
3084
3151
  key: "setUpLocusHostListener",
3085
3152
  value: function setUpLocusHostListener() {
3086
- var _this11 = this;
3153
+ var _this12 = this;
3087
3154
  this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_HOST, function (payload) {
3088
- _this11.members.locusHostUpdate(payload);
3155
+ _this12.members.locusHostUpdate(payload);
3089
3156
  });
3090
3157
  }
3091
3158
 
@@ -3100,9 +3167,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3100
3167
  }, {
3101
3168
  key: "setUpLocusParticipantsListener",
3102
3169
  value: function setUpLocusParticipantsListener() {
3103
- var _this12 = this;
3170
+ var _this13 = this;
3104
3171
  this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_PARTICIPANTS, function (payload) {
3105
- _this12.members.locusParticipantsUpdate(payload);
3172
+ _this13.members.locusParticipantsUpdate(payload);
3106
3173
  });
3107
3174
  }
3108
3175
 
@@ -3127,7 +3194,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3127
3194
  }, {
3128
3195
  key: "setupLocusControlsListener",
3129
3196
  value: function setupLocusControlsListener() {
3130
- var _this13 = this;
3197
+ var _this14 = this;
3131
3198
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RECORDING_UPDATED, function (_ref9) {
3132
3199
  var state = _ref9.state,
3133
3200
  modifiedBy = _ref9.modifiedBy,
@@ -3152,19 +3219,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3152
3219
  }
3153
3220
 
3154
3221
  // `RESUMED` state should be converted to `RECORDING` after triggering the event
3155
- _this13.recording = {
3222
+ _this14.recording = {
3156
3223
  state: state === _constants.RECORDING_STATE.RESUMED ? _constants.RECORDING_STATE.RECORDING : state,
3157
3224
  modifiedBy: modifiedBy,
3158
3225
  lastModified: lastModified
3159
3226
  };
3160
- _triggerProxy.default.trigger(_this13, {
3227
+ _triggerProxy.default.trigger(_this14, {
3161
3228
  file: 'meeting/index',
3162
3229
  function: 'setupLocusControlsListener'
3163
- }, event, _this13.recording);
3230
+ }, event, _this14.recording);
3164
3231
  });
3165
3232
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_CONTAINER_UPDATED, function (_ref10) {
3166
3233
  var meetingContainerUrl = _ref10.meetingContainerUrl;
3167
- _triggerProxy.default.trigger(_this13, {
3234
+ _triggerProxy.default.trigger(_this14, {
3168
3235
  file: 'meeting/index',
3169
3236
  function: 'setupLocusControlsListener'
3170
3237
  }, _constants.EVENT_TRIGGERS.MEETING_MEETING_CONTAINER_UPDATE, {
@@ -3175,12 +3242,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3175
3242
  var caption = _ref11.caption,
3176
3243
  transcribing = _ref11.transcribing;
3177
3244
  // user need to be joined to start the llm and receive transcription
3178
- if (_this13.isJoined()) {
3245
+ if (_this14.isJoined()) {
3179
3246
  // @ts-ignore - config coming from registerPlugin
3180
- if (transcribing && !_this13.transcription) {
3181
- _this13.startTranscription();
3182
- } else if (!transcribing && _this13.transcription) {
3183
- _triggerProxy.default.trigger(_this13, {
3247
+ if (transcribing && !_this14.transcription) {
3248
+ _this14.startTranscription();
3249
+ } else if (!transcribing && _this14.transcription) {
3250
+ _triggerProxy.default.trigger(_this14, {
3184
3251
  file: 'meeting/index',
3185
3252
  function: 'setupLocusControlsListener'
3186
3253
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION, {
@@ -3192,7 +3259,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3192
3259
  });
3193
3260
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_MANUAL_CAPTION_UPDATED, function (_ref12) {
3194
3261
  var enable = _ref12.enable;
3195
- _triggerProxy.default.trigger(_this13, {
3262
+ _triggerProxy.default.trigger(_this14, {
3196
3263
  file: 'meeting/index',
3197
3264
  function: 'setupLocusControlsListener'
3198
3265
  }, _constants.EVENT_TRIGGERS.MEETING_MANUAL_CAPTION_UPDATED, {
@@ -3201,23 +3268,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3201
3268
  });
3202
3269
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_BREAKOUT_UPDATED, function (_ref13) {
3203
3270
  var breakout = _ref13.breakout;
3204
- _this13.breakouts.updateBreakout(breakout);
3205
- _triggerProxy.default.trigger(_this13, {
3271
+ _this14.breakouts.updateBreakout(breakout);
3272
+ _triggerProxy.default.trigger(_this14, {
3206
3273
  file: 'meeting/index',
3207
3274
  function: 'setupLocusControlsListener'
3208
3275
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
3209
3276
  });
3210
3277
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_INTERPRETATION_UPDATED, function (_ref14) {
3211
3278
  var interpretation = _ref14.interpretation;
3212
- _this13.simultaneousInterpretation.updateInterpretation(interpretation);
3213
- _triggerProxy.default.trigger(_this13, {
3279
+ _this14.simultaneousInterpretation.updateInterpretation(interpretation);
3280
+ _triggerProxy.default.trigger(_this14, {
3214
3281
  file: 'meeting/index',
3215
3282
  function: 'setupLocusControlsListener'
3216
3283
  }, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE);
3217
3284
  });
3218
3285
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_ENTRY_EXIT_TONE_UPDATED, function (_ref15) {
3219
3286
  var entryExitTone = _ref15.entryExitTone;
3220
- _triggerProxy.default.trigger(_this13, {
3287
+ _triggerProxy.default.trigger(_this14, {
3221
3288
  file: 'meeting/index',
3222
3289
  function: 'setupLocusControlsListener'
3223
3290
  }, _constants.EVENT_TRIGGERS.MEETING_ENTRY_EXIT_TONE_UPDATE, {
@@ -3226,7 +3293,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3226
3293
  });
3227
3294
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MUTE_ON_ENTRY_CHANGED, function (_ref16) {
3228
3295
  var state = _ref16.state;
3229
- _triggerProxy.default.trigger(_this13, {
3296
+ _triggerProxy.default.trigger(_this14, {
3230
3297
  file: 'meeting/index',
3231
3298
  function: 'setupLocusControlsListener'
3232
3299
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_MUTE_ON_ENTRY_UPDATED, {
@@ -3235,7 +3302,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3235
3302
  });
3236
3303
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_SHARE_CONTROL_CHANGED, function (_ref17) {
3237
3304
  var state = _ref17.state;
3238
- _triggerProxy.default.trigger(_this13, {
3305
+ _triggerProxy.default.trigger(_this14, {
3239
3306
  file: 'meeting/index',
3240
3307
  function: 'setupLocusControlsListener'
3241
3308
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_SHARE_CONTROL_UPDATED, {
@@ -3244,7 +3311,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3244
3311
  });
3245
3312
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_DISALLOW_UNMUTE_CHANGED, function (_ref18) {
3246
3313
  var state = _ref18.state;
3247
- _triggerProxy.default.trigger(_this13, {
3314
+ _triggerProxy.default.trigger(_this14, {
3248
3315
  file: 'meeting/index',
3249
3316
  function: 'setupLocusControlsListener'
3250
3317
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_DISALLOW_UNMUTE_UPDATED, {
@@ -3253,7 +3320,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3253
3320
  });
3254
3321
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_REACTIONS_CHANGED, function (_ref19) {
3255
3322
  var state = _ref19.state;
3256
- _triggerProxy.default.trigger(_this13, {
3323
+ _triggerProxy.default.trigger(_this14, {
3257
3324
  file: 'meeting/index',
3258
3325
  function: 'setupLocusControlsListener'
3259
3326
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_REACTIONS_UPDATED, {
@@ -3262,7 +3329,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3262
3329
  });
3263
3330
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED, function (_ref20) {
3264
3331
  var state = _ref20.state;
3265
- _triggerProxy.default.trigger(_this13, {
3332
+ _triggerProxy.default.trigger(_this14, {
3266
3333
  file: 'meeting/index',
3267
3334
  function: 'setupLocusControlsListener'
3268
3335
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_VIEW_THE_PARTICIPANTS_LIST_UPDATED, {
@@ -3271,7 +3338,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3271
3338
  });
3272
3339
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RAISE_HAND_CHANGED, function (_ref21) {
3273
3340
  var state = _ref21.state;
3274
- _triggerProxy.default.trigger(_this13, {
3341
+ _triggerProxy.default.trigger(_this14, {
3275
3342
  file: 'meeting/index',
3276
3343
  function: 'setupLocusControlsListener'
3277
3344
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_RAISE_HAND_UPDATED, {
@@ -3280,7 +3347,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3280
3347
  });
3281
3348
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_WEBCAST_CHANGED, function (_ref22) {
3282
3349
  var state = _ref22.state;
3283
- _triggerProxy.default.trigger(_this13, {
3350
+ _triggerProxy.default.trigger(_this14, {
3284
3351
  file: 'meeting/index',
3285
3352
  function: 'setupLocusControlsListener'
3286
3353
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_WEBCAST_UPDATED, {
@@ -3289,7 +3356,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3289
3356
  });
3290
3357
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_FULL_CHANGED, function (_ref23) {
3291
3358
  var state = _ref23.state;
3292
- _triggerProxy.default.trigger(_this13, {
3359
+ _triggerProxy.default.trigger(_this14, {
3293
3360
  file: 'meeting/index',
3294
3361
  function: 'setupLocusControlsListener'
3295
3362
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_MEETING_FULL_UPDATED, {
@@ -3298,8 +3365,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3298
3365
  });
3299
3366
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_PRACTICE_SESSION_STATUS_UPDATED, function (_ref24) {
3300
3367
  var state = _ref24.state;
3301
- _this13.webinar.updatePracticeSessionStatus(state);
3302
- _triggerProxy.default.trigger(_this13, {
3368
+ _this14.webinar.updatePracticeSessionStatus(state);
3369
+ _triggerProxy.default.trigger(_this14, {
3303
3370
  file: 'meeting/index',
3304
3371
  function: 'setupLocusControlsListener'
3305
3372
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_PRACTICE_SESSION_STATUS_UPDATED, {
@@ -3308,7 +3375,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3308
3375
  });
3309
3376
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_STAGE_VIEW_UPDATED, function (_ref25) {
3310
3377
  var state = _ref25.state;
3311
- _triggerProxy.default.trigger(_this13, {
3378
+ _triggerProxy.default.trigger(_this14, {
3312
3379
  file: 'meeting/index',
3313
3380
  function: 'setupLocusControlsListener'
3314
3381
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_STAGE_VIEW_UPDATED, {
@@ -3317,7 +3384,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3317
3384
  });
3318
3385
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIDEO_CHANGED, function (_ref26) {
3319
3386
  var state = _ref26.state;
3320
- _triggerProxy.default.trigger(_this13, {
3387
+ _triggerProxy.default.trigger(_this14, {
3321
3388
  file: 'meeting/index',
3322
3389
  function: 'setupLocusControlsListener'
3323
3390
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_VIDEO_UPDATED, {
@@ -3360,37 +3427,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3360
3427
  }, {
3361
3428
  key: "setUpLocusMediaSharesListener",
3362
3429
  value: function setUpLocusMediaSharesListener() {
3363
- var _this14 = this;
3430
+ var _this15 = this;
3364
3431
  // Will get triggered on local and remote share
3365
3432
  this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_MEDIA_SHARES, /*#__PURE__*/function () {
3366
3433
  var _ref27 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(payload) {
3367
3434
  var _payload$previous, _payload$previous2;
3368
- var _payload$current, contentShare, whiteboardShare, previousContentShare, previousWhiteboardShare, newShareStatus, _this14$locusInfo, _this14$locusInfo$inf, _this14$webinar, oldShareStatus, sendStartedSharingRemote, _this14$mediaProperti;
3435
+ var _payload$current, contentShare, whiteboardShare, previousContentShare, previousWhiteboardShare, newShareStatus, _this15$locusInfo, _this15$locusInfo$inf, _this15$webinar, oldShareStatus, sendStartedSharingRemote, _this15$mediaProperti;
3369
3436
  return _regenerator.default.wrap(function _callee8$(_context8) {
3370
3437
  while (1) switch (_context8.prev = _context8.next) {
3371
3438
  case 0:
3372
3439
  _payload$current = payload.current, contentShare = _payload$current.content, whiteboardShare = _payload$current.whiteboard;
3373
3440
  previousContentShare = (_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.content;
3374
3441
  previousWhiteboardShare = (_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.whiteboard;
3375
- _this14.triggerAnnotationInfoEvent(contentShare, previousContentShare);
3442
+ _this15.triggerAnnotationInfoEvent(contentShare, previousContentShare);
3376
3443
  if (!(!payload.forceUpdate && contentShare.beneficiaryId === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.beneficiaryId) && contentShare.disposition === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.disposition) && contentShare.deviceUrlSharing === previousContentShare.deviceUrlSharing && whiteboardShare.beneficiaryId === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.beneficiaryId) && whiteboardShare.disposition === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.disposition) && whiteboardShare.resourceUrl === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.resourceUrl) && contentShare.resourceType === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.resourceType))) {
3377
3444
  _context8.next = 6;
3378
3445
  break;
3379
3446
  }
3380
3447
  return _context8.abrupt("return");
3381
3448
  case 6:
3382
- newShareStatus = _this14.shareStatus; // REMOTE - check if remote started sharing
3383
- if (_this14.selfId !== contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
3449
+ newShareStatus = _this15.shareStatus; // REMOTE - check if remote started sharing
3450
+ if (_this15.selfId !== contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
3384
3451
  // CONTENT - sharing content remote
3385
3452
  newShareStatus = _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE;
3386
3453
  }
3387
3454
  // LOCAL - check if we started sharing content
3388
- else if (_this14.selfId === contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED && contentShare.deviceUrlSharing === _this14.deviceUrl) {
3455
+ else if (_this15.selfId === contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED && contentShare.deviceUrlSharing === _this15.deviceUrl) {
3389
3456
  // CONTENT - sharing content local
3390
3457
  newShareStatus = _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE;
3391
3458
  }
3392
3459
  // SAME USER REMOTE - check if same user started sharing content from another client
3393
- else if (_this14.selfId === contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED && contentShare.deviceUrlSharing !== _this14.deviceUrl) {
3460
+ else if (_this15.selfId === contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED && contentShare.deviceUrlSharing !== _this15.deviceUrl) {
3394
3461
  // CONTENT - same user sharing content remote
3395
3462
  newShareStatus = _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE;
3396
3463
  }
@@ -3400,32 +3467,32 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3400
3467
  else if (whiteboardShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
3401
3468
  // WHITEBOARD - sharing whiteboard
3402
3469
  // Webinar attendee should receive whiteboard as remote share
3403
- newShareStatus = (_this14$locusInfo = _this14.locusInfo) !== null && _this14$locusInfo !== void 0 && (_this14$locusInfo$inf = _this14$locusInfo.info) !== null && _this14$locusInfo$inf !== void 0 && _this14$locusInfo$inf.isWebinar && (_this14$webinar = _this14.webinar) !== null && _this14$webinar !== void 0 && _this14$webinar.selfIsAttendee ? _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE : _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE;
3470
+ newShareStatus = (_this15$locusInfo = _this15.locusInfo) !== null && _this15$locusInfo !== void 0 && (_this15$locusInfo$inf = _this15$locusInfo.info) !== null && _this15$locusInfo$inf !== void 0 && _this15$locusInfo$inf.isWebinar && (_this15$webinar = _this15.webinar) !== null && _this15$webinar !== void 0 && _this15$webinar.selfIsAttendee ? _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE : _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE;
3404
3471
  }
3405
3472
  // or if content share is either released or null and whiteboard share is either released or null, no one is sharing
3406
3473
  else if ((previousContentShare && contentShare.disposition === _constants.FLOOR_ACTION.RELEASED || contentShare.disposition === null) && (previousWhiteboardShare && whiteboardShare.disposition === _constants.FLOOR_ACTION.RELEASED || whiteboardShare.disposition === null)) {
3407
3474
  newShareStatus = _constants.SHARE_STATUS.NO_SHARE;
3408
3475
  }
3409
- _loggerProxy.default.logger.info("Meeting:index#setUpLocusInfoMediaInactiveListener --> this.shareStatus=".concat(_this14.shareStatus, " newShareStatus=").concat(newShareStatus));
3410
- if (!(newShareStatus !== _this14.shareStatus)) {
3476
+ _loggerProxy.default.logger.info("Meeting:index#setUpLocusInfoMediaInactiveListener --> this.shareStatus=".concat(_this15.shareStatus, " newShareStatus=").concat(newShareStatus));
3477
+ if (!(newShareStatus !== _this15.shareStatus)) {
3411
3478
  _context8.next = 46;
3412
3479
  break;
3413
3480
  }
3414
- oldShareStatus = _this14.shareStatus; // update our state before we send out any notifications
3415
- _this14.shareStatus = newShareStatus;
3481
+ oldShareStatus = _this15.shareStatus; // update our state before we send out any notifications
3482
+ _this15.shareStatus = newShareStatus;
3416
3483
 
3417
3484
  // send out "stop" notifications for the old state
3418
3485
  _context8.t0 = oldShareStatus;
3419
3486
  _context8.next = _context8.t0 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 15 : _context8.t0 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 17 : _context8.t0 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 19 : _context8.t0 === _constants.SHARE_STATUS.NO_SHARE ? 21 : 22;
3420
3487
  break;
3421
3488
  case 15:
3422
- _triggerProxy.default.trigger(_this14, {
3489
+ _triggerProxy.default.trigger(_this15, {
3423
3490
  file: 'meetings/index',
3424
3491
  function: 'remoteShare'
3425
3492
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_REMOTE);
3426
3493
  return _context8.abrupt("break", 23);
3427
3494
  case 17:
3428
- _triggerProxy.default.trigger(_this14, {
3495
+ _triggerProxy.default.trigger(_this15, {
3429
3496
  file: 'meeting/index',
3430
3497
  function: 'localShare'
3431
3498
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
@@ -3433,7 +3500,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3433
3500
  });
3434
3501
  return _context8.abrupt("break", 23);
3435
3502
  case 19:
3436
- _triggerProxy.default.trigger(_this14, {
3503
+ _triggerProxy.default.trigger(_this15, {
3437
3504
  file: 'meeting/index',
3438
3505
  function: 'stopWhiteboardShare'
3439
3506
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_WHITEBOARD);
@@ -3448,25 +3515,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3448
3515
  break;
3449
3516
  case 26:
3450
3517
  sendStartedSharingRemote = function sendStartedSharingRemote() {
3451
- _this14.remoteShareInstanceId = contentShare.shareInstanceId;
3452
- _triggerProxy.default.trigger(_this14, {
3518
+ _this15.remoteShareInstanceId = contentShare.shareInstanceId;
3519
+ _triggerProxy.default.trigger(_this15, {
3453
3520
  file: 'meetings/index',
3454
3521
  function: 'remoteShare'
3455
3522
  }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_REMOTE, {
3456
3523
  memberId: contentShare.beneficiaryId,
3457
3524
  url: contentShare.url,
3458
- shareInstanceId: _this14.remoteShareInstanceId,
3525
+ shareInstanceId: _this15.remoteShareInstanceId,
3459
3526
  annotationInfo: contentShare.annotation,
3460
3527
  resourceType: contentShare.resourceType
3461
3528
  });
3462
3529
  };
3463
3530
  _context8.prev = 27;
3464
- if (!((_this14$mediaProperti = _this14.mediaProperties.mediaDirection) !== null && _this14$mediaProperti !== void 0 && _this14$mediaProperti.sendShare && oldShareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE)) {
3531
+ if (!((_this15$mediaProperti = _this15.mediaProperties.mediaDirection) !== null && _this15$mediaProperti !== void 0 && _this15$mediaProperti.sendShare && oldShareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE)) {
3465
3532
  _context8.next = 31;
3466
3533
  break;
3467
3534
  }
3468
3535
  _context8.next = 31;
3469
- return _this14.unpublishStreams([_this14.mediaProperties.shareVideoStream, _this14.mediaProperties.shareAudioStream]);
3536
+ return _this15.unpublishStreams([_this15.mediaProperties.shareVideoStream, _this15.mediaProperties.shareAudioStream]);
3470
3537
  case 31:
3471
3538
  _context8.prev = 31;
3472
3539
  sendStartedSharingRemote();
@@ -3474,24 +3541,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3474
3541
  case 34:
3475
3542
  return _context8.abrupt("break", 43);
3476
3543
  case 35:
3477
- _triggerProxy.default.trigger(_this14, {
3544
+ _triggerProxy.default.trigger(_this15, {
3478
3545
  file: 'meeting/index',
3479
3546
  function: 'share'
3480
3547
  }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_LOCAL);
3481
3548
  // @ts-ignore
3482
- _this14.webex.internal.newMetrics.submitClientEvent({
3549
+ _this15.webex.internal.newMetrics.submitClientEvent({
3483
3550
  name: 'client.share.floor-granted.local',
3484
3551
  payload: {
3485
3552
  mediaType: 'share',
3486
- shareInstanceId: _this14.localShareInstanceId
3553
+ shareInstanceId: _this15.localShareInstanceId
3487
3554
  },
3488
3555
  options: {
3489
- meetingId: _this14.id
3556
+ meetingId: _this15.id
3490
3557
  }
3491
3558
  });
3492
3559
  return _context8.abrupt("break", 43);
3493
3560
  case 38:
3494
- _triggerProxy.default.trigger(_this14, {
3561
+ _triggerProxy.default.trigger(_this15, {
3495
3562
  file: 'meeting/index',
3496
3563
  function: 'startWhiteboardShare'
3497
3564
  }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_WHITEBOARD, {
@@ -3499,13 +3566,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3499
3566
  memberId: whiteboardShare.beneficiaryId
3500
3567
  });
3501
3568
  // @ts-ignore
3502
- _this14.webex.internal.newMetrics.submitClientEvent({
3569
+ _this15.webex.internal.newMetrics.submitClientEvent({
3503
3570
  name: 'client.share.floor-granted.local',
3504
3571
  payload: {
3505
3572
  mediaType: 'whiteboard'
3506
3573
  },
3507
3574
  options: {
3508
- meetingId: _this14.id
3575
+ meetingId: _this15.id
3509
3576
  }
3510
3577
  });
3511
3578
  return _context8.abrupt("break", 43);
@@ -3514,29 +3581,29 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3514
3581
  case 42:
3515
3582
  return _context8.abrupt("break", 43);
3516
3583
  case 43:
3517
- _this14.members.locusMediaSharesUpdate(payload);
3584
+ _this15.members.locusMediaSharesUpdate(payload);
3518
3585
  _context8.next = 47;
3519
3586
  break;
3520
3587
  case 46:
3521
3588
  if (newShareStatus === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE) {
3522
3589
  // if we got here, then some remote participant has stolen
3523
3590
  // the presentation from another remote participant
3524
- _this14.remoteShareInstanceId = contentShare.shareInstanceId;
3525
- _triggerProxy.default.trigger(_this14, {
3591
+ _this15.remoteShareInstanceId = contentShare.shareInstanceId;
3592
+ _triggerProxy.default.trigger(_this15, {
3526
3593
  file: 'meetings/index',
3527
3594
  function: 'remoteShare'
3528
3595
  }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_REMOTE, {
3529
3596
  memberId: contentShare.beneficiaryId,
3530
3597
  url: contentShare.url,
3531
- shareInstanceId: _this14.remoteShareInstanceId,
3598
+ shareInstanceId: _this15.remoteShareInstanceId,
3532
3599
  annotationInfo: contentShare.annotation,
3533
3600
  resourceType: contentShare.resourceType
3534
3601
  });
3535
- _this14.members.locusMediaSharesUpdate(payload);
3602
+ _this15.members.locusMediaSharesUpdate(payload);
3536
3603
  } else if (newShareStatus === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE) {
3537
3604
  // if we got here, then some remote participant has stolen
3538
3605
  // the presentation from another remote participant
3539
- _triggerProxy.default.trigger(_this14, {
3606
+ _triggerProxy.default.trigger(_this15, {
3540
3607
  file: 'meeting/index',
3541
3608
  function: 'startWhiteboardShare'
3542
3609
  }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_WHITEBOARD, {
@@ -3544,16 +3611,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3544
3611
  memberId: whiteboardShare.beneficiaryId
3545
3612
  });
3546
3613
  // @ts-ignore
3547
- _this14.webex.internal.newMetrics.submitClientEvent({
3614
+ _this15.webex.internal.newMetrics.submitClientEvent({
3548
3615
  name: 'client.share.floor-granted.local',
3549
3616
  payload: {
3550
3617
  mediaType: 'whiteboard'
3551
3618
  },
3552
3619
  options: {
3553
- meetingId: _this14.id
3620
+ meetingId: _this15.id
3554
3621
  }
3555
3622
  });
3556
- _this14.members.locusMediaSharesUpdate(payload);
3623
+ _this15.members.locusMediaSharesUpdate(payload);
3557
3624
  }
3558
3625
  case 47:
3559
3626
  case "end":
@@ -3577,19 +3644,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3577
3644
  }, {
3578
3645
  key: "setUpLocusUrlListener",
3579
3646
  value: function setUpLocusUrlListener() {
3580
- var _this15 = this;
3647
+ var _this16 = this;
3581
3648
  this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_URL, function (payload) {
3582
- var _this15$locusUrl;
3583
- _this15.members.locusUrlUpdate(payload);
3584
- _this15.breakouts.locusUrlUpdate(payload);
3585
- _this15.simultaneousInterpretation.locusUrlUpdate(payload);
3586
- _this15.annotation.locusUrlUpdate(payload);
3587
- _this15.locusUrl = payload;
3588
- _this15.locusId = (_this15$locusUrl = _this15.locusUrl) === null || _this15$locusUrl === void 0 ? void 0 : _this15$locusUrl.split('/').pop();
3589
- _this15.recordingController.setLocusUrl(_this15.locusUrl);
3590
- _this15.controlsOptionsManager.setLocusUrl(_this15.locusUrl);
3591
- _this15.webinar.locusUrlUpdate(payload);
3592
- _triggerProxy.default.trigger(_this15, {
3649
+ var _this16$locusUrl;
3650
+ _this16.members.locusUrlUpdate(payload);
3651
+ _this16.breakouts.locusUrlUpdate(payload);
3652
+ _this16.simultaneousInterpretation.locusUrlUpdate(payload);
3653
+ _this16.annotation.locusUrlUpdate(payload);
3654
+ _this16.locusUrl = payload;
3655
+ _this16.locusId = (_this16$locusUrl = _this16.locusUrl) === null || _this16$locusUrl === void 0 ? void 0 : _this16$locusUrl.split('/').pop();
3656
+ _this16.recordingController.setLocusUrl(_this16.locusUrl);
3657
+ _this16.controlsOptionsManager.setLocusUrl(_this16.locusUrl);
3658
+ _this16.webinar.locusUrlUpdate(payload);
3659
+ _triggerProxy.default.trigger(_this16, {
3593
3660
  file: 'meeting/index',
3594
3661
  function: 'setUpLocusSelfListener'
3595
3662
  }, _constants.EVENT_TRIGGERS.MEETING_LOCUS_URL_UPDATE, {
@@ -3610,14 +3677,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3610
3677
  }, {
3611
3678
  key: "setUpLocusServicesListener",
3612
3679
  value: function setUpLocusServicesListener() {
3613
- var _this16 = this;
3680
+ var _this17 = this;
3614
3681
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LINKS_SERVICES, function (payload) {
3615
- var _payload$services, _payload$services$rec, _this16$locusInfo, _this16$locusInfo$ful, _payload$services2, _payload$services2$br, _payload$services3, _payload$services3$ap, _payload$services4, _payload$services4$ap;
3616
- _this16.recordingController.setServiceUrl(payload === null || payload === void 0 ? void 0 : (_payload$services = payload.services) === null || _payload$services === void 0 ? void 0 : (_payload$services$rec = _payload$services.record) === null || _payload$services$rec === void 0 ? void 0 : _payload$services$rec.url);
3617
- _this16.recordingController.setSessionId((_this16$locusInfo = _this16.locusInfo) === null || _this16$locusInfo === void 0 ? void 0 : (_this16$locusInfo$ful = _this16$locusInfo.fullState) === null || _this16$locusInfo$ful === void 0 ? void 0 : _this16$locusInfo$ful.sessionId);
3618
- _this16.breakouts.breakoutServiceUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services2 = payload.services) === null || _payload$services2 === void 0 ? void 0 : (_payload$services2$br = _payload$services2.breakout) === null || _payload$services2$br === void 0 ? void 0 : _payload$services2$br.url);
3619
- _this16.annotation.approvalUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services3 = payload.services) === null || _payload$services3 === void 0 ? void 0 : (_payload$services3$ap = _payload$services3.approval) === null || _payload$services3$ap === void 0 ? void 0 : _payload$services3$ap.url);
3620
- _this16.simultaneousInterpretation.approvalUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services4 = payload.services) === null || _payload$services4 === void 0 ? void 0 : (_payload$services4$ap = _payload$services4.approval) === null || _payload$services4$ap === void 0 ? void 0 : _payload$services4$ap.url);
3682
+ var _payload$services, _payload$services$rec, _this17$locusInfo, _this17$locusInfo$ful, _payload$services2, _payload$services2$br, _payload$services3, _payload$services3$ap, _payload$services4, _payload$services4$ap;
3683
+ _this17.recordingController.setServiceUrl(payload === null || payload === void 0 ? void 0 : (_payload$services = payload.services) === null || _payload$services === void 0 ? void 0 : (_payload$services$rec = _payload$services.record) === null || _payload$services$rec === void 0 ? void 0 : _payload$services$rec.url);
3684
+ _this17.recordingController.setSessionId((_this17$locusInfo = _this17.locusInfo) === null || _this17$locusInfo === void 0 ? void 0 : (_this17$locusInfo$ful = _this17$locusInfo.fullState) === null || _this17$locusInfo$ful === void 0 ? void 0 : _this17$locusInfo$ful.sessionId);
3685
+ _this17.breakouts.breakoutServiceUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services2 = payload.services) === null || _payload$services2 === void 0 ? void 0 : (_payload$services2$br = _payload$services2.breakout) === null || _payload$services2$br === void 0 ? void 0 : _payload$services2$br.url);
3686
+ _this17.annotation.approvalUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services3 = payload.services) === null || _payload$services3 === void 0 ? void 0 : (_payload$services3$ap = _payload$services3.approval) === null || _payload$services3$ap === void 0 ? void 0 : _payload$services3$ap.url);
3687
+ _this17.simultaneousInterpretation.approvalUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services4 = payload.services) === null || _payload$services4 === void 0 ? void 0 : (_payload$services4$ap = _payload$services4.approval) === null || _payload$services4$ap === void 0 ? void 0 : _payload$services4$ap.url);
3621
3688
  });
3622
3689
  }
3623
3690
 
@@ -3632,11 +3699,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3632
3699
  }, {
3633
3700
  key: "setUpLocusResourcesListener",
3634
3701
  value: function setUpLocusResourcesListener() {
3635
- var _this17 = this;
3702
+ var _this18 = this;
3636
3703
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LINKS_RESOURCES, function (payload) {
3637
3704
  if (payload) {
3638
- _this17.webinar.updateWebcastUrl(payload);
3639
- _triggerProxy.default.trigger(_this17, {
3705
+ _this18.webinar.updateWebcastUrl(payload);
3706
+ _triggerProxy.default.trigger(_this18, {
3640
3707
  file: 'meeting/index',
3641
3708
  function: 'setUpLocusInfoMeetingInfoListener'
3642
3709
  }, _constants.EVENT_TRIGGERS.MEETING_RESOURCE_LINKS_UPDATE, {
@@ -3655,10 +3722,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3655
3722
  }, {
3656
3723
  key: "setUpLocusInfoMeetingInfoListener",
3657
3724
  value: function setUpLocusInfoMeetingInfoListener() {
3658
- var _this18 = this;
3725
+ var _this19 = this;
3659
3726
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_LOCKED, function (payload) {
3660
3727
  if (payload) {
3661
- _triggerProxy.default.trigger(_this18, {
3728
+ _triggerProxy.default.trigger(_this19, {
3662
3729
  file: 'meeting/index',
3663
3730
  function: 'setUpLocusInfoMeetingInfoListener'
3664
3731
  }, _constants.EVENT_TRIGGERS.MEETING_LOCKED, {
@@ -3668,7 +3735,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3668
3735
  });
3669
3736
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_UNLOCKED, function (payload) {
3670
3737
  if (payload) {
3671
- _triggerProxy.default.trigger(_this18, {
3738
+ _triggerProxy.default.trigger(_this19, {
3672
3739
  file: 'meeting/index',
3673
3740
  function: 'setUpLocusInfoMeetingInfoListener'
3674
3741
  }, _constants.EVENT_TRIGGERS.MEETING_UNLOCKED, {
@@ -3678,14 +3745,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3678
3745
  });
3679
3746
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_INFO_UPDATED, function (_ref28) {
3680
3747
  var isInitializing = _ref28.isInitializing;
3681
- _this18.updateMeetingActions();
3682
- _this18.recordingController.setDisplayHints(_this18.userDisplayHints);
3683
- _this18.recordingController.setUserPolicy(_this18.selfUserPolicies);
3684
- _this18.controlsOptionsManager.setDisplayHints(_this18.userDisplayHints);
3685
- _this18.handleDataChannelUrlChange(_this18.datachannelUrl);
3748
+ _this19.updateMeetingActions();
3749
+ _this19.recordingController.setDisplayHints(_this19.userDisplayHints);
3750
+ _this19.recordingController.setUserPolicy(_this19.selfUserPolicies);
3751
+ _this19.controlsOptionsManager.setDisplayHints(_this19.userDisplayHints);
3752
+ _this19.handleDataChannelUrlChange(_this19.datachannelUrl);
3686
3753
  if (!isInitializing) {
3687
3754
  // send updated trigger only if locus is not initializing the meeting
3688
- _triggerProxy.default.trigger(_this18, {
3755
+ _triggerProxy.default.trigger(_this19, {
3689
3756
  file: 'meetings',
3690
3757
  function: 'setUpLocusInfoMeetingInfoListener'
3691
3758
  }, _constants.EVENT_TRIGGERS.MEETING_INFO_UPDATED);
@@ -3716,10 +3783,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3716
3783
  }, {
3717
3784
  key: "setUpLocusEmbeddedAppsListener",
3718
3785
  value: function setUpLocusEmbeddedAppsListener() {
3719
- var _this19 = this;
3786
+ var _this20 = this;
3720
3787
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.EMBEDDED_APPS_UPDATED, function (embeddedApps) {
3721
3788
  if (embeddedApps) {
3722
- _triggerProxy.default.trigger(_this19, {
3789
+ _triggerProxy.default.trigger(_this20, {
3723
3790
  file: 'meeting/index',
3724
3791
  function: 'setUpLocusEmbeddedAppsListener'
3725
3792
  }, _constants.EVENT_TRIGGERS.MEETING_EMBEDDED_APPS_UPDATE, embeddedApps);
@@ -3736,11 +3803,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3736
3803
  }, {
3737
3804
  key: "setUpLocusInfoSelfListener",
3738
3805
  value: function setUpLocusInfoSelfListener() {
3739
- var _this20 = this;
3806
+ var _this21 = this;
3740
3807
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LOCAL_UNMUTE_REQUIRED, function (payload) {
3741
- if (_this20.audio) {
3742
- _this20.audio.handleServerLocalUnmuteRequired(_this20, payload.unmuteAllowed);
3743
- _triggerProxy.default.trigger(_this20, {
3808
+ if (_this21.audio) {
3809
+ _this21.audio.handleServerLocalUnmuteRequired(_this21, payload.unmuteAllowed);
3810
+ _triggerProxy.default.trigger(_this21, {
3744
3811
  file: 'meeting/index',
3745
3812
  function: 'setUpLocusInfoSelfListener'
3746
3813
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_UNMUTED_BY_OTHERS, {
@@ -3750,13 +3817,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3750
3817
  });
3751
3818
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED, function (payload) {
3752
3819
  if (payload) {
3753
- if (_this20.video) {
3820
+ if (_this21.video) {
3754
3821
  var _payload$muted, _payload$unmuteAllowe;
3755
- payload.muted = (_payload$muted = payload.muted) !== null && _payload$muted !== void 0 ? _payload$muted : _this20.video.isRemotelyMuted();
3756
- payload.unmuteAllowed = (_payload$unmuteAllowe = payload.unmuteAllowed) !== null && _payload$unmuteAllowe !== void 0 ? _payload$unmuteAllowe : _this20.video.isUnmuteAllowed();
3757
- _this20.video.handleServerRemoteMuteUpdate(_this20, payload.muted, payload.unmuteAllowed);
3822
+ payload.muted = (_payload$muted = payload.muted) !== null && _payload$muted !== void 0 ? _payload$muted : _this21.video.isRemotelyMuted();
3823
+ payload.unmuteAllowed = (_payload$unmuteAllowe = payload.unmuteAllowed) !== null && _payload$unmuteAllowe !== void 0 ? _payload$unmuteAllowe : _this21.video.isUnmuteAllowed();
3824
+ _this21.video.handleServerRemoteMuteUpdate(_this21, payload.muted, payload.unmuteAllowed);
3758
3825
  }
3759
- _triggerProxy.default.trigger(_this20, {
3826
+ _triggerProxy.default.trigger(_this21, {
3760
3827
  file: 'meeting/index',
3761
3828
  function: 'setUpLocusInfoSelfListener'
3762
3829
  }, payload.muted ? _constants.EVENT_TRIGGERS.MEETING_SELF_VIDEO_MUTED_BY_OTHERS : _constants.EVENT_TRIGGERS.MEETING_SELF_VIDEO_UNMUTED_BY_OTHERS, {
@@ -3766,15 +3833,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3766
3833
  });
3767
3834
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_REMOTE_MUTE_STATUS_UPDATED, function (payload) {
3768
3835
  if (payload) {
3769
- var _this20$audio;
3770
- if (_this20.audio) {
3771
- _this20.audio.handleServerRemoteMuteUpdate(_this20, payload.muted, payload.unmuteAllowed);
3836
+ var _this21$audio;
3837
+ if (_this21.audio) {
3838
+ _this21.audio.handleServerRemoteMuteUpdate(_this21, payload.muted, payload.unmuteAllowed);
3772
3839
  }
3773
3840
  // with "mute on entry" server will send us remote mute even if we don't have media configured,
3774
3841
  // so if being muted by others, always send the notification,
3775
3842
  // but if being unmuted, only send it if we are also locally unmuted
3776
- if (payload.muted || !((_this20$audio = _this20.audio) !== null && _this20$audio !== void 0 && _this20$audio.isMuted())) {
3777
- _triggerProxy.default.trigger(_this20, {
3843
+ if (payload.muted || !((_this21$audio = _this21.audio) !== null && _this21$audio !== void 0 && _this21$audio.isMuted())) {
3844
+ _triggerProxy.default.trigger(_this21, {
3778
3845
  file: 'meeting/index',
3779
3846
  function: 'setUpLocusInfoSelfListener'
3780
3847
  }, payload.muted ? _constants.EVENT_TRIGGERS.MEETING_SELF_MUTED_BY_OTHERS : _constants.EVENT_TRIGGERS.MEETING_SELF_UNMUTED_BY_OTHERS, {
@@ -3784,7 +3851,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3784
3851
  }
3785
3852
  });
3786
3853
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LOCAL_UNMUTE_REQUESTED, function (payload) {
3787
- _triggerProxy.default.trigger(_this20, {
3854
+ _triggerProxy.default.trigger(_this21, {
3788
3855
  file: 'meeting/index',
3789
3856
  function: 'setUpLocusInfoSelfListener'
3790
3857
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_REQUESTED_TO_UNMUTE, {
@@ -3793,8 +3860,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3793
3860
  });
3794
3861
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_UNADMITTED_GUEST, function (payload) {
3795
3862
  if (payload) {
3796
- _this20.startKeepAlive();
3797
- _triggerProxy.default.trigger(_this20, {
3863
+ _this21.startKeepAlive();
3864
+ _triggerProxy.default.trigger(_this21, {
3798
3865
  file: 'meeting/index',
3799
3866
  function: 'setUpLocusInfoSelfListener'
3800
3867
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_LOBBY_WAITING, {
@@ -3802,27 +3869,27 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3802
3869
  });
3803
3870
 
3804
3871
  // @ts-ignore
3805
- _this20.webex.internal.newMetrics.submitClientEvent({
3872
+ _this21.webex.internal.newMetrics.submitClientEvent({
3806
3873
  name: 'client.lobby.entered',
3807
3874
  options: {
3808
- meetingId: _this20.id
3875
+ meetingId: _this21.id
3809
3876
  }
3810
3877
  });
3811
3878
  }
3812
3879
  _metrics.default.sendBehavioralMetric(_constants2.default.GUEST_ENTERED_LOBBY, {
3813
- correlation_id: _this20.correlationId
3880
+ correlation_id: _this21.correlationId
3814
3881
  });
3815
- _this20.updateLLMConnection();
3882
+ _this21.updateLLMConnection();
3816
3883
  });
3817
3884
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, /*#__PURE__*/function () {
3818
3885
  var _ref29 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(payload) {
3819
- var _this20$rtcMetrics;
3886
+ var _this21$rtcMetrics;
3820
3887
  return _regenerator.default.wrap(function _callee9$(_context9) {
3821
3888
  while (1) switch (_context9.prev = _context9.next) {
3822
3889
  case 0:
3823
- _this20.stopKeepAlive();
3890
+ _this21.stopKeepAlive();
3824
3891
  if (payload) {
3825
- _triggerProxy.default.trigger(_this20, {
3892
+ _triggerProxy.default.trigger(_this21, {
3826
3893
  file: 'meeting/index',
3827
3894
  function: 'setUpLocusInfoSelfListener'
3828
3895
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_GUEST_ADMITTED, {
@@ -3830,18 +3897,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3830
3897
  });
3831
3898
 
3832
3899
  // @ts-ignore
3833
- _this20.webex.internal.newMetrics.submitClientEvent({
3900
+ _this21.webex.internal.newMetrics.submitClientEvent({
3834
3901
  name: 'client.lobby.exited',
3835
3902
  options: {
3836
- meetingId: _this20.id
3903
+ meetingId: _this21.id
3837
3904
  }
3838
3905
  });
3839
3906
  _metrics.default.sendBehavioralMetric(_constants2.default.GUEST_EXITED_LOBBY, {
3840
- correlation_id: _this20.correlationId
3907
+ correlation_id: _this21.correlationId
3841
3908
  });
3842
3909
  }
3843
- (_this20$rtcMetrics = _this20.rtcMetrics) === null || _this20$rtcMetrics === void 0 ? void 0 : _this20$rtcMetrics.sendNextMetrics();
3844
- _this20.updateLLMConnection();
3910
+ (_this21$rtcMetrics = _this21.rtcMetrics) === null || _this21$rtcMetrics === void 0 ? void 0 : _this21$rtcMetrics.sendNextMetrics();
3911
+ _this21.updateLLMConnection();
3845
3912
  case 4:
3846
3913
  case "end":
3847
3914
  return _context9.stop();
@@ -3856,35 +3923,35 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3856
3923
  // @ts-ignore - check if MEDIA_INACTIVITY exists
3857
3924
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_INACTIVITY, function () {
3858
3925
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_MEDIA_INACTIVE, {
3859
- correlation_id: _this20.correlationId,
3860
- locus_id: _this20.locusId
3926
+ correlation_id: _this21.correlationId,
3927
+ locus_id: _this21.locusId
3861
3928
  });
3862
3929
  _loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoSelfListener --> MEDIA_INACTIVITY received, reconnecting...');
3863
- _this20.reconnect();
3930
+ _this21.reconnect();
3864
3931
  });
3865
3932
 
3866
3933
  // There is two stats for mute one is the actual media being sent or received
3867
3934
  // The second on is if the audio is muted, we need to tell the statsAnalyzer when
3868
3935
  // the audio is muted or the user is not willing to send media
3869
3936
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_STATUS_CHANGE, function (status) {
3870
- if (_this20.statsAnalyzer) {
3871
- var _this20$mediaProperti, _this20$audio2, _this20$mediaProperti2, _this20$video, _this20$mediaProperti3, _this20$mediaProperti4, _this20$mediaProperti5, _this20$mediaProperti6;
3872
- _this20.statsAnalyzer.updateMediaStatus({
3937
+ if (_this21.statsAnalyzer) {
3938
+ var _this21$mediaProperti, _this21$audio2, _this21$mediaProperti2, _this21$video, _this21$mediaProperti3, _this21$mediaProperti4, _this21$mediaProperti5, _this21$mediaProperti6;
3939
+ _this21.statsAnalyzer.updateMediaStatus({
3873
3940
  actual: status,
3874
3941
  expected: {
3875
3942
  // We need to check what should be the actual direction of media
3876
- sendAudio: ((_this20$mediaProperti = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti === void 0 ? void 0 : _this20$mediaProperti.sendAudio) && !((_this20$audio2 = _this20.audio) !== null && _this20$audio2 !== void 0 && _this20$audio2.isMuted()),
3877
- sendVideo: ((_this20$mediaProperti2 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti2 === void 0 ? void 0 : _this20$mediaProperti2.sendVideo) && !((_this20$video = _this20.video) !== null && _this20$video !== void 0 && _this20$video.isMuted()),
3878
- sendShare: (_this20$mediaProperti3 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti3 === void 0 ? void 0 : _this20$mediaProperti3.sendShare,
3879
- receiveAudio: (_this20$mediaProperti4 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti4 === void 0 ? void 0 : _this20$mediaProperti4.receiveAudio,
3880
- receiveVideo: (_this20$mediaProperti5 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti5 === void 0 ? void 0 : _this20$mediaProperti5.receiveVideo,
3881
- receiveShare: (_this20$mediaProperti6 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti6 === void 0 ? void 0 : _this20$mediaProperti6.receiveShare
3943
+ sendAudio: ((_this21$mediaProperti = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti === void 0 ? void 0 : _this21$mediaProperti.sendAudio) && !((_this21$audio2 = _this21.audio) !== null && _this21$audio2 !== void 0 && _this21$audio2.isMuted()),
3944
+ sendVideo: ((_this21$mediaProperti2 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti2 === void 0 ? void 0 : _this21$mediaProperti2.sendVideo) && !((_this21$video = _this21.video) !== null && _this21$video !== void 0 && _this21$video.isMuted()),
3945
+ sendShare: (_this21$mediaProperti3 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti3 === void 0 ? void 0 : _this21$mediaProperti3.sendShare,
3946
+ receiveAudio: (_this21$mediaProperti4 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti4 === void 0 ? void 0 : _this21$mediaProperti4.receiveAudio,
3947
+ receiveVideo: (_this21$mediaProperti5 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti5 === void 0 ? void 0 : _this21$mediaProperti5.receiveVideo,
3948
+ receiveShare: (_this21$mediaProperti6 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti6 === void 0 ? void 0 : _this21$mediaProperti6.receiveShare
3882
3949
  }
3883
3950
  });
3884
3951
  }
3885
3952
  });
3886
3953
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_CANNOT_VIEW_PARTICIPANT_LIST_CHANGE, function (payload) {
3887
- _triggerProxy.default.trigger(_this20, {
3954
+ _triggerProxy.default.trigger(_this21, {
3888
3955
  file: 'meeting/index',
3889
3956
  function: 'setUpLocusInfoSelfListener'
3890
3957
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_CANNOT_VIEW_PARTICIPANT_LIST, {
@@ -3892,26 +3959,26 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3892
3959
  });
3893
3960
  });
3894
3961
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_BREAKOUTS_CHANGED, function (payload) {
3895
- _this20.breakouts.updateBreakoutSessions(payload);
3896
- _triggerProxy.default.trigger(_this20, {
3962
+ _this21.breakouts.updateBreakoutSessions(payload);
3963
+ _triggerProxy.default.trigger(_this21, {
3897
3964
  file: 'meeting/index',
3898
3965
  function: 'setUpLocusInfoSelfListener'
3899
3966
  }, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
3900
3967
  });
3901
3968
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_INTERPRETATION_CHANGED, function (payload) {
3902
- var targetChanged = _this20.simultaneousInterpretation.updateSelfInterpretation(payload);
3903
- _triggerProxy.default.trigger(_this20, {
3969
+ var targetChanged = _this21.simultaneousInterpretation.updateSelfInterpretation(payload);
3970
+ _triggerProxy.default.trigger(_this21, {
3904
3971
  file: 'meeting/index',
3905
3972
  function: 'setUpLocusInfoSelfListener'
3906
3973
  }, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE);
3907
- if (targetChanged && _this20.mediaProperties.audioStream) {
3908
- _this20.setSendNamedMediaGroup(_internalMediaCore.MediaType.AudioMain);
3974
+ if (targetChanged && _this21.mediaProperties.audioStream) {
3975
+ _this21.setSendNamedMediaGroup(_internalMediaCore.MediaType.AudioMain);
3909
3976
  }
3910
3977
  });
3911
3978
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_BRB_CHANGED, function (payload) {
3912
- var _this20$brbState, _payload$brb;
3913
- (_this20$brbState = _this20.brbState) === null || _this20$brbState === void 0 ? void 0 : _this20$brbState.handleServerBrbUpdate(payload === null || payload === void 0 ? void 0 : (_payload$brb = payload.brb) === null || _payload$brb === void 0 ? void 0 : _payload$brb.enabled);
3914
- _triggerProxy.default.trigger(_this20, {
3979
+ var _this21$brbState, _payload$brb;
3980
+ (_this21$brbState = _this21.brbState) === null || _this21$brbState === void 0 ? void 0 : _this21$brbState.handleServerBrbUpdate(payload === null || payload === void 0 ? void 0 : (_payload$brb = payload.brb) === null || _payload$brb === void 0 ? void 0 : _payload$brb.enabled);
3981
+ _triggerProxy.default.trigger(_this21, {
3915
3982
  file: 'meeting/index',
3916
3983
  function: 'setUpLocusInfoSelfListener'
3917
3984
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_BRB_UPDATE, {
@@ -3921,10 +3988,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3921
3988
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ROLES_CHANGED, function (payload) {
3922
3989
  var _payload$newRoles, _payload$newRoles2, _payload$newRoles3;
3923
3990
  var isModeratorOrCohost = ((_payload$newRoles = payload.newRoles) === null || _payload$newRoles === void 0 ? void 0 : _payload$newRoles.includes(_constants.SELF_ROLES.MODERATOR)) || ((_payload$newRoles2 = payload.newRoles) === null || _payload$newRoles2 === void 0 ? void 0 : _payload$newRoles2.includes(_constants.SELF_ROLES.COHOST));
3924
- _this20.breakouts.updateCanManageBreakouts(isModeratorOrCohost);
3925
- _this20.simultaneousInterpretation.updateCanManageInterpreters((_payload$newRoles3 = payload.newRoles) === null || _payload$newRoles3 === void 0 ? void 0 : _payload$newRoles3.includes(_constants.SELF_ROLES.MODERATOR));
3926
- _this20.webinar.updateRoleChanged(payload);
3927
- _triggerProxy.default.trigger(_this20, {
3991
+ _this21.breakouts.updateCanManageBreakouts(isModeratorOrCohost);
3992
+ _this21.simultaneousInterpretation.updateCanManageInterpreters((_payload$newRoles3 = payload.newRoles) === null || _payload$newRoles3 === void 0 ? void 0 : _payload$newRoles3.includes(_constants.SELF_ROLES.MODERATOR));
3993
+ _this21.webinar.updateRoleChanged(payload);
3994
+ _triggerProxy.default.trigger(_this21, {
3928
3995
  file: 'meeting/index',
3929
3996
  function: 'setUpLocusInfoSelfListener'
3930
3997
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_ROLES_CHANGED, {
@@ -3932,7 +3999,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3932
3999
  });
3933
4000
  });
3934
4001
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_IS_SHARING_BLOCKED_CHANGE, function (payload) {
3935
- _triggerProxy.default.trigger(_this20, {
4002
+ _triggerProxy.default.trigger(_this21, {
3936
4003
  file: 'meeting/index',
3937
4004
  function: 'setUpLocusInfoSelfListener'
3938
4005
  }, _constants.EVENT_TRIGGERS.MEETING_SELF_IS_SHARING_BLOCKED, {
@@ -3950,17 +4017,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3950
4017
  }, {
3951
4018
  key: "setUpLocusInfoMeetingListener",
3952
4019
  value: function setUpLocusInfoMeetingListener() {
3953
- var _this21 = this;
4020
+ var _this22 = this;
3954
4021
  this.locusInfo.on(_constants.EVENTS.REMOTE_RESPONSE, function (payload) {
3955
- _this21.meetingFiniteStateMachine.remote(payload);
4022
+ _this22.meetingFiniteStateMachine.remote(payload);
3956
4023
  if (payload.remoteDeclined) {
3957
- _this21.leave({
4024
+ _this22.leave({
3958
4025
  reason: payload.reason
3959
4026
  }).then(function () {
3960
4027
  _loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Attempting to leave meeting.');
3961
4028
  }).catch(function (error) {
3962
4029
  // @ts-ignore
3963
- _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Issue with leave for meeting, meeting still in collection: ".concat(_this21, ", error: ").concat(error));
4030
+ _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Issue with leave for meeting, meeting still in collection: ".concat(_this22, ", error: ").concat(error));
3964
4031
  });
3965
4032
  }
3966
4033
  });
@@ -3969,23 +4036,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3969
4036
  return _regenerator.default.wrap(function _callee10$(_context10) {
3970
4037
  while (1) switch (_context10.prev = _context10.next) {
3971
4038
  case 0:
3972
- if (!_this21.wirelessShare) {
4039
+ if (!_this22.wirelessShare) {
3973
4040
  _context10.next = 7;
3974
4041
  break;
3975
4042
  }
3976
- if (!_this21.mediaProperties.shareVideoStream) {
4043
+ if (!_this22.mediaProperties.shareVideoStream) {
3977
4044
  _context10.next = 4;
3978
4045
  break;
3979
4046
  }
3980
4047
  _context10.next = 4;
3981
- return _this21.setLocalShareVideoStream(undefined);
4048
+ return _this22.setLocalShareVideoStream(undefined);
3982
4049
  case 4:
3983
- if (!_this21.mediaProperties.shareAudioStream) {
4050
+ if (!_this22.mediaProperties.shareAudioStream) {
3984
4051
  _context10.next = 7;
3985
4052
  break;
3986
4053
  }
3987
4054
  _context10.next = 7;
3988
- return _this21.setLocalShareAudioStream(undefined);
4055
+ return _this22.setLocalShareAudioStream(undefined);
3989
4056
  case 7:
3990
4057
  if (!payload.shouldLeave) {
3991
4058
  _context10.next = 19;
@@ -3993,7 +4060,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
3993
4060
  }
3994
4061
  _context10.prev = 8;
3995
4062
  _context10.next = 11;
3996
- return _this21.leave({
4063
+ return _this22.leave({
3997
4064
  reason: payload.reason
3998
4065
  });
3999
4066
  case 11:
@@ -4004,19 +4071,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4004
4071
  _context10.prev = 14;
4005
4072
  _context10.t0 = _context10["catch"](8);
4006
4073
  // @ts-ignore
4007
- _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this21, ", error: ").concat(_context10.t0));
4074
+ _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this22, ", error: ").concat(_context10.t0));
4008
4075
  case 17:
4009
4076
  _context10.next = 22;
4010
4077
  break;
4011
4078
  case 19:
4012
4079
  _loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> MEETING_REMOVED_REASON', payload.reason);
4013
- _util2.default.cleanUp(_this21);
4014
- _triggerProxy.default.trigger(_this21, {
4080
+ _util2.default.cleanUp(_this22);
4081
+ _triggerProxy.default.trigger(_this22, {
4015
4082
  file: 'meeting/index',
4016
4083
  function: 'setUpLocusInfoMeetingListener'
4017
4084
  }, _constants.EVENTS.DESTROY_MEETING, {
4018
4085
  reason: payload.reason,
4019
- meetingId: _this21.id
4086
+ meetingId: _this22.id
4020
4087
  });
4021
4088
  case 22:
4022
4089
  case "end":
@@ -4041,13 +4108,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4041
4108
  }, {
4042
4109
  key: "updateMeetingObject",
4043
4110
  value: function updateMeetingObject(object) {
4044
- var _this22 = this;
4111
+ var _this23 = this;
4045
4112
  // Validate if these are valid meeting object property
4046
4113
  // TODO: add a check to make sure the value passed in the constructor
4047
4114
  // is not changed by any delta event
4048
4115
  if (object && (0, _keys.default)(object).length) {
4049
4116
  (0, _keys.default)(object).forEach(function (key) {
4050
- _this22[key] = object[key];
4117
+ _this23[key] = object[key];
4051
4118
  });
4052
4119
  }
4053
4120
  }
@@ -4644,7 +4711,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4644
4711
  }, {
4645
4712
  key: "setLogUploadTimer",
4646
4713
  value: function setLogUploadTimer() {
4647
- var _this23 = this;
4714
+ var _this24 = this;
4648
4715
  // start with short timeouts and increase them later on so in case users have very long multi-hour meetings we don't get too fragmented logs
4649
4716
  var LOG_UPLOAD_INTERVALS = [0.1, 15, 30, 60]; // in minutes
4650
4717
 
@@ -4655,15 +4722,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4655
4722
  this.logUploadIntervalIndex += 1;
4656
4723
  }
4657
4724
  this.uploadLogsTimer = (0, _commonTimers.safeSetTimeout)(function () {
4658
- _this23.uploadLogsTimer = undefined;
4659
- _this23.uploadLogs();
4725
+ _this24.uploadLogsTimer = undefined;
4726
+ _this24.uploadLogs();
4660
4727
 
4661
4728
  // just as an extra precaution, to avoid uploading logs forever in case something goes wrong
4662
4729
  // and the page remains opened, we stop it if there is no media connection
4663
- if (!_this23.mediaProperties.webrtcMediaConnection) {
4730
+ if (!_this24.mediaProperties.webrtcMediaConnection) {
4664
4731
  return;
4665
4732
  }
4666
- _this23.setLogUploadTimer();
4733
+ _this24.setLogUploadTimer();
4667
4734
  }, delay);
4668
4735
  }
4669
4736
 
@@ -4730,7 +4797,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4730
4797
  }, {
4731
4798
  key: "closeRemoteStreams",
4732
4799
  value: function closeRemoteStreams() {
4733
- var _this24 = this;
4800
+ var _this25 = this;
4734
4801
  var _this$mediaProperties6 = this.mediaProperties,
4735
4802
  remoteAudioStream = _this$mediaProperties6.remoteAudioStream,
4736
4803
  remoteVideoStream = _this$mediaProperties6.remoteVideoStream,
@@ -4744,7 +4811,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4744
4811
  */
4745
4812
  // eslint-disable-next-line @typescript-eslint/no-shadow
4746
4813
  var triggerMediaStoppedEvent = function triggerMediaStoppedEvent(mediaType) {
4747
- _triggerProxy.default.trigger(_this24, {
4814
+ _triggerProxy.default.trigger(_this25, {
4748
4815
  file: 'meeting/index',
4749
4816
  function: 'closeRemoteStreams'
4750
4817
  }, _constants.EVENT_TRIGGERS.MEDIA_STOPPED, {
@@ -5052,7 +5119,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5052
5119
  }, {
5053
5120
  key: "setMercuryListener",
5054
5121
  value: function setMercuryListener() {
5055
- var _this25 = this;
5122
+ var _this26 = this;
5056
5123
  // Client will have a socket manager and handle reconnecting to mercury, when we reconnect to mercury
5057
5124
  // if the meeting has active peer connections, it should try to reconnect.
5058
5125
  // @ts-ignore
@@ -5060,33 +5127,33 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5060
5127
  _loggerProxy.default.logger.info('Meeting:index#setMercuryListener --> Web socket online');
5061
5128
 
5062
5129
  // Only send restore event when it was disconnected before and for connected later
5063
- if (!_this25.hasWebsocketConnected) {
5130
+ if (!_this26.hasWebsocketConnected) {
5064
5131
  // @ts-ignore
5065
- _this25.webex.internal.newMetrics.submitClientEvent({
5132
+ _this26.webex.internal.newMetrics.submitClientEvent({
5066
5133
  name: 'client.mercury.connection.restored',
5067
5134
  options: {
5068
- meetingId: _this25.id
5135
+ meetingId: _this26.id
5069
5136
  }
5070
5137
  });
5071
5138
  _metrics.default.sendBehavioralMetric(_constants2.default.MERCURY_CONNECTION_RESTORED, {
5072
- correlation_id: _this25.correlationId
5139
+ correlation_id: _this26.correlationId
5073
5140
  });
5074
5141
  }
5075
- _this25.hasWebsocketConnected = true;
5142
+ _this26.hasWebsocketConnected = true;
5076
5143
  });
5077
5144
 
5078
5145
  // @ts-ignore
5079
5146
  this.webex.internal.mercury.on(_constants.OFFLINE, function () {
5080
5147
  _loggerProxy.default.logger.error('Meeting:index#setMercuryListener --> Web socket offline');
5081
5148
  // @ts-ignore
5082
- _this25.webex.internal.newMetrics.submitClientEvent({
5149
+ _this26.webex.internal.newMetrics.submitClientEvent({
5083
5150
  name: 'client.mercury.connection.lost',
5084
5151
  options: {
5085
- meetingId: _this25.id
5152
+ meetingId: _this26.id
5086
5153
  }
5087
5154
  });
5088
5155
  _metrics.default.sendBehavioralMetric(_constants2.default.MERCURY_CONNECTION_FAILURE, {
5089
- correlation_id: _this25.correlationId
5156
+ correlation_id: _this26.correlationId
5090
5157
  });
5091
5158
  });
5092
5159
  }
@@ -5193,7 +5260,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5193
5260
  }, {
5194
5261
  key: "muteAudio",
5195
5262
  value: function muteAudio() {
5196
- var _this26 = this;
5263
+ var _this27 = this;
5197
5264
  if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
5198
5265
  return _promise.default.reject(new _webexErrors.UserNotJoinedError());
5199
5266
  }
@@ -5209,22 +5276,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5209
5276
 
5210
5277
  // First, stop sending the local audio media
5211
5278
  return logRequest(this.audio.handleClientRequest(this, true).then(function () {
5212
- _util2.default.handleAudioLogging(_this26.mediaProperties.audioStream);
5279
+ _util2.default.handleAudioLogging(_this27.mediaProperties.audioStream);
5213
5280
  // @ts-ignore
5214
- _this26.webex.internal.newMetrics.submitClientEvent({
5281
+ _this27.webex.internal.newMetrics.submitClientEvent({
5215
5282
  name: 'client.muted',
5216
5283
  payload: {
5217
5284
  trigger: 'user-interaction',
5218
5285
  mediaType: 'audio'
5219
5286
  },
5220
5287
  options: {
5221
- meetingId: _this26.id
5288
+ meetingId: _this27.id
5222
5289
  }
5223
5290
  });
5224
5291
  }).catch(function (error) {
5225
5292
  _metrics.default.sendBehavioralMetric(_constants2.default.MUTE_AUDIO_FAILURE, {
5226
- correlation_id: _this26.correlationId,
5227
- locus_id: _this26.locusUrl.split('/').pop(),
5293
+ correlation_id: _this27.correlationId,
5294
+ locus_id: _this27.locusUrl.split('/').pop(),
5228
5295
  reason: error.message,
5229
5296
  stack: error.stack
5230
5297
  });
@@ -5243,7 +5310,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5243
5310
  }, {
5244
5311
  key: "unmuteAudio",
5245
5312
  value: function unmuteAudio() {
5246
- var _this27 = this;
5313
+ var _this28 = this;
5247
5314
  if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
5248
5315
  return _promise.default.reject(new _webexErrors.UserNotJoinedError());
5249
5316
  }
@@ -5259,22 +5326,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5259
5326
 
5260
5327
  // First, send the control to unmute the participant on the server
5261
5328
  return logRequest(this.audio.handleClientRequest(this, false).then(function () {
5262
- _util2.default.handleAudioLogging(_this27.mediaProperties.audioStream);
5329
+ _util2.default.handleAudioLogging(_this28.mediaProperties.audioStream);
5263
5330
  // @ts-ignore
5264
- _this27.webex.internal.newMetrics.submitClientEvent({
5331
+ _this28.webex.internal.newMetrics.submitClientEvent({
5265
5332
  name: 'client.unmuted',
5266
5333
  payload: {
5267
5334
  trigger: 'user-interaction',
5268
5335
  mediaType: 'audio'
5269
5336
  },
5270
5337
  options: {
5271
- meetingId: _this27.id
5338
+ meetingId: _this28.id
5272
5339
  }
5273
5340
  });
5274
5341
  }).catch(function (error) {
5275
5342
  _metrics.default.sendBehavioralMetric(_constants2.default.UNMUTE_AUDIO_FAILURE, {
5276
- correlation_id: _this27.correlationId,
5277
- locus_id: _this27.locusUrl.split('/').pop(),
5343
+ correlation_id: _this28.correlationId,
5344
+ locus_id: _this28.locusUrl.split('/').pop(),
5278
5345
  reason: error.message,
5279
5346
  stack: error.stack
5280
5347
  });
@@ -5293,7 +5360,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5293
5360
  }, {
5294
5361
  key: "muteVideo",
5295
5362
  value: function muteVideo() {
5296
- var _this28 = this;
5363
+ var _this29 = this;
5297
5364
  if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
5298
5365
  return _promise.default.reject(new _webexErrors.UserNotJoinedError());
5299
5366
  }
@@ -5307,22 +5374,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5307
5374
  return _promise.default.reject(new _parameter.default('no video control associated to the meeting'));
5308
5375
  }
5309
5376
  return logRequest(this.video.handleClientRequest(this, true).then(function () {
5310
- _util2.default.handleVideoLogging(_this28.mediaProperties.videoStream);
5377
+ _util2.default.handleVideoLogging(_this29.mediaProperties.videoStream);
5311
5378
  // @ts-ignore
5312
- _this28.webex.internal.newMetrics.submitClientEvent({
5379
+ _this29.webex.internal.newMetrics.submitClientEvent({
5313
5380
  name: 'client.muted',
5314
5381
  payload: {
5315
5382
  trigger: 'user-interaction',
5316
5383
  mediaType: 'video'
5317
5384
  },
5318
5385
  options: {
5319
- meetingId: _this28.id
5386
+ meetingId: _this29.id
5320
5387
  }
5321
5388
  });
5322
5389
  }).catch(function (error) {
5323
5390
  _metrics.default.sendBehavioralMetric(_constants2.default.MUTE_VIDEO_FAILURE, {
5324
- correlation_id: _this28.correlationId,
5325
- locus_id: _this28.locusUrl.split('/').pop(),
5391
+ correlation_id: _this29.correlationId,
5392
+ locus_id: _this29.locusUrl.split('/').pop(),
5326
5393
  reason: error.message,
5327
5394
  stack: error.stack
5328
5395
  });
@@ -5341,7 +5408,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5341
5408
  }, {
5342
5409
  key: "unmuteVideo",
5343
5410
  value: function unmuteVideo() {
5344
- var _this29 = this;
5411
+ var _this30 = this;
5345
5412
  if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
5346
5413
  return _promise.default.reject(new _webexErrors.UserNotJoinedError());
5347
5414
  }
@@ -5355,22 +5422,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5355
5422
  return _promise.default.reject(new _parameter.default('no audio control associated to the meeting'));
5356
5423
  }
5357
5424
  return logRequest(this.video.handleClientRequest(this, false).then(function () {
5358
- _util2.default.handleVideoLogging(_this29.mediaProperties.videoStream);
5425
+ _util2.default.handleVideoLogging(_this30.mediaProperties.videoStream);
5359
5426
  // @ts-ignore
5360
- _this29.webex.internal.newMetrics.submitClientEvent({
5427
+ _this30.webex.internal.newMetrics.submitClientEvent({
5361
5428
  name: 'client.unmuted',
5362
5429
  payload: {
5363
5430
  trigger: 'user-interaction',
5364
5431
  mediaType: 'video'
5365
5432
  },
5366
5433
  options: {
5367
- meetingId: _this29.id
5434
+ meetingId: _this30.id
5368
5435
  }
5369
5436
  });
5370
5437
  }).catch(function (error) {
5371
5438
  _metrics.default.sendBehavioralMetric(_constants2.default.UNMUTE_VIDEO_FAILURE, {
5372
- correlation_id: _this29.correlationId,
5373
- locus_id: _this29.locusUrl.split('/').pop(),
5439
+ correlation_id: _this30.correlationId,
5440
+ locus_id: _this30.locusUrl.split('/').pop(),
5374
5441
  reason: error.message,
5375
5442
  stack: error.stack
5376
5443
  });
@@ -5400,7 +5467,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5400
5467
  key: "joinWithMedia",
5401
5468
  value: (function () {
5402
5469
  var _joinWithMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
5403
- var _this30 = this;
5470
+ var _this31 = this;
5404
5471
  var options,
5405
5472
  mediaOptions,
5406
5473
  _options$joinOptions,
@@ -5483,7 +5550,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5483
5550
  case 35:
5484
5551
  _context16.next = 37;
5485
5552
  return this.addMediaInternal(function () {
5486
- return _this30.joinWithMediaRetryInfo.isRetry ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
5553
+ return _this31.joinWithMediaRetryInfo.isRetry ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
5487
5554
  }, turnServerInfo, forceTurnDiscovery, mediaOptions);
5488
5555
  case 37:
5489
5556
  mediaResponse = _context16.sent;
@@ -5578,7 +5645,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5578
5645
  }, {
5579
5646
  key: "reconnect",
5580
5647
  value: function reconnect(options) {
5581
- var _this31 = this;
5648
+ var _this32 = this;
5582
5649
  _loggerProxy.default.logger.log("Meeting:index#reconnect --> attempting to reconnect meeting ".concat(this.id));
5583
5650
  if (!this.reconnectionManager || !this.reconnectionManager.reconnect) {
5584
5651
  return _promise.default.reject(new _parameter.default('Cannot reconnect, ReconnectionManager must first be defined.'));
@@ -5594,10 +5661,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5594
5661
  while (1) switch (_context17.prev = _context17.next) {
5595
5662
  case 0:
5596
5663
  _context17.next = 2;
5597
- return _this31.waitForRemoteSDPAnswer();
5664
+ return _this32.waitForRemoteSDPAnswer();
5598
5665
  case 2:
5599
5666
  _context17.next = 4;
5600
- return _this31.waitForMediaConnectionConnected();
5667
+ return _this32.waitForMediaConnectionConnected();
5601
5668
  case 4:
5602
5669
  case "end":
5603
5670
  return _context17.stop();
@@ -5611,7 +5678,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5611
5678
  return _promise.default.resolve();
5612
5679
  }
5613
5680
  _loggerProxy.default.logger.error('Meeting:index#reconnect --> Meeting reconnect failed', error);
5614
- _this31.uploadLogs({
5681
+ _this32.uploadLogs({
5615
5682
  file: 'meeting/index',
5616
5683
  function: 'reconnect'
5617
5684
  });
@@ -5658,19 +5725,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5658
5725
  }, {
5659
5726
  key: "setCaptionLanguage",
5660
5727
  value: function setCaptionLanguage(language) {
5661
- var _this32 = this;
5728
+ var _this33 = this;
5662
5729
  return new _promise.default(function (resolve, reject) {
5663
- if (!_this32.isTranscriptionSupported()) {
5730
+ if (!_this33.isTranscriptionSupported()) {
5664
5731
  _loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
5665
5732
  reject(new Error('Webex Assistant is not enabled/supported'));
5666
5733
  }
5667
5734
  try {
5668
5735
  var voiceaListenerCaptionUpdate = function voiceaListenerCaptionUpdate(payload) {
5669
5736
  // @ts-ignore
5670
- _this32.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
5737
+ _this33.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
5671
5738
  var statusCode = payload.statusCode;
5672
5739
  if (statusCode === 200) {
5673
- _this32.transcription.languageOptions = _objectSpread(_objectSpread({}, _this32.transcription.languageOptions), {}, {
5740
+ _this33.transcription.languageOptions = _objectSpread(_objectSpread({}, _this33.transcription.languageOptions), {}, {
5674
5741
  currentCaptionLanguage: language
5675
5742
  });
5676
5743
  resolve(language);
@@ -5679,9 +5746,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5679
5746
  }
5680
5747
  };
5681
5748
  // @ts-ignore
5682
- _this32.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
5749
+ _this33.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
5683
5750
  // @ts-ignore
5684
- _this32.webex.internal.voicea.requestLanguage(language);
5751
+ _this33.webex.internal.voicea.requestLanguage(language);
5685
5752
  } catch (error) {
5686
5753
  _loggerProxy.default.logger.error("Meeting:index#setCaptionLanguage --> ".concat(error));
5687
5754
  reject(error);
@@ -5697,23 +5764,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5697
5764
  }, {
5698
5765
  key: "setSpokenLanguage",
5699
5766
  value: function setSpokenLanguage(language) {
5700
- var _this33 = this;
5767
+ var _this34 = this;
5701
5768
  return new _promise.default(function (resolve, reject) {
5702
- if (!_this33.isTranscriptionSupported()) {
5769
+ if (!_this34.isTranscriptionSupported()) {
5703
5770
  _loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
5704
5771
  reject(new Error('Webex Assistant is not enabled/supported'));
5705
5772
  }
5706
- if (_this33.getCurUserType() !== 'host') {
5773
+ if (_this34.getCurUserType() !== 'host') {
5707
5774
  _loggerProxy.default.logger.error('Meeting:index#setSpokenLanguage --> Only host can set spoken language');
5708
5775
  reject(new Error('Only host can set spoken language'));
5709
5776
  }
5710
5777
  try {
5711
5778
  var voiceaListenerLanguageUpdate = function voiceaListenerLanguageUpdate(payload) {
5712
5779
  // @ts-ignore
5713
- _this33.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
5780
+ _this34.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
5714
5781
  var languageCode = payload.languageCode;
5715
5782
  if (languageCode) {
5716
- _this33.transcription.languageOptions = _objectSpread(_objectSpread({}, _this33.transcription.languageOptions), {}, {
5783
+ _this34.transcription.languageOptions = _objectSpread(_objectSpread({}, _this34.transcription.languageOptions), {}, {
5717
5784
  currentSpokenLanguage: languageCode
5718
5785
  });
5719
5786
  resolve(languageCode);
@@ -5723,10 +5790,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5723
5790
  };
5724
5791
 
5725
5792
  // @ts-ignore
5726
- _this33.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
5793
+ _this34.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
5727
5794
 
5728
5795
  // @ts-ignore
5729
- _this33.webex.internal.voicea.setSpokenLanguage(language);
5796
+ _this34.webex.internal.voicea.setSpokenLanguage(language);
5730
5797
  } catch (error) {
5731
5798
  _loggerProxy.default.logger.error("Meeting:index#setSpokenLanguage --> ".concat(error));
5732
5799
  reject(error);
@@ -5849,7 +5916,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5849
5916
  */
5850
5917
  function () {
5851
5918
  var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
5852
- var _this34 = this;
5919
+ var _this35 = this;
5853
5920
  var options,
5854
5921
  errorMessage,
5855
5922
  error,
@@ -5998,62 +6065,62 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5998
6065
  return _context19.abrupt("return", _promise.default.reject(_context19.t0));
5999
6066
  case 51:
6000
6067
  return _context19.abrupt("return", _util2.default.joinMeetingOptions(this, options).then(function (join) {
6001
- _this34.meetingFiniteStateMachine.join();
6002
- _this34.setupLocusMediaRequest();
6068
+ _this35.meetingFiniteStateMachine.join();
6069
+ _this35.setupLocusMediaRequest();
6003
6070
 
6004
6071
  // @ts-ignore
6005
- _this34.webex.internal.device.meetingStarted();
6006
- (0, _classPrivateFieldSet2.default)(_this34, _isoLocalClientMeetingJoinTime, new Date().toISOString());
6072
+ _this35.webex.internal.device.meetingStarted();
6073
+ (0, _classPrivateFieldSet2.default)(_this35, _isoLocalClientMeetingJoinTime, new Date().toISOString());
6007
6074
  _loggerProxy.default.logger.log('Meeting:index#join --> Success');
6008
6075
  _metrics.default.sendBehavioralMetric(_constants2.default.JOIN_SUCCESS, {
6009
- correlation_id: _this34.correlationId
6076
+ correlation_id: _this35.correlationId
6010
6077
  });
6011
6078
  joinSuccess(join);
6012
- _this34.deferJoin = undefined;
6079
+ _this35.deferJoin = undefined;
6013
6080
  return join;
6014
6081
  }).catch(function (error) {
6015
- var _this34$meetingInfo, _error$error;
6016
- _this34.meetingFiniteStateMachine.fail(error);
6082
+ var _this35$meetingInfo, _error$error;
6083
+ _this35.meetingFiniteStateMachine.fail(error);
6017
6084
  _loggerProxy.default.logger.error('Meeting:index#join --> Failed', error);
6018
6085
 
6019
6086
  // @ts-ignore
6020
- _this34.webex.internal.newMetrics.submitClientEvent({
6087
+ _this35.webex.internal.newMetrics.submitClientEvent({
6021
6088
  name: 'client.locus.join.response',
6022
6089
  payload: {
6023
6090
  identifiers: {
6024
- meetingLookupUrl: (_this34$meetingInfo = _this34.meetingInfo) === null || _this34$meetingInfo === void 0 ? void 0 : _this34$meetingInfo.meetingLookupUrl
6091
+ meetingLookupUrl: (_this35$meetingInfo = _this35.meetingInfo) === null || _this35$meetingInfo === void 0 ? void 0 : _this35$meetingInfo.meetingLookupUrl
6025
6092
  }
6026
6093
  },
6027
6094
  options: {
6028
- meetingId: _this34.id,
6095
+ meetingId: _this35.id,
6029
6096
  rawError: error
6030
6097
  }
6031
6098
  });
6032
6099
 
6033
6100
  // TODO: change this to error codes and pre defined dictionary
6034
6101
  _metrics.default.sendBehavioralMetric(_constants2.default.JOIN_FAILURE, {
6035
- correlation_id: _this34.correlationId,
6102
+ correlation_id: _this35.correlationId,
6036
6103
  reason: (_error$error = error.error) === null || _error$error === void 0 ? void 0 : _error$error.message,
6037
6104
  stack: error.stack
6038
6105
  });
6039
6106
 
6040
6107
  // Upload logs on join Failure
6041
- _triggerProxy.default.trigger(_this34, {
6108
+ _triggerProxy.default.trigger(_this35, {
6042
6109
  file: 'meeting/index',
6043
6110
  function: 'join'
6044
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this34);
6111
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this35);
6045
6112
  joinFailed(error);
6046
- _this34.deferJoin = undefined;
6113
+ _this35.deferJoin = undefined;
6047
6114
  return _promise.default.reject(error);
6048
6115
  }).then(function (join) {
6049
6116
  // @ts-ignore - config coming from registerPlugin
6050
- if (_this34.config.enableAutomaticLLM) {
6117
+ if (_this35.config.enableAutomaticLLM) {
6051
6118
  // @ts-ignore
6052
- _this34.webex.internal.llm.on('online', _this34.handleLLMOnline);
6053
- _this34.updateLLMConnection().catch(function (error) {
6119
+ _this35.webex.internal.llm.on('online', _this35.handleLLMOnline);
6120
+ _this35.updateLLMConnection().catch(function (error) {
6054
6121
  _loggerProxy.default.logger.error('Meeting:index#join --> Transcription Socket Connection Failed', error);
6055
6122
  _metrics.default.sendBehavioralMetric(_constants2.default.LLM_CONNECTION_AFTER_JOIN_FAILURE, {
6056
- correlation_id: _this34.correlationId,
6123
+ correlation_id: _this35.correlationId,
6057
6124
  reason: error === null || error === void 0 ? void 0 : error.message,
6058
6125
  stack: error.stack
6059
6126
  });
@@ -6085,7 +6152,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6085
6152
  key: "updateLLMConnection",
6086
6153
  value: (function () {
6087
6154
  var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
6088
- var _this35 = this;
6155
+ var _this36 = this;
6089
6156
  var _this$locusInfo6, url, _this$locusInfo6$info, _this$locusInfo6$info2, datachannelUrl, practiceSessionDatachannelUrl, isJoined, dataChannelUrl;
6090
6157
  return _regenerator.default.wrap(function _callee20$(_context20) {
6091
6158
  while (1) switch (_context20.prev = _context20.next) {
@@ -6122,9 +6189,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6122
6189
  case 11:
6123
6190
  return _context20.abrupt("return", this.webex.internal.llm.registerAndConnect(url, dataChannelUrl).then(function (registerAndConnectResult) {
6124
6191
  // @ts-ignore - Fix type
6125
- _this35.webex.internal.llm.off('event:relay.event', _this35.processRelayEvent);
6192
+ _this36.webex.internal.llm.off('event:relay.event', _this36.processRelayEvent);
6126
6193
  // @ts-ignore - Fix type
6127
- _this35.webex.internal.llm.on('event:relay.event', _this35.processRelayEvent);
6194
+ _this36.webex.internal.llm.on('event:relay.event', _this36.processRelayEvent);
6128
6195
  _loggerProxy.default.logger.info('Meeting:index#updateLLMConnection --> enabled to receive relay events!');
6129
6196
  return _promise.default.resolve(registerAndConnectResult);
6130
6197
  }));
@@ -6178,7 +6245,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6178
6245
  }, {
6179
6246
  key: "dialInPstn",
6180
6247
  value: function dialInPstn() {
6181
- var _this36 = this;
6248
+ var _this37 = this;
6182
6249
  if (this.isPhoneProvisioned(this.dialInDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial in devices from being provisioned
6183
6250
 
6184
6251
  var correlationId = this.correlationId,
@@ -6194,10 +6261,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6194
6261
  }).catch(function (error) {
6195
6262
  var _error$error2;
6196
6263
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_IN_FAILURE, {
6197
- correlation_id: _this36.correlationId,
6198
- dial_in_url: _this36.dialInUrl,
6264
+ correlation_id: _this37.correlationId,
6265
+ dial_in_url: _this37.dialInUrl,
6199
6266
  locus_id: locusUrl.split('/').pop(),
6200
- client_url: _this36.deviceUrl,
6267
+ client_url: _this37.deviceUrl,
6201
6268
  reason: (_error$error2 = error.error) === null || _error$error2 === void 0 ? void 0 : _error$error2.message,
6202
6269
  stack: error.stack
6203
6270
  });
@@ -6215,7 +6282,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6215
6282
  }, {
6216
6283
  key: "dialOutPstn",
6217
6284
  value: function dialOutPstn(phoneNumber) {
6218
- var _this37 = this;
6285
+ var _this38 = this;
6219
6286
  if (this.isPhoneProvisioned(this.dialOutDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial out devices from being provisioned
6220
6287
 
6221
6288
  var correlationId = this.correlationId,
@@ -6232,10 +6299,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6232
6299
  }).catch(function (error) {
6233
6300
  var _error$error3;
6234
6301
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_OUT_FAILURE, {
6235
- correlation_id: _this37.correlationId,
6236
- dial_out_url: _this37.dialOutUrl,
6302
+ correlation_id: _this38.correlationId,
6303
+ dial_out_url: _this38.dialOutUrl,
6237
6304
  locus_id: locusUrl.split('/').pop(),
6238
- client_url: _this37.deviceUrl,
6305
+ client_url: _this38.deviceUrl,
6239
6306
  reason: (_error$error3 = error.error) === null || _error$error3 === void 0 ? void 0 : _error$error3.message,
6240
6307
  stack: error.stack
6241
6308
  });
@@ -6266,7 +6333,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6266
6333
  }, {
6267
6334
  key: "moveTo",
6268
6335
  value: function moveTo(resourceId) {
6269
- var _this38 = this;
6336
+ var _this39 = this;
6270
6337
  if (!resourceId) {
6271
6338
  throw new _parameter.default('Cannot move call without a resourceId.');
6272
6339
  }
@@ -6310,12 +6377,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6310
6377
  while (1) switch (_context21.prev = _context21.next) {
6311
6378
  case 0:
6312
6379
  _context21.prev = 0;
6313
- if (!(_this38.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
6380
+ if (!(_this39.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
6314
6381
  _context21.next = 4;
6315
6382
  break;
6316
6383
  }
6317
6384
  _context21.next = 4;
6318
- return _this38.releaseScreenShareFloor();
6385
+ return _this39.releaseScreenShareFloor();
6319
6386
  case 4:
6320
6387
  mediaSettings = {
6321
6388
  mediaDirection: {
@@ -6327,37 +6394,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6327
6394
  receiveShare: true
6328
6395
  }
6329
6396
  };
6330
- _this38.mediaProperties.setMediaDirection(mediaSettings.mediaDirection);
6331
- _this38.mediaProperties.unsetRemoteMedia();
6397
+ _this39.mediaProperties.setMediaDirection(mediaSettings.mediaDirection);
6398
+ _this39.mediaProperties.unsetRemoteMedia();
6332
6399
 
6333
6400
  // when a move to is intiated by the client , Locus delets the existing media node from the server as soon the device answers the meeting
6334
6401
  // once the device answers we close the old connection and create new media server connection with only share enabled
6335
- if (!_this38.statsAnalyzer) {
6402
+ if (!_this39.statsAnalyzer) {
6336
6403
  _context21.next = 10;
6337
6404
  break;
6338
6405
  }
6339
6406
  _context21.next = 10;
6340
- return _this38.statsAnalyzer.stopAnalyzer();
6407
+ return _this39.statsAnalyzer.stopAnalyzer();
6341
6408
  case 10:
6342
6409
  _context21.next = 12;
6343
- return _this38.closeRemoteStreams();
6410
+ return _this39.closeRemoteStreams();
6344
6411
  case 12:
6345
6412
  _context21.next = 14;
6346
- return _this38.closePeerConnections();
6413
+ return _this39.closePeerConnections();
6347
6414
  case 14:
6348
- _this38.cleanupLocalStreams();
6349
- _this38.unsetRemoteStreams();
6350
- _this38.unsetPeerConnections();
6351
- _this38.reconnectionManager.cleanUp();
6415
+ _this39.cleanupLocalStreams();
6416
+ _this39.unsetRemoteStreams();
6417
+ _this39.unsetPeerConnections();
6418
+ _this39.reconnectionManager.cleanUp();
6352
6419
  _context21.next = 20;
6353
- return _this38.addMedia({
6420
+ return _this39.addMedia({
6354
6421
  audioEnabled: false,
6355
6422
  videoEnabled: false,
6356
6423
  shareVideoEnabled: true
6357
6424
  });
6358
6425
  case 20:
6359
6426
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
6360
- _this38.isMoveToInProgress = false;
6427
+ _this39.isMoveToInProgress = false;
6361
6428
  _context21.next = 29;
6362
6429
  break;
6363
6430
  case 24:
@@ -6365,12 +6432,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6365
6432
  _context21.t0 = _context21["catch"](0);
6366
6433
  _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context21.t0);
6367
6434
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
6368
- correlation_id: _this38.correlationId,
6369
- locus_id: _this38.locusUrl.split('/').pop(),
6435
+ correlation_id: _this39.correlationId,
6436
+ locus_id: _this39.locusUrl.split('/').pop(),
6370
6437
  reason: _context21.t0.message,
6371
6438
  stack: _context21.t0.stack
6372
6439
  });
6373
- _this38.isMoveToInProgress = false;
6440
+ _this39.isMoveToInProgress = false;
6374
6441
  case 29:
6375
6442
  case "end":
6376
6443
  return _context21.stop();
@@ -6386,17 +6453,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6386
6453
  resourceId: resourceId,
6387
6454
  moveToResource: true
6388
6455
  }).then(function () {
6389
- _this38.meetingFiniteStateMachine.join();
6456
+ _this39.meetingFiniteStateMachine.join();
6390
6457
  }).catch(function (error) {
6391
- _this38.meetingFiniteStateMachine.fail(error);
6458
+ _this39.meetingFiniteStateMachine.fail(error);
6392
6459
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
6393
- correlation_id: _this38.correlationId,
6394
- locus_id: _this38.locusUrl.split('/').pop(),
6460
+ correlation_id: _this39.correlationId,
6461
+ locus_id: _this39.locusUrl.split('/').pop(),
6395
6462
  reason: error.message,
6396
6463
  stack: error.stack
6397
6464
  });
6398
6465
  _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', error);
6399
- _this38.isMoveToInProgress = false;
6466
+ _this39.isMoveToInProgress = false;
6400
6467
  return _promise.default.reject(error);
6401
6468
  });
6402
6469
  }
@@ -6411,7 +6478,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6411
6478
  }, {
6412
6479
  key: "moveFrom",
6413
6480
  value: function moveFrom(resourceId) {
6414
- var _this39 = this;
6481
+ var _this40 = this;
6415
6482
  // On moveFrom ask the developer to re capture it moveFrom then updateMedia
6416
6483
  if (!resourceId) {
6417
6484
  throw new _parameter.default('Cannot move call without a resourceId.');
@@ -6426,19 +6493,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6426
6493
  }
6427
6494
  });
6428
6495
  return _util2.default.joinMeetingOptions(this).then(function () {
6429
- return _util2.default.leaveMeeting(_this39, {
6496
+ return _util2.default.leaveMeeting(_this40, {
6430
6497
  resourceId: resourceId,
6431
6498
  correlationId: oldCorrelationId,
6432
6499
  moveMeeting: true
6433
6500
  }).then(function () {
6434
- _this39.resourceId = '';
6501
+ _this40.resourceId = '';
6435
6502
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_SUCCESS);
6436
6503
  });
6437
6504
  }).catch(function (error) {
6438
- _this39.meetingFiniteStateMachine.fail(error);
6505
+ _this40.meetingFiniteStateMachine.fail(error);
6439
6506
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_FAILURE, {
6440
- correlation_id: _this39.correlationId,
6441
- locus_id: _this39.locusUrl.split('/').pop(),
6507
+ correlation_id: _this40.correlationId,
6508
+ locus_id: _this40.locusUrl.split('/').pop(),
6442
6509
  reason: error.message,
6443
6510
  stack: error.stack
6444
6511
  });
@@ -6554,9 +6621,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6554
6621
  }, {
6555
6622
  key: "forwardEvent",
6556
6623
  value: function forwardEvent(eventEmitter, eventTypeToForward, meetingEventType) {
6557
- var _this40 = this;
6624
+ var _this41 = this;
6558
6625
  eventEmitter.on(eventTypeToForward, function (data) {
6559
- return _triggerProxy.default.trigger(_this40, {
6626
+ return _triggerProxy.default.trigger(_this41, {
6560
6627
  file: 'meetings',
6561
6628
  function: 'addMedia'
6562
6629
  }, meetingEventType, data);
@@ -6733,7 +6800,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6733
6800
  key: "waitForRemoteSDPAnswer",
6734
6801
  value: (function () {
6735
6802
  var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25() {
6736
- var _this41 = this;
6803
+ var _this42 = this;
6737
6804
  var LOG_HEADER, deferSDPAnswer;
6738
6805
  return _regenerator.default.wrap(function _callee25$(_context25) {
6739
6806
  while (1) switch (_context25.prev = _context25.next) {
@@ -6750,18 +6817,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6750
6817
  this.sdpResponseTimer = setTimeout(function () {
6751
6818
  _loggerProxy.default.logger.warn("".concat(LOG_HEADER, " timeout! no REMOTE SDP ANSWER received within ").concat(_constants.ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT / 1000, " seconds"));
6752
6819
  // @ts-ignore
6753
- _this41.webex.internal.newMetrics.submitClientEvent({
6820
+ _this42.webex.internal.newMetrics.submitClientEvent({
6754
6821
  name: 'client.media-engine.remote-sdp-received',
6755
6822
  payload: {
6756
6823
  canProceed: false,
6757
6824
  errors: [
6758
6825
  // @ts-ignore
6759
- _this41.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
6826
+ _this42.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
6760
6827
  clientErrorCode: _internalPluginMetrics.CALL_DIAGNOSTIC_CONFIG.MISSING_ROAP_ANSWER_CLIENT_CODE
6761
6828
  })]
6762
6829
  },
6763
6830
  options: {
6764
- meetingId: _this41.id,
6831
+ meetingId: _this42.id,
6765
6832
  rawError: new Error('Timeout waiting for SDP answer')
6766
6833
  }
6767
6834
  });
@@ -7268,10 +7335,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7268
7335
  }, {
7269
7336
  key: "addMedia",
7270
7337
  value: function addMedia() {
7271
- var _this42 = this;
7338
+ var _this43 = this;
7272
7339
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7273
7340
  return this.addMediaInternal(function () {
7274
- return _this42.turnServerUsed ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
7341
+ return _this43.turnServerUsed ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
7275
7342
  }, undefined, false, options);
7276
7343
  }
7277
7344
 
@@ -7575,7 +7642,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7575
7642
  * @memberof Meeting
7576
7643
  */
7577
7644
  function enqueueMediaUpdate(mediaUpdateType) {
7578
- var _this43 = this;
7645
+ var _this44 = this;
7579
7646
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7580
7647
  var canUpdateMediaNow = this.canUpdateMedia();
7581
7648
  return new _promise.default(function (resolve, reject) {
@@ -7586,9 +7653,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7586
7653
  options: options
7587
7654
  };
7588
7655
  _loggerProxy.default.logger.log("Meeting:index#enqueueMediaUpdate --> enqueuing media update type=".concat(mediaUpdateType));
7589
- _this43.queuedMediaUpdates.push(queueItem);
7656
+ _this44.queuedMediaUpdates.push(queueItem);
7590
7657
  if (canUpdateMediaNow) {
7591
- _this43.processNextQueuedMediaUpdate();
7658
+ _this44.processNextQueuedMediaUpdate();
7592
7659
  }
7593
7660
  });
7594
7661
  }
@@ -7693,7 +7760,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7693
7760
  }, {
7694
7761
  key: "acknowledge",
7695
7762
  value: function acknowledge(type) {
7696
- var _this44 = this;
7763
+ var _this45 = this;
7697
7764
  if (!type) {
7698
7765
  return _promise.default.reject(new _parameter.default('Type must be set to acknowledge the meeting.'));
7699
7766
  }
@@ -7705,12 +7772,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7705
7772
  }).then(function (response) {
7706
7773
  return _promise.default.resolve(response);
7707
7774
  }).then(function (response) {
7708
- _this44.meetingFiniteStateMachine.ring(type);
7775
+ _this45.meetingFiniteStateMachine.ring(type);
7709
7776
  // @ts-ignore
7710
- _this44.webex.internal.newMetrics.submitClientEvent({
7777
+ _this45.webex.internal.newMetrics.submitClientEvent({
7711
7778
  name: 'client.alert.displayed',
7712
7779
  options: {
7713
- meetingId: _this44.id
7780
+ meetingId: _this45.id
7714
7781
  }
7715
7782
  });
7716
7783
  return _promise.default.resolve({
@@ -7735,12 +7802,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7735
7802
  }, {
7736
7803
  key: "decline",
7737
7804
  value: function decline(reason) {
7738
- var _this45 = this;
7805
+ var _this46 = this;
7739
7806
  return _util2.default.declineMeeting(this, reason).then(function (decline) {
7740
- _this45.meetingFiniteStateMachine.decline();
7807
+ _this46.meetingFiniteStateMachine.decline();
7741
7808
  return _promise.default.resolve(decline);
7742
7809
  }).catch(function (error) {
7743
- _this45.meetingFiniteStateMachine.fail(error);
7810
+ _this46.meetingFiniteStateMachine.fail(error);
7744
7811
  return _promise.default.reject(error);
7745
7812
  });
7746
7813
  }
@@ -7791,7 +7858,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7791
7858
  }, {
7792
7859
  key: "leave",
7793
7860
  value: function leave() {
7794
- var _this46 = this;
7861
+ var _this47 = this;
7795
7862
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7796
7863
  var leaveReason = options.reason || _constants.MEETING_REMOVED_REASON.CLIENT_LEAVE_REQUEST;
7797
7864
 
@@ -7803,7 +7870,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7803
7870
  var payload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7804
7871
  return (
7805
7872
  // @ts-ignore
7806
- _this46.webex.internal.newMetrics.submitClientEvent({
7873
+ _this47.webex.internal.newMetrics.submitClientEvent({
7807
7874
  name: 'client.call.leave',
7808
7875
  payload: _objectSpread({
7809
7876
  trigger: 'user-interaction',
@@ -7811,7 +7878,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7811
7878
  leaveReason: options.clientEventLeaveReason
7812
7879
  }, payload),
7813
7880
  options: {
7814
- meetingId: _this46.id
7881
+ meetingId: _this47.id
7815
7882
  }
7816
7883
  })
7817
7884
  );
@@ -7820,24 +7887,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7820
7887
  return _util2.default.leaveMeeting(this, options).then(function (leave) {
7821
7888
  // CA team recommends submitting this *after* locus /leave
7822
7889
  submitLeaveMetric();
7823
- _this46.meetingFiniteStateMachine.leave();
7824
- _this46.clearMeetingData();
7890
+ _this47.meetingFiniteStateMachine.leave();
7891
+ _this47.clearMeetingData();
7825
7892
 
7826
7893
  // upload logs on leave irrespective of meeting delete
7827
- _triggerProxy.default.trigger(_this46, {
7894
+ _triggerProxy.default.trigger(_this47, {
7828
7895
  file: 'meeting/index',
7829
7896
  function: 'leave'
7830
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this46);
7897
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this47);
7831
7898
 
7832
7899
  // TODO: more testing before we remove this code, we are not sure the scenarios for destroy here
7833
- if (_this46.wirelessShare || _this46.guest) {
7900
+ if (_this47.wirelessShare || _this47.guest) {
7834
7901
  // If screen sharing clean the meeting object
7835
- _triggerProxy.default.trigger(_this46, {
7902
+ _triggerProxy.default.trigger(_this47, {
7836
7903
  file: 'meeting/index',
7837
7904
  function: 'leave'
7838
7905
  }, _constants.EVENTS.DESTROY_MEETING, {
7839
7906
  reason: options.reason,
7840
- meetingId: _this46.id
7907
+ meetingId: _this47.id
7841
7908
  });
7842
7909
  }
7843
7910
  _loggerProxy.default.logger.log('Meeting:index#leave --> LEAVE REASON ', leaveReason);
@@ -7854,16 +7921,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7854
7921
  shownToUser: false
7855
7922
  }]
7856
7923
  });
7857
- _this46.meetingFiniteStateMachine.fail(error);
7924
+ _this47.meetingFiniteStateMachine.fail(error);
7858
7925
  _loggerProxy.default.logger.error('Meeting:index#leave --> Failed to leave ', error);
7859
7926
  // upload logs on leave irrespective of meeting delete
7860
- _triggerProxy.default.trigger(_this46, {
7927
+ _triggerProxy.default.trigger(_this47, {
7861
7928
  file: 'meeting/index',
7862
7929
  function: 'leave'
7863
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this46);
7930
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this47);
7864
7931
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_LEAVE_FAILURE, {
7865
- correlation_id: _this46.correlationId,
7866
- locus_id: _this46.locusUrl.split('/').pop(),
7932
+ correlation_id: _this47.correlationId,
7933
+ locus_id: _this47.locusUrl.split('/').pop(),
7867
7934
  reason: error.message,
7868
7935
  stack: error.stack,
7869
7936
  code: error.code
@@ -7883,7 +7950,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7883
7950
  }, {
7884
7951
  key: "startWhiteboardShare",
7885
7952
  value: function startWhiteboardShare(channelUrl, resourceToken) {
7886
- var _this47 = this;
7953
+ var _this48 = this;
7887
7954
  var whiteboard = this.locusInfo.mediaShares.find(function (element) {
7888
7955
  return element.name === 'whiteboard';
7889
7956
  });
@@ -7912,13 +7979,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7912
7979
  body.resourceToken = resourceToken;
7913
7980
  }
7914
7981
  return this.meetingRequest.changeMeetingFloor(body).then(function () {
7915
- _this47.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
7982
+ _this48.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
7916
7983
  return _promise.default.resolve();
7917
7984
  }).catch(function (error) {
7918
7985
  _loggerProxy.default.logger.error('Meeting:index#startWhiteboardShare --> Error ', error);
7919
7986
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_START_WHITEBOARD_SHARE_FAILURE, {
7920
- correlation_id: _this47.correlationId,
7921
- locus_id: _this47.locusUrl.split('/').pop(),
7987
+ correlation_id: _this48.correlationId,
7988
+ locus_id: _this48.locusUrl.split('/').pop(),
7922
7989
  reason: error.message,
7923
7990
  stack: error.stack,
7924
7991
  board: {
@@ -7941,7 +8008,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7941
8008
  }, {
7942
8009
  key: "stopWhiteboardShare",
7943
8010
  value: function stopWhiteboardShare(channelUrl) {
7944
- var _this48 = this;
8011
+ var _this49 = this;
7945
8012
  var whiteboard = this.locusInfo.mediaShares.find(function (element) {
7946
8013
  return element.name === 'whiteboard';
7947
8014
  });
@@ -7964,8 +8031,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7964
8031
  }).catch(function (error) {
7965
8032
  _loggerProxy.default.logger.error('Meeting:index#stopWhiteboardShare --> Error ', error);
7966
8033
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_STOP_WHITEBOARD_SHARE_FAILURE, {
7967
- correlation_id: _this48.correlationId,
7968
- locus_id: _this48.locusUrl.split('/').pop(),
8034
+ correlation_id: _this49.correlationId,
8035
+ locus_id: _this49.locusUrl.split('/').pop(),
7969
8036
  reason: error.message,
7970
8037
  stack: error.stack,
7971
8038
  board: {
@@ -7987,7 +8054,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7987
8054
  }, {
7988
8055
  key: "requestScreenShareFloor",
7989
8056
  value: function requestScreenShareFloor() {
7990
- var _this49 = this;
8057
+ var _this50 = this;
7991
8058
  if (!this.mediaProperties.hasLocalShareStream() || !this.mediaProperties.mediaDirection.sendShare) {
7992
8059
  _loggerProxy.default.logger.log("Meeting:index#requestScreenShareFloor --> NOT requesting floor, because we don't have the share stream anymore (shareStream=".concat(this.mediaProperties.shareVideoStream ? 'yes' : 'no', ", sendShare=").concat(this.mediaProperties.mediaDirection.sendShare, ")"));
7993
8060
  this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
@@ -8018,34 +8085,34 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8018
8085
  resourceUrl: this.resourceUrl,
8019
8086
  shareInstanceId: this.localShareInstanceId
8020
8087
  }).then(function () {
8021
- _this49.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
8088
+ _this50.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
8022
8089
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_SUCCESS, {
8023
- correlation_id: _this49.correlationId,
8024
- locus_id: _this49.locusUrl.split('/').pop()
8090
+ correlation_id: _this50.correlationId,
8091
+ locus_id: _this50.locusUrl.split('/').pop()
8025
8092
  });
8026
8093
  return _promise.default.resolve();
8027
8094
  }).catch(function (error) {
8028
8095
  _loggerProxy.default.logger.error('Meeting:index#share --> Error ', error);
8029
8096
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_FAILURE, {
8030
- correlation_id: _this49.correlationId,
8031
- locus_id: _this49.locusUrl.split('/').pop(),
8097
+ correlation_id: _this50.correlationId,
8098
+ locus_id: _this50.locusUrl.split('/').pop(),
8032
8099
  reason: error.message,
8033
8100
  stack: error.stack
8034
8101
  });
8035
8102
 
8036
8103
  // @ts-ignore
8037
- _this49.webex.internal.newMetrics.submitClientEvent({
8104
+ _this50.webex.internal.newMetrics.submitClientEvent({
8038
8105
  name: 'client.share.floor-granted.local',
8039
8106
  payload: {
8040
8107
  mediaType: 'share',
8041
8108
  errors: _util2.default.getChangeMeetingFloorErrorPayload(error.message),
8042
- shareInstanceId: _this49.localShareInstanceId
8109
+ shareInstanceId: _this50.localShareInstanceId
8043
8110
  },
8044
8111
  options: {
8045
- meetingId: _this49.id
8112
+ meetingId: _this50.id
8046
8113
  }
8047
8114
  });
8048
- _this49.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
8115
+ _this50.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
8049
8116
  return _promise.default.reject(error);
8050
8117
  });
8051
8118
  }
@@ -8068,10 +8135,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8068
8135
  }, {
8069
8136
  key: "requestScreenShareFloorIfPending",
8070
8137
  value: function requestScreenShareFloorIfPending() {
8071
- var _this50 = this;
8138
+ var _this51 = this;
8072
8139
  if (this.floorGrantPending && this.state === _constants.MEETING_STATE.STATES.JOINED) {
8073
8140
  this.requestScreenShareFloor().then(function () {
8074
- _this50.floorGrantPending = false;
8141
+ _this51.floorGrantPending = false;
8075
8142
  });
8076
8143
  }
8077
8144
  }
@@ -8085,7 +8152,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8085
8152
  }, {
8086
8153
  key: "releaseScreenShareFloor",
8087
8154
  value: function releaseScreenShareFloor() {
8088
- var _this51 = this;
8155
+ var _this52 = this;
8089
8156
  var content = this.locusInfo.mediaShares.find(function (element) {
8090
8157
  return element.name === _constants.CONTENT;
8091
8158
  });
@@ -8120,8 +8187,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8120
8187
  }).catch(function (error) {
8121
8188
  _loggerProxy.default.logger.error('Meeting:index#releaseScreenShareFloor --> Error ', error);
8122
8189
  _metrics.default.sendBehavioralMetric(_constants2.default.STOP_FLOOR_REQUEST_FAILURE, {
8123
- correlation_id: _this51.correlationId,
8124
- locus_id: _this51.locusUrl.split('/').pop(),
8190
+ correlation_id: _this52.correlationId,
8191
+ locus_id: _this52.locusUrl.split('/').pop(),
8125
8192
  reason: error.message,
8126
8193
  stack: error.stack
8127
8194
  });
@@ -8301,7 +8368,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8301
8368
  }, {
8302
8369
  key: "changeVideoLayout",
8303
8370
  value: function changeVideoLayout(layoutType) {
8304
- var _this52 = this;
8371
+ var _this53 = this;
8305
8372
  var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8306
8373
  var main = renderInfo.main,
8307
8374
  content = renderInfo.content;
@@ -8355,7 +8422,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8355
8422
  }
8356
8423
  this.lastVideoLayoutInfo = (0, _lodash.cloneDeep)(layoutInfo);
8357
8424
  this.locusInfo.once(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_LAYOUT_UPDATED, function (envelope) {
8358
- _triggerProxy.default.trigger(_this52, {
8425
+ _triggerProxy.default.trigger(_this53, {
8359
8426
  file: 'meeting/index',
8360
8427
  function: 'changeVideoLayout'
8361
8428
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_LAYOUT_UPDATE, {
@@ -8471,7 +8538,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8471
8538
  }, {
8472
8539
  key: "endMeetingForAll",
8473
8540
  value: function endMeetingForAll() {
8474
- var _this53 = this;
8541
+ var _this54 = this;
8475
8542
  // @ts-ignore
8476
8543
  this.webex.internal.newMetrics.submitClientEvent({
8477
8544
  name: 'client.call.leave',
@@ -8489,25 +8556,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8489
8556
  locus_id: this.locusId
8490
8557
  });
8491
8558
  return _util2.default.endMeetingForAll(this).then(function (end) {
8492
- _this53.meetingFiniteStateMachine.end();
8493
- _this53.clearMeetingData();
8559
+ _this54.meetingFiniteStateMachine.end();
8560
+ _this54.clearMeetingData();
8494
8561
  // upload logs on leave irrespective of meeting delete
8495
- _triggerProxy.default.trigger(_this53, {
8562
+ _triggerProxy.default.trigger(_this54, {
8496
8563
  file: 'meeting/index',
8497
8564
  function: 'endMeetingForAll'
8498
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this53);
8565
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this54);
8499
8566
  return end;
8500
8567
  }).catch(function (error) {
8501
- _this53.meetingFiniteStateMachine.fail(error);
8568
+ _this54.meetingFiniteStateMachine.fail(error);
8502
8569
  _loggerProxy.default.logger.error('Meeting:index#endMeetingForAll --> Failed to end meeting ', error);
8503
8570
  // upload logs on leave irrespective of meeting delete
8504
- _triggerProxy.default.trigger(_this53, {
8571
+ _triggerProxy.default.trigger(_this54, {
8505
8572
  file: 'meeting/index',
8506
8573
  function: 'endMeetingForAll'
8507
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this53);
8574
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this54);
8508
8575
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_END_ALL_FAILURE, {
8509
- correlation_id: _this53.correlationId,
8510
- locus_id: _this53.locusUrl.split('/').pop(),
8576
+ correlation_id: _this54.correlationId,
8577
+ locus_id: _this54.locusUrl.split('/').pop(),
8511
8578
  reason: error.message,
8512
8579
  stack: error.stack,
8513
8580
  code: error.code
@@ -8649,7 +8716,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8649
8716
  _this$mediaProperties43,
8650
8717
  _this$mediaProperties44,
8651
8718
  _this$mediaProperties45,
8652
- _this54 = this;
8719
+ _this55 = this;
8653
8720
  var LOG_HEADER = 'Meeting:index#updateTranscodedMediaConnection -->';
8654
8721
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " starting"));
8655
8722
  if (!this.canUpdateMedia()) {
@@ -8674,8 +8741,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8674
8741
  }).catch(function (error) {
8675
8742
  _loggerProxy.default.logger.error("".concat(LOG_HEADER, " Error: "), error);
8676
8743
  _metrics.default.sendBehavioralMetric(_constants2.default.UPDATE_MEDIA_FAILURE, {
8677
- correlation_id: _this54.correlationId,
8678
- locus_id: _this54.locusUrl.split('/').pop(),
8744
+ correlation_id: _this55.correlationId,
8745
+ locus_id: _this55.locusUrl.split('/').pop(),
8679
8746
  reason: error.message,
8680
8747
  stack: error.stack
8681
8748
  });