@webex/plugin-meetings 3.0.0-beta.391 → 3.0.0-beta.393

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/breakouts/breakout.js +1 -1
  2. package/dist/breakouts/index.js +1 -1
  3. package/dist/config.js +1 -0
  4. package/dist/config.js.map +1 -1
  5. package/dist/constants.js +16 -7
  6. package/dist/constants.js.map +1 -1
  7. package/dist/interpretation/index.js +1 -1
  8. package/dist/interpretation/siLanguage.js +1 -1
  9. package/dist/meeting/index.js +738 -616
  10. package/dist/meeting/index.js.map +1 -1
  11. package/dist/meeting/util.js +4 -1
  12. package/dist/meeting/util.js.map +1 -1
  13. package/dist/meeting/voicea-meeting.js +172 -0
  14. package/dist/meeting/voicea-meeting.js.map +1 -0
  15. package/dist/meeting-info/meeting-info-v2.js +9 -6
  16. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  17. package/dist/meeting-info/util.js +7 -6
  18. package/dist/meeting-info/util.js.map +1 -1
  19. package/dist/meeting-info/utilv2.js +8 -4
  20. package/dist/meeting-info/utilv2.js.map +1 -1
  21. package/dist/member/index.js +0 -1
  22. package/dist/member/index.js.map +1 -1
  23. package/dist/types/constants.d.ts +8 -2
  24. package/dist/types/meeting/index.d.ts +56 -12
  25. package/dist/types/meeting/voicea-meeting.d.ts +16 -0
  26. package/dist/webinar/index.js +1 -1
  27. package/package.json +20 -20
  28. package/src/config.ts +2 -4
  29. package/src/constants.ts +11 -2
  30. package/src/meeting/index.ts +320 -157
  31. package/src/meeting/util.ts +5 -1
  32. package/src/meeting/voicea-meeting.ts +122 -0
  33. package/src/meeting-info/meeting-info-v2.ts +5 -11
  34. package/src/meeting-info/util.ts +12 -9
  35. package/src/meeting-info/utilv2.ts +24 -14
  36. package/src/member/index.ts +0 -1
  37. package/test/integration/spec/journey.js +2 -2
  38. package/test/unit/spec/breakouts/breakout.ts +2 -1
  39. package/test/unit/spec/breakouts/index.ts +7 -4
  40. package/test/unit/spec/locus-info/index.js +27 -18
  41. package/test/unit/spec/locus-info/selfUtils.js +6 -11
  42. package/test/unit/spec/media/index.ts +5 -0
  43. package/test/unit/spec/meeting/index.js +315 -87
  44. package/test/unit/spec/meeting/utils.js +52 -10
  45. package/test/unit/spec/meeting/voicea-meeting.ts +266 -0
  46. package/test/unit/spec/meeting-info/meetinginfov2.js +20 -15
  47. package/test/unit/spec/meetings/index.js +78 -10
  48. package/test/unit/spec/metrics/index.js +1 -2
  49. package/test/unit/spec/multistream/mediaRequestManager.ts +1 -0
  50. package/test/unit/spec/recording-controller/index.js +0 -1
  51. package/test/unit/spec/roap/turnDiscovery.ts +1 -1
@@ -29,17 +29,19 @@ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-cor
29
29
  var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
30
30
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
31
31
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
32
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
32
+ var _defineProperty3 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
33
33
  var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty"));
34
34
  var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
35
35
  var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
36
36
  var _uuid = _interopRequireDefault(require("uuid"));
37
- var _jsonwebtoken = _interopRequireDefault(require("jsonwebtoken"));
37
+ var _jwtDecode = _interopRequireDefault(require("jwt-decode"));
38
38
  var _webexCore = require("@webex/webex-core");
39
39
  var _common = require("@webex/common");
40
40
  var _internalPluginMetrics = require("@webex/internal-plugin-metrics");
41
41
  var _internalMediaCore = require("@webex/internal-media-core");
42
42
  var _mediaHelpers = require("@webex/media-helpers");
43
+ var _internalPluginVoicea = require("@webex/internal-plugin-voicea");
44
+ var _voiceaMeeting = require("./voicea-meeting");
43
45
  var _webexErrors = require("../common/errors/webex-errors");
44
46
  var _statsAnalyzer = require("../statsAnalyzer");
45
47
  var _networkQualityMonitor = _interopRequireDefault(require("../networkQualityMonitor"));
@@ -60,7 +62,6 @@ var _util2 = _interopRequireDefault(require("../meetings/util"));
60
62
  var _util3 = _interopRequireDefault(require("../recording-controller/util"));
61
63
  var _util4 = _interopRequireDefault(require("../controls-options-manager/util"));
62
64
  var _util5 = _interopRequireDefault(require("../media/util"));
63
- var _transcription = _interopRequireDefault(require("../transcription"));
64
65
  var _reactions = require("../reactions/reactions");
65
66
  var _passwordError = _interopRequireDefault(require("../common/errors/password-error"));
66
67
  var _captchaError = _interopRequireDefault(require("../common/errors/captcha-error"));
@@ -70,7 +71,6 @@ var _constants = require("../constants");
70
71
  var _constants2 = _interopRequireDefault(require("../metrics/constants"));
71
72
  var _parameter = _interopRequireDefault(require("../common/errors/parameter"));
72
73
  var _meetingInfoV = require("../meeting-info/meeting-info-v2");
73
- var _browserDetection = _interopRequireDefault(require("../common/browser-detection"));
74
74
  var _receiveSlotManager = require("../multistream/receiveSlotManager");
75
75
  var _sendSlotManager = _interopRequireDefault(require("../multistream/sendSlotManager"));
76
76
  var _mediaRequestManager = require("../multistream/mediaRequestManager");
@@ -89,11 +89,9 @@ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol
89
89
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
90
90
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
91
91
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys2(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
92
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
92
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty3.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
93
93
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
94
94
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
95
- var _BrowserDetection = (0, _browserDetection.default)(),
96
- isBrowser = _BrowserDetection.isBrowser;
97
95
  var logRequest = function logRequest(request, _ref) {
98
96
  var _ref$logText = _ref.logText,
99
97
  logText = _ref$logText === void 0 ? '' : _ref$logText;
@@ -379,7 +377,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
379
377
  * @memberof Meeting
380
378
  */
381
379
  function Meeting(attrs, _options) {
382
- var _attrs$callStateForMe, _this$locusInfo, _this$locusInfo$links, _this$locusInfo$links2, _this$locusInfo$links3, _this$locusInfo2, _this$locusInfo2$full, _this$locusInfo3, _this$locusInfo4;
380
+ var _defineProperty2, _attrs$callStateForMe, _this$locusInfo, _this$locusInfo$links, _this$locusInfo$links2, _this$locusInfo$links3, _this$locusInfo2, _this$locusInfo2$full, _this$locusInfo3, _this$locusInfo4;
383
381
  var _this;
384
382
  (0, _classCallCheck2.default)(this, Meeting);
385
383
  _this = _super.call(this, {}, _options);
@@ -390,119 +388,146 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
390
388
  * @private
391
389
  * @memberof Meeting
392
390
  */
393
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "attrs", void 0);
394
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "audio", void 0);
395
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "breakouts", void 0);
396
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "simultaneousInterpretation", void 0);
397
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "annotation", void 0);
398
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "webinar", void 0);
399
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "conversationUrl", void 0);
400
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "callStateForMetrics", void 0);
401
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "destination", void 0);
402
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "destinationType", void 0);
403
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "deviceUrl", void 0);
404
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hostId", void 0);
405
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "id", void 0);
406
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isMultistream", void 0);
407
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusUrl", void 0);
408
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaConnections", void 0);
409
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaId", void 0);
410
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingFiniteStateMachine", void 0);
411
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingInfo", void 0);
412
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingRequest", void 0);
413
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "members", void 0);
414
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "options", void 0);
415
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "orgId", void 0);
416
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "owner", void 0);
417
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "partner", void 0);
418
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "policy", void 0);
419
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "reconnectionManager", void 0);
420
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resource", void 0);
421
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "roap", void 0);
422
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "roapSeq", void 0);
423
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selfUrl", void 0);
424
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sipUri", void 0);
425
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", void 0);
426
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "userId", void 0);
427
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "video", void 0);
428
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "callEvents", void 0);
429
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "datachannelUrl", void 0);
430
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "deferJoin", void 0);
431
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "dialInDeviceStatus", void 0);
432
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "dialInUrl", void 0);
433
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "dialOutDeviceStatus", void 0);
434
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "dialOutUrl", void 0);
435
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fetchMeetingInfoTimeoutId", void 0);
436
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "floorGrantPending", void 0);
437
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hasJoinedOnce", void 0);
438
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hasWebsocketConnected", void 0);
439
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "inMeetingActions", void 0);
440
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isLocalShareLive", void 0);
441
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isRoapInProgress", void 0);
442
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "keepAliveTimerId", void 0);
443
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "lastVideoLayoutInfo", void 0);
444
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusInfo", void 0);
445
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusMediaRequest", void 0);
446
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaProperties", void 0);
447
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaRequestManagers", void 0);
448
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingInfoFailureReason", void 0);
449
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingInfoFailureCode", void 0);
450
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingInfoExtraParams", void 0);
451
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "networkQualityMonitor", void 0);
452
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "networkStatus", void 0);
453
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "passwordStatus", void 0);
454
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "queuedMediaUpdates", void 0);
455
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "recording", void 0);
456
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "remoteMediaManager", void 0);
457
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "recordingController", void 0);
458
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "controlsOptionsManager", void 0);
459
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "requiredCaptcha", void 0);
460
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "receiveSlotManager", void 0);
461
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selfUserPolicies", void 0);
462
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "enforceVBGImagesURL", void 0);
463
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "shareStatus", void 0);
464
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "screenShareFloorState", void 0);
465
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "statsAnalyzer", void 0);
466
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "transcription", void 0);
467
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updateMediaConnections", void 0);
468
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "userDisplayHints", void 0);
469
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "endCallInitJoinReq", void 0);
470
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "endJoinReqResp", void 0);
471
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "endLocalSDPGenRemoteSDPRecvDelay", void 0);
472
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "joinedWith", void 0);
473
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusId", void 0);
474
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "startCallInitJoinReq", void 0);
475
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "startJoinReqResp", void 0);
476
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "startLocalSDPGenRemoteSDPRecvDelay", void 0);
477
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "wirelessShare", void 0);
478
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "guest", void 0);
479
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingJoinUrl", void 0);
480
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingNumber", void 0);
481
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingState", void 0);
482
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "permissionToken", void 0);
483
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "permissionTokenPayload", void 0);
484
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "permissionTokenReceivedLocalTime", void 0);
485
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resourceId", void 0);
486
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "resourceUrl", void 0);
487
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selfId", void 0);
488
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", void 0);
489
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "localAudioStreamMuteStateHandler", void 0);
490
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "localVideoStreamMuteStateHandler", void 0);
491
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "localOutputTrackChangeHandler", void 0);
492
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "roles", void 0);
493
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "environment", void 0);
494
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "namespace", _constants.MEETINGS);
495
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "allowMediaInLobby", void 0);
496
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "localShareInstanceId", void 0);
497
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "remoteShareInstanceId", void 0);
498
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "turnDiscoverySkippedReason", void 0);
499
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "turnServerUsed", void 0);
500
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "retriedWithTurnServer", void 0);
501
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sendSlotManager", new _sendSlotManager.default(_loggerProxy.default));
502
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "deferSDPAnswer", void 0);
503
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sdpResponseTimer", void 0);
504
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hasMediaConnectionConnectedAtLeastOnce", void 0);
505
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "processRelayEvent", function (e) {
391
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "attrs", void 0);
392
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "audio", void 0);
393
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "breakouts", void 0);
394
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "simultaneousInterpretation", void 0);
395
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "annotation", void 0);
396
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "webinar", void 0);
397
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "conversationUrl", void 0);
398
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "callStateForMetrics", void 0);
399
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "destination", void 0);
400
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "destinationType", void 0);
401
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "deviceUrl", void 0);
402
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "hostId", void 0);
403
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "id", void 0);
404
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "isMultistream", void 0);
405
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "locusUrl", void 0);
406
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "mediaConnections", void 0);
407
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "mediaId", void 0);
408
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingFiniteStateMachine", void 0);
409
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingInfo", void 0);
410
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingRequest", void 0);
411
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "members", void 0);
412
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "options", void 0);
413
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "orgId", void 0);
414
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "owner", void 0);
415
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "partner", void 0);
416
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "policy", void 0);
417
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "reconnectionManager", void 0);
418
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "resource", void 0);
419
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "roap", void 0);
420
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "roapSeq", void 0);
421
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "selfUrl", void 0);
422
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "sipUri", void 0);
423
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "type", void 0);
424
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "userId", void 0);
425
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "video", void 0);
426
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "callEvents", void 0);
427
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "datachannelUrl", void 0);
428
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "deferJoin", void 0);
429
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "dialInDeviceStatus", void 0);
430
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "dialInUrl", void 0);
431
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "dialOutDeviceStatus", void 0);
432
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "dialOutUrl", void 0);
433
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "fetchMeetingInfoTimeoutId", void 0);
434
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "floorGrantPending", void 0);
435
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "hasJoinedOnce", void 0);
436
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "hasWebsocketConnected", void 0);
437
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "inMeetingActions", void 0);
438
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "isLocalShareLive", void 0);
439
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "isRoapInProgress", void 0);
440
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "keepAliveTimerId", void 0);
441
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "lastVideoLayoutInfo", void 0);
442
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "locusInfo", void 0);
443
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "locusMediaRequest", void 0);
444
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "mediaProperties", void 0);
445
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "mediaRequestManagers", void 0);
446
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingInfoFailureReason", void 0);
447
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingInfoFailureCode", void 0);
448
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingInfoExtraParams", void 0);
449
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "networkQualityMonitor", void 0);
450
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "networkStatus", void 0);
451
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "passwordStatus", void 0);
452
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "queuedMediaUpdates", void 0);
453
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "recording", void 0);
454
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "remoteMediaManager", void 0);
455
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "recordingController", void 0);
456
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "controlsOptionsManager", void 0);
457
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "requiredCaptcha", void 0);
458
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "receiveSlotManager", void 0);
459
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "selfUserPolicies", void 0);
460
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "enforceVBGImagesURL", void 0);
461
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "shareStatus", void 0);
462
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "screenShareFloorState", void 0);
463
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "statsAnalyzer", void 0);
464
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "transcription", void 0);
465
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "updateMediaConnections", void 0);
466
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "userDisplayHints", void 0);
467
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "endCallInitJoinReq", void 0);
468
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "endJoinReqResp", void 0);
469
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "endLocalSDPGenRemoteSDPRecvDelay", void 0);
470
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "joinedWith", void 0);
471
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "locusId", void 0);
472
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "startCallInitJoinReq", void 0);
473
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "startJoinReqResp", void 0);
474
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "startLocalSDPGenRemoteSDPRecvDelay", void 0);
475
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "wirelessShare", void 0);
476
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "guest", void 0);
477
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingJoinUrl", void 0);
478
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingNumber", void 0);
479
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "meetingState", void 0);
480
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "permissionToken", void 0);
481
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "permissionTokenPayload", void 0);
482
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "permissionTokenReceivedLocalTime", void 0);
483
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "resourceId", void 0);
484
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "resourceUrl", void 0);
485
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "selfId", void 0);
486
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "state", void 0);
487
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "localAudioStreamMuteStateHandler", void 0);
488
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "localVideoStreamMuteStateHandler", void 0);
489
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "localOutputTrackChangeHandler", void 0);
490
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "roles", void 0);
491
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "environment", void 0);
492
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "namespace", _constants.MEETINGS);
493
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "allowMediaInLobby", void 0);
494
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "localShareInstanceId", void 0);
495
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "remoteShareInstanceId", void 0);
496
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "turnDiscoverySkippedReason", void 0);
497
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "turnServerUsed", void 0);
498
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "areVoiceaEventsSetup", false);
499
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "voiceaListenerCallbacks", (_defineProperty2 = {}, (0, _defineProperty3.default)(_defineProperty2, _internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, function (payload) {
500
+ _this.transcription.languageOptions = payload;
501
+ _triggerProxy.default.trigger((0, _assertThisInitialized2.default)(_this), {
502
+ file: 'meeting/index',
503
+ function: 'setUpVoiceaListeners'
504
+ }, _constants.EVENT_TRIGGERS.MEETING_STARTED_RECEIVING_TRANSCRIPTION, payload);
505
+ }), (0, _defineProperty3.default)(_defineProperty2, _internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON, function () {
506
+ _this.transcription.status = _internalPluginVoicea.TURN_ON_CAPTION_STATUS.ENABLED;
507
+ }), (0, _defineProperty3.default)(_defineProperty2, _internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND, function (payload) {
508
+ var _data$text;
509
+ var data = payload.data;
510
+ _this.transcription.isListening = !!data.isListening;
511
+ _this.transcription.commandText = (_data$text = data.text) !== null && _data$text !== void 0 ? _data$text : '';
512
+ }), (0, _defineProperty3.default)(_defineProperty2, _internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION, function (data) {
513
+ (0, _voiceaMeeting.processNewCaptions)({
514
+ data: data,
515
+ meeting: (0, _assertThisInitialized2.default)(_this)
516
+ });
517
+ _triggerProxy.default.trigger((0, _assertThisInitialized2.default)(_this), {
518
+ file: 'meeting/index',
519
+ function: 'setUpVoiceaListeners'
520
+ }, _constants.EVENT_TRIGGERS.MEETING_CAPTION_RECEIVED, {
521
+ captions: _this.transcription.captions,
522
+ interimCaptions: _this.transcription.interimCaptions
523
+ });
524
+ }), _defineProperty2));
525
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "retriedWithTurnServer", void 0);
526
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "sendSlotManager", new _sendSlotManager.default(_loggerProxy.default));
527
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "deferSDPAnswer", void 0);
528
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "sdpResponseTimer", void 0);
529
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "hasMediaConnectionConnectedAtLeastOnce", void 0);
530
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "processRelayEvent", function (e) {
506
531
  switch (e.data.relayType) {
507
532
  case _constants3.REACTION_RELAY_TYPES.REACTION:
508
533
  if (
@@ -527,7 +552,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
527
552
  break;
528
553
  }
529
554
  });
