@webex/plugin-meetings 3.0.0-beta.350 → 3.0.0-beta.352

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.
@@ -113,6 +113,12 @@ var MEDIA_UPDATE_TYPE = {
113
113
  };
114
114
  exports.MEDIA_UPDATE_TYPE = MEDIA_UPDATE_TYPE;
115
115
  var ScreenShareFloorStatus;
116
+ exports.ScreenShareFloorStatus = ScreenShareFloorStatus;
117
+ (function (ScreenShareFloorStatus) {
118
+ ScreenShareFloorStatus["PENDING"] = "floor_request_pending";
119
+ ScreenShareFloorStatus["GRANTED"] = "floor_request_granted";
120
+ ScreenShareFloorStatus["RELEASED"] = "floor_released";
121
+ })(ScreenShareFloorStatus || (exports.ScreenShareFloorStatus = ScreenShareFloorStatus = {}));
116
122
  /**
117
123
  * MediaDirection
118
124
  * @typedef {Object} MediaDirection
@@ -359,12 +365,6 @@ var ScreenShareFloorStatus;
359
365
  * @export
360
366
  * @class Meeting
361
367
  */
362
- exports.ScreenShareFloorStatus = ScreenShareFloorStatus;
363
- (function (ScreenShareFloorStatus) {
364
- ScreenShareFloorStatus["PENDING"] = "floor_request_pending";
365
- ScreenShareFloorStatus["GRANTED"] = "floor_request_granted";
366
- ScreenShareFloorStatus["RELEASED"] = "floor_released";
367
- })(ScreenShareFloorStatus || (exports.ScreenShareFloorStatus = ScreenShareFloorStatus = {}));
368
368
  var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
369
369
  (0, _inherits2.default)(Meeting, _StatelessWebexPlugin);
370
370
  var _super = _createSuper(Meeting);
@@ -1924,6 +1924,98 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1924
1924
  this.callStateForMetrics.correlationId = correlationId;
1925
1925
  }
1926
1926
 
1927
+ /**
1928
+ * Set meeting info and trigger `MEETING_INFO_AVAILABLE` event
1929
+ * @param {any} info
1930
+ * @param {string} [meetingLookupUrl] Lookup url, defined when the meeting info fetched
1931
+ * @returns {void}
1932
+ */
1933
+ }, {
1934
+ key: "setMeetingInfo",
1935
+ value: function setMeetingInfo(info, meetingLookupUrl) {
1936
+ this.meetingInfo = info ? _objectSpread(_objectSpread({}, info), {}, {
1937
+ meetingLookupUrl: meetingLookupUrl
1938
+ }) : null;
1939
+ this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NONE;
1940
+ this.requiredCaptcha = null;
1941
+ if (this.passwordStatus === _constants.PASSWORD_STATUS.REQUIRED || this.passwordStatus === _constants.PASSWORD_STATUS.VERIFIED) {
1942
+ this.passwordStatus = _constants.PASSWORD_STATUS.VERIFIED;
1943
+ } else {
1944
+ this.passwordStatus = _constants.PASSWORD_STATUS.NOT_REQUIRED;
1945
+ }
1946
+ _triggerProxy.default.trigger(this, {
1947
+ file: 'meetings',
1948
+ function: 'fetchMeetingInfo'
1949
+ }, _constants.EVENT_TRIGGERS.MEETING_INFO_AVAILABLE);
1950
+ this.updateMeetingActions();
1951
+ }
1952
+
1953
+ /**
1954
+ * Add pre-fetched meeting info
1955
+ *
1956
+ * The passed meeting info should be be complete, e.g.: fetched after password or captcha provided
1957
+ *
1958
+ * @param {Object} meetingInfo - Complete meeting info
1959
+ * @param {FetchMeetingInfoParams} fetchParams - Fetch parameters for validation
1960
+ * @param {String|undefined} meetingLookupUrl - Lookup url, defined when the meeting info fetched
1961
+ * @returns {Promise<void>}
1962
+ */
1963
+ }, {
1964
+ key: "injectMeetingInfo",
1965
+ value: function () {
1966
+ var _injectMeetingInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(meetingInfo, fetchParams, meetingLookupUrl) {
1967
+ return _regenerator.default.wrap(function _callee4$(_context4) {
1968
+ while (1) switch (_context4.prev = _context4.next) {
1969
+ case 0:
1970
+ _context4.next = 2;
1971
+ return this.prepForFetchMeetingInfo(fetchParams, 'injectMeetingInfo');
1972
+ case 2:
1973
+ this.parseMeetingInfo(meetingInfo, this.destination);
1974
+ this.setMeetingInfo(meetingInfo, meetingLookupUrl);
1975
+ case 4:
1976
+ case "end":
1977
+ return _context4.stop();
1978
+ }
1979
+ }, _callee4, this);
1980
+ }));
1981
+ function injectMeetingInfo(_x2, _x3, _x4) {
1982
+ return _injectMeetingInfo.apply(this, arguments);
1983
+ }
1984
+ return injectMeetingInfo;
1985
+ }()
1986
+ /**
1987
+ * Validate fetch parameters and clear the fetchMeetingInfoTimeout timeout
1988
+ *
1989
+ * @param {FetchMeetingInfoParams} fetchParams - fetch parameters for validation
1990
+ * @param {String} caller - Name of the caller for logging
1991
+ *
1992
+ * @returns {Promise<void>}
1993
+ * @private
1994
+ */
1995
+ }, {
1996
+ key: "prepForFetchMeetingInfo",
1997
+ value: function prepForFetchMeetingInfo(_ref7, caller) {
1998
+ var _ref7$password = _ref7.password,
1999
+ password = _ref7$password === void 0 ? null : _ref7$password,
2000
+ _ref7$captchaCode = _ref7.captchaCode,
2001
+ captchaCode = _ref7$captchaCode === void 0 ? null : _ref7$captchaCode,
2002
+ _ref7$extraParams = _ref7.extraParams,
2003
+ extraParams = _ref7$extraParams === void 0 ? {} : _ref7$extraParams;
2004
+ // when fetch meeting info is called directly by the client, we want to clear out the random timer for sdk to do it
2005
+ if (this.fetchMeetingInfoTimeoutId) {
2006
+ clearTimeout(this.fetchMeetingInfoTimeoutId);
2007
+ this.fetchMeetingInfoTimeoutId = undefined;
2008
+ }
2009
+ if (captchaCode && !this.requiredCaptcha) {
2010
+ return _promise.default.reject(new Error("".concat(caller, "() called with captchaCode when captcha was not required")));
2011
+ }
2012
+ if (password && this.passwordStatus !== _constants.PASSWORD_STATUS.REQUIRED && this.passwordStatus !== _constants.PASSWORD_STATUS.UNKNOWN) {
2013
+ return _promise.default.reject(new Error("".concat(caller, "() called with password when password was not required")));
2014
+ }
2015
+ this.meetingInfoExtraParams = (0, _cloneDeep2.default)(extraParams);
2016
+ return _promise.default.resolve();
2017
+ }
2018
+
1927
2019
  /**
1928
2020
  * Internal method for fetching meeting info
1929
2021
  *
@@ -1932,18 +2024,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1932
2024
  }, {
1933
2025
  key: "fetchMeetingInfoInternal",
1934
2026
  value: function () {
1935
- var _fetchMeetingInfoInternal = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(_ref7) {
1936
- var destination, destinationType, _ref7$password, password, _ref7$captchaCode, captchaCode, _ref7$extraParams, extraParams, _ref7$sendCAevents, sendCAevents, captchaInfo, info, _err$body, _err$body2;
1937
- return _regenerator.default.wrap(function _callee4$(_context4) {
1938
- while (1) switch (_context4.prev = _context4.next) {
2027
+ var _fetchMeetingInfoInternal = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(_ref8) {
2028
+ var destination, destinationType, _ref8$password, password, _ref8$captchaCode, captchaCode, _ref8$extraParams, extraParams, _ref8$sendCAevents, sendCAevents, captchaInfo, info, _err$body, _err$body2;
2029
+ return _regenerator.default.wrap(function _callee5$(_context5) {
2030
+ while (1) switch (_context5.prev = _context5.next) {
1939
2031
  case 0:
1940
- destination = _ref7.destination, destinationType = _ref7.destinationType, _ref7$password = _ref7.password, password = _ref7$password === void 0 ? null : _ref7$password, _ref7$captchaCode = _ref7.captchaCode, captchaCode = _ref7$captchaCode === void 0 ? null : _ref7$captchaCode, _ref7$extraParams = _ref7.extraParams, extraParams = _ref7$extraParams === void 0 ? {} : _ref7$extraParams, _ref7$sendCAevents = _ref7.sendCAevents, sendCAevents = _ref7$sendCAevents === void 0 ? false : _ref7$sendCAevents;
1941
- _context4.prev = 1;
2032
+ destination = _ref8.destination, destinationType = _ref8.destinationType, _ref8$password = _ref8.password, password = _ref8$password === void 0 ? null : _ref8$password, _ref8$captchaCode = _ref8.captchaCode, captchaCode = _ref8$captchaCode === void 0 ? null : _ref8$captchaCode, _ref8$extraParams = _ref8.extraParams, extraParams = _ref8$extraParams === void 0 ? {} : _ref8$extraParams, _ref8$sendCAevents = _ref8.sendCAevents, sendCAevents = _ref8$sendCAevents === void 0 ? false : _ref8$sendCAevents;
2033
+ _context5.prev = 1;
1942
2034
  captchaInfo = captchaCode ? {
1943
2035
  code: captchaCode,
1944
2036
  id: this.requiredCaptcha.captchaId
1945
2037
  } : null;
1946
- _context4.next = 5;
2038
+ _context5.next = 5;
1947
2039
  return this.attrs.meetingInfoProvider.fetchMeetingInfo(destination, destinationType, password, captchaInfo,
1948
2040
  // @ts-ignore - config coming from registerPlugin
1949
2041
  this.config.installedOrgID, this.locusId, extraParams, {
@@ -1951,86 +2043,72 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1951
2043
  sendCAevents: sendCAevents
1952
2044
  });
1953
2045
  case 5:
1954
- info = _context4.sent;
1955
- this.parseMeetingInfo(info, this.destination);
1956
- this.meetingInfo = info ? _objectSpread(_objectSpread({}, info.body), {}, {
1957
- meetingLookupUrl: info === null || info === void 0 ? void 0 : info.url
1958
- }) : null;
1959
- this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NONE;
1960
- this.requiredCaptcha = null;
1961
- if (this.passwordStatus === _constants.PASSWORD_STATUS.REQUIRED || this.passwordStatus === _constants.PASSWORD_STATUS.VERIFIED) {
1962
- this.passwordStatus = _constants.PASSWORD_STATUS.VERIFIED;
1963
- } else {
1964
- this.passwordStatus = _constants.PASSWORD_STATUS.NOT_REQUIRED;
1965
- }
1966
- _triggerProxy.default.trigger(this, {
1967
- file: 'meetings',
1968
- function: 'fetchMeetingInfo'
1969
- }, _constants.EVENT_TRIGGERS.MEETING_INFO_AVAILABLE);
1970
- this.updateMeetingActions();
1971
- return _context4.abrupt("return", _promise.default.resolve());
1972
- case 16:
1973
- _context4.prev = 16;
1974
- _context4.t0 = _context4["catch"](1);
2046
+ info = _context5.sent;
2047
+ this.parseMeetingInfo(info === null || info === void 0 ? void 0 : info.body, this.destination, info === null || info === void 0 ? void 0 : info.errors);
2048
+ this.setMeetingInfo(info === null || info === void 0 ? void 0 : info.body, info === null || info === void 0 ? void 0 : info.url);
2049
+ return _context5.abrupt("return", _promise.default.resolve());
2050
+ case 11:
2051
+ _context5.prev = 11;
2052
+ _context5.t0 = _context5["catch"](1);
1975
2053
  this.updateMeetingActions();
1976
- if (!(_context4.t0 instanceof _meetingInfoV.MeetingInfoV2PolicyError)) {
1977
- _context4.next = 26;
2054
+ if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2PolicyError)) {
2055
+ _context5.next = 21;
1978
2056
  break;
1979
2057
  }
1980
2058
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.POLICY;
1981
- this.meetingInfoFailureCode = _context4.t0.wbxAppApiCode;
1982
- if (_context4.t0.meetingInfo) {
1983
- this.meetingInfo = _context4.t0.meetingInfo;
2059
+ this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
2060
+ if (_context5.t0.meetingInfo) {
2061
+ this.meetingInfo = _context5.t0.meetingInfo;
1984
2062
  }
1985
2063
  throw new _permission.default();
1986
- case 26:
1987
- if (!(_context4.t0 instanceof _meetingInfoV.MeetingInfoV2PasswordError)) {
1988
- _context4.next = 38;
2064
+ case 21:
2065
+ if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2PasswordError)) {
2066
+ _context5.next = 33;
1989
2067
  break;
1990
2068
  }
1991
2069
  _loggerProxy.default.logger.info( // @ts-ignore
1992
- "Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - password required (code=").concat(_context4.t0 === null || _context4.t0 === void 0 ? void 0 : (_err$body = _context4.t0.body) === null || _err$body === void 0 ? void 0 : _err$body.code, ")."));
2070
+ "Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - password required (code=").concat(_context5.t0 === null || _context5.t0 === void 0 ? void 0 : (_err$body = _context5.t0.body) === null || _err$body === void 0 ? void 0 : _err$body.code, ")."));
1993
2071
 
1994
2072
  // when wbxappapi requires password it still populates partial meeting info in the response
1995
- if (_context4.t0.meetingInfo) {
1996
- this.meetingInfo = _context4.t0.meetingInfo;
1997
- this.meetingNumber = _context4.t0.meetingInfo.meetingNumber;
2073
+ if (_context5.t0.meetingInfo) {
2074
+ this.meetingInfo = _context5.t0.meetingInfo;
2075
+ this.meetingNumber = _context5.t0.meetingInfo.meetingNumber;
1998
2076
  }
1999
- this.meetingInfoFailureCode = _context4.t0.wbxAppApiCode;
2077
+ this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
2000
2078
  this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
2001
2079
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
2002
2080
  if (!this.requiredCaptcha) {
2003
- _context4.next = 35;
2081
+ _context5.next = 30;
2004
2082
  break;
2005
2083
  }
2006
- _context4.next = 35;
2084
+ _context5.next = 30;
2007
2085
  return this.refreshCaptcha();
2008
- case 35:
2086
+ case 30:
2009
2087
  throw new _passwordError.default();
2010
- case 38:
2011
- if (!(_context4.t0 instanceof _meetingInfoV.MeetingInfoV2CaptchaError)) {
2012
- _context4.next = 47;
2088
+ case 33:
2089
+ if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2CaptchaError)) {
2090
+ _context5.next = 42;
2013
2091
  break;
2014
2092
  }
2015
2093
  _loggerProxy.default.logger.info( // @ts-ignore
2016
- "Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - captcha required (code=").concat(_context4.t0 === null || _context4.t0 === void 0 ? void 0 : (_err$body2 = _context4.t0.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.code, ")."));
2094
+ "Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - captcha required (code=").concat(_context5.t0 === null || _context5.t0 === void 0 ? void 0 : (_err$body2 = _context5.t0.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.code, ")."));
2017
2095
  this.meetingInfoFailureReason = this.requiredCaptcha ? _constants.MEETING_INFO_FAILURE_REASON.WRONG_CAPTCHA : _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
2018
- this.meetingInfoFailureCode = _context4.t0.wbxAppApiCode;
2019
- if (_context4.t0.isPasswordRequired) {
2096
+ this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
2097
+ if (_context5.t0.isPasswordRequired) {
2020
2098
  this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
2021
2099
  }
2022
- this.requiredCaptcha = _context4.t0.captchaInfo;
2100
+ this.requiredCaptcha = _context5.t0.captchaInfo;
2023
2101
  throw new _captchaError.default();
2024
- case 47:
2102
+ case 42:
2025
2103
  this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.OTHER;
2026
- throw _context4.t0;
2027
- case 49:
2104
+ throw _context5.t0;
2105
+ case 44:
2028
2106
  case "end":
2029
- return _context4.stop();
2107
+ return _context5.stop();
2030
2108
  }
2031
- }, _callee4, this, [[1, 16]]);
2109
+ }, _callee5, this, [[1, 11]]);
2032
2110
  }));
2033
- function fetchMeetingInfoInternal(_x2) {
2111
+ function fetchMeetingInfoInternal(_x5) {
2034
2112
  return _fetchMeetingInfoInternal.apply(this, arguments);
2035
2113
  }
2036
2114
  return fetchMeetingInfoInternal;
@@ -2044,18 +2122,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2044
2122
  }, {
2045
2123
  key: "refreshPermissionToken",
2046
2124
  value: function () {
2047
- var _refreshPermissionToken = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(reason) {
2125
+ var _refreshPermissionToken = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(reason) {
2048
2126
  var _this$meetingInfo;
2049
2127
  var isStartingSpaceInstantV2Meeting, destination, destinationType, permissionTokenExpiryInfo, timeLeft, expiryTime, currentTime;
2050
- return _regenerator.default.wrap(function _callee5$(_context5) {
2051
- while (1) switch (_context5.prev = _context5.next) {
2128
+ return _regenerator.default.wrap(function _callee6$(_context6) {
2129
+ while (1) switch (_context6.prev = _context6.next) {
2052
2130
  case 0:
2053
2131
  if ((_this$meetingInfo = this.meetingInfo) !== null && _this$meetingInfo !== void 0 && _this$meetingInfo.permissionToken) {
2054
- _context5.next = 3;
2132
+ _context6.next = 3;
2055
2133
  break;
2056
2134
  }
2057
2135
  _loggerProxy.default.logger.info("Meeting:index#refreshPermissionToken --> cannot refresh the permission token, because we don't have it (reason=".concat(reason, ")"));
2058
- return _context5.abrupt("return");
2136
+ return _context6.abrupt("return");
2059
2137
  case 3:
2060
2138
  isStartingSpaceInstantV2Meeting = this.destinationType === _constants._CONVERSATION_URL_ &&
2061
2139
  // @ts-ignore - config coming from registerPlugin
@@ -2077,8 +2155,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2077
2155
  reason: reason,
2078
2156
  destinationType: destinationType
2079
2157
  });
2080
- _context5.prev = 12;
2081
- _context5.next = 15;
2158
+ _context6.prev = 12;
2159
+ _context6.next = 15;
2082
2160
  return this.fetchMeetingInfoInternal({
2083
2161
  destination: destination,
2084
2162
  destinationType: destinationType,
@@ -2088,25 +2166,25 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2088
2166
  sendCAevents: true // because if we're refreshing the permissionToken, it means that user is intending to join that meeting, so we want CA events
2089
2167
  });
2090
2168
  case 15:
2091
- _context5.next = 22;
2169
+ _context6.next = 22;
2092
2170
  break;
2093
2171
  case 17:
2094
- _context5.prev = 17;
2095
- _context5.t0 = _context5["catch"](12);
2096
- _loggerProxy.default.logger.info('Meeting:index#refreshPermissionToken --> failed to refresh the permission token:', _context5.t0);
2172
+ _context6.prev = 17;
2173
+ _context6.t0 = _context6["catch"](12);
2174
+ _loggerProxy.default.logger.info('Meeting:index#refreshPermissionToken --> failed to refresh the permission token:', _context6.t0);
2097
2175
  _metrics.default.sendBehavioralMetric(_constants2.default.PERMISSION_TOKEN_REFRESH_ERROR, {
2098
2176
  correlationId: this.correlationId,
2099
- reason: _context5.t0.message,
2100
- stack: _context5.t0.stack
2177
+ reason: _context6.t0.message,
2178
+ stack: _context6.t0.stack
2101
2179
  });
2102
- throw _context5.t0;
2180
+ throw _context6.t0;
2103
2181
  case 22:
2104
2182
  case "end":
2105
- return _context5.stop();
2183
+ return _context6.stop();
2106
2184
  }
2107
- }, _callee5, this, [[12, 17]]);
2185
+ }, _callee6, this, [[12, 17]]);
2108
2186
  }));
2109
- function refreshPermissionToken(_x3) {
2187
+ function refreshPermissionToken(_x6) {
2110
2188
  return _refreshPermissionToken.apply(this, arguments);
2111
2189
  }
2112
2190
  return refreshPermissionToken;
@@ -2124,45 +2202,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2124
2202
  }, {
2125
2203
  key: "fetchMeetingInfo",
2126
2204
  value: function () {
2127
- var _fetchMeetingInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(_ref8) {
2128
- var _ref8$password, password, _ref8$captchaCode, captchaCode, _ref8$extraParams, extraParams, _ref8$sendCAevents, sendCAevents;
2129
- return _regenerator.default.wrap(function _callee6$(_context6) {
2130
- while (1) switch (_context6.prev = _context6.next) {
2205
+ var _fetchMeetingInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(options) {
2206
+ return _regenerator.default.wrap(function _callee7$(_context7) {
2207
+ while (1) switch (_context7.prev = _context7.next) {
2131
2208
  case 0:
2132
- _ref8$password = _ref8.password, password = _ref8$password === void 0 ? null : _ref8$password, _ref8$captchaCode = _ref8.captchaCode, captchaCode = _ref8$captchaCode === void 0 ? null : _ref8$captchaCode, _ref8$extraParams = _ref8.extraParams, extraParams = _ref8$extraParams === void 0 ? {} : _ref8$extraParams, _ref8$sendCAevents = _ref8.sendCAevents, sendCAevents = _ref8$sendCAevents === void 0 ? false : _ref8$sendCAevents;
2133
- // when fetch meeting info is called directly by the client, we want to clear out the random timer for sdk to do it
2134
- if (this.fetchMeetingInfoTimeoutId) {
2135
- clearTimeout(this.fetchMeetingInfoTimeoutId);
2136
- this.fetchMeetingInfoTimeoutId = undefined;
2137
- }
2138
- if (!(captchaCode && !this.requiredCaptcha)) {
2139
- _context6.next = 4;
2140
- break;
2141
- }
2142
- return _context6.abrupt("return", _promise.default.reject(new Error('fetchMeetingInfo() called with captchaCode when captcha was not required')));
2143
- case 4:
2144
- if (!(password && this.passwordStatus !== _constants.PASSWORD_STATUS.REQUIRED && this.passwordStatus !== _constants.PASSWORD_STATUS.UNKNOWN)) {
2145
- _context6.next = 6;
2146
- break;
2147
- }
2148
- return _context6.abrupt("return", _promise.default.reject(new Error('fetchMeetingInfo() called with password when password was not required')));
2149
- case 6:
2150
- this.meetingInfoExtraParams = (0, _cloneDeep2.default)(extraParams);
2151
- return _context6.abrupt("return", this.fetchMeetingInfoInternal({
2209
+ _context7.next = 2;
2210
+ return this.prepForFetchMeetingInfo(options, 'fetchMeetingInfo');
2211
+ case 2:
2212
+ return _context7.abrupt("return", this.fetchMeetingInfoInternal(_objectSpread({
2152
2213
  destination: this.destination,
2153
- destinationType: this.destinationType,
2154
- password: password,
2155
- captchaCode: captchaCode,
2156
- extraParams: extraParams,
2157
- sendCAevents: sendCAevents
2158
- }));
2159
- case 8:
2214
+ destinationType: this.destinationType
2215
+ }, options)));
2216
+ case 3:
2160
2217
  case "end":
2161
- return _context6.stop();
2218
+ return _context7.stop();
2162
2219
  }
2163
- }, _callee6, this);
2220
+ }, _callee7, this);
2164
2221
  }));
2165
- function fetchMeetingInfo(_x4) {
2222
+ function fetchMeetingInfo(_x7) {
2166
2223
  return _fetchMeetingInfo.apply(this, arguments);
2167
2224
  }
2168
2225
  return fetchMeetingInfo;
@@ -2684,18 +2741,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2684
2741
  function: 'setupLocusControlsListener'
2685
2742
  }, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE);
2686
2743
  });
2687
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_JOIN_BREAKOUT_FROM_MAIN, function (_ref14) {
2688
- var mainLocusUrl = _ref14.mainLocusUrl;
2689
- _this13.meetingRequest.getLocusStatusByUrl(mainLocusUrl).catch(function (error) {
2690
- // clear main session cache when attendee join into breakout and forbidden to get locus from main locus url,
2691
- // which means main session is not active for the attendee
2692
- if ((error === null || error === void 0 ? void 0 : error.statusCode) === 403) {
2693
- _this13.locusInfo.clearMainSessionLocusCache();
2694
- }
2695
- });
2696
- });
2697
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_ENTRY_EXIT_TONE_UPDATED, function (_ref15) {
2698
- var entryExitTone = _ref15.entryExitTone;
2744
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_ENTRY_EXIT_TONE_UPDATED, function (_ref14) {
2745
+ var entryExitTone = _ref14.entryExitTone;
2699
2746
  _triggerProxy.default.trigger(_this13, {
2700
2747
  file: 'meeting/index',
2701
2748
  function: 'setupLocusControlsListener'
@@ -2703,8 +2750,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2703
2750
  entryExitTone: entryExitTone
2704
2751
  });
2705
2752
  });
2706
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MUTE_ON_ENTRY_CHANGED, function (_ref16) {
2707
- var state = _ref16.state;
2753
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MUTE_ON_ENTRY_CHANGED, function (_ref15) {
2754
+ var state = _ref15.state;
2708
2755
  _triggerProxy.default.trigger(_this13, {
2709
2756
  file: 'meeting/index',
2710
2757
  function: 'setupLocusControlsListener'
@@ -2712,8 +2759,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2712
2759
  state: state
2713
2760
  });
2714
2761
  });
2715
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_SHARE_CONTROL_CHANGED, function (_ref17) {
2716
- var state = _ref17.state;
2762
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_SHARE_CONTROL_CHANGED, function (_ref16) {
2763
+ var state = _ref16.state;
2717
2764
  _triggerProxy.default.trigger(_this13, {
2718
2765
  file: 'meeting/index',
2719
2766
  function: 'setupLocusControlsListener'
@@ -2721,8 +2768,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2721
2768
  state: state
2722
2769
  });
2723
2770
  });
2724
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_DISALLOW_UNMUTE_CHANGED, function (_ref18) {
2725
- var state = _ref18.state;
2771
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_DISALLOW_UNMUTE_CHANGED, function (_ref17) {
2772
+ var state = _ref17.state;
2726
2773
  _triggerProxy.default.trigger(_this13, {
2727
2774
  file: 'meeting/index',
2728
2775
  function: 'setupLocusControlsListener'
@@ -2730,8 +2777,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2730
2777
  state: state
2731
2778
  });
2732
2779
  });
2733
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_REACTIONS_CHANGED, function (_ref19) {
2734
- var state = _ref19.state;
2780
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_REACTIONS_CHANGED, function (_ref18) {
2781
+ var state = _ref18.state;
2735
2782
  _triggerProxy.default.trigger(_this13, {
2736
2783
  file: 'meeting/index',
2737
2784
  function: 'setupLocusControlsListener'
@@ -2739,8 +2786,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2739
2786
  state: state
2740
2787
  });
2741
2788
  });
2742
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED, function (_ref20) {
2743
- var state = _ref20.state;
2789
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED, function (_ref19) {
2790
+ var state = _ref19.state;
2744
2791
  _triggerProxy.default.trigger(_this13, {
2745
2792
  file: 'meeting/index',
2746
2793
  function: 'setupLocusControlsListener'
@@ -2748,8 +2795,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2748
2795
  state: state
2749
2796
  });
2750
2797
  });
2751
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RAISE_HAND_CHANGED, function (_ref21) {
2752
- var state = _ref21.state;
2798
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RAISE_HAND_CHANGED, function (_ref20) {
2799
+ var state = _ref20.state;
2753
2800
  _triggerProxy.default.trigger(_this13, {
2754
2801
  file: 'meeting/index',
2755
2802
  function: 'setupLocusControlsListener'
@@ -2757,8 +2804,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2757
2804
  state: state
2758
2805
  });
2759
2806
  });
2760
- this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIDEO_CHANGED, function (_ref22) {
2761
- var state = _ref22.state;
2807
+ this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIDEO_CHANGED, function (_ref21) {
2808
+ var state = _ref21.state;
2762
2809
  _triggerProxy.default.trigger(_this13, {
2763
2810
  file: 'meeting/index',
2764
2811
  function: 'setupLocusControlsListener'
@@ -2804,21 +2851,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2804
2851
  var _this14 = this;
2805
2852
  // Will get triggered on local and remote share
2806
2853
  this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_MEDIA_SHARES, /*#__PURE__*/function () {
2807
- var _ref23 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(payload) {
2854
+ var _ref22 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(payload) {
2808
2855
  var _payload$previous, _payload$previous2;
2809
2856
  var _payload$current, contentShare, whiteboardShare, previousContentShare, previousWhiteboardShare, newShareStatus, oldShareStatus, sendStartedSharingRemote, _this14$mediaProperti;
2810
- return _regenerator.default.wrap(function _callee7$(_context7) {
2811
- while (1) switch (_context7.prev = _context7.next) {
2857
+ return _regenerator.default.wrap(function _callee8$(_context8) {
2858
+ while (1) switch (_context8.prev = _context8.next) {
2812
2859
  case 0:
2813
2860
  _payload$current = payload.current, contentShare = _payload$current.content, whiteboardShare = _payload$current.whiteboard;
2814
2861
  previousContentShare = (_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.content;
2815
2862
  previousWhiteboardShare = (_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.whiteboard;
2816
2863
  _this14.triggerAnnotationInfoEvent(contentShare, previousContentShare);
2817
2864
  if (!(contentShare.beneficiaryId === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.beneficiaryId) && contentShare.disposition === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.disposition) && contentShare.deviceUrlSharing === previousContentShare.deviceUrlSharing && whiteboardShare.beneficiaryId === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.beneficiaryId) && whiteboardShare.disposition === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.disposition) && whiteboardShare.resourceUrl === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.resourceUrl))) {
2818
- _context7.next = 6;
2865
+ _context8.next = 6;
2819
2866
  break;
2820
2867
  }
2821
- return _context7.abrupt("return");
2868
+ return _context8.abrupt("return");
2822
2869
  case 6:
2823
2870
  newShareStatus = _this14.shareStatus; // REMOTE - check if remote started sharing
2824
2871
  if (_this14.selfId !== contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
@@ -2847,22 +2894,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2847
2894
  newShareStatus = _constants.SHARE_STATUS.NO_SHARE;
2848
2895
  }
2849
2896
  if (!(newShareStatus !== _this14.shareStatus)) {
2850
- _context7.next = 45;
2897
+ _context8.next = 45;
2851
2898
  break;
2852
2899
  }
2853
2900
  oldShareStatus = _this14.shareStatus; // update our state before we send out any notifications
2854
2901
  _this14.shareStatus = newShareStatus;
2855
2902
 
2856
2903
  // send out "stop" notifications for the old state
2857
- _context7.t0 = oldShareStatus;
2858
- _context7.next = _context7.t0 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 14 : _context7.t0 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 16 : _context7.t0 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 18 : _context7.t0 === _constants.SHARE_STATUS.NO_SHARE ? 20 : 21;
2904
+ _context8.t0 = oldShareStatus;
2905
+ _context8.next = _context8.t0 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 14 : _context8.t0 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 16 : _context8.t0 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 18 : _context8.t0 === _constants.SHARE_STATUS.NO_SHARE ? 20 : 21;
2859
2906
  break;
2860
2907
  case 14:
2861
2908
  _triggerProxy.default.trigger(_this14, {
2862
2909
  file: 'meetings/index',
2863
2910
  function: 'remoteShare'
2864
2911
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_REMOTE);
2865
- return _context7.abrupt("break", 22);
2912
+ return _context8.abrupt("break", 22);
2866
2913
  case 16:
2867
2914
  _triggerProxy.default.trigger(_this14, {
2868
2915
  file: 'meeting/index',
@@ -2870,20 +2917,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2870
2917
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
2871
2918
  reason: _constants.SHARE_STOPPED_REASON.SELF_STOPPED
2872
2919
  });
2873
- return _context7.abrupt("break", 22);
2920
+ return _context8.abrupt("break", 22);
2874
2921
  case 18:
2875
2922
  _triggerProxy.default.trigger(_this14, {
2876
2923
  file: 'meeting/index',
2877
2924
  function: 'stopWhiteboardShare'
2878
2925
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_WHITEBOARD);
2879
- return _context7.abrupt("break", 22);
2926
+ return _context8.abrupt("break", 22);
2880
2927
  case 20:
2881
- return _context7.abrupt("break", 22);
2928
+ return _context8.abrupt("break", 22);
2882
2929
  case 21:
2883
- return _context7.abrupt("break", 22);
2930
+ return _context8.abrupt("break", 22);
2884
2931
  case 22:
2885
- _context7.t1 = newShareStatus;
2886
- _context7.next = _context7.t1 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 25 : _context7.t1 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 34 : _context7.t1 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 37 : _context7.t1 === _constants.SHARE_STATUS.NO_SHARE ? 40 : 41;
2932
+ _context8.t1 = newShareStatus;
2933
+ _context8.next = _context8.t1 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 25 : _context8.t1 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 34 : _context8.t1 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 37 : _context8.t1 === _constants.SHARE_STATUS.NO_SHARE ? 40 : 41;
2887
2934
  break;
2888
2935
  case 25:
2889
2936
  sendStartedSharingRemote = function sendStartedSharingRemote() {
@@ -2897,19 +2944,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2897
2944
  annotationInfo: contentShare.annotation
2898
2945
  });
2899
2946
  };
2900
- _context7.prev = 26;
2947
+ _context8.prev = 26;
2901
2948
  if (!((_this14$mediaProperti = _this14.mediaProperties.mediaDirection) !== null && _this14$mediaProperti !== void 0 && _this14$mediaProperti.sendShare && oldShareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE)) {
2902
- _context7.next = 30;
2949
+ _context8.next = 30;
2903
2950
  break;
2904
2951
  }
2905
- _context7.next = 30;
2952
+ _context8.next = 30;
2906
2953
  return _this14.unpublishStreams([_this14.mediaProperties.shareVideoStream, _this14.mediaProperties.shareAudioStream]);
2907
2954
  case 30:
2908
- _context7.prev = 30;
2955
+ _context8.prev = 30;
2909
2956
  sendStartedSharingRemote();
2910
- return _context7.finish(30);
2957
+ return _context8.finish(30);
2911
2958
  case 33:
2912
- return _context7.abrupt("break", 42);
2959
+ return _context8.abrupt("break", 42);
2913
2960
  case 34:
2914
2961
  _triggerProxy.default.trigger(_this14, {
2915
2962
  file: 'meeting/index',
@@ -2925,7 +2972,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2925
2972
  meetingId: _this14.id
2926
2973
  }
2927
2974
  });
2928
- return _context7.abrupt("break", 42);
2975
+ return _context8.abrupt("break", 42);
2929
2976
  case 37:
2930
2977
  _triggerProxy.default.trigger(_this14, {
2931
2978
  file: 'meeting/index',
@@ -2944,14 +2991,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2944
2991
  meetingId: _this14.id
2945
2992
  }
2946
2993
  });
2947
- return _context7.abrupt("break", 42);
2994
+ return _context8.abrupt("break", 42);
2948
2995
  case 40:
2949
- return _context7.abrupt("break", 42);
2996
+ return _context8.abrupt("break", 42);
2950
2997
  case 41:
2951
- return _context7.abrupt("break", 42);
2998
+ return _context8.abrupt("break", 42);
2952
2999
  case 42:
2953
3000
  _this14.members.locusMediaSharesUpdate(payload);
2954
- _context7.next = 46;
3001
+ _context8.next = 46;
2955
3002
  break;
2956
3003
  case 45:
2957
3004
  if (newShareStatus === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE) {
@@ -2991,12 +3038,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2991
3038
  }
2992
3039
  case 46:
2993
3040
  case "end":
2994
- return _context7.stop();
3041
+ return _context8.stop();
2995
3042
  }
2996
- }, _callee7, null, [[26,, 30, 33]]);
3043
+ }, _callee8, null, [[26,, 30, 33]]);
2997
3044
  }));