530
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleRoapFailure", function (error) {
555
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleRoapFailure", function (error) {
531
556
  // eslint-disable-next-line @typescript-eslint/no-shadow
532
557
  var sendBehavioralMetric = function sendBehavioralMetric(metricName, error, correlationId) {
533
558
  var _error$cause;
@@ -587,14 +612,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
587
612
  });
588
613
  }
589
614
  });
590
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "roapMessageReceived", function (roapMessage) {
615
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "roapMessageReceived", function (roapMessage) {
591
616
  var mediaServer = _util2.default.getMediaServer(roapMessage.sdp);
592
617
  _this.mediaProperties.webrtcMediaConnection.roapMessageReceived(roapMessage);
593
618
  if (mediaServer) {
594
619
  _this.mediaProperties.webrtcMediaConnection.mediaServer = mediaServer;
595
620
  }
596
621
  });
597
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setupSdpListeners", function () {
622
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "setupSdpListeners", function () {
598
623
  _this.mediaProperties.webrtcMediaConnection.on(_internalMediaCore.Event.REMOTE_SDP_ANSWER_PROCESSED, function () {
599
624
  // @ts-ignore
600
625
  var cdl = _this.webex.internal.newMetrics.callDiagnosticLatencies;
@@ -640,7 +665,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
640
665
  });
641
666
  });
642
667
  });
643
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setupMediaConnectionListeners", function () {
668
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "setupMediaConnectionListeners", function () {
644
669
  _this.setupSdpListeners();
645
670
  _this.mediaProperties.webrtcMediaConnection.on(_internalMediaCore.Event.ROAP_STARTED, function () {
646
671
  _this.isRoapInProgress = true;
@@ -882,7 +907,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
882
907
  });
883
908
  });
884
909
  });
885
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setupStatsAnalyzerEventHandlers", function () {
910
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "setupStatsAnalyzerEventHandlers", function () {
886
911
  _this.statsAnalyzer.on(_statsAnalyzer.EVENTS.MEDIA_QUALITY, function (options) {
887
912
  var _this$webex$meetings$;
888
913
  // TODO: might have to send the same event to the developer
@@ -964,7 +989,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
964
989
  });
965
990
  });
966
991
  });
967
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "forceSendStatsReport", /*#__PURE__*/function () {
992
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "forceSendStatsReport", /*#__PURE__*/function () {
968
993
  var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref3) {
969
994
  var callFrom, LOG_HEADER, _this$mediaProperties, _this$mediaProperties2;
970
995
  return _regenerator.default.wrap(function _callee$(_context) {
@@ -993,7 +1018,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
993
1018
  return _ref4.apply(this, arguments);
994
1019
  };
995
1020
  }());
996
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaNegotiatedEvent", function () {
1021
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "mediaNegotiatedEvent", function () {
997
1022
  // @ts-ignore - config coming from registerPlugin
998
1023
  if (_this.config.experimental.enableMediaNegotiatedEvent) {
999
1024
  _loggerProxy.default.logger.info('Meeting:mediaNegotiatedEvent --> Media server negotiated');
@@ -1003,7 +1028,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1003
1028
  }, _constants.EVENT_TRIGGERS.MEDIA_NEGOTIATED);
1004
1029
  }
1005
1030
  });
1006
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "processNextQueuedMediaUpdate", function () {
1031
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "processNextQueuedMediaUpdate", function () {
1007
1032
  if (_this.canUpdateMedia() && _this.queuedMediaUpdates.length > 0) {
1008
1033
  var _this$queuedMediaUpda = _this.queuedMediaUpdates.shift(),
1009
1034
  pendingPromiseResolve = _this$queuedMediaUpda.pendingPromiseResolve,
@@ -1031,7 +1056,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1031
1056
  });
1032
1057
  }
1033
1058
  });
1034
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleShareAudioStreamEnded", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
1059
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleShareAudioStreamEnded", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
1035
1060
  return _regenerator.default.wrap(function _callee2$(_context2) {
1036
1061
  while (1) switch (_context2.prev = _context2.next) {
1037
1062
  case 0:
@@ -1061,14 +1086,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1061
1086
  }
1062
1087
  }, _callee2, null, [[4, 9]]);
1063
1088
  })));
1064
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleShareVideoStreamMuteStateChange", function (muted) {
1089
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleShareVideoStreamMuteStateChange", function (muted) {
1065
1090
  _loggerProxy.default.logger.log("Meeting:index#handleShareVideoStreamMuteStateChange --> Share video stream mute state changed to muted ".concat(muted));
1066
1091
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_VIDEO_MUTE_STATE_CHANGE, {
1067
1092
  correlationId: _this.correlationId,
1068
1093
  muted: muted
1069
1094
  });
1070
1095
  });
1071
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleShareVideoStreamEnded", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
1096
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleShareVideoStreamEnded", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
1072
1097
  return _regenerator.default.wrap(function _callee3$(_context3) {
1073
1098
  while (1) switch (_context3.prev = _context3.next) {
1074
1099
  case 0:
@@ -1100,7 +1125,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1100
1125
  }
1101
1126
  }, _callee3, null, [[4, 9]]);
1102
1127
  })));
1103
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "triggerStoppedSharing", function () {
1128
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "triggerStoppedSharing", function () {
1104
1129
  if (!_this.mediaProperties.hasLocalShareStream()) {
1105
1130
  _triggerProxy.default.trigger((0, _assertThisInitialized2.default)(_this), {
1106
1131
  file: 'meeting/index',
@@ -1110,7 +1135,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1110
1135
  });
1111
1136
  }
1112
1137
  });
1113
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "clearMeetingData", function () {
1138
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "clearMeetingData", function () {
1114
1139
  _this.audio = null;
1115
1140
  _this.video = null;
1116
1141
  _this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
@@ -1119,12 +1144,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1119
1144
  }
1120
1145
  _this.queuedMediaUpdates = [];
1121
1146
  if (_this.transcription) {
1122
- _this.transcription.closeSocket();
1123
- _this.triggerStopReceivingTranscriptionEvent();
1147
+ _this.stopTranscription();
1124
1148
  _this.transcription = undefined;
1125
1149
  }
1126
1150
  });
1127
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "startKeepAlive", function () {
1151
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "startKeepAlive", function () {
1128
1152
  var _this$joinedWith, _this$joinedWith2;
1129
1153
  if (_this.keepAliveTimerId) {
1130
1154
  _loggerProxy.default.logger.warn('Meeting:index#startKeepAlive --> keepAlive not started: keepAliveTimerId already exists');
@@ -1154,7 +1178,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1154
1178
  });
1155
1179
  }, keepAliveInterval);
1156
1180
  });
1157
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "stopKeepAlive", function () {
1181
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "stopKeepAlive", function () {
1158
1182
  if (!_this.keepAliveTimerId) {
1159
1183
  return;
1160
1184
  }
@@ -1713,7 +1737,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1713
1737
  * @private
1714
1738
  * @memberof Meeting
1715
1739
  */
1716
- _this.transcription = undefined;
1740
+ _this.transcription = {
1741
+ captions: [],
1742
+ isListening: false,
1743
+ commandText: '',
1744
+ languageOptions: {},
1745
+ showCaptionBox: false,
1746
+ transcribingRequestStatus: 'INACTIVE',
1747
+ isCaptioning: false,
1748
+ interimCaptions: {},
1749
+ speakerProxy: {}
1750
+ };
1717
1751
 
1718
1752
  /**
1719
1753
  * Password status. If it's PASSWORD_STATUS.REQUIRED then verifyPassword() needs to be called
@@ -2432,12 +2466,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2432
2466
  key: "setUpInterpretationListener",
2433
2467
  value: function setUpInterpretationListener() {
2434
2468
  var _this5 = this;
2469
+ // TODO: check if its getting used or not
2435
2470
  this.simultaneousInterpretation.on(_constants.INTERPRETATION.EVENTS.SUPPORT_LANGUAGES_UPDATE, function () {
2436
2471
  _triggerProxy.default.trigger(_this5, {
2437
2472
  file: 'meeting/index',
2438
2473
  function: 'setUpInterpretationListener'
2439
2474
  }, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_SUPPORT_LANGUAGES_UPDATE);
2440
2475
  });
2476
+ // TODO: check if its getting used or not
2441
2477
  this.simultaneousInterpretation.on(_constants.INTERPRETATION.EVENTS.HANDOFF_REQUESTS_ARRIVED, function (payload) {
2442
2478
  _triggerProxy.default.trigger(_this5, {
2443
2479
  file: 'meeting/index',
@@ -2446,6 +2482,32 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2446
2482
  });
2447
2483
  }
2448
2484
 
2485
+ /**
2486
+ * Set up the listeners for captions
2487
+ * @returns {undefined}
2488
+ * @private
2489
+ * @memberof Meeting
2490
+ */
2491
+ }, {
2492
+ key: "setUpVoiceaListeners",
2493
+ value: function setUpVoiceaListeners() {
2494
+ // @ts-ignore
2495
+ this.webex.internal.voicea.listenToEvents();
2496
+
2497
+ // @ts-ignore
2498
+ this.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT]);
2499
+
2500
+ // @ts-ignore
2501
+ this.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON]);
2502
+
2503
+ // @ts-ignore
2504
+ this.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND]);
2505
+
2506
+ // @ts-ignore
2507
+ this.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION]);
2508
+ this.areVoiceaEventsSetup = true;
2509
+ }
2510
+
2449
2511
  /**
2450
2512
  * Set up the locus info listener for meetings disconnected due to inactivity
2451
2513
  * @returns {undefined}
@@ -2734,17 +2796,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2734
2796
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_TRANSCRIBE_UPDATED, function (_ref11) {
2735
2797
  var caption = _ref11.caption,
2736
2798
  transcribing = _ref11.transcribing;
2737
- // @ts-ignore - config coming from registerPlugin
2738
- if (transcribing && _this13.transcription && _this13.config.receiveTranscription) {
2739
- _this13.receiveTranscription();
2740
- } else if (!transcribing && _this13.transcription) {
2741
- _triggerProxy.default.trigger(_this13, {
2742
- file: 'meeting/index',
2743
- function: 'setupLocusControlsListener'
2744
- }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION, {
2745
- caption: caption,
2746
- transcribing: transcribing
2747
- });
2799
+ // user need to be joined to start the llm and receive transcription
2800
+ if (_this13.isJoined()) {
2801
+ // @ts-ignore - config coming from registerPlugin
2802
+ if (transcribing && !_this13.transcription) {
2803
+ _this13.startTranscription();
2804
+ } else if (!transcribing && _this13.transcription) {
2805
+ _triggerProxy.default.trigger(_this13, {
2806
+ file: 'meeting/index',
2807
+ function: 'setupLocusControlsListener'
2808
+ }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION, {
2809
+ caption: caption,
2810
+ transcribing: transcribing
2811
+ });
2812
+ }
2748
2813
  }
2749
2814
  });
2750
2815
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_BREAKOUT_UPDATED, function (_ref12) {
@@ -3296,25 +3361,38 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3296
3361
  });
3297
3362
  }
3298
3363
  });
3299
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, function (payload) {
3300
- _this19.stopKeepAlive();
3301
- if (payload) {
3302
- _triggerProxy.default.trigger(_this19, {
3303
- file: 'meeting/index',
3304
- function: 'setUpLocusInfoSelfListener'
3305
- }, _constants.EVENT_TRIGGERS.MEETING_SELF_GUEST_ADMITTED, {
3306
- payload: payload
3307
- });
3364
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, /*#__PURE__*/function () {
3365
+ var _ref24 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(payload) {
3366
+ return _regenerator.default.wrap(function _callee9$(_context9) {
3367
+ while (1) switch (_context9.prev = _context9.next) {
3368
+ case 0:
3369
+ _this19.stopKeepAlive();
3370
+ if (payload) {
3371
+ _triggerProxy.default.trigger(_this19, {
3372
+ file: 'meeting/index',
3373
+ function: 'setUpLocusInfoSelfListener'
3374
+ }, _constants.EVENT_TRIGGERS.MEETING_SELF_GUEST_ADMITTED, {
3375
+ payload: payload
3376
+ });
3308
3377
 
3309
- // @ts-ignore
3310
- _this19.webex.internal.newMetrics.submitClientEvent({
3311
- name: 'client.lobby.exited',
3312
- options: {
3313
- meetingId: _this19.id
3378
+ // @ts-ignore
3379
+ _this19.webex.internal.newMetrics.submitClientEvent({
3380
+ name: 'client.lobby.exited',
3381
+ options: {
3382
+ meetingId: _this19.id
3383
+ }
3384
+ });
3385
+ }
3386
+ case 2:
3387
+ case "end":
3388
+ return _context9.stop();
3314
3389
  }
3315
- });
3316
- }
3317
- });
3390
+ }, _callee9);
3391
+ }));
3392
+ return function (_x9) {
3393
+ return _ref24.apply(this, arguments);
3394
+ };
3395
+ }());
3318
3396
 
3319
3397
  // @ts-ignore - check if MEDIA_INACTIVITY exists
3320
3398
  this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_INACTIVITY, function () {
@@ -3417,48 +3495,48 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3417
3495
  }
3418
3496
  });
3419
3497
  this.locusInfo.on(_constants.EVENTS.DESTROY_MEETING, /*#__PURE__*/function () {
3420
- var _ref24 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(payload) {
3421
- return _regenerator.default.wrap(function _callee9$(_context9) {
3422
- while (1) switch (_context9.prev = _context9.next) {
3498
+ var _ref25 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(payload) {
3499
+ return _regenerator.default.wrap(function _callee10$(_context10) {
3500
+ while (1) switch (_context10.prev = _context10.next) {
3423
3501
  case 0:
3424
3502
  if (!_this20.wirelessShare) {
3425
- _context9.next = 7;
3503
+ _context10.next = 7;
3426
3504
  break;
3427
3505
  }
3428
3506
  if (!_this20.mediaProperties.shareVideoStream) {
3429
- _context9.next = 4;
3507
+ _context10.next = 4;
3430
3508
  break;
3431
3509
  }
3432
- _context9.next = 4;
3510
+ _context10.next = 4;
3433
3511
  return _this20.setLocalShareVideoStream(undefined);
3434
3512
  case 4:
3435
3513
  if (!_this20.mediaProperties.shareAudioStream) {
3436
- _context9.next = 7;
3514
+ _context10.next = 7;
3437
3515
  break;
3438
3516
  }
3439
- _context9.next = 7;
3517
+ _context10.next = 7;
3440
3518
  return _this20.setLocalShareAudioStream(undefined);
3441
3519
  case 7:
3442
3520
  if (!payload.shouldLeave) {
3443
- _context9.next = 19;
3521
+ _context10.next = 19;
3444
3522
  break;
3445
3523
  }
3446
- _context9.prev = 8;
3447
- _context9.next = 11;
3524
+ _context10.prev = 8;
3525
+ _context10.next = 11;
3448
3526
  return _this20.leave({
3449
3527
  reason: payload.reason
3450
3528
  });
3451
3529
  case 11:
3452
3530
  _loggerProxy.default.logger.warn('Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. The meeting has been left, but has not been destroyed, you should see a later event for leave.');
3453
- _context9.next = 17;
3531
+ _context10.next = 17;
3454
3532
  break;
3455
3533
  case 14:
3456
- _context9.prev = 14;
3457
- _context9.t0 = _context9["catch"](8);
3534
+ _context10.prev = 14;
3535
+ _context10.t0 = _context10["catch"](8);
3458
3536
  // @ts-ignore
3459
- _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this20, ", error: ").concat(_context9.t0));
3537
+ _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this20, ", error: ").concat(_context10.t0));
3460
3538
  case 17:
3461
- _context9.next = 22;
3539
+ _context10.next = 22;
3462
3540
  break;
3463
3541
  case 19:
3464
3542
  _loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> MEETING_REMOVED_REASON', payload.reason);
@@ -3472,12 +3550,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3472
3550
  });
3473
3551
  case 22:
3474
3552
  case "end":
3475
- return _context9.stop();
3553
+ return _context10.stop();
3476
3554
  }
3477
- }, _callee9, null, [[8, 14]]);
3555
+ }, _callee10, null, [[8, 14]]);
3478
3556
  }));
3479
- return function (_x9) {
3480
- return _ref24.apply(this, arguments);
3557
+ return function (_x10) {
3558
+ return _ref25.apply(this, arguments);
3481
3559
  };
3482
3560
  }());
3483
3561
  }
@@ -3915,7 +3993,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3915
3993
  }, {
3916
3994
  key: "setPermissionTokenPayload",
3917
3995
  value: function setPermissionTokenPayload(permissionToken) {
3918
- this.permissionTokenPayload = _jsonwebtoken.default.decode(permissionToken);
3996
+ this.permissionTokenPayload = (0, _jwtDecode.default)(permissionToken);
3919
3997
  this.permissionTokenReceivedLocalTime = new Date().getTime();
3920
3998
  }
3921
3999
 
@@ -4062,10 +4140,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4062
4140
  }, {
4063
4141
  key: "setLocalAudioStream",
4064
4142
  value: function () {
4065
- var _setLocalAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(localStream) {
4143
+ var _setLocalAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(localStream) {
4066
4144
  var oldStream;
4067
- return _regenerator.default.wrap(function _callee10$(_context10) {
4068
- while (1) switch (_context10.prev = _context10.next) {
4145
+ return _regenerator.default.wrap(function _callee11$(_context11) {
4146
+ while (1) switch (_context11.prev = _context11.next) {
4069
4147
  case 0:
4070
4148
  oldStream = this.mediaProperties.audioStream;
4071
4149
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.MuteStateChange, this.localAudioStreamMuteStateHandler);
@@ -4077,21 +4155,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4077
4155
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.StreamEventNames.MuteStateChange, this.localAudioStreamMuteStateHandler);
4078
4156
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
4079
4157
  if (!(!this.isMultistream || !localStream)) {
4080
- _context10.next = 10;
4158
+ _context11.next = 10;
4081
4159
  break;
4082
4160
  }
4083
- _context10.next = 10;
4161
+ _context11.next = 10;
4084
4162
  return this.unpublishStream(_internalMediaCore.MediaType.AudioMain, oldStream);
4085
4163
  case 10:
4086
- _context10.next = 12;
4164
+ _context11.next = 12;
4087
4165
  return this.publishStream(_internalMediaCore.MediaType.AudioMain, this.mediaProperties.audioStream);
4088
4166
  case 12:
4089
4167
  case "end":
4090
- return _context10.stop();
4168
+ return _context11.stop();
4091
4169
  }
4092
- }, _callee10, this);
4170
+ }, _callee11, this);
4093
4171
  }));
4094
- function setLocalAudioStream(_x10) {
4172
+ function setLocalAudioStream(_x11) {
4095
4173
  return _setLocalAudioStream.apply(this, arguments);
4096
4174
  }
4097
4175
  return setLocalAudioStream;
@@ -4106,10 +4184,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4106
4184
  }, {
4107
4185
  key: "setLocalVideoStream",
4108
4186
  value: function () {
4109
- var _setLocalVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(localStream) {
4187
+ var _setLocalVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12(localStream) {
4110
4188
  var oldStream;
4111
- return _regenerator.default.wrap(function _callee11$(_context11) {
4112
- while (1) switch (_context11.prev = _context11.next) {
4189
+ return _regenerator.default.wrap(function _callee12$(_context12) {
4190
+ while (1) switch (_context12.prev = _context12.next) {
4113
4191
  case 0:
4114
4192
  oldStream = this.mediaProperties.videoStream;
4115
4193
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.MuteStateChange, this.localVideoStreamMuteStateHandler);
@@ -4121,21 +4199,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4121
4199
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.StreamEventNames.MuteStateChange, this.localVideoStreamMuteStateHandler);
4122
4200
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
4123
4201
  if (!(!this.isMultistream || !localStream)) {
4124
- _context11.next = 10;
4202
+ _context12.next = 10;
4125
4203
  break;
4126
4204
  }
4127
- _context11.next = 10;
4205
+ _context12.next = 10;
4128
4206
  return this.unpublishStream(_internalMediaCore.MediaType.VideoMain, oldStream);
4129
4207
  case 10:
4130
- _context11.next = 12;
4208
+ _context12.next = 12;
4131
4209
  return this.publishStream(_internalMediaCore.MediaType.VideoMain, this.mediaProperties.videoStream);
4132
4210
  case 12:
4133
4211
  case "end":
4134
- return _context11.stop();
4212
+ return _context12.stop();
4135
4213
  }
4136
- }, _callee11, this);
4214
+ }, _callee12, this);
4137
4215
  }));
4138
- function setLocalVideoStream(_x11) {
4216
+ function setLocalVideoStream(_x12) {
4139
4217
  return _setLocalVideoStream.apply(this, arguments);
4140
4218
  }
4141
4219
  return setLocalVideoStream;
@@ -4151,10 +4229,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4151
4229
  }, {
4152
4230
  key: "setLocalShareVideoStream",
4153
4231
  value: function () {
4154
- var _setLocalShareVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12(localDisplayStream) {
4232
+ var _setLocalShareVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13(localDisplayStream) {
4155
4233
  var oldStream;
4156
- return _regenerator.default.wrap(function _callee12$(_context12) {
4157
- while (1) switch (_context12.prev = _context12.next) {
4234
+ return _regenerator.default.wrap(function _callee13$(_context13) {
4235
+ while (1) switch (_context13.prev = _context13.next) {
4158
4236
  case 0:
4159
4237
  oldStream = this.mediaProperties.shareVideoStream;
4160
4238
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.MuteStateChange, this.handleShareVideoStreamMuteStateChange);
@@ -4166,21 +4244,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4166
4244
  localDisplayStream === null || localDisplayStream === void 0 ? void 0 : localDisplayStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
4167
4245
  this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareStream();
4168
4246
  if (!(!this.isMultistream || !localDisplayStream)) {
4169
- _context12.next = 12;
4247
+ _context13.next = 12;
4170
4248
  break;
4171
4249
  }
4172
- _context12.next = 12;
4250
+ _context13.next = 12;
4173
4251
  return this.unpublishStream(_internalMediaCore.MediaType.VideoSlides, oldStream);
4174
4252
  case 12:
4175
- _context12.next = 14;
4253
+ _context13.next = 14;
4176
4254
  return this.publishStream(_internalMediaCore.MediaType.VideoSlides, this.mediaProperties.shareVideoStream);
4177
4255
  case 14:
4178
4256
  case "end":
4179
- return _context12.stop();
4257
+ return _context13.stop();
4180
4258
  }
4181
- }, _callee12, this);
4259
+ }, _callee13, this);
4182
4260
  }));
4183
- function setLocalShareVideoStream(_x12) {
4261
+ function setLocalShareVideoStream(_x13) {
4184
4262
  return _setLocalShareVideoStream.apply(this, arguments);
4185
4263
  }
4186
4264
  return setLocalShareVideoStream;
@@ -4195,10 +4273,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4195
4273
  }, {
4196
4274
  key: "setLocalShareAudioStream",
4197
4275
  value: function () {
4198
- var _setLocalShareAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13(localSystemAudioStream) {
4276
+ var _setLocalShareAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14(localSystemAudioStream) {
4199
4277
  var oldStream;
4200
- return _regenerator.default.wrap(function _callee13$(_context13) {
4201
- while (1) switch (_context13.prev = _context13.next) {
4278
+ return _regenerator.default.wrap(function _callee14$(_context14) {
4279
+ while (1) switch (_context14.prev = _context14.next) {
4202
4280
  case 0:
4203
4281
  oldStream = this.mediaProperties.shareAudioStream;
4204
4282
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.Ended, this.handleShareAudioStreamEnded);
@@ -4208,21 +4286,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4208
4286
  localSystemAudioStream === null || localSystemAudioStream === void 0 ? void 0 : localSystemAudioStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
4209
4287
  this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareStream();
4210
4288
  if (!(!this.isMultistream || !localSystemAudioStream)) {
4211
- _context13.next = 10;
4289
+ _context14.next = 10;
4212
4290
  break;
4213
4291
  }
4214
- _context13.next = 10;
4292
+ _context14.next = 10;
4215
4293
  return this.unpublishStream(_internalMediaCore.MediaType.AudioSlides, oldStream);
4216
4294
  case 10:
4217
- _context13.next = 12;
4295
+ _context14.next = 12;
4218
4296
  return this.publishStream(_internalMediaCore.MediaType.AudioSlides, this.mediaProperties.shareAudioStream);
4219
4297
  case 12:
4220
4298
  case "end":
4221
- return _context13.stop();
4299
+ return _context14.stop();
4222
4300
  }
4223
- }, _callee13, this);
4301
+ }, _callee14, this);
4224
4302
  }));
4225
- function setLocalShareAudioStream(_x13) {
4303
+ function setLocalShareAudioStream(_x14) {
4226
4304
  return _setLocalShareAudioStream.apply(this, arguments);
4227
4305
  }
4228
4306
  return setLocalShareAudioStream;
@@ -4792,7 +4870,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4792
4870
  if ((_this$locusInfo$contr = this.locusInfo.controls.transcribe) !== null && _this$locusInfo$contr !== void 0 && _this$locusInfo$contr.transcribing) {
4793
4871
  return true;
4794
4872
  }
4795
- _loggerProxy.default.logger.error('Meeting:index#isTranscriptionSupported --> Webex Assistant is not supported');
4873
+ _loggerProxy.default.logger.error('Meeting:index#isTranscriptionSupported --> Webex Assistant is not enabled/supported');
4796
4874
  return false;
4797
4875
  }
4798
4876
 
@@ -4812,97 +4890,141 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4812
4890
  }
4813
4891
 
4814
4892
  /**
4815
- * Monitor the Low-Latency Mercury (LLM) web socket connection on `onError` and `onClose` states
4816
- * @private
4817
- * @returns {void}
4893
+ * sets Caption language for the meeting
4894
+ * @param {string} language
4895
+ * @returns {Promise}
4818
4896
  */
4819
4897
  }, {
4820
- key: "monitorTranscriptionSocketConnection",
4821
- value: function monitorTranscriptionSocketConnection() {
4898
+ key: "setCaptionLanguage",
4899
+ value: function setCaptionLanguage(language) {
4822
4900
  var _this30 = this;
4823
- this.transcription.onCloseSocket(function (event) {
4824
- _loggerProxy.default.logger.info("Meeting:index#onCloseSocket -->\n unable to continue receiving transcription;\n low-latency mercury web socket connection is closed now.\n ".concat(event));
4825
- _this30.triggerStopReceivingTranscriptionEvent();
4901
+ return new _promise.default(function (resolve, reject) {
4902
+ if (!_this30.isTranscriptionSupported()) {
4903
+ _loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
4904
+ reject(new Error('Webex Assistant is not enabled/supported'));
4905
+ }
4906
+ try {
4907
+ var voiceaListenerCaptionUpdate = function voiceaListenerCaptionUpdate(payload) {
4908
+ // @ts-ignore
4909
+ _this30.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
4910
+ var statusCode = payload.statusCode;
4911
+ if (statusCode === 200) {
4912
+ _this30.transcription.languageOptions = _objectSpread(_objectSpread({}, _this30.transcription.languageOptions), {}, {
4913
+ currentCaptionLanguage: language
4914
+ });
4915
+ resolve(language);
4916
+ } else {
4917
+ reject(payload);
4918
+ }
4919
+ };
4920
+ // @ts-ignore
4921
+ _this30.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
4922
+ // @ts-ignore
4923
+ _this30.webex.internal.voicea.requestLanguage(language);
4924
+ } catch (error) {
4925
+ _loggerProxy.default.logger.error("Meeting:index#setCaptionLanguage --> ".concat(error));
4926
+ reject(error);
4927
+ }
4826
4928
  });
4827
- this.transcription.onErrorSocket(function (event) {
4828
- _loggerProxy.default.logger.error("Meeting:index#onErrorSocket -->\n unable to continue receiving transcription;\n low-latency mercury web socket connection error had occured.\n ".concat(event));
4829
- _this30.triggerStopReceivingTranscriptionEvent();
4830
- _metrics.default.sendBehavioralMetric(_constants2.default.RECEIVE_TRANSCRIPTION_FAILURE, {
4831
- correlation_id: _this30.correlationId,
4832
- reason: 'unexpected error: transcription LLM web socket connection error had occured.',
4833
- event: event
4834
- });
4929
+ }
4930
+
4931
+ /**
4932
+ * sets Spoken language for the meeting
4933
+ * @param {string} language
4934
+ * @returns {Promise}
4935
+ */
4936
+ }, {
4937
+ key: "setSpokenLanguage",
4938
+ value: function setSpokenLanguage(language) {
4939
+ var _this31 = this;
4940
+ return new _promise.default(function (resolve, reject) {
4941
+ if (!_this31.isTranscriptionSupported()) {
4942
+ _loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
4943
+ reject(new Error('Webex Assistant is not enabled/supported'));
4944
+ }
4945
+ try {
4946
+ var voiceaListenerLanguageUpdate = function voiceaListenerLanguageUpdate(payload) {
4947
+ // @ts-ignore
4948
+ _this31.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
4949
+ var languageCode = payload.languageCode;
4950
+ if (languageCode) {
4951
+ _this31.transcription.languageOptions = _objectSpread(_objectSpread({}, _this31.transcription.languageOptions), {}, {
4952
+ currentSpokenLanguage: languageCode
4953
+ });
4954
+ resolve(languageCode);
4955
+ } else {
4956
+ reject(payload);
4957
+ }
4958
+ };
4959
+
4960
+ // @ts-ignore
4961
+ _this31.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
4962
+
4963
+ // @ts-ignore
4964
+ _this31.webex.internal.voicea.setSpokenLanguage(language);
4965
+ } catch (error) {
4966
+ _loggerProxy.default.logger.error("Meeting:index#setSpokenLanguage --> ".concat(error));
4967
+ reject(error);
4968
+ }
4835
4969
  });
4836
4970
  }
4837
4971
 
4838
4972
  /**
4839
- * Request for a WebSocket Url, open and monitor the WebSocket connection
4840
- * @private
4973
+ * This method will enable the transcription for the current meeting if the meeting has enabled/supports Webex Assistant
4974
+ * @param {Object} options object with spokenlanguage setting
4975
+ * @public
4841
4976
  * @returns {Promise<void>} a promise to open the WebSocket connection
4842
4977
  */
4843
4978
  }, {
4844
- key: "receiveTranscription",
4979
+ key: "startTranscription",
4845
4980
  value: function () {
4846
- var _receiveTranscription = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
4847
- var _this31 = this;
4848
- var datachannelUrl, _yield$this$request, webSocketUrl;
4849
- return _regenerator.default.wrap(function _callee14$(_context14) {
4850
- while (1) switch (_context14.prev = _context14.next) {
4981
+ var _startTranscription = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15(options) {
4982
+ return _regenerator.default.wrap(function _callee15$(_context15) {
4983
+ while (1) switch (_context15.prev = _context15.next) {
4851
4984
  case 0:
4852
- _loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n Attempting to generate a web socket url.");
4853
- _context14.prev = 1;
4854
- datachannelUrl = this.locusInfo.info.datachannelUrl; // @ts-ignore - fix type
4855
- _context14.next = 5;
4856
- return this.request({
4857
- method: _constants.HTTP_VERBS.POST,
4858
- uri: datachannelUrl,
4859
- body: {
4860
- deviceUrl: this.deviceUrl
4861
- }
4862
- });
4863
- case 5:
4864
- _yield$this$request = _context14.sent;
4865
- webSocketUrl = _yield$this$request.body.webSocketUrl;
4866
- _loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n Generated web socket url succesfully.");
4867
- this.transcription = new _transcription.default(webSocketUrl,
4868
- // @ts-ignore - fix type
4869
- this.webex.sessionId, this.members);
4870
- _loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n opened LLM web socket connection successfully.");
4871
- if (!this.inMeetingActions.isClosedCaptionActive) {
4872
- _loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> Transcription cannot be started until a licensed user enables it");
4985
+ if (!this.isJoined()) {
4986
+ _context15.next = 15;
4987
+ break;
4873
4988
  }
4874
-
4875
- // retrieve and pass the payload
4876
- this.transcription.subscribe(function (payload) {
4877
- _triggerProxy.default.trigger(_this31, {
4878
- file: 'meeting/index',
4879
- function: 'join'
4880
- }, _constants.EVENT_TRIGGERS.MEETING_STARTED_RECEIVING_TRANSCRIPTION, payload);
4881
- });
4882
- this.monitorTranscriptionSocketConnection();
4883
- // @ts-ignore - fix type
4884
- this.transcription.connect(this.webex.credentials.supertoken.access_token);
4885
- _context14.next = 20;
4989
+ _loggerProxy.default.logger.info('Meeting:index#startTranscription --> Attempting to enable transcription!');
4990
+ _context15.prev = 2;
4991
+ if (!this.areVoiceaEventsSetup) {
4992
+ this.setUpVoiceaListeners();
4993
+ }
4994
+ if (!(this.getCurUserType() === 'host')) {
4995
+ _context15.next = 7;
4996
+ break;
4997
+ }
4998
+ _context15.next = 7;
4999
+ return this.webex.internal.voicea.toggleTranscribing(true, options === null || options === void 0 ? void 0 : options.spokenLanguage);
5000
+ case 7:
5001
+ _context15.next = 13;
4886
5002
  break;
4887
- case 16:
4888
- _context14.prev = 16;
4889
- _context14.t0 = _context14["catch"](1);
4890
- _loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> ".concat(_context14.t0));
5003
+ case 9:
5004
+ _context15.prev = 9;
5005
+ _context15.t0 = _context15["catch"](2);
5006
+ _loggerProxy.default.logger.error("Meeting:index#startTranscription --> ".concat(_context15.t0));
4891
5007
  _metrics.default.sendBehavioralMetric(_constants2.default.RECEIVE_TRANSCRIPTION_FAILURE, {
4892
5008
  correlation_id: this.correlationId,
4893
- reason: _context14.t0.message,
4894
- stack: _context14.t0.stack
5009
+ reason: _context15.t0.message,
5010
+ stack: _context15.t0.stack
4895
5011
  });
4896
- case 20:
5012
+ case 13:
5013
+ _context15.next = 17;
5014
+ break;
5015
+ case 15:
5016
+ _loggerProxy.default.logger.error("Meeting:index#startTranscription --> meeting joined : ".concat(this.isJoined()));
5017
+ throw new Error('Meeting is not joined');
5018
+ case 17:
4897
5019
  case "end":
4898
- return _context14.stop();
5020
+ return _context15.stop();
4899
5021
  }
4900
- }, _callee14, this, [[1, 16]]);
5022
+ }, _callee15, this, [[2, 9]]);
4901
5023
  }));
4902
- function receiveTranscription() {
4903
- return _receiveTranscription.apply(this, arguments);
5024
+ function startTranscription(_x15) {
5025
+ return _startTranscription.apply(this, arguments);
4904
5026
  }
4905
- return receiveTranscription;
5027
+ return startTranscription;
4906
5028
  }()
4907
5029
  /**
4908
5030
  * Callback called when a relay event is received from meeting LLM Connection
@@ -4911,16 +5033,27 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4911
5033
  * @returns {void}
4912
5034
  */
4913
5035
  }, {
4914
- key: "stopReceivingTranscription",
5036
+ key: "stopTranscription",
4915
5037
  value:
4916
5038
  /**
4917
- * stop recieving Transcription by closing
4918
- * the web socket connection properly
5039
+ * This method stops receiving transcription for the current meeting
4919
5040
  * @returns {void}
4920
5041
  */
4921
- function stopReceivingTranscription() {
5042
+ function stopTranscription() {
4922
5043
  if (this.transcription) {
4923
- this.transcription.closeSocket();
5044
+ // @ts-ignore
5045
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT]);
5046
+
5047
+ // @ts-ignore
5048
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON]);
5049
+
5050
+ // @ts-ignore
5051
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND]);
5052
+
5053
+ // @ts-ignore
5054
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION]);
5055
+ this.areVoiceaEventsSetup = false;
5056
+ this.triggerStopReceivingTranscriptionEvent();
4924
5057
  }
4925
5058
  }