2998
- return function (_x5) {
2999
- return _ref23.apply(this, arguments);
3045
+ return function (_x8) {
3046
+ return _ref22.apply(this, arguments);
3000
3047
  };
3001
3048
  }());
3002
3049
  }
@@ -3331,48 +3378,48 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3331
3378
  }
3332
3379
  });
3333
3380
  this.locusInfo.on(_constants.EVENTS.DESTROY_MEETING, /*#__PURE__*/function () {
3334
- var _ref24 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(payload) {
3335
- return _regenerator.default.wrap(function _callee8$(_context8) {
3336
- while (1) switch (_context8.prev = _context8.next) {
3381
+ var _ref23 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(payload) {
3382
+ return _regenerator.default.wrap(function _callee9$(_context9) {
3383
+ while (1) switch (_context9.prev = _context9.next) {
3337
3384
  case 0:
3338
3385
  if (!_this20.wirelessShare) {
3339
- _context8.next = 7;
3386
+ _context9.next = 7;
3340
3387
  break;
3341
3388
  }
3342
3389
  if (!_this20.mediaProperties.shareVideoStream) {
3343
- _context8.next = 4;
3390
+ _context9.next = 4;
3344
3391
  break;
3345
3392
  }
3346
- _context8.next = 4;
3393
+ _context9.next = 4;
3347
3394
  return _this20.setLocalShareVideoStream(undefined);
3348
3395
  case 4:
3349
3396
  if (!_this20.mediaProperties.shareAudioStream) {
3350
- _context8.next = 7;
3397
+ _context9.next = 7;
3351
3398
  break;
3352
3399
  }
3353
- _context8.next = 7;
3400
+ _context9.next = 7;
3354
3401
  return _this20.setLocalShareAudioStream(undefined);
3355
3402
  case 7:
3356
3403
  if (!payload.shouldLeave) {
3357
- _context8.next = 19;
3404
+ _context9.next = 19;
3358
3405
  break;
3359
3406
  }
3360
- _context8.prev = 8;
3361
- _context8.next = 11;
3407
+ _context9.prev = 8;
3408
+ _context9.next = 11;
3362
3409
  return _this20.leave({
3363
3410
  reason: payload.reason
3364
3411
  });
3365
3412
  case 11:
3366
3413
  _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.');
3367
- _context8.next = 17;
3414
+ _context9.next = 17;
3368
3415
  break;
3369
3416
  case 14:
3370
- _context8.prev = 14;
3371
- _context8.t0 = _context8["catch"](8);
3417
+ _context9.prev = 14;
3418
+ _context9.t0 = _context9["catch"](8);
3372
3419
  // @ts-ignore
3373
- _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this20, ", error: ").concat(_context8.t0));
3420
+ _loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this20, ", error: ").concat(_context9.t0));
3374
3421
  case 17:
3375
- _context8.next = 22;
3422
+ _context9.next = 22;
3376
3423
  break;
3377
3424
  case 19:
3378
3425
  _loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> MEETING_REMOVED_REASON', payload.reason);
@@ -3386,12 +3433,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3386
3433
  });
3387
3434
  case 22:
3388
3435
  case "end":
3389
- return _context8.stop();
3436
+ return _context9.stop();
3390
3437
  }
3391
- }, _callee8, null, [[8, 14]]);
3438
+ }, _callee9, null, [[8, 14]]);
3392
3439
  }));
3393
- return function (_x6) {
3394
- return _ref24.apply(this, arguments);
3440
+ return function (_x9) {
3441
+ return _ref23.apply(this, arguments);
3395
3442
  };
3396
3443
  }());
3397
3444
  }
@@ -3540,12 +3587,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3540
3587
  /**
3541
3588
  * Sets the meeting info on the class instance
3542
3589
  * @param {Object} meetingInfo
3543
- * @param {Object} meetingInfo.body
3544
- * @param {String} meetingInfo.body.conversationUrl
3545
- * @param {String} meetingInfo.body.locusUrl
3546
- * @param {String} meetingInfo.body.sipUri
3547
- * @param {Object} meetingInfo.body.owner
3590
+ * @param {String} meetingInfo.conversationUrl
3591
+ * @param {String} meetingInfo.locusUrl
3592
+ * @param {String} meetingInfo.sipUri
3593
+ * @param {String} [meetingInfo.sipUrl]
3594
+ * @param {String} [meetingInfo.sipMeetingUri]
3595
+ * @param {String} [meetingInfo.meetingNumber]
3596
+ * @param {String} [meetingInfo.meetingJoinUrl]
3597
+ * @param {String} [meetingInfo.hostId]
3598
+ * @param {String} [meetingInfo.permissionToken]
3599
+ * @param {String} [meetingInfo.channel]
3600
+ * @param {Object} meetingInfo.owner
3548
3601
  * @param {Object | String} destination locus object with meeting data or destination string (sip url, meeting link, etc)
3602
+ * @param {Object | String} errors Meeting info request error
3549
3603
  * @returns {undefined}
3550
3604
  * @private
3551
3605
  * @memberof Meeting
@@ -3554,7 +3608,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3554
3608
  key: "parseMeetingInfo",
3555
3609
  value: function parseMeetingInfo(meetingInfo) {
3556
3610
  var destination = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
3557
- var webexMeetingInfo = meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.body;
3611
+ var errors = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
3558
3612
  // We try to use as much info from Locus meeting object, stored in destination
3559
3613
 
3560
3614
  var locusMeetingObject;
@@ -3563,28 +3617,28 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3563
3617
  }
3564
3618
 
3565
3619
  // MeetingInfo will be undefined for 1:1 calls
3566
- if (locusMeetingObject || webexMeetingInfo && !(meetingInfo !== null && meetingInfo !== void 0 && meetingInfo.errors && (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.errors.length) > 0)) {
3620
+ if (locusMeetingObject || meetingInfo && !((errors === null || errors === void 0 ? void 0 : errors.length) > 0)) {
3567
3621
  var _locusMeetingObject, _locusMeetingObject2, _locusMeetingObject3, _locusMeetingObject4, _locusMeetingObject6, _locusMeetingObject7;
3568
- this.conversationUrl = ((_locusMeetingObject = locusMeetingObject) === null || _locusMeetingObject === void 0 ? void 0 : _locusMeetingObject.conversationUrl) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.conversationUrl) || this.conversationUrl;
3569
- this.locusUrl = ((_locusMeetingObject2 = locusMeetingObject) === null || _locusMeetingObject2 === void 0 ? void 0 : _locusMeetingObject2.url) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.locusUrl) || this.locusUrl;
3622
+ this.conversationUrl = ((_locusMeetingObject = locusMeetingObject) === null || _locusMeetingObject === void 0 ? void 0 : _locusMeetingObject.conversationUrl) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.conversationUrl) || this.conversationUrl;
3623
+ this.locusUrl = ((_locusMeetingObject2 = locusMeetingObject) === null || _locusMeetingObject2 === void 0 ? void 0 : _locusMeetingObject2.url) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.locusUrl) || this.locusUrl;
3570
3624
  // @ts-ignore - config coming from registerPlugin
3571
3625
  this.setSipUri(
3572
3626
  // @ts-ignore
3573
- this.config.experimental.enableUnifiedMeetings ? ((_locusMeetingObject3 = locusMeetingObject) === null || _locusMeetingObject3 === void 0 ? void 0 : _locusMeetingObject3.info.sipUri) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.sipUrl) : ((_locusMeetingObject4 = locusMeetingObject) === null || _locusMeetingObject4 === void 0 ? void 0 : _locusMeetingObject4.info.sipUri) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.sipMeetingUri) || this.sipUri);
3627
+ this.config.experimental.enableUnifiedMeetings ? ((_locusMeetingObject3 = locusMeetingObject) === null || _locusMeetingObject3 === void 0 ? void 0 : _locusMeetingObject3.info.sipUri) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.sipUrl) : ((_locusMeetingObject4 = locusMeetingObject) === null || _locusMeetingObject4 === void 0 ? void 0 : _locusMeetingObject4.info.sipUri) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.sipMeetingUri) || this.sipUri);
3574
3628
  // @ts-ignore - config coming from registerPlugin
3575
3629
  if (this.config.experimental.enableUnifiedMeetings) {
3576
3630
  var _locusMeetingObject5;
3577
- this.meetingNumber = ((_locusMeetingObject5 = locusMeetingObject) === null || _locusMeetingObject5 === void 0 ? void 0 : _locusMeetingObject5.info.webExMeetingId) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.meetingNumber);
3578
- this.meetingJoinUrl = webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.meetingJoinUrl;
3631
+ this.meetingNumber = ((_locusMeetingObject5 = locusMeetingObject) === null || _locusMeetingObject5 === void 0 ? void 0 : _locusMeetingObject5.info.webExMeetingId) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.meetingNumber);
3632
+ this.meetingJoinUrl = meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.meetingJoinUrl;
3579
3633
  }
3580
- this.owner = ((_locusMeetingObject6 = locusMeetingObject) === null || _locusMeetingObject6 === void 0 ? void 0 : _locusMeetingObject6.info.owner) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.owner) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.hostId) || this.owner;
3581
- this.permissionToken = webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.permissionToken;
3582
- this.setPermissionTokenPayload(webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.permissionToken);
3634
+ this.owner = ((_locusMeetingObject6 = locusMeetingObject) === null || _locusMeetingObject6 === void 0 ? void 0 : _locusMeetingObject6.info.owner) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.owner) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.hostId) || this.owner;
3635
+ this.permissionToken = meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.permissionToken;
3636
+ this.setPermissionTokenPayload(meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.permissionToken);
3583
3637
  this.setSelfUserPolicies();
3584
3638
  // Need to populate environment when sending CA event
3585
- this.environment = ((_locusMeetingObject7 = locusMeetingObject) === null || _locusMeetingObject7 === void 0 ? void 0 : _locusMeetingObject7.info.channel) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.channel);
3639
+ this.environment = ((_locusMeetingObject7 = locusMeetingObject) === null || _locusMeetingObject7 === void 0 ? void 0 : _locusMeetingObject7.info.channel) || (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.channel);
3586
3640
  }
3587
- _util.default.parseInterpretationInfo(this, webexMeetingInfo);
3641
+ _util.default.parseInterpretationInfo(this, meetingInfo);
3588
3642
  }
3589
3643
 
3590
3644
  /**
@@ -3969,10 +4023,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3969
4023
  }, {
3970
4024
  key: "setLocalAudioStream",
3971
4025
  value: function () {
3972
- var _setLocalAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(localStream) {
4026
+ var _setLocalAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(localStream) {
3973
4027
  var oldStream;
3974
- return _regenerator.default.wrap(function _callee9$(_context9) {
3975
- while (1) switch (_context9.prev = _context9.next) {
4028
+ return _regenerator.default.wrap(function _callee10$(_context10) {
4029
+ while (1) switch (_context10.prev = _context10.next) {
3976
4030
  case 0:
3977
4031
  oldStream = this.mediaProperties.audioStream;
3978
4032
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.MuteStateChange, this.localAudioStreamMuteStateHandler);
@@ -3984,21 +4038,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3984
4038
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.StreamEventNames.MuteStateChange, this.localAudioStreamMuteStateHandler);
3985
4039
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
3986
4040
  if (!(!this.isMultistream || !localStream)) {
3987
- _context9.next = 10;
4041
+ _context10.next = 10;
3988
4042
  break;
3989
4043
  }
3990
- _context9.next = 10;
4044
+ _context10.next = 10;
3991
4045
  return this.unpublishStream(_internalMediaCore.MediaType.AudioMain, oldStream);
3992
4046
  case 10:
3993
- _context9.next = 12;
4047
+ _context10.next = 12;
3994
4048
  return this.publishStream(_internalMediaCore.MediaType.AudioMain, this.mediaProperties.audioStream);
3995
4049
  case 12:
3996
4050
  case "end":
3997
- return _context9.stop();
4051
+ return _context10.stop();
3998
4052
  }
3999
- }, _callee9, this);
4053
+ }, _callee10, this);
4000
4054
  }));
4001
- function setLocalAudioStream(_x7) {
4055
+ function setLocalAudioStream(_x10) {
4002
4056
  return _setLocalAudioStream.apply(this, arguments);
4003
4057
  }
4004
4058
  return setLocalAudioStream;
@@ -4013,10 +4067,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4013
4067
  }, {
4014
4068
  key: "setLocalVideoStream",
4015
4069
  value: function () {
4016
- var _setLocalVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(localStream) {
4070
+ var _setLocalVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(localStream) {
4017
4071
  var oldStream;
4018
- return _regenerator.default.wrap(function _callee10$(_context10) {
4019
- while (1) switch (_context10.prev = _context10.next) {
4072
+ return _regenerator.default.wrap(function _callee11$(_context11) {
4073
+ while (1) switch (_context11.prev = _context11.next) {
4020
4074
  case 0:
4021
4075
  oldStream = this.mediaProperties.videoStream;
4022
4076
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.MuteStateChange, this.localVideoStreamMuteStateHandler);
@@ -4028,21 +4082,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4028
4082
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.StreamEventNames.MuteStateChange, this.localVideoStreamMuteStateHandler);
4029
4083
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
4030
4084
  if (!(!this.isMultistream || !localStream)) {
4031
- _context10.next = 10;
4085
+ _context11.next = 10;
4032
4086
  break;
4033
4087
  }
4034
- _context10.next = 10;
4088
+ _context11.next = 10;
4035
4089
  return this.unpublishStream(_internalMediaCore.MediaType.VideoMain, oldStream);
4036
4090
  case 10:
4037
- _context10.next = 12;
4091
+ _context11.next = 12;
4038
4092
  return this.publishStream(_internalMediaCore.MediaType.VideoMain, this.mediaProperties.videoStream);
4039
4093
  case 12:
4040
4094
  case "end":
4041
- return _context10.stop();
4095
+ return _context11.stop();
4042
4096
  }
4043
- }, _callee10, this);
4097
+ }, _callee11, this);
4044
4098
  }));
4045
- function setLocalVideoStream(_x8) {
4099
+ function setLocalVideoStream(_x11) {
4046
4100
  return _setLocalVideoStream.apply(this, arguments);
4047
4101
  }
4048
4102
  return setLocalVideoStream;
@@ -4058,10 +4112,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4058
4112
  }, {
4059
4113
  key: "setLocalShareVideoStream",
4060
4114
  value: function () {
4061
- var _setLocalShareVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(localDisplayStream) {
4115
+ var _setLocalShareVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12(localDisplayStream) {
4062
4116
  var oldStream;
4063
- return _regenerator.default.wrap(function _callee11$(_context11) {
4064
- while (1) switch (_context11.prev = _context11.next) {
4117
+ return _regenerator.default.wrap(function _callee12$(_context12) {
4118
+ while (1) switch (_context12.prev = _context12.next) {
4065
4119
  case 0:
4066
4120
  oldStream = this.mediaProperties.shareVideoStream;
4067
4121
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.MuteStateChange, this.handleShareVideoStreamMuteStateChange);
@@ -4073,21 +4127,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4073
4127
  localDisplayStream === null || localDisplayStream === void 0 ? void 0 : localDisplayStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
4074
4128
  this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareStream();
4075
4129
  if (!(!this.isMultistream || !localDisplayStream)) {
4076
- _context11.next = 12;
4130
+ _context12.next = 12;
4077
4131
  break;
4078
4132
  }
4079
- _context11.next = 12;
4133
+ _context12.next = 12;
4080
4134
  return this.unpublishStream(_internalMediaCore.MediaType.VideoSlides, oldStream);
4081
4135
  case 12:
4082
- _context11.next = 14;
4136
+ _context12.next = 14;
4083
4137
  return this.publishStream(_internalMediaCore.MediaType.VideoSlides, this.mediaProperties.shareVideoStream);
4084
4138
  case 14:
4085
4139
  case "end":
4086
- return _context11.stop();
4140
+ return _context12.stop();
4087
4141
  }
4088
- }, _callee11, this);
4142
+ }, _callee12, this);
4089
4143
  }));
4090
- function setLocalShareVideoStream(_x9) {
4144
+ function setLocalShareVideoStream(_x12) {
4091
4145
  return _setLocalShareVideoStream.apply(this, arguments);
4092
4146
  }
4093
4147
  return setLocalShareVideoStream;
@@ -4102,10 +4156,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4102
4156
  }, {
4103
4157
  key: "setLocalShareAudioStream",
4104
4158
  value: function () {
4105
- var _setLocalShareAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12(localSystemAudioStream) {
4159
+ var _setLocalShareAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13(localSystemAudioStream) {
4106
4160
  var oldStream;
4107
- return _regenerator.default.wrap(function _callee12$(_context12) {
4108
- while (1) switch (_context12.prev = _context12.next) {
4161
+ return _regenerator.default.wrap(function _callee13$(_context13) {
4162
+ while (1) switch (_context13.prev = _context13.next) {
4109
4163
  case 0:
4110
4164
  oldStream = this.mediaProperties.shareAudioStream;
4111
4165
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.StreamEventNames.Ended, this.handleShareAudioStreamEnded);
@@ -4115,21 +4169,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4115
4169
  localSystemAudioStream === null || localSystemAudioStream === void 0 ? void 0 : localSystemAudioStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
4116
4170
  this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareStream();
4117
4171
  if (!(!this.isMultistream || !localSystemAudioStream)) {
4118
- _context12.next = 10;
4172
+ _context13.next = 10;
4119
4173
  break;
4120
4174
  }
4121
- _context12.next = 10;
4175
+ _context13.next = 10;
4122
4176
  return this.unpublishStream(_internalMediaCore.MediaType.AudioSlides, oldStream);
4123
4177
  case 10:
4124
- _context12.next = 12;
4178
+ _context13.next = 12;
4125
4179
  return this.publishStream(_internalMediaCore.MediaType.AudioSlides, this.mediaProperties.shareAudioStream);
4126
4180
  case 12:
4127
4181
  case "end":
4128
- return _context12.stop();
4182
+ return _context13.stop();
4129
4183
  }
4130
- }, _callee12, this);
4184
+ }, _callee13, this);
4131
4185
  }));
4132
- function setLocalShareAudioStream(_x10) {
4186
+ function setLocalShareAudioStream(_x13) {
4133
4187
  return _setLocalShareAudioStream.apply(this, arguments);
4134
4188
  }
4135
4189
  return setLocalShareAudioStream;
@@ -4750,16 +4804,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4750
4804
  }, {
4751
4805
  key: "receiveTranscription",
4752
4806
  value: function () {
4753
- var _receiveTranscription = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13() {
4807
+ var _receiveTranscription = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
4754
4808
  var _this31 = this;
4755
4809
  var datachannelUrl, _yield$this$request, webSocketUrl;
4756
- return _regenerator.default.wrap(function _callee13$(_context13) {
4757
- while (1) switch (_context13.prev = _context13.next) {
4810
+ return _regenerator.default.wrap(function _callee14$(_context14) {
4811
+ while (1) switch (_context14.prev = _context14.next) {
4758
4812
  case 0:
4759
4813
  _loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n Attempting to generate a web socket url.");
4760
- _context13.prev = 1;
4814
+ _context14.prev = 1;
4761
4815
  datachannelUrl = this.locusInfo.info.datachannelUrl; // @ts-ignore - fix type
4762
- _context13.next = 5;
4816
+ _context14.next = 5;
4763
4817
  return this.request({
4764
4818
  method: _constants.HTTP_VERBS.POST,
4765
4819
  uri: datachannelUrl,
@@ -4768,7 +4822,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4768
4822
  }
4769
4823
  });
4770
4824
  case 5:
4771
- _yield$this$request = _context13.sent;
4825
+ _yield$this$request = _context14.sent;
4772
4826
  webSocketUrl = _yield$this$request.body.webSocketUrl;
4773
4827
  _loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n Generated web socket url succesfully.");
4774
4828
  this.transcription = new _transcription.default(webSocketUrl,
@@ -4789,22 +4843,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4789
4843
  this.monitorTranscriptionSocketConnection();
4790
4844
  // @ts-ignore - fix type
4791
4845
  this.transcription.connect(this.webex.credentials.supertoken.access_token);
4792
- _context13.next = 20;
4846
+ _context14.next = 20;
4793
4847
  break;
4794
4848
  case 16:
4795
- _context13.prev = 16;
4796
- _context13.t0 = _context13["catch"](1);
4797
- _loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> ".concat(_context13.t0));
4849
+ _context14.prev = 16;
4850
+ _context14.t0 = _context14["catch"](1);
4851
+ _loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> ".concat(_context14.t0));
4798
4852
  _metrics.default.sendBehavioralMetric(_constants2.default.RECEIVE_TRANSCRIPTION_FAILURE, {
4799
4853
  correlation_id: this.correlationId,
4800
- reason: _context13.t0.message,
4801
- stack: _context13.t0.stack
4854
+ reason: _context14.t0.message,
4855
+ stack: _context14.t0.stack
4802
4856
  });
4803
4857
  case 20:
4804
4858
  case "end":
4805
- return _context13.stop();
4859
+ return _context14.stop();
4806
4860
  }
4807
- }, _callee13, this, [[1, 16]]);
4861
+ }, _callee14, this, [[1, 16]]);
4808
4862
  }));
4809
4863
  function receiveTranscription() {
4810
4864
  return _receiveTranscription.apply(this, arguments);
@@ -4862,7 +4916,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4862
4916
  }, {
4863
4917
  key: "join",
4864
4918
  value: function () {
4865
- var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
4919
+ var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
4866
4920
  var _this32 = this;
4867
4921
  var options,
4868
4922
  errorMessage,
@@ -4873,25 +4927,25 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4873
4927
  _error,
4874
4928
  _errorMessage2,
4875
4929
  _error2,
4876
- _args14 = arguments;
4877
- return _regenerator.default.wrap(function _callee14$(_context14) {
4878
- while (1) switch (_context14.prev = _context14.next) {
4930
+ _args15 = arguments;
4931
+ return _regenerator.default.wrap(function _callee15$(_context15) {
4932
+ while (1) switch (_context15.prev = _context15.next) {
4879
4933
  case 0:
4880
- options = _args14.length > 0 && _args14[0] !== undefined ? _args14[0] : {};
4934
+ options = _args15.length > 0 && _args15[0] !== undefined ? _args15[0] : {};
4881
4935
  if (this.webex.meetings.registered) {
4882
- _context14.next = 6;
4936
+ _context15.next = 6;
4883
4937
  break;
4884
4938
  }
4885
4939
  errorMessage = 'Meeting:index#join --> Device not registered';
4886
4940
  error = new Error(errorMessage);
4887
4941
  _loggerProxy.default.logger.error(errorMessage);
4888
- return _context14.abrupt("return", _promise.default.reject(error));
4942
+ return _context15.abrupt("return", _promise.default.reject(error));
4889
4943
  case 6:
4890
4944
  if (!this.deferJoin) {
4891
- _context14.next = 8;
4945
+ _context15.next = 8;
4892
4946
  break;
4893
4947
  }
4894
- return _context14.abrupt("return", this.deferJoin);
4948
+ return _context15.abrupt("return", this.deferJoin);
4895
4949
  case 8:
4896
4950
  // Create a deferred promise for a consistent resolve value from utils.
4897
4951
  // This also prevents redundant API calls.
@@ -4940,15 +4994,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4940
4994
  this.wirelessShare = true;
4941
4995
  }
4942
4996
  if (!options.meetingQuality) {
4943
- _context14.next = 36;
4997
+ _context15.next = 36;
4944
4998
  break;
4945
4999
  }
4946
5000
  if (!(typeof options.meetingQuality === 'string')) {
4947
- _context14.next = 27;
5001
+ _context15.next = 27;
4948
5002
  break;
4949
5003
  }
4950
5004
  if (_constants.QUALITY_LEVELS[options.meetingQuality]) {
4951
- _context14.next = 26;
5005
+ _context15.next = 26;
4952
5006
  break;
4953
5007
  }
4954
5008
  _errorMessage = "Meeting:index#join --> ".concat(options.meetingQuality, " not defined");
@@ -4956,16 +5010,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4956
5010
  _loggerProxy.default.logger.error(_errorMessage);
4957
5011
  joinFailed(_error);
4958
5012
  this.deferJoin = undefined;
4959
- return _context14.abrupt("return", _promise.default.reject(_error));
5013
+ return _context15.abrupt("return", _promise.default.reject(_error));
4960
5014
  case 26:
4961
5015
  this.mediaProperties.setRemoteQualityLevel(options.meetingQuality);
4962
5016
  case 27:
4963
5017
  if (!((0, _typeof2.default)(options.meetingQuality) === 'object')) {
4964
- _context14.next = 36;
5018
+ _context15.next = 36;
4965
5019
  break;
4966
5020
  }
4967
5021
  if (_constants.QUALITY_LEVELS[options.meetingQuality.remote]) {
4968
- _context14.next = 35;
5022
+ _context15.next = 35;
4969
5023
  break;
4970
5024
  }
4971
5025
  _errorMessage2 = "Meeting:index#join --> ".concat(options.meetingQuality.remote, " not defined");
@@ -4973,42 +5027,42 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4973
5027
  _error2 = new Error(_errorMessage2);
4974
5028
  joinFailed(_error2);
4975
5029
  this.deferJoin = undefined;
4976
- return _context14.abrupt("return", _promise.default.reject(new Error(_errorMessage2)));
5030
+ return _context15.abrupt("return", _promise.default.reject(new Error(_errorMessage2)));
4977
5031
  case 35:
4978
5032
  if (options.meetingQuality.remote) {
4979
5033
  this.mediaProperties.setRemoteQualityLevel(options.meetingQuality.remote);
4980
5034
  }
4981
5035
  case 36:
4982
5036
  this.isMultistream = !!options.enableMultistream;
4983
- _context14.prev = 37;
4984
- _context14.next = 40;
5037
+ _context15.prev = 37;
5038
+ _context15.next = 40;
4985
5039
  return this.checkAndRefreshPermissionToken(_constants.MEETING_PERMISSION_TOKEN_REFRESH_THRESHOLD_IN_SEC, _constants.MEETING_PERMISSION_TOKEN_REFRESH_REASON);
4986
5040
  case 40:
4987
- _context14.next = 51;
5041
+ _context15.next = 51;
4988
5042
  break;
4989
5043
  case 42:
4990
- _context14.prev = 42;
4991
- _context14.t0 = _context14["catch"](37);
4992
- _loggerProxy.default.logger.error('Meeting:index#join --> Failed to refresh permission token:', _context14.t0);
4993
- if (!(_context14.t0 instanceof _captchaError.default || _context14.t0 instanceof _passwordError.default || _context14.t0 instanceof _permission.default)) {
4994
- _context14.next = 51;
5044
+ _context15.prev = 42;
5045
+ _context15.t0 = _context15["catch"](37);
5046
+ _loggerProxy.default.logger.error('Meeting:index#join --> Failed to refresh permission token:', _context15.t0);
5047
+ if (!(_context15.t0 instanceof _captchaError.default || _context15.t0 instanceof _passwordError.default || _context15.t0 instanceof _permission.default)) {
5048
+ _context15.next = 51;
4995
5049
  break;
4996
5050
  }
4997
- this.meetingFiniteStateMachine.fail(_context14.t0);
5051
+ this.meetingFiniteStateMachine.fail(_context15.t0);
4998
5052
 
4999
5053
  // Upload logs on refreshpermissionToken refresh Failure
5000
5054
  _triggerProxy.default.trigger(this, {
5001
5055
  file: 'meeting/index',
5002
5056
  function: 'join'
5003
5057
  }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
5004
- joinFailed(_context14.t0);
5058
+ joinFailed(_context15.t0);
5005
5059
  this.deferJoin = undefined;
5006
5060
 
5007
5061
  // if refresh permission token requires captcha, password or permission, we are throwing the errors
5008
5062
  // and bubble it up to client
5009
- return _context14.abrupt("return", _promise.default.reject(_context14.t0));
5063
+ return _context15.abrupt("return", _promise.default.reject(_context15.t0));
5010
5064
  case 51:
5011
- return _context14.abrupt("return", _util.default.joinMeetingOptions(this, options).then(function (join) {
5065
+ return _context15.abrupt("return", _util.default.joinMeetingOptions(this, options).then(function (join) {
5012
5066
  _this32.meetingFiniteStateMachine.join();
5013
5067
  _loggerProxy.default.logger.log('Meeting:index#join --> Success');
5014
5068
  _metrics.default.sendBehavioralMetric(_constants2.default.JOIN_SUCCESS, {
@@ -5087,9 +5141,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5087
5141
  }));
5088
5142
  case 52:
5089
5143
  case "end":
5090
- return _context14.stop();
5144
+ return _context15.stop();
5091
5145
  }
5092
- }, _callee14, this, [[37, 42]]);
5146
+ }, _callee15, this, [[37, 42]]);
5093
5147
  }));
5094
5148
  function join() {
5095
5149
  return _join.apply(this, arguments);
@@ -5105,38 +5159,38 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5105
5159
  }, {
5106
5160
  key: "updateLLMConnection",
5107
5161
  value: function () {
5108
- var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
5162
+ var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
5109
5163
  var _this33 = this;
5110
5164
  var _this$locusInfo6, url, _this$locusInfo6$info, _this$locusInfo6$info2, datachannelUrl, isJoined;
5111
- return _regenerator.default.wrap(function _callee15$(_context15) {
5112
- while (1) switch (_context15.prev = _context15.next) {
5165
+ return _regenerator.default.wrap(function _callee16$(_context16) {
5166
+ while (1) switch (_context16.prev = _context16.next) {
5113
5167
  case 0:
5114
5168
  // @ts-ignore - Fix type
5115
5169
  _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;
5116
5170
  isJoined = this.isJoined(); // @ts-ignore - Fix type
5117
5171
  if (!this.webex.internal.llm.isConnected()) {
5118
- _context15.next = 8;
5172
+ _context16.next = 8;
5119
5173
  break;
5120
5174
  }
5121
5175
  if (!(url === this.webex.internal.llm.getLocusUrl() && isJoined)) {
5122
- _context15.next = 5;
5176
+ _context16.next = 5;
5123
5177
  break;
5124
5178
  }
5125
- return _context15.abrupt("return", undefined);
5179
+ return _context16.abrupt("return", undefined);
5126
5180
  case 5:
5127
- _context15.next = 7;
5181
+ _context16.next = 7;
5128
5182
  return this.webex.internal.llm.disconnectLLM();
5129
5183
  case 7:
5130
5184
  // @ts-ignore - Fix type
5131
5185
  this.webex.internal.llm.off('event:relay.event', this.processRelayEvent);
5132
5186
  case 8:
5133
5187
  if (isJoined) {
5134
- _context15.next = 10;
5188
+ _context16.next = 10;
5135
5189
  break;
5136
5190
  }
5137
- return _context15.abrupt("return", undefined);
5191
+ return _context16.abrupt("return", undefined);
5138
5192
  case 10:
5139
- return _context15.abrupt("return", this.webex.internal.llm.registerAndConnect(url, datachannelUrl).then(function (registerAndConnectResult) {
5193
+ return _context16.abrupt("return", this.webex.internal.llm.registerAndConnect(url, datachannelUrl).then(function (registerAndConnectResult) {
5140
5194
  // @ts-ignore - Fix type
5141
5195
  _this33.webex.internal.llm.off('event:relay.event', _this33.processRelayEvent);
5142
5196
  // @ts-ignore - Fix type
@@ -5146,9 +5200,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5146
5200
  }));
5147
5201
  case 11:
5148
5202
  case "end":
5149
- return _context15.stop();
5203
+ return _context16.stop();
5150
5204
  }
5151
- }, _callee15, this);
5205
+ }, _callee16, this);
5152
5206
  }));
5153
5207
  function updateLLMConnection() {
5154
5208
  return _updateLLMConnection.apply(this, arguments);
@@ -5319,17 +5373,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5319
5373
  meetingId: this.id
5320
5374
  }
5321
5375
  });
5322
- this.locusInfo.once(_constants.LOCUSINFO.EVENTS.SELF_OBSERVING, /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
5376
+ this.locusInfo.once(_constants.LOCUSINFO.EVENTS.SELF_OBSERVING, /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
5323
5377
  var mediaSettings;
5324
- return _regenerator.default.wrap(function _callee16$(_context16) {
5325
- while (1) switch (_context16.prev = _context16.next) {
5378
+ return _regenerator.default.wrap(function _callee17$(_context17) {
5379
+ while (1) switch (_context17.prev = _context17.next) {
5326
5380
  case 0:
5327
- _context16.prev = 0;
5381
+ _context17.prev = 0;
5328
5382
  if (!(_this36.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
5329
- _context16.next = 4;
5383
+ _context17.next = 4;
5330
5384
  break;
5331
5385
  }
5332
- _context16.next = 4;
5386
+ _context17.next = 4;
5333
5387
  return _this36.releaseScreenShareFloor();
5334
5388
  case 4:
5335
5389
  mediaSettings = {
@@ -5349,28 +5403,28 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5349
5403
  // 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
5350
5404
  // once the DX answers we establish connection back the media server with only receiveShare enabled
5351
5405
  // @ts-ignore - reconnectMedia does not accept any argument
5352
- _context16.next = 10;
5406
+ _context17.next = 10;
5353
5407
  return _this36.reconnectionManager.reconnectMedia(mediaSettings).then(function () {
5354
5408
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
5355
5409
  });
5356
5410
  case 10:
5357
- _context16.next = 16;
5411
+ _context17.next = 16;
5358
5412
  break;
5359
5413
  case 12:
5360
- _context16.prev = 12;
5361
- _context16.t0 = _context16["catch"](0);
5362
- _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context16.t0);
5414
+ _context17.prev = 12;
5415
+ _context17.t0 = _context17["catch"](0);
5416
+ _loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context17.t0);
5363
5417
  _metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
5364
5418
  correlation_id: _this36.correlationId,
5365
5419
  locus_id: _this36.locusUrl.split('/').pop(),
5366
- reason: _context16.t0.message,
5367
- stack: _context16.t0.stack
5420
+ reason: _context17.t0.message,
5421
+ stack: _context17.t0.stack
5368
5422
  });
5369
5423
  case 16:
5370
5424
  case "end":
5371
- return _context16.stop();
5425
+ return _context17.stop();
5372
5426
  }
5373
- }, _callee16, null, [[0, 12]]);
5427
+ }, _callee17, null, [[0, 12]]);
5374
5428
  })));
5375
5429
  _loggerProxy.default.logger.info('Meeting:index#moveTo --> Initated moved to using resourceId', resourceId);
5376
5430
  return _util.default.joinMeetingOptions(this, {
@@ -5460,10 +5514,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5460
5514
  }, {
5461
5515
  key: "createMediaConnection",
5462
5516
  value: function () {
5463
- var _createMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17(turnServerInfo, bundlePolicy) {
5517
+ var _createMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18(turnServerInfo, bundlePolicy) {
5464
5518
  var mc, audioEnabled, videoEnabled, shareEnabled;
5465
- return _regenerator.default.wrap(function _callee17$(_context17) {
5466
- while (1) switch (_context17.prev = _context17.next) {
5519
+ return _regenerator.default.wrap(function _callee18$(_context18) {
5520
+ while (1) switch (_context18.prev = _context18.next) {
5467
5521
  case 0:
5468
5522
  mc = _media.default.createMediaConnection(this.isMultistream, this.getMediaConnectionDebugId(),
5469
5523
  // @ts-ignore
@@ -5489,41 +5543,41 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5489
5543
 
5490
5544
  // publish the streams
5491
5545
  if (!this.mediaProperties.audioStream) {
5492
- _context17.next = 7;
5546
+ _context18.next = 7;
5493
5547
  break;
5494
5548
  }
5495
- _context17.next = 7;
5549
+ _context18.next = 7;
5496
5550
  return this.publishStream(_internalMediaCore.MediaType.AudioMain, this.mediaProperties.audioStream);
5497
5551
  case 7:
5498
5552
  if (!this.mediaProperties.videoStream) {
5499
- _context17.next = 10;
5553
+ _context18.next = 10;
5500
5554
  break;
5501
5555
  }
5502
- _context17.next = 10;
5556
+ _context18.next = 10;
5503
5557
  return this.publishStream(_internalMediaCore.MediaType.VideoMain, this.mediaProperties.videoStream);
5504
5558
  case 10:
5505
5559
  if (!this.mediaProperties.shareVideoStream) {
5506
- _context17.next = 13;
5560
+ _context18.next = 13;
5507
5561
  break;
5508
5562
  }
5509
- _context17.next = 13;
5563
+ _context18.next = 13;
5510
5564
  return this.publishStream(_internalMediaCore.MediaType.VideoSlides, this.mediaProperties.shareVideoStream);
5511
5565
  case 13:
5512
5566
  if (!(this.isMultistream && this.mediaProperties.shareAudioStream)) {
5513
- _context17.next = 16;
5567
+ _context18.next = 16;
5514
5568
  break;
5515
5569
  }
5516
- _context17.next = 16;
5570
+ _context18.next = 16;
5517
5571
  return this.publishStream(_internalMediaCore.MediaType.AudioSlides, this.mediaProperties.shareAudioStream);
5518
5572
  case 16:
5519
- return _context17.abrupt("return", mc);
5573
+ return _context18.abrupt("return", mc);
5520
5574
  case 17:
5521
5575
  case "end":
5522
- return _context17.stop();
5576
+ return _context18.stop();
5523
5577
  }
5524
- }, _callee17, this);
5578
+ }, _callee18, this);
5525
5579
  }));
5526
- function createMediaConnection(_x11, _x12) {
5580
+ function createMediaConnection(_x14, _x15) {
5527
5581
  return _createMediaConnection.apply(this, arguments);
5528
5582
  }
5529
5583
  return createMediaConnection;
@@ -5560,11 +5614,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5560
5614
  }, {
5561
5615
  key: "setUpLocalStreamReferences",
5562
5616
  value: function () {
5563
- var _setUpLocalStreamReferences = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18(localStreams) {
5617
+ var _setUpLocalStreamReferences = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19(localStreams) {
5564
5618
  var _localStreams$screenS, _localStreams$screenS2;
5565
5619
  var setUpStreamPromises;
5566
- return _regenerator.default.wrap(function _callee18$(_context18) {
5567
- while (1) switch (_context18.prev = _context18.next) {
5620
+ return _regenerator.default.wrap(function _callee19$(_context19) {
5621
+ while (1) switch (_context19.prev = _context19.next) {
5568
5622
  case 0:
5569
5623
  setUpStreamPromises = [];
5570
5624
  if (localStreams !== null && localStreams !== void 0 && localStreams.microphone) {
@@ -5579,24 +5633,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5579
5633
  if (localStreams !== null && localStreams !== void 0 && (_localStreams$screenS2 = localStreams.screenShare) !== null && _localStreams$screenS2 !== void 0 && _localStreams$screenS2.audio) {
5580
5634
  setUpStreamPromises.push(this.setLocalShareAudioStream(localStreams.screenShare.audio));
5581
5635
  }
5582
- _context18.prev = 5;
5583
- _context18.next = 8;
5636
+ _context19.prev = 5;
5637
+ _context19.next = 8;
5584
5638
  return _promise.default.all(setUpStreamPromises);
5585
5639
  case 8:
5586
- _context18.next = 14;
5640
+ _context19.next = 14;
5587
5641
  break;
5588
5642
  case 10:
5589
- _context18.prev = 10;
5590
- _context18.t0 = _context18["catch"](5);
5591
- _loggerProxy.default.logger.error("Meeting:index#addMedia():setUpLocalStreamReferences --> Error , ", _context18.t0);
5592
- throw _context18.t0;
5643
+ _context19.prev = 10;
5644
+ _context19.t0 = _context19["catch"](5);
5645
+ _loggerProxy.default.logger.error("Meeting:index#addMedia():setUpLocalStreamReferences --> Error , ", _context19.t0);
5646
+ throw _context19.t0;
5593
5647
  case 14:
5594
5648
  case "end":
5595
- return _context18.stop();
5649
+ return _context19.stop();
5596
5650
  }
5597
- }, _callee18, this, [[5, 10]]);
5651
+ }, _callee19, this, [[5, 10]]);
5598
5652
  }));
5599
- function setUpLocalStreamReferences(_x13) {
5653
+ function setUpLocalStreamReferences(_x16) {
5600
5654
  return _setUpLocalStreamReferences.apply(this, arguments);
5601
5655
  }
5602
5656
  return setUpLocalStreamReferences;
@@ -5610,20 +5664,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5610
5664
  }, {
5611
5665
  key: "waitForMediaConnectionConnected",
5612
5666
  value: function () {
5613
- var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
5667
+ var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
5614
5668
  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;
5615
- return _regenerator.default.wrap(function _callee19$(_context19) {
5616
- while (1) switch (_context19.prev = _context19.next) {
5669
+ return _regenerator.default.wrap(function _callee20$(_context20) {
5670
+ while (1) switch (_context20.prev = _context20.next) {
5617
5671
  case 0:
5618
- _context19.prev = 0;
5619
- _context19.next = 3;
5672
+ _context20.prev = 0;
5673
+ _context20.next = 3;
5620
5674
  return this.mediaProperties.waitForMediaConnectionConnected();
5621
5675
  case 3:
5622
- _context19.next = 9;
5676
+ _context20.next = 9;
5623
5677
  break;
5624
5678
  case 5:
5625
- _context19.prev = 5;
5626
- _context19.t0 = _context19["catch"](0);
5679
+ _context20.prev = 5;
5680
+ _context20.t0 = _context20["catch"](0);
5627
5681
  if (!this.hasMediaConnectionConnectedAtLeastOnce) {
5628
5682
  // Only send CA event for join flow if we haven't successfully connected media yet
5629
5683
  // @ts-ignore
@@ -5651,9 +5705,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5651
5705
  throw new Error("Timed out waiting for media connection to be connected, correlationId=".concat(this.correlationId));
5652
5706
  case 9:
5653
5707
  case "end":
5654
- return _context19.stop();
5708
+ return _context20.stop();
5655
5709
  }
5656
- }, _callee19, this, [[0, 5]]);
5710
+ }, _callee20, this, [[0, 5]]);
5657
5711
  }));
5658
5712
  function waitForMediaConnectionConnected() {
5659
5713
  return _waitForMediaConnectionConnected.apply(this, arguments);
@@ -5702,18 +5756,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5702
5756
  * @returns {Promise<void>}
5703
5757
  */