4926
5059
 
@@ -4933,9 +5066,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4933
5066
  }, {
4934
5067
  key: "triggerStopReceivingTranscriptionEvent",
4935
5068
  value: function triggerStopReceivingTranscriptionEvent() {
4936
- _loggerProxy.default.logger.info("\n Meeting:index#stopReceivingTranscription -->\n closed transcription LLM web socket connection successfully.");
5069
+ _loggerProxy.default.logger.info("\n Meeting:index#stopReceivingTranscription -->\n closed voicea event listeners successfully.");
4937
5070
  _triggerProxy.default.trigger(this, {
4938
- file: 'meeting',
5071
+ file: 'meeting/index',
4939
5072
  function: 'triggerStopReceivingTranscriptionEvent'
4940
5073
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION);
4941
5074
  }
@@ -4955,7 +5088,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4955
5088
  }, {
4956
5089
  key: "join",
4957
5090
  value: function () {
4958
- var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
5091
+ var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
4959
5092
  var _this32 = this;
4960
5093
  var options,
4961
5094
  errorMessage,
@@ -4966,25 +5099,25 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4966
5099
  _error,
4967
5100
  _errorMessage2,
4968
5101
  _error2,
4969
- _args15 = arguments;
4970
- return _regenerator.default.wrap(function _callee15$(_context15) {
4971
- while (1) switch (_context15.prev = _context15.next) {
5102
+ _args16 = arguments;
5103
+ return _regenerator.default.wrap(function _callee16$(_context16) {
5104
+ while (1) switch (_context16.prev = _context16.next) {
4972
5105
  case 0:
4973
- options = _args15.length > 0 && _args15[0] !== undefined ? _args15[0] : {};
5106
+ options = _args16.length > 0 && _args16[0] !== undefined ? _args16[0] : {};
4974
5107
  if (this.webex.meetings.registered) {
4975
- _context15.next = 6;
5108
+ _context16.next = 6;
4976
5109
  break;
4977
5110
  }
4978
5111
  errorMessage = 'Meeting:index#join --> Device not registered';
4979
5112
  error = new Error(errorMessage);
4980
5113
  _loggerProxy.default.logger.error(errorMessage);
4981
- return _context15.abrupt("return", _promise.default.reject(error));
5114
+ return _context16.abrupt("return", _promise.default.reject(error));
4982
5115
  case 6:
4983
5116
  if (!this.deferJoin) {
4984
- _context15.next = 8;
5117
+ _context16.next = 8;
4985
5118
  break;
4986
5119
  }
4987
- return _context15.abrupt("return", this.deferJoin);
5120
+ return _context16.abrupt("return", this.deferJoin);
4988
5121
  case 8:
4989
5122
  // Create a deferred promise for a consistent resolve value from utils.
4990
5123
  // This also prevents redundant API calls.
@@ -5033,15 +5166,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5033
5166
  this.wirelessShare = true;
5034
5167
  }
5035
5168
  if (!options.meetingQuality) {
5036
- _context15.next = 36;
5169
+ _context16.next = 36;
5037
5170
  break;
5038
5171
  }
5039
5172
  if (!(typeof options.meetingQuality === 'string')) {
5040
- _context15.next = 27;
5173
+ _context16.next = 27;
5041
5174
  break;
5042
5175
  }
5043
5176
  if (_constants.QUALITY_LEVELS[options.meetingQuality]) {
5044
- _context15.next = 26;
5177
+ _context16.next = 26;
5045
5178
  break;
5046
5179
  }
5047
5180
  _errorMessage = "Meeting:index#join --> ".concat(options.meetingQuality, " not defined");
@@ -5049,16 +5182,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5049
5182
  _loggerProxy.default.logger.error(_errorMessage);
5050
5183
  joinFailed(_error);
5051
5184
  this.deferJoin = undefined;
5052
- return _context15.abrupt("return", _promise.default.reject(_error));
5185
+ return _context16.abrupt("return", _promise.default.reject(_error));
5053
5186
  case 26:
5054
5187
  this.mediaProperties.setRemoteQualityLevel(options.meetingQuality);
5055
5188
  case 27:
5056
5189
  if (!((0, _typeof2.default)(options.meetingQuality) === 'object')) {
5057
- _context15.next = 36;
5190
+ _context16.next = 36;
5058
5191
  break;
5059
5192
  }
5060
5193
  if (_constants.QUALITY_LEVELS[options.meetingQuality.remote]) {
5061
- _context15.next = 35;
5194
+ _context16.next = 35;
5062
5195
  break;
5063
5196
  }
5064
5197
  _errorMessage2 = "Meeting:index#join --> ".concat(options.meetingQuality.remote, " not defined");
@@ -5066,42 +5199,42 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5066
5199
  _error2 = new Error(_errorMessage2);
5067
5200
  joinFailed(_error2);
5068
5201
  this.deferJoin = undefined;
5069
- return _context15.abrupt("return", _promise.default.reject(new Error(_errorMessage2)));
5202
+ return _context16.abrupt("return", _promise.default.reject(new Error(_errorMessage2)));
5070
5203
  case 35:
5071
5204
  if (options.meetingQuality.remote) {
5072
5205
  this.mediaProperties.setRemoteQualityLevel(options.meetingQuality.remote);
5073
5206
  }
5074
5207
  case 36:
5075
5208
  this.isMultistream = !!options.enableMultistream;
5076
- _context15.prev = 37;
5077
- _context15.next = 40;
5209
+ _context16.prev = 37;
5210
+ _context16.next = 40;
5078
5211
  return this.checkAndRefreshPermissionToken(_constants.MEETING_PERMISSION_TOKEN_REFRESH_THRESHOLD_IN_SEC, _constants.MEETING_PERMISSION_TOKEN_REFRESH_REASON);
5079
5212
  case 40:
5080
- _context15.next = 51;
5213
+ _context16.next = 51;
5081
5214
  break;
5082
5215
  case 42:
5083
- _context15.prev = 42;
5084
- _context15.t0 = _context15["catch"](37);
5085
- _loggerProxy.default.logger.error('Meeting:index#join --> Failed to refresh permission token:', _context15.t0);
5086
- if (!(_context15.t0 instanceof _captchaError.default || _context15.t0 instanceof _passwordError.default || _context15.t0 instanceof _permission.default)) {
5087
- _context15.next = 51;
5216
+ _context16.prev = 42;
5217
+ _context16.t0 = _context16["catch"](37);
5218
+ _loggerProxy.default.logger.error('Meeting:index#join --> Failed to refresh permission token:', _context16.t0);
5219
+ if (!(_context16.t0 instanceof _captchaError.default || _context16.t0 instanceof _passwordError.default || _context16.t0 instanceof _permission.default)) {
5220
+ _context16.next = 51;
5088
5221
  break;
5089
5222
  }
5090
- this.meetingFiniteStateMachine.fail(_context15.t0);
5223
+ this.meetingFiniteStateMachine.fail(_context16.t0);
5091
5224
 
5092
5225
  // Upload logs on refreshpermissionToken refresh Failure
5093
5226
  _triggerProxy.default.trigger(this, {
5094
5227
  file: 'meeting/index',
5095
5228
  function: 'join'
5096
5229
  }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
5097
- joinFailed(_context15.t0);
5230
+ joinFailed(_context16.t0);
5098
5231
  this.deferJoin = undefined;
5099
5232
 
5100
5233
  // if refresh permission token requires captcha, password or permission, we are throwing the errors
5101
5234
  // and bubble it up to client
5102
- return _context15.abrupt("return", _promise.default.reject(_context15.t0));
5235
+ return _context16.abrupt("return", _promise.default.reject(_context16.t0));
5103
5236
  case 51:
5104
- return _context15.abrupt("return", _util.default.joinMeetingOptions(this, options).then(function (join) {
5237
+ return _context16.abrupt("return", _util.default.joinMeetingOptions(this, options).then(function (join) {
5105
5238
  _this32.meetingFiniteStateMachine.join();
5106
5239
  _loggerProxy.default.logger.log('Meeting:index#join --> Success');
5107
5240
  _metrics.default.sendBehavioralMetric(_constants2.default.JOIN_SUCCESS, {
@@ -5148,41 +5281,27 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5148
5281
  // @ts-ignore - config coming from registerPlugin
5149
5282
  if (_this32.config.enableAutomaticLLM) {
5150
5283
  _this32.updateLLMConnection().catch(function (error) {
5151
- _loggerProxy.default.logger.error('Meeting:index#join --> Update LLM Connection Failed', error);
5284
+ _loggerProxy.default.logger.error('Meeting:index#join --> Transcription Socket Connection Failed', error);
5152
5285
  _metrics.default.sendBehavioralMetric(_constants2.default.LLM_CONNECTION_AFTER_JOIN_FAILURE, {
5153
5286
  correlation_id: _this32.correlationId,
5154
5287
  reason: error === null || error === void 0 ? void 0 : error.message,
5155
5288
  stack: error.stack
5156
5289
  });
5290
+ }).then(function () {
5291
+ _loggerProxy.default.logger.info('Meeting:index#join --> Transcription Socket Connection Success');
5292
+ _triggerProxy.default.trigger(_this32, {
5293
+ file: 'meeting/index',
5294
+ function: 'join'
5295
+ }, _constants.EVENT_TRIGGERS.MEETING_TRANSCRIPTION_CONNECTED, undefined);
5157
5296
  });
5158
5297
  }
5159
5298
  return join;
5160
- }).then(function (join) {
5161
- if (isBrowser) {
5162
- // @ts-ignore - config coming from registerPlugin
5163
- if (_this32.config.receiveTranscription || options.receiveTranscription) {
5164
- if (_this32.isTranscriptionSupported()) {
5165
- _loggerProxy.default.logger.info('Meeting:index#join --> Attempting to enabled to receive transcription!');
5166
- _this32.receiveTranscription().catch(function (error) {
5167
- _loggerProxy.default.logger.error('Meeting:index#join --> Receive Transcription Failed', error);
5168
- _metrics.default.sendBehavioralMetric(_constants2.default.RECEIVE_TRANSCRIPTION_AFTER_JOIN_FAILURE, {
5169
- correlation_id: _this32.correlationId,
5170
- reason: error === null || error === void 0 ? void 0 : error.message,
5171
- stack: error.stack
5172
- });
5173
- });
5174
- }
5175
- }
5176
- } else {
5177
- _loggerProxy.default.logger.error('Meeting:index#join --> Receving transcription is not supported on this platform');
5178
- }
5179
- return join;
5180
5299
  }));
5181
5300
  case 52:
5182
5301
  case "end":
5183
- return _context15.stop();
5302
+ return _context16.stop();
5184
5303
  }
5185
- }, _callee15, this, [[37, 42]]);
5304
+ }, _callee16, this, [[37, 42]]);
5186
5305
  }));
5187
5306
  function join() {
5188
5307
  return _join.apply(this, arguments);
@@ -5198,38 +5317,38 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5198
5317
  }, {
5199
5318
  key: "updateLLMConnection",
5200
5319
  value: function () {
5201
- var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
5320
+ var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
5202
5321
  var _this33 = this;
5203
5322
  var _this$locusInfo6, url, _this$locusInfo6$info, _this$locusInfo6$info2, datachannelUrl, isJoined;
5204
- return _regenerator.default.wrap(function _callee16$(_context16) {
5205
- while (1) switch (_context16.prev = _context16.next) {
5323
+ return _regenerator.default.wrap(function _callee17$(_context17) {
5324
+ while (1) switch (_context17.prev = _context17.next) {
5206
5325
  case 0:
5207
5326
  // @ts-ignore - Fix type
5208
5327
  _this$locusInfo6 = this.locusInfo, url = _this$locusInfo6.url, _this$locusInfo6$info = _this$locusInfo6.info, _this$locusInfo6$info2 = _this$locusInfo6$info === void 0 ? {} : _this$locusInfo6$info, datachannelUrl = _this$locusInfo6$info2.datachannelUrl;
5209
5328
  isJoined = this.isJoined(); // @ts-ignore - Fix type
5210
5329
  if (!this.webex.internal.llm.isConnected()) {
5211
- _context16.next = 8;
5330
+ _context17.next = 8;
5212
5331
  break;
5213
5332
  }
5214
5333
  if (!(url === this.webex.internal.llm.getLocusUrl() && isJoined)) {
5215
- _context16.next = 5;
5334
+ _context17.next = 5;
5216
5335
  break;
5217
5336
  }
5218
- return _context16.abrupt("return", undefined);
5337
+ return _context17.abrupt("return", undefined);
5219
5338
  case 5:
5220
- _context16.next = 7;
5339
+ _context17.next = 7;
5221
5340
  return this.webex.internal.llm.disconnectLLM();
5222
5341
  case 7:
5223
5342
  // @ts-ignore - Fix type
5224
5343
  this.webex.internal.llm.off('event:relay.event', this.processRelayEvent);
5225
5344
  case 8:
5226
5345
  if (isJoined) {
5227
- _context16.next = 10;
5346
+ _context17.next = 10;
5228
5347
  break;
5229
5348
  }
5230
- return _context16.abrupt("return", undefined);
5349
+ return _context17.abrupt("return", undefined);
5231
5350
  case 10:
5232
- return _context16.abrupt("return", this.webex.internal.llm.registerAndConnect(url, datachannelUrl).then(function (registerAndConnectResult) {
5351
+ return _context17.abrupt("return", this.webex.internal.llm.registerAndConnect(url, datachannelUrl).then(function (registerAndConnectResult) {
5233
5352
  // @ts-ignore - Fix type
5234
5353
  _this33.webex.internal.llm.off('event:relay.event', _this33.processRelayEvent);
5235
5354
  // @ts-ignore - Fix type
@@ -5239,9 +5358,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5239
5358
  }));
5240
5359
  case 11:
5241
5360
  case "end":
5242
- return _context16.stop();
5361
+ return _context17.stop();
5243
5362
  }
5244
- }, _callee16, this);
5363
+ }, _callee17, this);
5245
5364
  }));
5246
5365
  function updateLLMConnection() {
5247
5366
  return _updateLLMConnection.apply(this, arguments);
@@ -5412,17 +5531,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5412
5531
  meetingId: this.id
5413
5532
  }
5414
5533
  });
5415
- this.locusInfo.once(_constants.LOCUSINFO.EVENTS.SELF_OBSERVING, /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
5534
+ this.locusInfo.once(_constants.LOCUSINFO.EVENTS.SELF_OBSERVING, /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
5416
5535
  var mediaSettings;
5417
- return _regenerator.default.wrap(function _callee17$(_context17) {
5418
- while (1) switch (_context17.prev = _context17.next) {
5536
+ return _regenerator.default.wrap(function _callee18$(_context18) {
5537
+ while (1) switch (_context18.prev = _context18.next) {
5419
5538
  case 0:
5420
- _context17.prev = 0;
5539
+ _context18.prev = 0;
5421
5540
  if (!(_this36.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
5422
- _context17.next = 4;
5541
+ _context18.next = 4;
5423
5542
  break;
5424
5543
  }
5425
- _context17.next = 4;
5544
+ _context18.next = 4;
5426
5545
  return _this36.releaseScreenShareFloor();
5427
5546
  case 4:
5428
5547
  mediaSettings = {
@@ -5442,28 +5561,28 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5442
5561
  // when a move to is intiated by the client , Locus delets the existing media node from the server as soon the DX answers the meeting
5443
5562
  // once the DX answers we establish connection back the media server with only receiveShare enabled
5444
5563
  // @ts-ignore - reconnectMedia does not accept any argument
5445
- _context17.next = 10;
5564
+ _context18.next = 10;
5446
5565
  return _this36.reconnectionManager.reconnectMedia(mediaSettings).then(function () {
5447
5566
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
5448
5567
  });
5449
5568
  case 10:
5450
- _context17.next = 16;
5569
+ _context18.next = 16;
5451
5570
  break;
5452
5571
  case 12:
5453
- _context17.prev = 12;
5454
- _context17.t0 = _context17["catch"](0);
5455
- _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context17.t0);
5572
+ _context18.prev = 12;
5573
+ _context18.t0 = _context18["catch"](0);
5574
+ _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context18.t0);
5456
5575
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
5457
5576
  correlation_id: _this36.correlationId,
5458
5577
  locus_id: _this36.locusUrl.split('/').pop(),
5459
- reason: _context17.t0.message,
5460
- stack: _context17.t0.stack
5578
+ reason: _context18.t0.message,
5579
+ stack: _context18.t0.stack
5461
5580
  });
5462
5581
  case 16:
5463
5582
  case "end":
5464
- return _context17.stop();
5583
+ return _context18.stop();
5465
5584
  }
5466
- }, _callee17, null, [[0, 12]]);
5585
+ }, _callee18, null, [[0, 12]]);
5467
5586
  })));
5468
5587
  _loggerProxy.default.logger.info('Meeting:index#moveTo --> Initated moved to using resourceId', resourceId);
5469
5588
  return _util.default.joinMeetingOptions(this, {
@@ -5553,10 +5672,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5553
5672
  }, {
5554
5673
  key: "createMediaConnection",
5555
5674
  value: function () {
5556
- var _createMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18(turnServerInfo, bundlePolicy) {
5675
+ var _createMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19(turnServerInfo, bundlePolicy) {
5557
5676
  var mc, audioEnabled, videoEnabled, shareEnabled;
5558
- return _regenerator.default.wrap(function _callee18$(_context18) {
5559
- while (1) switch (_context18.prev = _context18.next) {
5677
+ return _regenerator.default.wrap(function _callee19$(_context19) {
5678
+ while (1) switch (_context19.prev = _context19.next) {
5560
5679
  case 0:
5561
5680
  mc = _media.default.createMediaConnection(this.isMultistream, this.getMediaConnectionDebugId(),
5562
5681
  // @ts-ignore
@@ -5582,42 +5701,42 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5582
5701
 
5583
5702
  // publish the streams
5584
5703
  if (!this.mediaProperties.audioStream) {
5585
- _context18.next = 8;
5704
+ _context19.next = 8;
5586
5705
  break;
5587
5706
  }
5588
5707
  this.setSendNamedMediaGroup(_internalMediaCore.MediaType.AudioMain);
5589
- _context18.next = 8;
5708
+ _context19.next = 8;
5590
5709
  return this.publishStream(_internalMediaCore.MediaType.AudioMain, this.mediaProperties.audioStream);
5591
5710
  case 8:
5592
5711
  if (!this.mediaProperties.videoStream) {
5593
- _context18.next = 11;
5712
+ _context19.next = 11;
5594
5713
  break;
5595
5714
  }
5596
- _context18.next = 11;
5715
+ _context19.next = 11;
5597
5716
  return this.publishStream(_internalMediaCore.MediaType.VideoMain, this.mediaProperties.videoStream);
5598
5717
  case 11:
5599
5718
  if (!this.mediaProperties.shareVideoStream) {
5600
- _context18.next = 14;
5719
+ _context19.next = 14;
5601
5720
  break;
5602
5721
  }
5603
- _context18.next = 14;
5722
+ _context19.next = 14;
5604
5723
  return this.publishStream(_internalMediaCore.MediaType.VideoSlides, this.mediaProperties.shareVideoStream);
5605
5724
  case 14:
5606
5725
  if (!(this.isMultistream && this.mediaProperties.shareAudioStream)) {
5607
- _context18.next = 17;
5726
+ _context19.next = 17;
5608
5727
  break;
5609
5728
  }
5610
- _context18.next = 17;
5729
+ _context19.next = 17;
5611
5730
  return this.publishStream(_internalMediaCore.MediaType.AudioSlides, this.mediaProperties.shareAudioStream);
5612
5731
  case 17:
5613
- return _context18.abrupt("return", mc);
5732
+ return _context19.abrupt("return", mc);
5614
5733
  case 18:
5615
5734
  case "end":
5616
- return _context18.stop();
5735
+ return _context19.stop();
5617
5736
  }
5618
- }, _callee18, this);
5737
+ }, _callee19, this);
5619
5738
  }));
5620
- function createMediaConnection(_x14, _x15) {
5739
+ function createMediaConnection(_x16, _x17) {
5621
5740
  return _createMediaConnection.apply(this, arguments);
5622
5741
  }
5623
5742
  return createMediaConnection;
@@ -5654,11 +5773,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5654
5773
  }, {
5655
5774
  key: "setUpLocalStreamReferences",
5656
5775
  value: function () {
5657
- var _setUpLocalStreamReferences = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19(localStreams) {
5776
+ var _setUpLocalStreamReferences = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20(localStreams) {
5658
5777
  var _localStreams$screenS, _localStreams$screenS2;
5659
5778
  var setUpStreamPromises;
5660
- return _regenerator.default.wrap(function _callee19$(_context19) {
5661
- while (1) switch (_context19.prev = _context19.next) {
5779
+ return _regenerator.default.wrap(function _callee20$(_context20) {
5780
+ while (1) switch (_context20.prev = _context20.next) {
5662
5781
  case 0:
5663
5782
  setUpStreamPromises = [];
5664
5783
  if (localStreams !== null && localStreams !== void 0 && localStreams.microphone) {
@@ -5673,24 +5792,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5673
5792
  if (localStreams !== null && localStreams !== void 0 && (_localStreams$screenS2 = localStreams.screenShare) !== null && _localStreams$screenS2 !== void 0 && _localStreams$screenS2.audio) {
5674
5793
  setUpStreamPromises.push(this.setLocalShareAudioStream(localStreams.screenShare.audio));
5675
5794
  }
5676
- _context19.prev = 5;
5677
- _context19.next = 8;
5795
+ _context20.prev = 5;
5796
+ _context20.next = 8;
5678
5797
  return _promise.default.all(setUpStreamPromises);
5679
5798
  case 8:
5680
- _context19.next = 14;
5799
+ _context20.next = 14;
5681
5800
  break;
5682
5801
  case 10:
5683
- _context19.prev = 10;
5684
- _context19.t0 = _context19["catch"](5);
5685
- _loggerProxy.default.logger.error("Meeting:index#addMedia():setUpLocalStreamReferences --> Error , ", _context19.t0);
5686
- throw _context19.t0;
5802
+ _context20.prev = 10;
5803
+ _context20.t0 = _context20["catch"](5);
5804
+ _loggerProxy.default.logger.error("Meeting:index#addMedia():setUpLocalStreamReferences --> Error , ", _context20.t0);
5805
+ throw _context20.t0;
5687
5806
  case 14:
5688
5807
  case "end":
5689
- return _context19.stop();
5808
+ return _context20.stop();
5690
5809
  }
5691
- }, _callee19, this, [[5, 10]]);
5810
+ }, _callee20, this, [[5, 10]]);
5692
5811
  }));
5693
- function setUpLocalStreamReferences(_x16) {
5812
+ function setUpLocalStreamReferences(_x18) {
5694
5813
  return _setUpLocalStreamReferences.apply(this, arguments);
5695
5814
  }
5696
5815
  return setUpLocalStreamReferences;
@@ -5704,20 +5823,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5704
5823
  }, {
5705
5824
  key: "waitForMediaConnectionConnected",
5706
5825
  value: function () {
5707
- var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
5826
+ var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
5708
5827
  var _this$mediaProperties6, _this$mediaProperties7, _this$mediaProperties8, _this$mediaProperties9, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12, _this$mediaProperties13, _this$mediaProperties14, _this$mediaProperties15, _this$mediaProperties16, _this$mediaProperties17, _this$mediaProperties18, _this$mediaProperties19;
5709
- return _regenerator.default.wrap(function _callee20$(_context20) {
5710
- while (1) switch (_context20.prev = _context20.next) {
5828
+ return _regenerator.default.wrap(function _callee21$(_context21) {
5829
+ while (1) switch (_context21.prev = _context21.next) {
5711
5830
  case 0:
5712
- _context20.prev = 0;
5713
- _context20.next = 3;
5831
+ _context21.prev = 0;
5832
+ _context21.next = 3;
5714
5833
  return this.mediaProperties.waitForMediaConnectionConnected();
5715
5834
  case 3:
5716
- _context20.next = 9;
5835
+ _context21.next = 9;
5717
5836
  break;
5718
5837
  case 5:
5719
- _context20.prev = 5;
5720
- _context20.t0 = _context20["catch"](0);
5838
+ _context21.prev = 5;
5839
+ _context21.t0 = _context21["catch"](0);
5721
5840
  if (!this.hasMediaConnectionConnectedAtLeastOnce) {
5722
5841
  // Only send CA event for join flow if we haven't successfully connected media yet
5723
5842
  // @ts-ignore
@@ -5745,9 +5864,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5745
5864
  throw new Error("Timed out waiting for media connection to be connected, correlationId=".concat(this.correlationId));
5746
5865
  case 9:
5747
5866
  case "end":
5748
- return _context20.stop();
5867
+ return _context21.stop();
5749
5868
  }
5750
- }, _callee20, this, [[0, 5]]);
5869
+ }, _callee21, this, [[0, 5]]);
5751
5870
  }));
5752
5871
  function waitForMediaConnectionConnected() {
5753
5872
  return _waitForMediaConnectionConnected.apply(this, arguments);
@@ -5796,18 +5915,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5796
5915
  * @returns {Promise<void>}
5797
5916
  */
5798
5917
  function () {
5799
- var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
5918
+ var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22() {
5800
5919
  var LOG_HEADER, deferSDPAnswer;
5801
- return _regenerator.default.wrap(function _callee21$(_context21) {
5802
- while (1) switch (_context21.prev = _context21.next) {
5920
+ return _regenerator.default.wrap(function _callee22$(_context22) {
5921
+ while (1) switch (_context22.prev = _context22.next) {
5803
5922
  case 0:
5804
5923
  LOG_HEADER = 'Meeting:index#addMedia():waitForRemoteSDPAnswer -->';
5805
5924
  if (this.deferSDPAnswer) {
5806
- _context21.next = 4;
5925
+ _context22.next = 4;
5807
5926
  break;
5808
5927
  }
5809
5928
  _loggerProxy.default.logger.warn("".concat(LOG_HEADER, " offer not created yet"));
5810
- return _context21.abrupt("return", _promise.default.reject(new Error('waitForRemoteSDPAnswer() called before local sdp offer created')));
5929
+ return _context22.abrupt("return", _promise.default.reject(new Error('waitForRemoteSDPAnswer() called before local sdp offer created')));
5811
5930
  case 4:
5812
5931
  deferSDPAnswer = this.deferSDPAnswer;
5813
5932
  this.sdpResponseTimer = setTimeout(function () {
@@ -5815,12 +5934,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5815
5934
  deferSDPAnswer.reject(new Error('Timed out waiting for REMOTE SDP ANSWER'));
5816
5935
  }, _constants.ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT);
5817
5936
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " waiting for REMOTE SDP ANSWER..."));
5818
- return _context21.abrupt("return", deferSDPAnswer.promise);
5937
+ return _context22.abrupt("return", deferSDPAnswer.promise);
5819
5938
  case 8:
5820
5939
  case "end":
5821
- return _context21.stop();
5940
+ return _context22.stop();
5822
5941
  }
5823
- }, _callee21, this);
5942
+ }, _callee22, this);
5824
5943
  }));
5825
5944
  function waitForRemoteSDPAnswer() {
5826
5945
  return _waitForRemoteSDPAnswer.apply(this, arguments);
@@ -5838,30 +5957,30 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5838
5957
  }, {
5839
5958
  key: "retryEstablishMediaConnectionWithForcedTurnDiscovery",
5840
5959
  value: function () {
5841
- var _retryEstablishMediaConnectionWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22(remoteMediaManagerConfig, bundlePolicy) {
5960
+ var _retryEstablishMediaConnectionWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23(remoteMediaManagerConfig, bundlePolicy) {
5842
5961
  var LOG_HEADER;
5843
- return _regenerator.default.wrap(function _callee22$(_context22) {
5844
- while (1) switch (_context22.prev = _context22.next) {
5962
+ return _regenerator.default.wrap(function _callee23$(_context23) {
5963
+ while (1) switch (_context23.prev = _context23.next) {
5845
5964
  case 0:
5846
5965
  LOG_HEADER = 'Meeting:index#addMedia():retryEstablishMediaConnectionWithForcedTurnDiscovery -->';
5847
- _context22.prev = 1;
5848
- _context22.next = 4;
5966
+ _context23.prev = 1;
5967
+ _context23.next = 4;
5849
5968
  return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, true);
5850
5969
  case 4:
5851
- _context22.next = 10;
5970
+ _context23.next = 10;
5852
5971
  break;
5853
5972
  case 6:
5854
- _context22.prev = 6;
5855
- _context22.t0 = _context22["catch"](1);
5856
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " retry with TURN-TLS failed, media connection unable to connect, "), _context22.t0);
5857
- throw _context22.t0;
5973
+ _context23.prev = 6;
5974
+ _context23.t0 = _context23["catch"](1);
5975
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " retry with TURN-TLS failed, media connection unable to connect, "), _context23.t0);
5976
+ throw _context23.t0;
5858
5977
  case 10:
5859
5978
  case "end":
5860
- return _context22.stop();
5979
+ return _context23.stop();
5861
5980
  }
5862
- }, _callee22, this, [[1, 6]]);
5981
+ }, _callee23, this, [[1, 6]]);
5863
5982
  }));
5864
- function retryEstablishMediaConnectionWithForcedTurnDiscovery(_x17, _x18) {
5983
+ function retryEstablishMediaConnectionWithForcedTurnDiscovery(_x19, _x20) {
5865
5984
  return _retryEstablishMediaConnectionWithForcedTurnDiscovery.apply(this, arguments);
5866
5985
  }
5867
5986
  return retryEstablishMediaConnectionWithForcedTurnDiscovery;
@@ -5878,14 +5997,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5878
5997
  }, {
5879
5998
  key: "retryWithForcedTurnDiscovery",
5880
5999
  value: function () {
5881
- var _retryWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23(remoteMediaManagerConfig, bundlePolicy) {
6000
+ var _retryWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24(remoteMediaManagerConfig, bundlePolicy) {
5882
6001
  var LOG_HEADER;
5883
- return _regenerator.default.wrap(function _callee23$(_context23) {
5884
- while (1) switch (_context23.prev = _context23.next) {
6002
+ return _regenerator.default.wrap(function _callee24$(_context24) {
6003
+ while (1) switch (_context24.prev = _context24.next) {
5885
6004
  case 0:
5886
6005
  this.retriedWithTurnServer = true;
5887
6006
  LOG_HEADER = 'Meeting:index#addMedia():retryWithForcedTurnDiscovery -->';
5888
- _context23.next = 4;
6007
+ _context24.next = 4;
5889
6008
  return this.cleanUpBeforeRetryWithTurnServer();
5890
6009
  case 4:
5891
6010
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_RETRY, {
@@ -5895,24 +6014,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5895
6014
  reason: 'forcingTurnTls'
5896
6015
  });
5897
6016
  if (!(this.state === _constants.MEETING_STATE.STATES.LEFT)) {
5898
- _context23.next = 9;
6017
+ _context24.next = 9;
5899
6018
  break;
5900
6019
  }
5901
6020
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " meeting state was LEFT after first attempt to establish media connection. Attempting to rejoin. "));
5902
- _context23.next = 9;
6021
+ _context24.next = 9;
5903
6022
  return this.join({
5904
6023
  rejoin: true
5905
6024
  });
5906
6025
  case 9:
5907
- _context23.next = 11;
6026
+ _context24.next = 11;
5908
6027
  return this.retryEstablishMediaConnectionWithForcedTurnDiscovery(remoteMediaManagerConfig, bundlePolicy);
5909
6028
  case 11:
5910
6029
  case "end":
5911
- return _context23.stop();
6030
+ return _context24.stop();
5912
6031
  }
5913
- }, _callee23, this);
6032
+ }, _callee24, this);
5914
6033
  }));
5915
- function retryWithForcedTurnDiscovery(_x19, _x20) {
6034
+ function retryWithForcedTurnDiscovery(_x21, _x22) {
5916
6035
  return _retryWithForcedTurnDiscovery.apply(this, arguments);
5917
6036
  }
5918
6037
  return retryWithForcedTurnDiscovery;
@@ -5931,32 +6050,32 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5931
6050
  }, {
5932
6051
  key: "handleWaitForMediaConnectionConnectedError",
5933
6052
  value: function () {
5934
- var _handleWaitForMediaConnectionConnectedError = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24(error, remoteMediaManagerConfig, bundlePolicy) {
6053
+ var _handleWaitForMediaConnectionConnectedError = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25(error, remoteMediaManagerConfig, bundlePolicy) {
5935
6054
  var LOG_HEADER;
5936
- return _regenerator.default.wrap(function _callee24$(_context24) {
5937
- while (1) switch (_context24.prev = _context24.next) {
6055
+ return _regenerator.default.wrap(function _callee25$(_context25) {
6056
+ while (1) switch (_context25.prev = _context25.next) {
5938
6057
  case 0:
5939
6058
  LOG_HEADER = 'Meeting:index#addMedia():handleWaitForMediaConnectionConnectedError -->'; // @ts-ignore - config coming from registerPlugin
5940
6059
  if (this.turnServerUsed) {
5941
- _context24.next = 7;
6060
+ _context25.next = 7;
5942
6061
  break;
5943
6062
  }
5944
6063
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " error waiting for media to connect on UDP, TCP, retrying using TURN-TLS, "), error);
5945
- _context24.next = 5;
6064
+ _context25.next = 5;
5946
6065
  return this.retryWithForcedTurnDiscovery(remoteMediaManagerConfig, bundlePolicy);
5947
6066
  case 5:
5948
- _context24.next = 9;
6067
+ _context25.next = 9;
5949
6068
  break;
5950
6069
  case 7:
5951
6070
  _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error waiting for media to connect using UDP, TCP and TURN-TLS"), error);
5952
6071
  throw new _webexErrors.AddMediaFailed();
5953
6072
  case 9:
5954
6073
  case "end":
5955
- return _context24.stop();
6074
+ return _context25.stop();
5956
6075
  }
5957
- }, _callee24, this);
6076
+ }, _callee25, this);
5958
6077
  }));
5959
- function handleWaitForMediaConnectionConnectedError(_x21, _x22, _x23) {
6078
+ function handleWaitForMediaConnectionConnectedError(_x23, _x24, _x25) {
5960
6079
  return _handleWaitForMediaConnectionConnectedError.apply(this, arguments);
5961
6080
  }
5962
6081
  return handleWaitForMediaConnectionConnectedError;
@@ -5973,23 +6092,23 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5973
6092
  }, {
5974
6093
  key: "establishMediaConnection",
5975
6094
  value: function () {
5976
- var _establishMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25(remoteMediaManagerConfig, bundlePolicy, isForced) {
6095
+ var _establishMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee26(remoteMediaManagerConfig, bundlePolicy, isForced) {
5977
6096
  var LOG_HEADER, cdl, isRetry, turnDiscoveryObject, turnServerInfo, mc;
5978
- return _regenerator.default.wrap(function _callee25$(_context25) {
5979
- while (1) switch (_context25.prev = _context25.next) {
6097
+ return _regenerator.default.wrap(function _callee26$(_context26) {
6098
+ while (1) switch (_context26.prev = _context26.next) {
5980
6099
  case 0:
5981
6100
  LOG_HEADER = 'Meeting:index#addMedia():establishMediaConnection -->'; // @ts-ignore
5982
6101
  cdl = this.webex.internal.newMetrics.callDiagnosticLatencies;
5983
6102
  isRetry = this.retriedWithTurnServer;
5984
- _context25.prev = 3;
6103
+ _context26.prev = 3;
5985
6104
  // @ts-ignore
5986
6105
  this.webex.internal.newMetrics.submitInternalEvent({
5987
6106
  name: 'internal.client.add-media.turn-discovery.start'
5988
6107
  });
5989
- _context25.next = 7;
6108
+ _context26.next = 7;
5990
6109
  return this.roap.doTurnDiscovery(this, isRetry, isForced);
5991
6110
  case 7:
5992
- turnDiscoveryObject = _context25.sent;
6111
+ turnDiscoveryObject = _context26.sent;
5993
6112
  this.turnDiscoverySkippedReason = turnDiscoveryObject === null || turnDiscoveryObject === void 0 ? void 0 : turnDiscoveryObject.turnDiscoverySkippedReason;
5994
6113
  this.turnServerUsed = !this.turnDiscoverySkippedReason;
5995
6114
 
@@ -6006,13 +6125,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6006
6125
  retriedWithTurnServer: this.retriedWithTurnServer
6007
6126
  });
6008
6127
  }
6009
- _context25.next = 15;
6128
+ _context26.next = 15;
6010
6129
  return this.createMediaConnection(turnServerInfo, bundlePolicy);
6011
6130
  case 15:
6012
- mc = _context25.sent;
6131
+ mc = _context26.sent;
6013
6132
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " media connection created"));
6014
6133
  if (!this.isMultistream) {
6015
- _context25.next = 25;
6134
+ _context26.next = 25;
6016
6135
  break;
6017
6136
  }
6018
6137
  this.remoteMediaManager = new _remoteMediaManager.RemoteMediaManager(this.receiveSlotManager, this.mediaRequestManagers, remoteMediaManagerConfig);
@@ -6020,42 +6139,42 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6020
6139
  this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.InterpretationAudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_INTERPRETATION_AUDIO_CREATED);
6021
6140
  this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.ScreenShareAudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_SCREEN_SHARE_AUDIO_CREATED);
6022
6141
  this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.VideoLayoutChanged, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_VIDEO_LAYOUT_CHANGED);
6023
- _context25.next = 25;
6142
+ _context26.next = 25;
6024
6143
  return this.remoteMediaManager.start();
6025
6144
  case 25:
6026
- _context25.next = 27;
6145
+ _context26.next = 27;
6027
6146
  return mc.initiateOffer();
6028
6147
  case 27:
6029
- _context25.next = 29;
6148
+ _context26.next = 29;
6030
6149
  return this.waitForRemoteSDPAnswer();
6031
6150
  case 29:
6032
6151
  this.handleMediaLogging(this.mediaProperties);
6033
- _context25.next = 36;
6152
+ _context26.next = 36;
6034
6153
  break;
6035
6154
  case 32:
6036
- _context25.prev = 32;
6037
- _context25.t0 = _context25["catch"](3);
6038
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "), _context25.t0);
6039
- throw _context25.t0;
6155
+ _context26.prev = 32;
6156
+ _context26.t0 = _context26["catch"](3);
6157
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "), _context26.t0);
6158
+ throw _context26.t0;
6040
6159
  case 36:
6041
- _context25.prev = 36;
6042
- _context25.next = 39;
6160
+ _context26.prev = 36;
6161
+ _context26.next = 39;
6043
6162
  return this.waitForMediaConnectionConnected();
6044
6163
  case 39:
6045
- _context25.next = 45;
6164
+ _context26.next = 45;
6046
6165
  break;
6047
6166
  case 41:
6048
- _context25.prev = 41;
6049
- _context25.t1 = _context25["catch"](36);
6050
- _context25.next = 45;
6051
- return this.handleWaitForMediaConnectionConnectedError(_context25.t1, remoteMediaManagerConfig, bundlePolicy);
6167
+ _context26.prev = 41;
6168
+ _context26.t1 = _context26["catch"](36);
6169
+ _context26.next = 45;
6170
+ return this.handleWaitForMediaConnectionConnectedError(_context26.t1, remoteMediaManagerConfig, bundlePolicy);
6052
6171
  case 45:
6053
6172
  case "end":
6054
- return _context25.stop();
6173
+ return _context26.stop();
6055
6174
  }
6056
- }, _callee25, this, [[3, 32], [36, 41]]);
6175
+ }, _callee26, this, [[3, 32], [36, 41]]);
6057
6176
  }));
6058
- function establishMediaConnection(_x24, _x25, _x26) {
6177
+ function establishMediaConnection(_x26, _x27, _x28) {
6059
6178
  return _establishMediaConnection.apply(this, arguments);
6060
6179
  }
6061
6180
  return establishMediaConnection;
@@ -6069,22 +6188,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6069
6188
  }, {
6070
6189
  key: "cleanUpOnAddMediaFailure",
6071
6190
  value: function () {
6072
- var _cleanUpOnAddMediaFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee26() {
6073
- return _regenerator.default.wrap(function _callee26$(_context26) {
6074
- while (1) switch (_context26.prev = _context26.next) {
6191
+ var _cleanUpOnAddMediaFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee27() {
6192
+ return _regenerator.default.wrap(function _callee27$(_context27) {
6193
+ while (1) switch (_context27.prev = _context27.next) {
6075
6194
  case 0:
6076
6195
  if (!this.statsAnalyzer) {
6077
- _context26.next = 3;
6196
+ _context27.next = 3;
6078
6197
  break;
6079
6198
  }
6080
- _context26.next = 3;
6199
+ _context27.next = 3;
6081
6200
  return this.statsAnalyzer.stopAnalyzer();
6082
6201
  case 3:
6083
6202
  this.statsAnalyzer = null;
6084
6203
 
6085
6204
  // when media fails, we want to upload a webrtc dump to see whats going on
6086
6205
  // this function is async, but returns once the stats have been gathered
6087
- _context26.next = 6;
6206
+ _context27.next = 6;
6088
6207
  return this.forceSendStatsReport({
6089
6208
  callFrom: 'addMedia'
6090
6209
  });
@@ -6095,9 +6214,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6095
6214
  }
6096
6215
  case 7:
6097
6216
  case "end":
6098
- return _context26.stop();
6217
+ return _context27.stop();
6099
6218
  }
6100
- }, _callee26, this);
6219
+ }, _callee27, this);
6101
6220
  }));
6102
6221
  function cleanUpOnAddMediaFailure() {
6103
6222
  return _cleanUpOnAddMediaFailure.apply(this, arguments);
@@ -6114,11 +6233,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6114
6233
  }, {
6115
6234
  key: "cleanUpBeforeRetryWithTurnServer",
6116
6235
  value: function () {
6117
- var _cleanUpBeforeRetryWithTurnServer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee27() {
6118
- return _regenerator.default.wrap(function _callee27$(_context27) {
6119
- while (1) switch (_context27.prev = _context27.next) {
6236
+ var _cleanUpBeforeRetryWithTurnServer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28() {
6237
+ return _regenerator.default.wrap(function _callee28$(_context28) {
6238
+ while (1) switch (_context28.prev = _context28.next) {
6120
6239
  case 0:
6121
- _context27.next = 2;
6240
+ _context28.next = 2;
6122
6241
  return this.forceSendStatsReport({
6123
6242
  callFrom: 'cleanUpBeforeRetryWithTurnServer'
6124
6243
  });
@@ -6138,9 +6257,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6138
6257
  }
6139
6258
  case 3:
6140
6259
  case "end":
6141
- return _context27.stop();
6260
+ return _context28.stop();
6142
6261
  }
6143
- }, _callee27, this);
6262
+ }, _callee28, this);
6144
6263
  }));
6145
6264
  function cleanUpBeforeRetryWithTurnServer() {
6146
6265
  return _cleanUpBeforeRetryWithTurnServer.apply(this, arguments);
@@ -6158,7 +6277,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6158
6277
  }, {
6159
6278
  key: "addMedia",
6160
6279
  value: function () {
6161
- var _addMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28() {
6280
+ var _addMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee29() {
6162
6281
  var _this$webex$meetings$2, _this$webex$meetings$3;
6163
6282
  var options,
6164
6283
  LOG_HEADER,
@@ -6199,23 +6318,23 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6199
6318
  _this$mediaProperties39,
6200
6319
  _this$mediaProperties40,
6201
6320
  reachabilityMetrics,
6202
- _args28 = arguments;
6203
- return _regenerator.default.wrap(function _callee28$(_context28) {
6204
- while (1) switch (_context28.prev = _context28.next) {
6321
+ _args29 = arguments;
6322
+ return _regenerator.default.wrap(function _callee29$(_context29) {
6323
+ while (1) switch (_context29.prev = _context29.next) {
6205
6324
  case 0:
6206
- options = _args28.length > 0 && _args28[0] !== undefined ? _args28[0] : {};
6325
+ options = _args29.length > 0 && _args29[0] !== undefined ? _args29[0] : {};
6207
6326
  this.retriedWithTurnServer = false;
6208
6327
  this.hasMediaConnectionConnectedAtLeastOnce = false;
6209
6328
  LOG_HEADER = 'Meeting:index#addMedia -->';
6210
6329
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " called with: ").concat((0, _stringify.default)(options)));
6211
6330
  if (!(options.allowMediaInLobby !== true && this.meetingState !== _constants.FULL_STATE.ACTIVE)) {
6212
- _context28.next = 7;
6331
+ _context29.next = 7;
6213
6332
  break;
6214
6333
  }
6215
6334
  throw new _webexErrors.MeetingNotActiveError();
6216
6335
  case 7:
6217
6336
  if (!_util.default.isUserInLeftState(this.locusInfo)) {
6218
- _context28.next = 9;
6337
+ _context29.next = 9;
6219
6338
  break;
6220
6339
  }
6221
6340
  throw new _webexErrors.UserNotJoinedError();
@@ -6226,7 +6345,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6226
6345
  // If the user is unjoined or guest waiting in lobby dont allow the user to addMedia
6227
6346
  // @ts-ignore - isUserUnadmitted coming from SelfUtil
6228
6347
  if (!(this.isUserUnadmitted && !this.wirelessShare && !allowMediaInLobby)) {
6229
- _context28.next = 13;
6348
+ _context29.next = 13;
6230
6349
  break;
6231
6350
  }
6232
6351
  throw new _webexErrors.UserInLobbyError();
@@ -6285,33 +6404,33 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6285
6404
  });
6286
6405
  this.audio = (0, _muteState.createMuteState)(_constants.AUDIO, this, audioEnabled);
6287
6406
  this.video = (0, _muteState.createMuteState)(_constants.VIDEO, this, videoEnabled);
6288
- _context28.prev = 18;
6289
- _context28.next = 21;
6407
+ _context29.prev = 18;
6408
+ _context29.next = 21;
6290
6409
  return this.setUpLocalStreamReferences(localStreams);
6291
6410
  case 21:
6292
6411
  this.setMercuryListener();
6293
6412
  this.createStatsAnalyzer();
6294
- _context28.next = 25;
6413
+ _context29.next = 25;
6295
6414
  return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, false);
6296
6415
  case 25:
6297
- _context28.next = 27;
6416
+ _context29.next = 27;
6298
6417
  return Meeting.handleDeviceLogging();
6299
6418
  case 27:
6300
6419
  if (!this.mediaProperties.hasLocalShareStream()) {
6301
- _context28.next = 30;
6420
+ _context29.next = 30;
6302
6421
  break;
6303
6422
  }
6304
- _context28.next = 30;
6423
+ _context29.next = 30;
6305
6424
  return this.enqueueScreenShareFloorRequest();
6306
6425
  case 30:
6307
- _context28.next = 32;
6426
+ _context29.next = 32;
6308
6427
  return this.mediaProperties.getCurrentConnectionType();
6309
6428
  case 32:
6310
- connectionType = _context28.sent;
6311
- _context28.next = 35;
6429
+ connectionType = _context29.sent;
6430
+ _context29.next = 35;
6312
6431
  return this.webex.meetings.reachability.getReachabilityMetrics();
6313
6432
  case 35:
6314
- reachabilityStats = _context28.sent;
6433
+ reachabilityStats = _context29.sent;
6315
6434
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_SUCCESS, _objectSpread({
6316
6435
  correlation_id: this.correlationId,
6317
6436
  locus_id: this.locusUrl.split('/').pop(),
@@ -6330,24 +6449,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6330
6449
 
6331
6450
  // We can log ReceiveSlot SSRCs only after the SDP exchange, so doing it here:
6332
6451
  (_this$remoteMediaMana = this.remoteMediaManager) === null || _this$remoteMediaMana === void 0 ? void 0 : _this$remoteMediaMana.logAllReceiveSlots();
6333
- _context28.next = 54;
6452
+ _context29.next = 54;
6334
6453
  break;
6335
6454
  case 42:
6336
- _context28.prev = 42;
6337
- _context28.t0 = _context28["catch"](18);
6338
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _context28.t0);
6455
+ _context29.prev = 42;
6456
+ _context29.t0 = _context29["catch"](18);
6457
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _context29.t0);
6339
6458
 
6340
6459
  // @ts-ignore
6341
- _context28.next = 47;
6460
+ _context29.next = 47;
6342
6461
  return this.webex.meetings.reachability.getReachabilityMetrics();
6343
6462
  case 47:
6344
- reachabilityMetrics = _context28.sent;
6463
+ reachabilityMetrics = _context29.sent;
6345
6464
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_FAILURE, _objectSpread({
6346
6465
  correlation_id: this.correlationId,
6347
6466
  locus_id: this.locusUrl.split('/').pop(),
6348
- reason: _context28.t0.message,
6349
- stack: _context28.t0.stack,
6350
- code: _context28.t0.code,
6467
+ reason: _context29.t0.message,
6468
+ stack: _context29.t0.stack,
6469
+ code: _context29.t0.code,
6351
6470
  turnDiscoverySkippedReason: this.turnDiscoverySkippedReason,
6352
6471
  turnServerUsed: this.turnServerUsed,
6353
6472
  retriedWithTurnServer: this.retriedWithTurnServer,
@@ -6356,7 +6475,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6356
6475
  connectionState: ((_this$mediaProperties27 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties27 === void 0 ? void 0 : (_this$mediaProperties28 = _this$mediaProperties27.multistreamConnection) === null || _this$mediaProperties28 === void 0 ? void 0 : (_this$mediaProperties29 = _this$mediaProperties28.pc) === null || _this$mediaProperties29 === void 0 ? void 0 : (_this$mediaProperties30 = _this$mediaProperties29.pc) === null || _this$mediaProperties30 === void 0 ? void 0 : _this$mediaProperties30.connectionState) || ((_this$mediaProperties31 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties31 === void 0 ? void 0 : (_this$mediaProperties32 = _this$mediaProperties31.mediaConnection) === null || _this$mediaProperties32 === void 0 ? void 0 : (_this$mediaProperties33 = _this$mediaProperties32.pc) === null || _this$mediaProperties33 === void 0 ? void 0 : _this$mediaProperties33.connectionState) || 'unknown',
6357
6476
  iceConnectionState: ((_this$mediaProperties34 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties34 === void 0 ? void 0 : (_this$mediaProperties35 = _this$mediaProperties34.multistreamConnection) === null || _this$mediaProperties35 === void 0 ? void 0 : (_this$mediaProperties36 = _this$mediaProperties35.pc) === null || _this$mediaProperties36 === void 0 ? void 0 : (_this$mediaProperties37 = _this$mediaProperties36.pc) === null || _this$mediaProperties37 === void 0 ? void 0 : _this$mediaProperties37.iceConnectionState) || ((_this$mediaProperties38 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties38 === void 0 ? void 0 : (_this$mediaProperties39 = _this$mediaProperties38.mediaConnection) === null || _this$mediaProperties39 === void 0 ? void 0 : (_this$mediaProperties40 = _this$mediaProperties39.pc) === null || _this$mediaProperties40 === void 0 ? void 0 : _this$mediaProperties40.iceConnectionState) || 'unknown'
6358
6477
  }, reachabilityMetrics));
6359
- _context28.next = 51;
6478
+ _context29.next = 51;
6360
6479
  return this.cleanUpOnAddMediaFailure();
6361
6480
  case 51:
6362
6481
  // Upload logs on error while adding media
@@ -6364,17 +6483,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6364
6483
  file: 'meeting/index',
6365
6484
  function: 'addMedia'
6366
6485
  }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
6367
- if (_context28.t0 instanceof _internalMediaCore.Errors.SdpError) {
6486
+ if (_context29.t0 instanceof _internalMediaCore.Errors.SdpError) {
6368
6487
  this.leave({
6369
6488
  reason: _constants.MEETING_REMOVED_REASON.MEETING_CONNECTION_FAILED
6370
6489
  });
6371
6490
  }
6372
- throw _context28.t0;
6491
+ throw _context29.t0;
6373
6492
  case 54:
6374
6493
  case "end":
6375
- return _context28.stop();
6494
+ return _context29.stop();
6376
6495
  }
6377
- }, _callee28, this, [[18, 42]]);
6496
+ }, _callee29, this, [[18, 42]]);
6378
6497
  }));
6379
6498
  function addMedia() {
6380
6499
  return _addMedia.apply(this, arguments);
@@ -6455,35 +6574,35 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6455
6574
  * @memberof Meeting
6456
6575
  */
6457
6576
  function () {
6458
- var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee29(options) {
6577
+ var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee30(options) {
6459
6578
  var audioEnabled, videoEnabled, shareAudioEnabled, shareVideoEnabled;
6460
- return _regenerator.default.wrap(function _callee29$(_context29) {
6461
- while (1) switch (_context29.prev = _context29.next) {
6579
+ return _regenerator.default.wrap(function _callee30$(_context30) {
6580
+ while (1) switch (_context30.prev = _context30.next) {
6462
6581
  case 0:
6463
6582
  this.checkMediaConnection();
6464
6583
  audioEnabled = options.audioEnabled, videoEnabled = options.videoEnabled, shareAudioEnabled = options.shareAudioEnabled, shareVideoEnabled = options.shareVideoEnabled;
6465
6584
  _loggerProxy.default.logger.log("Meeting:index#updateMedia --> called with options=".concat((0, _stringify.default)(options)));
6466
6585
  if (this.canUpdateMedia()) {
6467
- _context29.next = 5;
6586
+ _context30.next = 5;
6468
6587
  break;
6469
6588
  }
6470
- return _context29.abrupt("return", this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.UPDATE_MEDIA, options));
6589
+ return _context30.abrupt("return", this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.UPDATE_MEDIA, options));
6471
6590
  case 5:
6472
6591
  if (!this.isMultistream) {
6473
- _context29.next = 10;
6592
+ _context30.next = 10;
6474
6593
  break;
6475
6594
  }
6476
6595
  if (!(shareAudioEnabled !== undefined || shareVideoEnabled !== undefined)) {
6477
- _context29.next = 8;
6596
+ _context30.next = 8;
6478
6597
  break;
6479
6598
  }
6480
6599
  throw new Error('toggling shareAudioEnabled or shareVideoEnabled in a multistream meeting is not supported, to control receiving screen share call meeting.remoteMediaManager.setLayout() with appropriate layout');
6481
6600
  case 8:
6482
- _context29.next = 12;
6601
+ _context30.next = 12;
6483
6602
  break;
6484
6603
  case 10:
6485
6604
  if (!(shareAudioEnabled !== undefined)) {
6486
- _context29.next = 12;
6605
+ _context30.next = 12;
6487
6606
  break;
6488
6607
  }
6489
6608
  throw new Error('toggling shareAudioEnabled in a transcoded meeting is not supported as of now');
@@ -6508,20 +6627,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6508
6627
  this.mediaProperties.mediaDirection.receiveShare = !!(shareAudioEnabled || shareVideoEnabled);
6509
6628
  }
6510
6629
  if (this.isMultistream) {
6511
- _context29.next = 18;
6630
+ _context30.next = 18;
6512
6631
  break;
6513
6632
  }
6514
- _context29.next = 18;
6633
+ _context30.next = 18;
6515
6634
  return this.updateTranscodedMediaConnection();
6516
6635
  case 18:
6517
- return _context29.abrupt("return", undefined);
6636
+ return _context30.abrupt("return", undefined);
6518
6637
  case 19:
6519
6638
  case "end":
6520
- return _context29.stop();
6639
+ return _context30.stop();
6521
6640
  }
6522
- }, _callee29, this);
6641
+ }, _callee30, this);
6523
6642
  }));
6524
- function updateMedia(_x27) {
6643
+ function updateMedia(_x29) {
6525
6644
  return _updateMedia.apply(this, arguments);
6526
6645
  }
6527
6646
  return updateMedia;
@@ -7159,7 +7278,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7159
7278
  }
7160
7279
  if (layoutType) {
7161
7280
  if (!_constants.LAYOUT_TYPES.includes(layoutType)) {
7162
- this.rejectWithErrorLog('Meeting:index#changeVideoLayout --> cannot change video layout, invalid layoutType received.');
7281
+ return this.rejectWithErrorLog('Meeting:index#changeVideoLayout --> cannot change video layout, invalid layoutType received.');
7163
7282
  }
7164
7283
  layoutInfo.layoutType = layoutType;
7165
7284
  }
@@ -7301,6 +7420,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7301
7420
  if (roles.includes(_constants.SELF_ROLES.COHOST)) {
7302
7421
  return 'cohost';
7303
7422
  }
7423
+ if (roles.includes(_constants.SELF_ROLES.PRESENTER)) {
7424
+ return 'presenter';
7425
+ }
7304
7426
  if (roles.includes(_constants.SELF_ROLES.ATTENDEE)) {
7305
7427
  return 'attendee';
7306
7428
  }
@@ -7449,39 +7571,39 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7449
7571
  }, {
7450
7572
  key: "enableMusicMode",
7451
7573
  value: function () {
7452
- var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee30(shouldEnableMusicMode) {
7453
- return _regenerator.default.wrap(function _callee30$(_context30) {
7454
- while (1) switch (_context30.prev = _context30.next) {
7574
+ var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee31(shouldEnableMusicMode) {
7575
+ return _regenerator.default.wrap(function _callee31$(_context31) {
7576
+ while (1) switch (_context31.prev = _context31.next) {
7455
7577
  case 0:
7456
7578
  this.checkMediaConnection();
7457
7579
  if (this.isMultistream) {
7458
- _context30.next = 3;
7580
+ _context31.next = 3;
7459
7581
  break;
7460
7582
  }
7461
7583
  throw new Error('enableMusicMode() only supported with multistream');
7462
7584
  case 3:
7463
7585
  if (!shouldEnableMusicMode) {
7464
- _context30.next = 8;
7586
+ _context31.next = 8;
7465
7587
  break;
7466
7588
  }
7467
- _context30.next = 6;
7589
+ _context31.next = 6;
7468
7590
  return this.sendSlotManager.setCodecParameters(_internalMediaCore.MediaType.AudioMain, {
7469
7591
  maxaveragebitrate: '64000',
7470
7592
  maxplaybackrate: '48000'
7471
7593
  });
7472
7594
  case 6:
7473
- _context30.next = 10;
7595
+ _context31.next = 10;
7474
7596
  break;
7475
7597
  case 8:
7476
- _context30.next = 10;
7598
+ _context31.next = 10;
7477
7599
  return this.sendSlotManager.deleteCodecParameters(_internalMediaCore.MediaType.AudioMain, ['maxaveragebitrate', 'maxplaybackrate']);
7478
7600
  case 10:
7479
7601
  case "end":
7480
- return _context30.stop();
7602
+ return _context31.stop();
7481
7603
  }
7482
- }, _callee30, this);
7604
+ }, _callee31, this);
7483
7605
  }));
7484
- function enableMusicMode(_x28) {
7606
+ function enableMusicMode(_x30) {
7485
7607
  return _enableMusicMode.apply(this, arguments);
7486
7608
  }
7487
7609
  return enableMusicMode;
@@ -7571,25 +7693,25 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7571
7693
  }, {
7572
7694
  key: "publishStream",
7573
7695
  value: function () {
7574
- var _publishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee31(mediaType, stream) {
7575
- return _regenerator.default.wrap(function _callee31$(_context31) {
7576
- while (1) switch (_context31.prev = _context31.next) {
7696
+ var _publishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32(mediaType, stream) {
7697
+ return _regenerator.default.wrap(function _callee32$(_context32) {
7698
+ while (1) switch (_context32.prev = _context32.next) {
7577
7699
  case 0:
7578
7700
  if (stream) {
7579
- _context31.next = 2;
7701
+ _context32.next = 2;
7580
7702
  break;
7581
7703
  }
7582
- return _context31.abrupt("return");
7704
+ return _context32.abrupt("return");
7583
7705
  case 2:
7584
7706
  if (!this.mediaProperties.webrtcMediaConnection) {
7585
- _context31.next = 7;
7707
+ _context32.next = 7;
7586
7708
  break;
7587
7709
  }
7588
7710
  if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
7589
- _context31.next = 6;
7711
+ _context32.next = 6;
7590
7712
  break;
7591
7713
  }
7592
- _context31.next = 6;
7714
+ _context32.next = 6;
7593
7715
  return this.sendSlotManager.publishStream(mediaType, stream);
7594
7716
  case 6:
7595
7717
  this.emitPublishStateChangeEvent({
@@ -7600,11 +7722,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7600
7722
  });
7601
7723
  case 7:
7602
7724
  case "end":
7603
- return _context31.stop();
7725
+ return _context32.stop();
7604
7726
  }
7605
- }, _callee31, this);
7727
+ }, _callee32, this);
7606
7728
  }));
7607
- function publishStream(_x29, _x30) {
7729
+ function publishStream(_x31, _x32) {
7608
7730
  return _publishStream.apply(this, arguments);
7609
7731
  }
7610
7732
  return publishStream;
@@ -7619,21 +7741,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7619
7741
  }, {
7620
7742
  key: "unpublishStream",
7621
7743
  value: function () {
7622
- var _unpublishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32(mediaType, stream) {
7623
- return _regenerator.default.wrap(function _callee32$(_context32) {
7624
- while (1) switch (_context32.prev = _context32.next) {
7744
+ var _unpublishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(mediaType, stream) {
7745
+ return _regenerator.default.wrap(function _callee33$(_context33) {
7746
+ while (1) switch (_context33.prev = _context33.next) {
7625
7747
  case 0:
7626
7748
  if (stream) {
7627
- _context32.next = 2;
7749
+ _context33.next = 2;
7628
7750
  break;
7629
7751
  }
7630
- return _context32.abrupt("return");
7752
+ return _context33.abrupt("return");
7631
7753
  case 2:
7632
7754
  if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
7633
- _context32.next = 5;
7755
+ _context33.next = 5;
7634
7756
  break;
7635
7757
  }
7636
- _context32.next = 5;
7758
+ _context33.next = 5;
7637
7759
  return this.sendSlotManager.unpublishStream(mediaType);
7638
7760
  case 5:
7639
7761
  this.emitPublishStateChangeEvent({
@@ -7644,11 +7766,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7644
7766
  });
7645
7767
  case 6:
7646
7768
  case "end":
7647
- return _context32.stop();
7769
+ return _context33.stop();
7648
7770
  }
7649
- }, _callee32, this);
7771
+ }, _callee33, this);
7650
7772
  }));
7651
- function unpublishStream(_x31, _x32) {
7773
+ function unpublishStream(_x33, _x34) {
7652
7774
  return _unpublishStream.apply(this, arguments);
7653
7775
  }
7654
7776
  return unpublishStream;
@@ -7662,61 +7784,61 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7662
7784
  }, {
7663
7785
  key: "publishStreams",
7664
7786
  value: function () {
7665
- var _publishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(streams) {
7787
+ var _publishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee34(streams) {
7666
7788
  var _streams$screenShare, _streams$screenShare2, _streams$screenShare3, _streams$screenShare4;
7667
7789
  var floorRequestNeeded, _streams$screenShare5;
7668
- return _regenerator.default.wrap(function _callee33$(_context33) {
7669
- while (1) switch (_context33.prev = _context33.next) {
7790
+ return _regenerator.default.wrap(function _callee34$(_context34) {
7791
+ while (1) switch (_context34.prev = _context34.next) {
7670
7792
  case 0:
7671
7793
  this.checkMediaConnection();
7672
7794
  if (!(!streams.microphone && !streams.camera && !((_streams$screenShare = streams.screenShare) !== null && _streams$screenShare !== void 0 && _streams$screenShare.audio) && !((_streams$screenShare2 = streams.screenShare) !== null && _streams$screenShare2 !== void 0 && _streams$screenShare2.video))) {
7673
- _context33.next = 3;
7795
+ _context34.next = 3;
7674
7796
  break;
7675
7797
  }
7676
- return _context33.abrupt("return");
7798
+ return _context34.abrupt("return");
7677
7799
  case 3:
7678
7800
  floorRequestNeeded = false; // Screenshare Audio is supported only in multi stream. So we check for screenshare audio presence only if it's a multi stream meeting
7679
7801
  if (!(this.isMultistream && (_streams$screenShare3 = streams.screenShare) !== null && _streams$screenShare3 !== void 0 && _streams$screenShare3.audio)) {
7680
- _context33.next = 8;
7802
+ _context34.next = 8;
7681
7803
  break;
7682
7804
  }
7683
- _context33.next = 7;
7805
+ _context34.next = 7;
7684
7806
  return this.setLocalShareAudioStream(streams.screenShare.audio);
7685
7807
  case 7:
7686
7808
  floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
7687
7809
  case 8:
7688
7810
  if (!((_streams$screenShare4 = streams.screenShare) !== null && _streams$screenShare4 !== void 0 && _streams$screenShare4.video)) {
7689
- _context33.next = 12;
7811
+ _context34.next = 12;
7690
7812
  break;
7691
7813
  }
7692
- _context33.next = 11;
7814
+ _context34.next = 11;
7693
7815
  return this.setLocalShareVideoStream((_streams$screenShare5 = streams.screenShare) === null || _streams$screenShare5 === void 0 ? void 0 : _streams$screenShare5.video);
7694
7816
  case 11:
7695
7817
  floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
7696
7818
  case 12:
7697
7819
  if (!streams.microphone) {
7698
- _context33.next = 15;
7820
+ _context34.next = 15;
7699
7821
  break;
7700
7822
  }
7701
- _context33.next = 15;
7823
+ _context34.next = 15;
7702
7824
  return this.setLocalAudioStream(streams.microphone);
7703
7825
  case 15:
7704
7826
  if (!streams.camera) {
7705
- _context33.next = 18;
7827
+ _context34.next = 18;
7706
7828
  break;
7707
7829
  }
7708
- _context33.next = 18;
7830
+ _context34.next = 18;
7709
7831
  return this.setLocalVideoStream(streams.camera);
7710
7832
  case 18:
7711
7833
  if (this.isMultistream) {
7712
- _context33.next = 21;
7834
+ _context34.next = 21;
7713
7835
  break;
7714
7836
  }
7715
- _context33.next = 21;
7837
+ _context34.next = 21;
7716
7838
  return this.updateTranscodedMediaConnection();
7717
7839
  case 21:
7718
7840
  if (!floorRequestNeeded) {
7719
- _context33.next = 27;
7841
+ _context34.next = 27;
7720
7842
  break;
7721
7843
  }
7722
7844
  this.localShareInstanceId = _uuid.default.v4();
@@ -7740,15 +7862,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7740
7862
  // we're sending the http request to Locus to request the screen share floor
7741
7863
  // only after the SDP update, because that's how it's always been done for transcoded meetings
7742
7864
  // and also if sharing from the start, we need confluence to have been created
7743
- _context33.next = 27;
7865
+ _context34.next = 27;
7744
7866
  return this.enqueueScreenShareFloorRequest();
7745
7867
  case 27:
7746
7868
  case "end":
7747
- return _context33.stop();
7869
+ return _context34.stop();
7748
7870
  }
7749
- }, _callee33, this);
7871
+ }, _callee34, this);
7750
7872
  }));
7751
- function publishStreams(_x33) {
7873
+ function publishStreams(_x35) {
7752
7874
  return _publishStreams.apply(this, arguments);
7753
7875
  }
7754
7876
  return publishStreams;
@@ -7762,10 +7884,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7762
7884
  }, {
7763
7885
  key: "unpublishStreams",
7764
7886
  value: function () {
7765
- var _unpublishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee34(streams) {
7887
+ var _unpublishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee35(streams) {
7766
7888
  var promises, _iterator, _step, stream;
7767
- return _regenerator.default.wrap(function _callee34$(_context34) {
7768
- while (1) switch (_context34.prev = _context34.next) {
7889
+ return _regenerator.default.wrap(function _callee35$(_context35) {
7890
+ while (1) switch (_context35.prev = _context35.next) {
7769
7891
  case 0:
7770
7892
  this.checkMediaConnection();
7771
7893
  promises = [];
@@ -7796,7 +7918,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7796
7918
  if (!this.isMultistream) {
7797
7919
  promises.push(this.updateTranscodedMediaConnection());
7798
7920
  }
7799
- _context34.next = 7;
7921
+ _context35.next = 7;
7800
7922
  return _promise.default.all(promises);
7801
7923
  case 7:
7802
7924
  // we're allowing for the SDK to support just audio share as well
@@ -7817,11 +7939,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7817
7939
  }
7818
7940
  case 8:
7819
7941
  case "end":
7820
- return _context34.stop();
7942
+ return _context35.stop();
7821
7943
  }
7822
- }, _callee34, this);
7944
+ }, _callee35, this);
7823
7945
  }));
7824
- function unpublishStreams(_x34) {
7946
+ function unpublishStreams(_x36) {
7825
7947
  return _unpublishStreams.apply(this, arguments);
7826
7948
  }
7827
7949
  return unpublishStreams;
@@ -7880,27 +8002,27 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7880
8002
  }], [{
7881
8003
  key: "handleDeviceLogging",
7882
8004
  value: function () {
7883
- var _handleDeviceLogging = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee35() {
8005
+ var _handleDeviceLogging = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee36() {
7884
8006
  var devices;
7885
- return _regenerator.default.wrap(function _callee35$(_context35) {
7886
- while (1) switch (_context35.prev = _context35.next) {
8007
+ return _regenerator.default.wrap(function _callee36$(_context36) {
8008
+ while (1) switch (_context36.prev = _context36.next) {
7887
8009
  case 0:
7888
- _context35.prev = 0;
7889
- _context35.next = 3;
8010
+ _context36.prev = 0;
8011
+ _context36.next = 3;
7890
8012
  return (0, _mediaHelpers.getDevices)();
7891
8013
  case 3:
7892
- devices = _context35.sent;
8014
+ devices = _context36.sent;
7893
8015
  _util.default.handleDeviceLogging(devices);
7894
- _context35.next = 9;
8016
+ _context36.next = 9;
7895
8017
  break;
7896
8018
  case 7:
7897
- _context35.prev = 7;
7898
- _context35.t0 = _context35["catch"](0);
8019
+ _context36.prev = 7;
8020
+ _context36.t0 = _context36["catch"](0);
7899
8021
  case 9:
7900
8022
  case "end":
7901
- return _context35.stop();
8023
+ return _context36.stop();
7902
8024
  }
7903
- }, _callee35, null, [[0, 7]]);
8025
+ }, _callee36, null, [[0, 7]]);
7904
8026
  }));
7905
8027
  function handleDeviceLogging() {
7906
8028
  return _handleDeviceLogging.apply(this, arguments);