5704
5758
  function () {
5705
- var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
5759
+ var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
5706
5760
  var LOG_HEADER, deferSDPAnswer;
5707
- return _regenerator.default.wrap(function _callee20$(_context20) {
5708
- while (1) switch (_context20.prev = _context20.next) {
5761
+ return _regenerator.default.wrap(function _callee21$(_context21) {
5762
+ while (1) switch (_context21.prev = _context21.next) {
5709
5763
  case 0:
5710
5764
  LOG_HEADER = 'Meeting:index#addMedia():waitForRemoteSDPAnswer -->';
5711
5765
  if (this.deferSDPAnswer) {
5712
- _context20.next = 4;
5766
+ _context21.next = 4;
5713
5767
  break;
5714
5768
  }
5715
5769
  _loggerProxy.default.logger.warn("".concat(LOG_HEADER, " offer not created yet"));
5716
- return _context20.abrupt("return", _promise.default.reject(new Error('waitForRemoteSDPAnswer() called before local sdp offer created')));
5770
+ return _context21.abrupt("return", _promise.default.reject(new Error('waitForRemoteSDPAnswer() called before local sdp offer created')));
5717
5771
  case 4:
5718
5772
  deferSDPAnswer = this.deferSDPAnswer;
5719
5773
  this.sdpResponseTimer = setTimeout(function () {
@@ -5721,12 +5775,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5721
5775
  deferSDPAnswer.reject(new Error('Timed out waiting for REMOTE SDP ANSWER'));
5722
5776
  }, _constants.ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT);
5723
5777
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " waiting for REMOTE SDP ANSWER..."));
5724
- return _context20.abrupt("return", deferSDPAnswer.promise);
5778
+ return _context21.abrupt("return", deferSDPAnswer.promise);
5725
5779
  case 8:
5726
5780
  case "end":
5727
- return _context20.stop();
5781
+ return _context21.stop();
5728
5782
  }
5729
- }, _callee20, this);
5783
+ }, _callee21, this);
5730
5784
  }));
5731
5785
  function waitForRemoteSDPAnswer() {
5732
5786
  return _waitForRemoteSDPAnswer.apply(this, arguments);
@@ -5744,30 +5798,30 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5744
5798
  }, {
5745
5799
  key: "retryEstablishMediaConnectionWithForcedTurnDiscovery",
5746
5800
  value: function () {
5747
- var _retryEstablishMediaConnectionWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21(remoteMediaManagerConfig, bundlePolicy) {
5801
+ var _retryEstablishMediaConnectionWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22(remoteMediaManagerConfig, bundlePolicy) {
5748
5802
  var LOG_HEADER;
5749
- return _regenerator.default.wrap(function _callee21$(_context21) {
5750
- while (1) switch (_context21.prev = _context21.next) {
5803
+ return _regenerator.default.wrap(function _callee22$(_context22) {
5804
+ while (1) switch (_context22.prev = _context22.next) {
5751
5805
  case 0:
5752
5806
  LOG_HEADER = 'Meeting:index#addMedia():retryEstablishMediaConnectionWithForcedTurnDiscovery -->';
5753
- _context21.prev = 1;
5754
- _context21.next = 4;
5807
+ _context22.prev = 1;
5808
+ _context22.next = 4;
5755
5809
  return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, true);
5756
5810
  case 4:
5757
- _context21.next = 10;
5811
+ _context22.next = 10;
5758
5812
  break;
5759
5813
  case 6:
5760
- _context21.prev = 6;
5761
- _context21.t0 = _context21["catch"](1);
5762
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " retry with TURN-TLS failed, media connection unable to connect, "), _context21.t0);
5763
- throw _context21.t0;
5814
+ _context22.prev = 6;
5815
+ _context22.t0 = _context22["catch"](1);
5816
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " retry with TURN-TLS failed, media connection unable to connect, "), _context22.t0);
5817
+ throw _context22.t0;
5764
5818
  case 10:
5765
5819
  case "end":
5766
- return _context21.stop();
5820
+ return _context22.stop();
5767
5821
  }
5768
- }, _callee21, this, [[1, 6]]);
5822
+ }, _callee22, this, [[1, 6]]);
5769
5823
  }));
5770
- function retryEstablishMediaConnectionWithForcedTurnDiscovery(_x14, _x15) {
5824
+ function retryEstablishMediaConnectionWithForcedTurnDiscovery(_x17, _x18) {
5771
5825
  return _retryEstablishMediaConnectionWithForcedTurnDiscovery.apply(this, arguments);
5772
5826
  }
5773
5827
  return retryEstablishMediaConnectionWithForcedTurnDiscovery;
@@ -5784,14 +5838,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5784
5838
  }, {
5785
5839
  key: "retryWithForcedTurnDiscovery",
5786
5840
  value: function () {
5787
- var _retryWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22(remoteMediaManagerConfig, bundlePolicy) {
5841
+ var _retryWithForcedTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23(remoteMediaManagerConfig, bundlePolicy) {
5788
5842
  var LOG_HEADER;
5789
- return _regenerator.default.wrap(function _callee22$(_context22) {
5790
- while (1) switch (_context22.prev = _context22.next) {
5843
+ return _regenerator.default.wrap(function _callee23$(_context23) {
5844
+ while (1) switch (_context23.prev = _context23.next) {
5791
5845
  case 0:
5792
5846
  this.retriedWithTurnServer = true;
5793
5847
  LOG_HEADER = 'Meeting:index#addMedia():retryWithForcedTurnDiscovery -->';
5794
- _context22.next = 4;
5848
+ _context23.next = 4;
5795
5849
  return this.cleanUpBeforeRetryWithTurnServer();
5796
5850
  case 4:
5797
5851
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_RETRY, {
@@ -5801,24 +5855,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5801
5855
  reason: 'forcingTurnTls'
5802
5856
  });
5803
5857
  if (!(this.state === _constants.MEETING_STATE.STATES.LEFT)) {
5804
- _context22.next = 9;
5858
+ _context23.next = 9;
5805
5859
  break;
5806
5860
  }
5807
5861
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " meeting state was LEFT after first attempt to establish media connection. Attempting to rejoin. "));
5808
- _context22.next = 9;
5862
+ _context23.next = 9;
5809
5863
  return this.join({
5810
5864
  rejoin: true
5811
5865
  });
5812
5866
  case 9:
5813
- _context22.next = 11;
5867
+ _context23.next = 11;
5814
5868
  return this.retryEstablishMediaConnectionWithForcedTurnDiscovery(remoteMediaManagerConfig, bundlePolicy);
5815
5869
  case 11:
5816
5870
  case "end":
5817
- return _context22.stop();
5871
+ return _context23.stop();
5818
5872
  }
5819
- }, _callee22, this);
5873
+ }, _callee23, this);
5820
5874
  }));
5821
- function retryWithForcedTurnDiscovery(_x16, _x17) {
5875
+ function retryWithForcedTurnDiscovery(_x19, _x20) {
5822
5876
  return _retryWithForcedTurnDiscovery.apply(this, arguments);
5823
5877
  }
5824
5878
  return retryWithForcedTurnDiscovery;
@@ -5837,32 +5891,32 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5837
5891
  }, {
5838
5892
  key: "handleWaitForMediaConnectionConnectedError",
5839
5893
  value: function () {
5840
- var _handleWaitForMediaConnectionConnectedError = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23(error, remoteMediaManagerConfig, bundlePolicy) {
5894
+ var _handleWaitForMediaConnectionConnectedError = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24(error, remoteMediaManagerConfig, bundlePolicy) {
5841
5895
  var LOG_HEADER;
5842
- return _regenerator.default.wrap(function _callee23$(_context23) {
5843
- while (1) switch (_context23.prev = _context23.next) {
5896
+ return _regenerator.default.wrap(function _callee24$(_context24) {
5897
+ while (1) switch (_context24.prev = _context24.next) {
5844
5898
  case 0:
5845
5899
  LOG_HEADER = 'Meeting:index#addMedia():handleWaitForMediaConnectionConnectedError -->'; // @ts-ignore - config coming from registerPlugin
5846
5900
  if (this.turnServerUsed) {
5847
- _context23.next = 7;
5901
+ _context24.next = 7;
5848
5902
  break;
5849
5903
  }
5850
5904
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " error waiting for media to connect on UDP, TCP, retrying using TURN-TLS, "), error);
5851
- _context23.next = 5;
5905
+ _context24.next = 5;
5852
5906
  return this.retryWithForcedTurnDiscovery(remoteMediaManagerConfig, bundlePolicy);
5853
5907
  case 5:
5854
- _context23.next = 9;
5908
+ _context24.next = 9;
5855
5909
  break;
5856
5910
  case 7:
5857
5911
  _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error waiting for media to connect using UDP, TCP and TURN-TLS"), error);
5858
5912
  throw new _webexErrors.AddMediaFailed();
5859
5913
  case 9:
5860
5914
  case "end":
5861
- return _context23.stop();
5915
+ return _context24.stop();
5862
5916
  }
5863
- }, _callee23, this);
5917
+ }, _callee24, this);
5864
5918
  }));
5865
- function handleWaitForMediaConnectionConnectedError(_x18, _x19, _x20) {
5919
+ function handleWaitForMediaConnectionConnectedError(_x21, _x22, _x23) {
5866
5920
  return _handleWaitForMediaConnectionConnectedError.apply(this, arguments);
5867
5921
  }
5868
5922
  return handleWaitForMediaConnectionConnectedError;
@@ -5879,23 +5933,23 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5879
5933
  }, {
5880
5934
  key: "establishMediaConnection",
5881
5935
  value: function () {
5882
- var _establishMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24(remoteMediaManagerConfig, bundlePolicy, isForced) {
5936
+ var _establishMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25(remoteMediaManagerConfig, bundlePolicy, isForced) {
5883
5937
  var LOG_HEADER, cdl, isRetry, turnDiscoveryObject, turnServerInfo, mc;
5884
- return _regenerator.default.wrap(function _callee24$(_context24) {
5885
- while (1) switch (_context24.prev = _context24.next) {
5938
+ return _regenerator.default.wrap(function _callee25$(_context25) {
5939
+ while (1) switch (_context25.prev = _context25.next) {
5886
5940
  case 0:
5887
5941
  LOG_HEADER = 'Meeting:index#addMedia():establishMediaConnection -->'; // @ts-ignore
5888
5942
  cdl = this.webex.internal.newMetrics.callDiagnosticLatencies;
5889
5943
  isRetry = this.retriedWithTurnServer;
5890
- _context24.prev = 3;
5944
+ _context25.prev = 3;
5891
5945
  // @ts-ignore
5892
5946
  this.webex.internal.newMetrics.submitInternalEvent({
5893
5947
  name: 'internal.client.add-media.turn-discovery.start'
5894
5948
  });
5895
- _context24.next = 7;
5949
+ _context25.next = 7;
5896
5950
  return this.roap.doTurnDiscovery(this, isRetry, isForced);
5897
5951
  case 7:
5898
- turnDiscoveryObject = _context24.sent;
5952
+ turnDiscoveryObject = _context25.sent;
5899
5953
  this.turnDiscoverySkippedReason = turnDiscoveryObject === null || turnDiscoveryObject === void 0 ? void 0 : turnDiscoveryObject.turnDiscoverySkippedReason;
5900
5954
  this.turnServerUsed = !this.turnDiscoverySkippedReason;
5901
5955
 
@@ -5912,55 +5966,55 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5912
5966
  retriedWithTurnServer: this.retriedWithTurnServer
5913
5967
  });
5914
5968
  }
5915
- _context24.next = 15;
5969
+ _context25.next = 15;
5916
5970
  return this.createMediaConnection(turnServerInfo, bundlePolicy);
5917
5971
  case 15:
5918
- mc = _context24.sent;
5972
+ mc = _context25.sent;
5919
5973
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " media connection created"));
5920
5974
  if (!this.isMultistream) {
5921
- _context24.next = 24;
5975
+ _context25.next = 24;
5922
5976
  break;
5923
5977
  }
5924
5978
  this.remoteMediaManager = new _remoteMediaManager.RemoteMediaManager(this.receiveSlotManager, this.mediaRequestManagers, remoteMediaManagerConfig);
5925
5979
  this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.AudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_AUDIO_CREATED);
5926
5980
  this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.ScreenShareAudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_SCREEN_SHARE_AUDIO_CREATED);
5927
5981
  this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.VideoLayoutChanged, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_VIDEO_LAYOUT_CHANGED);
5928
- _context24.next = 24;
5982
+ _context25.next = 24;
5929
5983
  return this.remoteMediaManager.start();
5930
5984
  case 24:
5931
- _context24.next = 26;
5985
+ _context25.next = 26;
5932
5986
  return mc.initiateOffer();
5933
5987
  case 26:
5934
- _context24.next = 28;
5988
+ _context25.next = 28;
5935
5989
  return this.waitForRemoteSDPAnswer();
5936
5990
  case 28:
5937
5991
  this.handleMediaLogging(this.mediaProperties);
5938
- _context24.next = 35;
5992
+ _context25.next = 35;
5939
5993
  break;
5940
5994
  case 31:
5941
- _context24.prev = 31;
5942
- _context24.t0 = _context24["catch"](3);
5943
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "), _context24.t0);
5944
- throw _context24.t0;
5995
+ _context25.prev = 31;
5996
+ _context25.t0 = _context25["catch"](3);
5997
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "), _context25.t0);
5998
+ throw _context25.t0;
5945
5999
  case 35:
5946
- _context24.prev = 35;
5947
- _context24.next = 38;
6000
+ _context25.prev = 35;
6001
+ _context25.next = 38;
5948
6002
  return this.waitForMediaConnectionConnected();
5949
6003
  case 38:
5950
- _context24.next = 44;
6004
+ _context25.next = 44;
5951
6005
  break;
5952
6006
  case 40:
5953
- _context24.prev = 40;
5954
- _context24.t1 = _context24["catch"](35);
5955
- _context24.next = 44;
5956
- return this.handleWaitForMediaConnectionConnectedError(_context24.t1, remoteMediaManagerConfig, bundlePolicy);
6007
+ _context25.prev = 40;
6008
+ _context25.t1 = _context25["catch"](35);
6009
+ _context25.next = 44;
6010
+ return this.handleWaitForMediaConnectionConnectedError(_context25.t1, remoteMediaManagerConfig, bundlePolicy);
5957
6011
  case 44:
5958
6012
  case "end":
5959
- return _context24.stop();
6013
+ return _context25.stop();
5960
6014
  }
5961
- }, _callee24, this, [[3, 31], [35, 40]]);
6015
+ }, _callee25, this, [[3, 31], [35, 40]]);
5962
6016
  }));
5963
- function establishMediaConnection(_x21, _x22, _x23) {
6017
+ function establishMediaConnection(_x24, _x25, _x26) {
5964
6018
  return _establishMediaConnection.apply(this, arguments);
5965
6019
  }
5966
6020
  return establishMediaConnection;
@@ -5974,22 +6028,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5974
6028
  }, {
5975
6029
  key: "cleanUpOnAddMediaFailure",
5976
6030
  value: function () {
5977
- var _cleanUpOnAddMediaFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25() {
5978
- return _regenerator.default.wrap(function _callee25$(_context25) {
5979
- while (1) switch (_context25.prev = _context25.next) {
6031
+ var _cleanUpOnAddMediaFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee26() {
6032
+ return _regenerator.default.wrap(function _callee26$(_context26) {
6033
+ while (1) switch (_context26.prev = _context26.next) {
5980
6034
  case 0:
5981
6035
  if (!this.statsAnalyzer) {
5982
- _context25.next = 3;
6036
+ _context26.next = 3;
5983
6037
  break;
5984
6038
  }
5985
- _context25.next = 3;
6039
+ _context26.next = 3;
5986
6040
  return this.statsAnalyzer.stopAnalyzer();
5987
6041
  case 3:
5988
6042
  this.statsAnalyzer = null;
5989
6043
 
5990
6044
  // when media fails, we want to upload a webrtc dump to see whats going on
5991
6045
  // this function is async, but returns once the stats have been gathered
5992
- _context25.next = 6;
6046
+ _context26.next = 6;
5993
6047
  return this.forceSendStatsReport({
5994
6048
  callFrom: 'addMedia'
5995
6049
  });
@@ -6000,9 +6054,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6000
6054
  }
6001
6055
  case 7:
6002
6056
  case "end":
6003
- return _context25.stop();
6057
+ return _context26.stop();
6004
6058
  }
6005
- }, _callee25, this);
6059
+ }, _callee26, this);
6006
6060
  }));
6007
6061
  function cleanUpOnAddMediaFailure() {
6008
6062
  return _cleanUpOnAddMediaFailure.apply(this, arguments);
@@ -6019,11 +6073,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6019
6073
  }, {
6020
6074
  key: "cleanUpBeforeRetryWithTurnServer",
6021
6075
  value: function () {
6022
- var _cleanUpBeforeRetryWithTurnServer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee26() {
6023
- return _regenerator.default.wrap(function _callee26$(_context26) {
6024
- while (1) switch (_context26.prev = _context26.next) {
6076
+ var _cleanUpBeforeRetryWithTurnServer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee27() {
6077
+ return _regenerator.default.wrap(function _callee27$(_context27) {
6078
+ while (1) switch (_context27.prev = _context27.next) {
6025
6079
  case 0:
6026
- _context26.next = 2;
6080
+ _context27.next = 2;
6027
6081
  return this.forceSendStatsReport({
6028
6082
  callFrom: 'cleanUpBeforeRetryWithTurnServer'
6029
6083
  });
@@ -6043,9 +6097,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6043
6097
  }
6044
6098
  case 3:
6045
6099
  case "end":
6046
- return _context26.stop();
6100
+ return _context27.stop();
6047
6101
  }
6048
- }, _callee26, this);
6102
+ }, _callee27, this);
6049
6103
  }));
6050
6104
  function cleanUpBeforeRetryWithTurnServer() {
6051
6105
  return _cleanUpBeforeRetryWithTurnServer.apply(this, arguments);
@@ -6063,7 +6117,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6063
6117
  }, {
6064
6118
  key: "addMedia",
6065
6119
  value: function () {
6066
- var _addMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee27() {
6120
+ var _addMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28() {
6067
6121
  var _this$webex$meetings$2, _this$webex$meetings$3;
6068
6122
  var options,
6069
6123
  LOG_HEADER,
@@ -6104,23 +6158,23 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6104
6158
  _this$mediaProperties39,
6105
6159
  _this$mediaProperties40,
6106
6160
  reachabilityMetrics,
6107
- _args27 = arguments;
6108
- return _regenerator.default.wrap(function _callee27$(_context27) {
6109
- while (1) switch (_context27.prev = _context27.next) {
6161
+ _args28 = arguments;
6162
+ return _regenerator.default.wrap(function _callee28$(_context28) {
6163
+ while (1) switch (_context28.prev = _context28.next) {
6110
6164
  case 0:
6111
- options = _args27.length > 0 && _args27[0] !== undefined ? _args27[0] : {};
6165
+ options = _args28.length > 0 && _args28[0] !== undefined ? _args28[0] : {};
6112
6166
  this.retriedWithTurnServer = false;
6113
6167
  this.hasMediaConnectionConnectedAtLeastOnce = false;
6114
6168
  LOG_HEADER = 'Meeting:index#addMedia -->';
6115
6169
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " called with: ").concat((0, _stringify.default)(options)));
6116
6170
  if (!(options.allowMediaInLobby !== true && this.meetingState !== _constants.FULL_STATE.ACTIVE)) {
6117
- _context27.next = 7;
6171
+ _context28.next = 7;
6118
6172
  break;
6119
6173
  }
6120
6174
  throw new _webexErrors.MeetingNotActiveError();
6121
6175
  case 7:
6122
6176
  if (!_util.default.isUserInLeftState(this.locusInfo)) {
6123
- _context27.next = 9;
6177
+ _context28.next = 9;
6124
6178
  break;
6125
6179
  }
6126
6180
  throw new _webexErrors.UserNotJoinedError();
@@ -6131,7 +6185,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6131
6185
  // If the user is unjoined or guest waiting in lobby dont allow the user to addMedia
6132
6186
  // @ts-ignore - isUserUnadmitted coming from SelfUtil
6133
6187
  if (!(this.isUserUnadmitted && !this.wirelessShare && !allowMediaInLobby)) {
6134
- _context27.next = 13;
6188
+ _context28.next = 13;
6135
6189
  break;
6136
6190
  }
6137
6191
  throw new _webexErrors.UserInLobbyError();
@@ -6190,33 +6244,33 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6190
6244
  });
6191
6245
  this.audio = (0, _muteState.createMuteState)(_constants.AUDIO, this, audioEnabled);
6192
6246
  this.video = (0, _muteState.createMuteState)(_constants.VIDEO, this, videoEnabled);
6193
- _context27.prev = 18;
6194
- _context27.next = 21;
6247
+ _context28.prev = 18;
6248
+ _context28.next = 21;
6195
6249
  return this.setUpLocalStreamReferences(localStreams);
6196
6250
  case 21:
6197
6251
  this.setMercuryListener();
6198
6252
  this.createStatsAnalyzer();
6199
- _context27.next = 25;
6253
+ _context28.next = 25;
6200
6254
  return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, false);
6201
6255
  case 25:
6202
- _context27.next = 27;
6256
+ _context28.next = 27;
6203
6257
  return Meeting.handleDeviceLogging();
6204
6258
  case 27:
6205
6259
  if (!this.mediaProperties.hasLocalShareStream()) {
6206
- _context27.next = 30;
6260
+ _context28.next = 30;
6207
6261
  break;
6208
6262
  }
6209
- _context27.next = 30;
6263
+ _context28.next = 30;
6210
6264
  return this.enqueueScreenShareFloorRequest();
6211
6265
  case 30:
6212
- _context27.next = 32;
6266
+ _context28.next = 32;
6213
6267
  return this.mediaProperties.getCurrentConnectionType();
6214
6268
  case 32:
6215
- connectionType = _context27.sent;
6216
- _context27.next = 35;
6269
+ connectionType = _context28.sent;
6270
+ _context28.next = 35;
6217
6271
  return this.webex.meetings.reachability.getReachabilityMetrics();
6218
6272
  case 35:
6219
- reachabilityStats = _context27.sent;
6273
+ reachabilityStats = _context28.sent;
6220
6274
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_SUCCESS, _objectSpread({
6221
6275
  correlation_id: this.correlationId,
6222
6276
  locus_id: this.locusUrl.split('/').pop(),
@@ -6235,24 +6289,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6235
6289
 
6236
6290
  // We can log ReceiveSlot SSRCs only after the SDP exchange, so doing it here:
6237
6291
  (_this$remoteMediaMana = this.remoteMediaManager) === null || _this$remoteMediaMana === void 0 ? void 0 : _this$remoteMediaMana.logAllReceiveSlots();
6238
- _context27.next = 54;
6292
+ _context28.next = 54;
6239
6293
  break;
6240
6294
  case 42:
6241
- _context27.prev = 42;
6242
- _context27.t0 = _context27["catch"](18);
6243
- _loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _context27.t0);
6295
+ _context28.prev = 42;
6296
+ _context28.t0 = _context28["catch"](18);
6297
+ _loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _context28.t0);
6244
6298
 
6245
6299
  // @ts-ignore
6246
- _context27.next = 47;
6300
+ _context28.next = 47;
6247
6301
  return this.webex.meetings.reachability.getReachabilityMetrics();
6248
6302
  case 47:
6249
- reachabilityMetrics = _context27.sent;
6303
+ reachabilityMetrics = _context28.sent;
6250
6304
  _metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_FAILURE, _objectSpread({
6251
6305
  correlation_id: this.correlationId,
6252
6306
  locus_id: this.locusUrl.split('/').pop(),
6253
- reason: _context27.t0.message,
6254
- stack: _context27.t0.stack,
6255
- code: _context27.t0.code,
6307
+ reason: _context28.t0.message,
6308
+ stack: _context28.t0.stack,
6309
+ code: _context28.t0.code,
6256
6310
  turnDiscoverySkippedReason: this.turnDiscoverySkippedReason,
6257
6311
  turnServerUsed: this.turnServerUsed,
6258
6312
  retriedWithTurnServer: this.retriedWithTurnServer,
@@ -6261,7 +6315,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6261
6315
  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',
6262
6316
  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'
6263
6317
  }, reachabilityMetrics));
6264
- _context27.next = 51;
6318
+ _context28.next = 51;
6265
6319
  return this.cleanUpOnAddMediaFailure();
6266
6320
  case 51:
6267
6321
  // Upload logs on error while adding media
@@ -6269,17 +6323,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6269
6323
  file: 'meeting/index',
6270
6324
  function: 'addMedia'
6271
6325
  }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
6272
- if (_context27.t0 instanceof _internalMediaCore.Errors.SdpError) {
6326
+ if (_context28.t0 instanceof _internalMediaCore.Errors.SdpError) {
6273
6327
  this.leave({
6274
6328
  reason: _constants.MEETING_REMOVED_REASON.MEETING_CONNECTION_FAILED
6275
6329
  });
6276
6330
  }
6277
- throw _context27.t0;
6331
+ throw _context28.t0;
6278
6332
  case 54:
6279
6333
  case "end":
6280
- return _context27.stop();
6334
+ return _context28.stop();
6281
6335
  }
6282
- }, _callee27, this, [[18, 42]]);
6336
+ }, _callee28, this, [[18, 42]]);
6283
6337
  }));
6284
6338
  function addMedia() {
6285
6339
  return _addMedia.apply(this, arguments);
@@ -6360,35 +6414,35 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6360
6414
  * @memberof Meeting
6361
6415
  */
6362
6416
  function () {
6363
- var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28(options) {
6417
+ var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee29(options) {
6364
6418
  var audioEnabled, videoEnabled, shareAudioEnabled, shareVideoEnabled;
6365
- return _regenerator.default.wrap(function _callee28$(_context28) {
6366
- while (1) switch (_context28.prev = _context28.next) {
6419
+ return _regenerator.default.wrap(function _callee29$(_context29) {
6420
+ while (1) switch (_context29.prev = _context29.next) {
6367
6421
  case 0:
6368
6422
  this.checkMediaConnection();
6369
6423
  audioEnabled = options.audioEnabled, videoEnabled = options.videoEnabled, shareAudioEnabled = options.shareAudioEnabled, shareVideoEnabled = options.shareVideoEnabled;
6370
6424
  _loggerProxy.default.logger.log("Meeting:index#updateMedia --> called with options=".concat((0, _stringify.default)(options)));
6371
6425
  if (this.canUpdateMedia()) {
6372
- _context28.next = 5;
6426
+ _context29.next = 5;
6373
6427
  break;
6374
6428
  }
6375
- return _context28.abrupt("return", this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.UPDATE_MEDIA, options));
6429
+ return _context29.abrupt("return", this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.UPDATE_MEDIA, options));
6376
6430
  case 5:
6377
6431
  if (!this.isMultistream) {
6378
- _context28.next = 10;
6432
+ _context29.next = 10;
6379
6433
  break;
6380
6434
  }
6381
6435
  if (!(shareAudioEnabled !== undefined || shareVideoEnabled !== undefined)) {
6382
- _context28.next = 8;
6436
+ _context29.next = 8;
6383
6437
  break;
6384
6438
  }
6385
6439
  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');
6386
6440
  case 8:
6387
- _context28.next = 12;
6441
+ _context29.next = 12;
6388
6442
  break;
6389
6443
  case 10:
6390
6444
  if (!(shareAudioEnabled !== undefined)) {
6391
- _context28.next = 12;
6445
+ _context29.next = 12;
6392
6446
  break;
6393
6447
  }
6394
6448
  throw new Error('toggling shareAudioEnabled in a transcoded meeting is not supported as of now');
@@ -6413,20 +6467,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6413
6467
  this.mediaProperties.mediaDirection.receiveShare = !!(shareAudioEnabled || shareVideoEnabled);
6414
6468
  }
6415
6469
  if (this.isMultistream) {
6416
- _context28.next = 18;
6470
+ _context29.next = 18;
6417
6471
  break;
6418
6472
  }
6419
- _context28.next = 18;
6473
+ _context29.next = 18;
6420
6474
  return this.updateTranscodedMediaConnection();
6421
6475
  case 18:
6422
- return _context28.abrupt("return", undefined);
6476
+ return _context29.abrupt("return", undefined);
6423
6477
  case 19:
6424
6478
  case "end":
6425
- return _context28.stop();
6479
+ return _context29.stop();
6426
6480
  }
6427
- }, _callee28, this);
6481
+ }, _callee29, this);
6428
6482
  }));
6429
- function updateMedia(_x24) {
6483
+ function updateMedia(_x27) {
6430
6484
  return _updateMedia.apply(this, arguments);
6431
6485
  }
6432
6486
  return updateMedia;
@@ -7337,39 +7391,39 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7337
7391
  }, {
7338
7392
  key: "enableMusicMode",
7339
7393
  value: function () {
7340
- var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee29(shouldEnableMusicMode) {
7341
- return _regenerator.default.wrap(function _callee29$(_context29) {
7342
- while (1) switch (_context29.prev = _context29.next) {
7394
+ var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee30(shouldEnableMusicMode) {
7395
+ return _regenerator.default.wrap(function _callee30$(_context30) {
7396
+ while (1) switch (_context30.prev = _context30.next) {
7343
7397
  case 0:
7344
7398
  this.checkMediaConnection();
7345
7399
  if (this.isMultistream) {
7346
- _context29.next = 3;
7400
+ _context30.next = 3;
7347
7401
  break;
7348
7402
  }
7349
7403
  throw new Error('enableMusicMode() only supported with multistream');
7350
7404
  case 3:
7351
7405
  if (!shouldEnableMusicMode) {
7352
- _context29.next = 8;
7406
+ _context30.next = 8;
7353
7407
  break;
7354
7408
  }
7355
- _context29.next = 6;
7409
+ _context30.next = 6;
7356
7410
  return this.sendSlotManager.setCodecParameters(_internalMediaCore.MediaType.AudioMain, {
7357
7411
  maxaveragebitrate: '64000',
7358
7412
  maxplaybackrate: '48000'
7359
7413
  });
7360
7414
  case 6:
7361
- _context29.next = 10;
7415
+ _context30.next = 10;
7362
7416
  break;
7363
7417
  case 8:
7364
- _context29.next = 10;
7418
+ _context30.next = 10;
7365
7419
  return this.sendSlotManager.deleteCodecParameters(_internalMediaCore.MediaType.AudioMain, ['maxaveragebitrate', 'maxplaybackrate']);
7366
7420
  case 10:
7367
7421
  case "end":
7368
- return _context29.stop();
7422
+ return _context30.stop();
7369
7423
  }
7370
- }, _callee29, this);
7424
+ }, _callee30, this);
7371
7425
  }));
7372
- function enableMusicMode(_x25) {
7426
+ function enableMusicMode(_x28) {
7373
7427
  return _enableMusicMode.apply(this, arguments);
7374
7428
  }
7375
7429
  return enableMusicMode;
@@ -7433,25 +7487,25 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7433
7487
  }, {
7434
7488
  key: "publishStream",
7435
7489
  value: function () {
7436
- var _publishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee30(mediaType, stream) {
7437
- return _regenerator.default.wrap(function _callee30$(_context30) {
7438
- while (1) switch (_context30.prev = _context30.next) {
7490
+ var _publishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee31(mediaType, stream) {
7491
+ return _regenerator.default.wrap(function _callee31$(_context31) {
7492
+ while (1) switch (_context31.prev = _context31.next) {
7439
7493
  case 0:
7440
7494
  if (stream) {
7441
- _context30.next = 2;
7495
+ _context31.next = 2;
7442
7496
  break;
7443
7497
  }
7444
- return _context30.abrupt("return");
7498
+ return _context31.abrupt("return");
7445
7499
  case 2:
7446
7500
  if (!this.mediaProperties.webrtcMediaConnection) {
7447
- _context30.next = 7;
7501
+ _context31.next = 7;
7448
7502
  break;
7449
7503
  }
7450
7504
  if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
7451
- _context30.next = 6;
7505
+ _context31.next = 6;
7452
7506
  break;
7453
7507
  }
7454
- _context30.next = 6;
7508
+ _context31.next = 6;
7455
7509
  return this.sendSlotManager.publishStream(mediaType, stream);
7456
7510
  case 6:
7457
7511
  this.emitPublishStateChangeEvent({
@@ -7462,11 +7516,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7462
7516
  });
7463
7517
  case 7:
7464
7518
  case "end":
7465
- return _context30.stop();
7519
+ return _context31.stop();
7466
7520
  }
7467
- }, _callee30, this);
7521
+ }, _callee31, this);
7468
7522
  }));
7469
- function publishStream(_x26, _x27) {
7523
+ function publishStream(_x29, _x30) {
7470
7524
  return _publishStream.apply(this, arguments);
7471
7525
  }
7472
7526
  return publishStream;
@@ -7481,21 +7535,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7481
7535
  }, {
7482
7536
  key: "unpublishStream",
7483
7537
  value: function () {
7484
- var _unpublishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee31(mediaType, stream) {
7485
- return _regenerator.default.wrap(function _callee31$(_context31) {
7486
- while (1) switch (_context31.prev = _context31.next) {
7538
+ var _unpublishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32(mediaType, stream) {
7539
+ return _regenerator.default.wrap(function _callee32$(_context32) {
7540
+ while (1) switch (_context32.prev = _context32.next) {
7487
7541
  case 0:
7488
7542
  if (stream) {
7489
- _context31.next = 2;
7543
+ _context32.next = 2;
7490
7544
  break;
7491
7545
  }
7492
- return _context31.abrupt("return");
7546
+ return _context32.abrupt("return");
7493
7547
  case 2:
7494
7548
  if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
7495
- _context31.next = 5;
7549
+ _context32.next = 5;
7496
7550
  break;
7497
7551
  }
7498
- _context31.next = 5;
7552
+ _context32.next = 5;
7499
7553
  return this.sendSlotManager.unpublishStream(mediaType);
7500
7554
  case 5:
7501
7555
  this.emitPublishStateChangeEvent({
@@ -7506,11 +7560,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7506
7560
  });
7507
7561
  case 6:
7508
7562
  case "end":
7509
- return _context31.stop();
7563
+ return _context32.stop();
7510
7564
  }
7511
- }, _callee31, this);
7565
+ }, _callee32, this);
7512
7566
  }));
7513
- function unpublishStream(_x28, _x29) {
7567
+ function unpublishStream(_x31, _x32) {
7514
7568
  return _unpublishStream.apply(this, arguments);
7515
7569
  }
7516
7570
  return unpublishStream;
@@ -7524,72 +7578,72 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7524
7578
  }, {
7525
7579
  key: "publishStreams",
7526
7580
  value: function () {
7527
- var _publishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32(streams) {
7581
+ var _publishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(streams) {
7528
7582
  var _streams$screenShare, _streams$screenShare2, _streams$screenShare3, _streams$screenShare4;
7529
7583
  var floorRequestNeeded, _streams$screenShare5;
7530
- return _regenerator.default.wrap(function _callee32$(_context32) {
7531
- while (1) switch (_context32.prev = _context32.next) {
7584
+ return _regenerator.default.wrap(function _callee33$(_context33) {
7585
+ while (1) switch (_context33.prev = _context33.next) {
7532
7586
  case 0:
7533
7587
  this.checkMediaConnection();
7534
7588
  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))) {
7535
- _context32.next = 3;
7589
+ _context33.next = 3;
7536
7590
  break;
7537
7591
  }
7538
- return _context32.abrupt("return");
7592
+ return _context33.abrupt("return");
7539
7593
  case 3:
7540
7594
  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
7541
7595
  if (!(this.isMultistream && (_streams$screenShare3 = streams.screenShare) !== null && _streams$screenShare3 !== void 0 && _streams$screenShare3.audio)) {
7542
- _context32.next = 8;
7596
+ _context33.next = 8;
7543
7597
  break;
7544
7598
  }
7545
- _context32.next = 7;
7599
+ _context33.next = 7;
7546
7600
  return this.setLocalShareAudioStream(streams.screenShare.audio);
7547
7601
  case 7:
7548
7602
  floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
7549
7603
  case 8:
7550
7604
  if (!((_streams$screenShare4 = streams.screenShare) !== null && _streams$screenShare4 !== void 0 && _streams$screenShare4.video)) {
7551
- _context32.next = 12;
7605
+ _context33.next = 12;
7552
7606
  break;
7553
7607
  }
7554
- _context32.next = 11;
7608
+ _context33.next = 11;
7555
7609
  return this.setLocalShareVideoStream((_streams$screenShare5 = streams.screenShare) === null || _streams$screenShare5 === void 0 ? void 0 : _streams$screenShare5.video);
7556
7610
  case 11:
7557
7611
  floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
7558
7612
  case 12:
7559
7613
  if (!streams.microphone) {
7560
- _context32.next = 15;
7614
+ _context33.next = 15;
7561
7615
  break;
7562
7616
  }
7563
- _context32.next = 15;
7617
+ _context33.next = 15;
7564
7618
  return this.setLocalAudioStream(streams.microphone);
7565
7619
  case 15:
7566
7620
  if (!streams.camera) {
7567
- _context32.next = 18;
7621
+ _context33.next = 18;
7568
7622
  break;
7569
7623
  }
7570
- _context32.next = 18;
7624
+ _context33.next = 18;
7571
7625
  return this.setLocalVideoStream(streams.camera);
7572
7626
  case 18:
7573
7627
  if (this.isMultistream) {
7574
- _context32.next = 21;
7628
+ _context33.next = 21;
7575
7629
  break;
7576
7630
  }
7577
- _context32.next = 21;
7631
+ _context33.next = 21;
7578
7632
  return this.updateTranscodedMediaConnection();
7579
7633
  case 21:
7580
7634
  if (!floorRequestNeeded) {
7581
- _context32.next = 24;
7635
+ _context33.next = 24;
7582
7636
  break;
7583
7637
  }
7584
- _context32.next = 24;
7638
+ _context33.next = 24;
7585
7639
  return this.enqueueScreenShareFloorRequest();
7586
7640
  case 24:
7587
7641
  case "end":
7588
- return _context32.stop();
7642
+ return _context33.stop();
7589
7643
  }
7590
- }, _callee32, this);
7644
+ }, _callee33, this);
7591
7645
  }));
7592
- function publishStreams(_x30) {
7646
+ function publishStreams(_x33) {
7593
7647
  return _publishStreams.apply(this, arguments);
7594
7648
  }
7595
7649
  return publishStreams;
@@ -7603,10 +7657,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7603
7657
  }, {
7604
7658
  key: "unpublishStreams",
7605
7659
  value: function () {
7606
- var _unpublishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(streams) {
7660
+ var _unpublishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee34(streams) {
7607
7661
  var promises, _iterator, _step, stream;
7608
- return _regenerator.default.wrap(function _callee33$(_context33) {
7609
- while (1) switch (_context33.prev = _context33.next) {
7662
+ return _regenerator.default.wrap(function _callee34$(_context34) {
7663
+ while (1) switch (_context34.prev = _context34.next) {
7610
7664
  case 0:
7611
7665
  this.checkMediaConnection();
7612
7666
  promises = [];
@@ -7637,7 +7691,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7637
7691
  if (!this.isMultistream) {
7638
7692
  promises.push(this.updateTranscodedMediaConnection());
7639
7693
  }
7640
- _context33.next = 7;
7694
+ _context34.next = 7;
7641
7695
  return _promise.default.all(promises);
7642
7696
  case 7:
7643
7697
  // we're allowing for the SDK to support just audio share as well
@@ -7652,11 +7706,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7652
7706
  }
7653
7707
  case 8:
7654
7708
  case "end":
7655
- return _context33.stop();
7709
+ return _context34.stop();
7656
7710
  }
7657
- }, _callee33, this);
7711
+ }, _callee34, this);
7658
7712
  }));
7659
- function unpublishStreams(_x31) {
7713
+ function unpublishStreams(_x34) {
7660
7714
  return _unpublishStreams.apply(this, arguments);
7661
7715
  }
7662
7716
  return unpublishStreams;
@@ -7715,27 +7769,27 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
7715
7769
  }], [{
7716
7770
  key: "handleDeviceLogging",
7717
7771
  value: function () {
7718
- var _handleDeviceLogging = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee34() {
7772
+ var _handleDeviceLogging = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee35() {
7719
7773
  var devices;
7720
- return _regenerator.default.wrap(function _callee34$(_context34) {
7721
- while (1) switch (_context34.prev = _context34.next) {
7774
+ return _regenerator.default.wrap(function _callee35$(_context35) {
7775
+ while (1) switch (_context35.prev = _context35.next) {
7722
7776
  case 0:
7723
- _context34.prev = 0;
7724
- _context34.next = 3;
7777
+ _context35.prev = 0;
7778
+ _context35.next = 3;
7725
7779
  return (0, _mediaHelpers.getDevices)();
7726
7780
  case 3:
7727
- devices = _context34.sent;
7781
+ devices = _context35.sent;
7728
7782
  _util.default.handleDeviceLogging(devices);
7729
- _context34.next = 9;
7783
+ _context35.next = 9;
7730
7784
  break;
7731
7785
  case 7:
7732
- _context34.prev = 7;
7733
- _context34.t0 = _context34["catch"](0);
7786
+ _context35.prev = 7;
7787
+ _context35.t0 = _context35["catch"](0);
7734
7788
  case 9:
7735
7789
  case "end":
7736
- return _context34.stop();
7790
+ return _context35.stop();
7737
7791
  }
7738
- }, _callee34, null, [[0, 7]]);
7792
+ }, _callee35, null, [[0, 7]]);
7739
7793
  }));
7740
7794
  function handleDeviceLogging() {
7741
7795
  return _handleDeviceLogging.apply(this, arguments);