@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.
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/constants.js +3 -2
- package/dist/constants.js.map +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/index.js +8 -8
- package/dist/locus-info/index.js.map +1 -1
- package/dist/meeting/index.js +604 -550
- package/dist/meeting/index.js.map +1 -1
- package/dist/meetings/index.js +53 -29
- package/dist/meetings/index.js.map +1 -1
- package/dist/types/constants.d.ts +2 -1
- package/dist/types/locus-info/index.d.ts +1 -1
- package/dist/types/meeting/index.d.ts +60 -18
- package/dist/types/meetings/index.d.ts +12 -1
- package/dist/webinar/index.js +1 -1
- package/package.json +19 -19
- package/src/constants.ts +2 -1
- package/src/locus-info/index.ts +13 -12
- package/src/meeting/index.ts +142 -107
- package/src/meetings/index.ts +35 -14
- package/test/unit/spec/locus-info/index.js +53 -5
- package/test/unit/spec/meeting/index.js +1736 -1128
- package/test/unit/spec/meetings/index.js +141 -20
package/dist/meeting/index.js
CHANGED
|
@@ -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
|
|
1936
|
-
var destination, destinationType,
|
|
1937
|
-
return _regenerator.default.wrap(function
|
|
1938
|
-
while (1) switch (
|
|
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 =
|
|
1941
|
-
|
|
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
|
-
|
|
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 =
|
|
1955
|
-
this.parseMeetingInfo(info, this.destination);
|
|
1956
|
-
this.
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
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 (!(
|
|
1977
|
-
|
|
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 =
|
|
1982
|
-
if (
|
|
1983
|
-
this.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
|
|
1987
|
-
if (!(
|
|
1988
|
-
|
|
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(
|
|
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 (
|
|
1996
|
-
this.meetingInfo =
|
|
1997
|
-
this.meetingNumber =
|
|
2073
|
+
if (_context5.t0.meetingInfo) {
|
|
2074
|
+
this.meetingInfo = _context5.t0.meetingInfo;
|
|
2075
|
+
this.meetingNumber = _context5.t0.meetingInfo.meetingNumber;
|
|
1998
2076
|
}
|
|
1999
|
-
this.meetingInfoFailureCode =
|
|
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
|
-
|
|
2081
|
+
_context5.next = 30;
|
|
2004
2082
|
break;
|
|
2005
2083
|
}
|
|
2006
|
-
|
|
2084
|
+
_context5.next = 30;
|
|
2007
2085
|
return this.refreshCaptcha();
|
|
2008
|
-
case
|
|
2086
|
+
case 30:
|
|
2009
2087
|
throw new _passwordError.default();
|
|
2010
|
-
case
|
|
2011
|
-
if (!(
|
|
2012
|
-
|
|
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(
|
|
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 =
|
|
2019
|
-
if (
|
|
2096
|
+
this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
|
|
2097
|
+
if (_context5.t0.isPasswordRequired) {
|
|
2020
2098
|
this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
|
|
2021
2099
|
}
|
|
2022
|
-
this.requiredCaptcha =
|
|
2100
|
+
this.requiredCaptcha = _context5.t0.captchaInfo;
|
|
2023
2101
|
throw new _captchaError.default();
|
|
2024
|
-
case
|
|
2102
|
+
case 42:
|
|
2025
2103
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.OTHER;
|
|
2026
|
-
throw
|
|
2027
|
-
case
|
|
2104
|
+
throw _context5.t0;
|
|
2105
|
+
case 44:
|
|
2028
2106
|
case "end":
|
|
2029
|
-
return
|
|
2107
|
+
return _context5.stop();
|
|
2030
2108
|
}
|
|
2031
|
-
},
|
|
2109
|
+
}, _callee5, this, [[1, 11]]);
|
|
2032
2110
|
}));
|
|
2033
|
-
function fetchMeetingInfoInternal(
|
|
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
|
|
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
|
|
2051
|
-
while (1) switch (
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
2081
|
-
|
|
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
|
-
|
|
2169
|
+
_context6.next = 22;
|
|
2092
2170
|
break;
|
|
2093
2171
|
case 17:
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
_loggerProxy.default.logger.info('Meeting:index#refreshPermissionToken --> failed to refresh the permission token:',
|
|
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:
|
|
2100
|
-
stack:
|
|
2177
|
+
reason: _context6.t0.message,
|
|
2178
|
+
stack: _context6.t0.stack
|
|
2101
2179
|
});
|
|
2102
|
-
throw
|
|
2180
|
+
throw _context6.t0;
|
|
2103
2181
|
case 22:
|
|
2104
2182
|
case "end":
|
|
2105
|
-
return
|
|
2183
|
+
return _context6.stop();
|
|
2106
2184
|
}
|
|
2107
|
-
},
|
|
2185
|
+
}, _callee6, this, [[12, 17]]);
|
|
2108
2186
|
}));
|
|
2109
|
-
function refreshPermissionToken(
|
|
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
|
|
2128
|
-
|
|
2129
|
-
|
|
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
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
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
|
-
|
|
2155
|
-
|
|
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
|
|
2218
|
+
return _context7.stop();
|
|
2162
2219
|
}
|
|
2163
|
-
},
|
|
2220
|
+
}, _callee7, this);
|
|
2164
2221
|
}));
|
|
2165
|
-
function fetchMeetingInfo(
|
|
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.
|
|
2688
|
-
var
|
|
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 (
|
|
2707
|
-
var 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 (
|
|
2716
|
-
var 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 (
|
|
2725
|
-
var 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 (
|
|
2734
|
-
var 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 (
|
|
2743
|
-
var 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 (
|
|
2752
|
-
var 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 (
|
|
2761
|
-
var 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
|
|
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
|
|
2811
|
-
while (1) switch (
|
|
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
|
-
|
|
2865
|
+
_context8.next = 6;
|
|
2819
2866
|
break;
|
|
2820
2867
|
}
|
|
2821
|
-
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
|
-
|
|
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
|
-
|
|
2858
|
-
|
|
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
|
|
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
|
|
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
|
|
2926
|
+
return _context8.abrupt("break", 22);
|
|
2880
2927
|
case 20:
|
|
2881
|
-
return
|
|
2928
|
+
return _context8.abrupt("break", 22);
|
|
2882
2929
|
case 21:
|
|
2883
|
-
return
|
|
2930
|
+
return _context8.abrupt("break", 22);
|
|
2884
2931
|
case 22:
|
|
2885
|
-
|
|
2886
|
-
|
|
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
|
-
|
|
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
|
-
|
|
2949
|
+
_context8.next = 30;
|
|
2903
2950
|
break;
|
|
2904
2951
|
}
|
|
2905
|
-
|
|
2952
|
+
_context8.next = 30;
|
|
2906
2953
|
return _this14.unpublishStreams([_this14.mediaProperties.shareVideoStream, _this14.mediaProperties.shareAudioStream]);
|
|
2907
2954
|
case 30:
|
|
2908
|
-
|
|
2955
|
+
_context8.prev = 30;
|
|
2909
2956
|
sendStartedSharingRemote();
|
|
2910
|
-
return
|
|
2957
|
+
return _context8.finish(30);
|
|
2911
2958
|
case 33:
|
|
2912
|
-
return
|
|
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
|
|
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
|
|
2994
|
+
return _context8.abrupt("break", 42);
|
|
2948
2995
|
case 40:
|
|
2949
|
-
return
|
|
2996
|
+
return _context8.abrupt("break", 42);
|
|
2950
2997
|
case 41:
|
|
2951
|
-
return
|
|
2998
|
+
return _context8.abrupt("break", 42);
|
|
2952
2999
|
case 42:
|
|
2953
3000
|
_this14.members.locusMediaSharesUpdate(payload);
|
|
2954
|
-
|
|
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
|
|
3041
|
+
return _context8.stop();
|
|
2995
3042
|
}
|
|
2996
|
-
},
|
|
3043
|
+
}, _callee8, null, [[26,, 30, 33]]);
|
|
2997
3044
|
}));
|
|
2998
|
-
return function (
|
|
2999
|
-
return
|
|
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
|
|
3335
|
-
return _regenerator.default.wrap(function
|
|
3336
|
-
while (1) switch (
|
|
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
|
-
|
|
3386
|
+
_context9.next = 7;
|
|
3340
3387
|
break;
|
|
3341
3388
|
}
|
|
3342
3389
|
if (!_this20.mediaProperties.shareVideoStream) {
|
|
3343
|
-
|
|
3390
|
+
_context9.next = 4;
|
|
3344
3391
|
break;
|
|
3345
3392
|
}
|
|
3346
|
-
|
|
3393
|
+
_context9.next = 4;
|
|
3347
3394
|
return _this20.setLocalShareVideoStream(undefined);
|
|
3348
3395
|
case 4:
|
|
3349
3396
|
if (!_this20.mediaProperties.shareAudioStream) {
|
|
3350
|
-
|
|
3397
|
+
_context9.next = 7;
|
|
3351
3398
|
break;
|
|
3352
3399
|
}
|
|
3353
|
-
|
|
3400
|
+
_context9.next = 7;
|
|
3354
3401
|
return _this20.setLocalShareAudioStream(undefined);
|
|
3355
3402
|
case 7:
|
|
3356
3403
|
if (!payload.shouldLeave) {
|
|
3357
|
-
|
|
3404
|
+
_context9.next = 19;
|
|
3358
3405
|
break;
|
|
3359
3406
|
}
|
|
3360
|
-
|
|
3361
|
-
|
|
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
|
-
|
|
3414
|
+
_context9.next = 17;
|
|
3368
3415
|
break;
|
|
3369
3416
|
case 14:
|
|
3370
|
-
|
|
3371
|
-
|
|
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(
|
|
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
|
-
|
|
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
|
|
3436
|
+
return _context9.stop();
|
|
3390
3437
|
}
|
|
3391
|
-
},
|
|
3438
|
+
}, _callee9, null, [[8, 14]]);
|
|
3392
3439
|
}));
|
|
3393
|
-
return function (
|
|
3394
|
-
return
|
|
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 {
|
|
3544
|
-
* @param {String} meetingInfo.
|
|
3545
|
-
* @param {String} meetingInfo.
|
|
3546
|
-
* @param {String} meetingInfo.
|
|
3547
|
-
* @param {
|
|
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
|
|
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 ||
|
|
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) || (
|
|
3569
|
-
this.locusUrl = ((_locusMeetingObject2 = locusMeetingObject) === null || _locusMeetingObject2 === void 0 ? void 0 : _locusMeetingObject2.url) || (
|
|
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) || (
|
|
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) || (
|
|
3578
|
-
this.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) || (
|
|
3581
|
-
this.permissionToken =
|
|
3582
|
-
this.setPermissionTokenPayload(
|
|
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) || (
|
|
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,
|
|
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
|
|
4026
|
+
var _setLocalAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(localStream) {
|
|
3973
4027
|
var oldStream;
|
|
3974
|
-
return _regenerator.default.wrap(function
|
|
3975
|
-
while (1) switch (
|
|
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
|
-
|
|
4041
|
+
_context10.next = 10;
|
|
3988
4042
|
break;
|
|
3989
4043
|
}
|
|
3990
|
-
|
|
4044
|
+
_context10.next = 10;
|
|
3991
4045
|
return this.unpublishStream(_internalMediaCore.MediaType.AudioMain, oldStream);
|
|
3992
4046
|
case 10:
|
|
3993
|
-
|
|
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
|
|
4051
|
+
return _context10.stop();
|
|
3998
4052
|
}
|
|
3999
|
-
},
|
|
4053
|
+
}, _callee10, this);
|
|
4000
4054
|
}));
|
|
4001
|
-
function setLocalAudioStream(
|
|
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
|
|
4070
|
+
var _setLocalVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(localStream) {
|
|
4017
4071
|
var oldStream;
|
|
4018
|
-
return _regenerator.default.wrap(function
|
|
4019
|
-
while (1) switch (
|
|
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
|
-
|
|
4085
|
+
_context11.next = 10;
|
|
4032
4086
|
break;
|
|
4033
4087
|
}
|
|
4034
|
-
|
|
4088
|
+
_context11.next = 10;
|
|
4035
4089
|
return this.unpublishStream(_internalMediaCore.MediaType.VideoMain, oldStream);
|
|
4036
4090
|
case 10:
|
|
4037
|
-
|
|
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
|
|
4095
|
+
return _context11.stop();
|
|
4042
4096
|
}
|
|
4043
|
-
},
|
|
4097
|
+
}, _callee11, this);
|
|
4044
4098
|
}));
|
|
4045
|
-
function setLocalVideoStream(
|
|
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
|
|
4115
|
+
var _setLocalShareVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12(localDisplayStream) {
|
|
4062
4116
|
var oldStream;
|
|
4063
|
-
return _regenerator.default.wrap(function
|
|
4064
|
-
while (1) switch (
|
|
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
|
-
|
|
4130
|
+
_context12.next = 12;
|
|
4077
4131
|
break;
|
|
4078
4132
|
}
|
|
4079
|
-
|
|
4133
|
+
_context12.next = 12;
|
|
4080
4134
|
return this.unpublishStream(_internalMediaCore.MediaType.VideoSlides, oldStream);
|
|
4081
4135
|
case 12:
|
|
4082
|
-
|
|
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
|
|
4140
|
+
return _context12.stop();
|
|
4087
4141
|
}
|
|
4088
|
-
},
|
|
4142
|
+
}, _callee12, this);
|
|
4089
4143
|
}));
|
|
4090
|
-
function setLocalShareVideoStream(
|
|
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
|
|
4159
|
+
var _setLocalShareAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13(localSystemAudioStream) {
|
|
4106
4160
|
var oldStream;
|
|
4107
|
-
return _regenerator.default.wrap(function
|
|
4108
|
-
while (1) switch (
|
|
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
|
-
|
|
4172
|
+
_context13.next = 10;
|
|
4119
4173
|
break;
|
|
4120
4174
|
}
|
|
4121
|
-
|
|
4175
|
+
_context13.next = 10;
|
|
4122
4176
|
return this.unpublishStream(_internalMediaCore.MediaType.AudioSlides, oldStream);
|
|
4123
4177
|
case 10:
|
|
4124
|
-
|
|
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
|
|
4182
|
+
return _context13.stop();
|
|
4129
4183
|
}
|
|
4130
|
-
},
|
|
4184
|
+
}, _callee13, this);
|
|
4131
4185
|
}));
|
|
4132
|
-
function setLocalShareAudioStream(
|
|
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
|
|
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
|
|
4757
|
-
while (1) switch (
|
|
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
|
-
|
|
4814
|
+
_context14.prev = 1;
|
|
4761
4815
|
datachannelUrl = this.locusInfo.info.datachannelUrl; // @ts-ignore - fix type
|
|
4762
|
-
|
|
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 =
|
|
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
|
-
|
|
4846
|
+
_context14.next = 20;
|
|
4793
4847
|
break;
|
|
4794
4848
|
case 16:
|
|
4795
|
-
|
|
4796
|
-
|
|
4797
|
-
_loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> ".concat(
|
|
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:
|
|
4801
|
-
stack:
|
|
4854
|
+
reason: _context14.t0.message,
|
|
4855
|
+
stack: _context14.t0.stack
|
|
4802
4856
|
});
|
|
4803
4857
|
case 20:
|
|
4804
4858
|
case "end":
|
|
4805
|
-
return
|
|
4859
|
+
return _context14.stop();
|
|
4806
4860
|
}
|
|
4807
|
-
},
|
|
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
|
|
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
|
-
|
|
4877
|
-
return _regenerator.default.wrap(function
|
|
4878
|
-
while (1) switch (
|
|
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 =
|
|
4934
|
+
options = _args15.length > 0 && _args15[0] !== undefined ? _args15[0] : {};
|
|
4881
4935
|
if (this.webex.meetings.registered) {
|
|
4882
|
-
|
|
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
|
|
4942
|
+
return _context15.abrupt("return", _promise.default.reject(error));
|
|
4889
4943
|
case 6:
|
|
4890
4944
|
if (!this.deferJoin) {
|
|
4891
|
-
|
|
4945
|
+
_context15.next = 8;
|
|
4892
4946
|
break;
|
|
4893
4947
|
}
|
|
4894
|
-
return
|
|
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
|
-
|
|
4997
|
+
_context15.next = 36;
|
|
4944
4998
|
break;
|
|
4945
4999
|
}
|
|
4946
5000
|
if (!(typeof options.meetingQuality === 'string')) {
|
|
4947
|
-
|
|
5001
|
+
_context15.next = 27;
|
|
4948
5002
|
break;
|
|
4949
5003
|
}
|
|
4950
5004
|
if (_constants.QUALITY_LEVELS[options.meetingQuality]) {
|
|
4951
|
-
|
|
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
|
|
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
|
-
|
|
5018
|
+
_context15.next = 36;
|
|
4965
5019
|
break;
|
|
4966
5020
|
}
|
|
4967
5021
|
if (_constants.QUALITY_LEVELS[options.meetingQuality.remote]) {
|
|
4968
|
-
|
|
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
|
|
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
|
-
|
|
4984
|
-
|
|
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
|
-
|
|
5041
|
+
_context15.next = 51;
|
|
4988
5042
|
break;
|
|
4989
5043
|
case 42:
|
|
4990
|
-
|
|
4991
|
-
|
|
4992
|
-
_loggerProxy.default.logger.error('Meeting:index#join --> Failed to refresh permission token:',
|
|
4993
|
-
if (!(
|
|
4994
|
-
|
|
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(
|
|
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(
|
|
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
|
|
5063
|
+
return _context15.abrupt("return", _promise.default.reject(_context15.t0));
|
|
5010
5064
|
case 51:
|
|
5011
|
-
return
|
|
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
|
|
5144
|
+
return _context15.stop();
|
|
5091
5145
|
}
|
|
5092
|
-
},
|
|
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
|
|
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
|
|
5112
|
-
while (1) switch (
|
|
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
|
-
|
|
5172
|
+
_context16.next = 8;
|
|
5119
5173
|
break;
|
|
5120
5174
|
}
|
|
5121
5175
|
if (!(url === this.webex.internal.llm.getLocusUrl() && isJoined)) {
|
|
5122
|
-
|
|
5176
|
+
_context16.next = 5;
|
|
5123
5177
|
break;
|
|
5124
5178
|
}
|
|
5125
|
-
return
|
|
5179
|
+
return _context16.abrupt("return", undefined);
|
|
5126
5180
|
case 5:
|
|
5127
|
-
|
|
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
|
-
|
|
5188
|
+
_context16.next = 10;
|
|
5135
5189
|
break;
|
|
5136
5190
|
}
|
|
5137
|
-
return
|
|
5191
|
+
return _context16.abrupt("return", undefined);
|
|
5138
5192
|
case 10:
|
|
5139
|
-
return
|
|
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
|
|
5203
|
+
return _context16.stop();
|
|
5150
5204
|
}
|
|
5151
|
-
},
|
|
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
|
|
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
|
|
5325
|
-
while (1) switch (
|
|
5378
|
+
return _regenerator.default.wrap(function _callee17$(_context17) {
|
|
5379
|
+
while (1) switch (_context17.prev = _context17.next) {
|
|
5326
5380
|
case 0:
|
|
5327
|
-
|
|
5381
|
+
_context17.prev = 0;
|
|
5328
5382
|
if (!(_this36.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
|
|
5329
|
-
|
|
5383
|
+
_context17.next = 4;
|
|
5330
5384
|
break;
|
|
5331
5385
|
}
|
|
5332
|
-
|
|
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
|
-
|
|
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
|
-
|
|
5411
|
+
_context17.next = 16;
|
|
5358
5412
|
break;
|
|
5359
5413
|
case 12:
|
|
5360
|
-
|
|
5361
|
-
|
|
5362
|
-
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId',
|
|
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:
|
|
5367
|
-
stack:
|
|
5420
|
+
reason: _context17.t0.message,
|
|
5421
|
+
stack: _context17.t0.stack
|
|
5368
5422
|
});
|
|
5369
5423
|
case 16:
|
|
5370
5424
|
case "end":
|
|
5371
|
-
return
|
|
5425
|
+
return _context17.stop();
|
|
5372
5426
|
}
|
|
5373
|
-
},
|
|
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
|
|
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
|
|
5466
|
-
while (1) switch (
|
|
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
|
-
|
|
5546
|
+
_context18.next = 7;
|
|
5493
5547
|
break;
|
|
5494
5548
|
}
|
|
5495
|
-
|
|
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
|
-
|
|
5553
|
+
_context18.next = 10;
|
|
5500
5554
|
break;
|
|
5501
5555
|
}
|
|
5502
|
-
|
|
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
|
-
|
|
5560
|
+
_context18.next = 13;
|
|
5507
5561
|
break;
|
|
5508
5562
|
}
|
|
5509
|
-
|
|
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
|
-
|
|
5567
|
+
_context18.next = 16;
|
|
5514
5568
|
break;
|
|
5515
5569
|
}
|
|
5516
|
-
|
|
5570
|
+
_context18.next = 16;
|
|
5517
5571
|
return this.publishStream(_internalMediaCore.MediaType.AudioSlides, this.mediaProperties.shareAudioStream);
|
|
5518
5572
|
case 16:
|
|
5519
|
-
return
|
|
5573
|
+
return _context18.abrupt("return", mc);
|
|
5520
5574
|
case 17:
|
|
5521
5575
|
case "end":
|
|
5522
|
-
return
|
|
5576
|
+
return _context18.stop();
|
|
5523
5577
|
}
|
|
5524
|
-
},
|
|
5578
|
+
}, _callee18, this);
|
|
5525
5579
|
}));
|
|
5526
|
-
function createMediaConnection(
|
|
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
|
|
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
|
|
5567
|
-
while (1) switch (
|
|
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
|
-
|
|
5583
|
-
|
|
5636
|
+
_context19.prev = 5;
|
|
5637
|
+
_context19.next = 8;
|
|
5584
5638
|
return _promise.default.all(setUpStreamPromises);
|
|
5585
5639
|
case 8:
|
|
5586
|
-
|
|
5640
|
+
_context19.next = 14;
|
|
5587
5641
|
break;
|
|
5588
5642
|
case 10:
|
|
5589
|
-
|
|
5590
|
-
|
|
5591
|
-
_loggerProxy.default.logger.error("Meeting:index#addMedia():setUpLocalStreamReferences --> Error , ",
|
|
5592
|
-
throw
|
|
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
|
|
5649
|
+
return _context19.stop();
|
|
5596
5650
|
}
|
|
5597
|
-
},
|
|
5651
|
+
}, _callee19, this, [[5, 10]]);
|
|
5598
5652
|
}));
|
|
5599
|
-
function setUpLocalStreamReferences(
|
|
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
|
|
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
|
|
5616
|
-
while (1) switch (
|
|
5669
|
+
return _regenerator.default.wrap(function _callee20$(_context20) {
|
|
5670
|
+
while (1) switch (_context20.prev = _context20.next) {
|
|
5617
5671
|
case 0:
|
|
5618
|
-
|
|
5619
|
-
|
|
5672
|
+
_context20.prev = 0;
|
|
5673
|
+
_context20.next = 3;
|
|
5620
5674
|
return this.mediaProperties.waitForMediaConnectionConnected();
|
|
5621
5675
|
case 3:
|
|
5622
|
-
|
|
5676
|
+
_context20.next = 9;
|
|
5623
5677
|
break;
|
|
5624
5678
|
case 5:
|
|
5625
|
-
|
|
5626
|
-
|
|
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
|
|
5708
|
+
return _context20.stop();
|
|
5655
5709
|
}
|
|
5656
|
-
},
|
|
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
|
|
5759
|
+
var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
|
|
5706
5760
|
var LOG_HEADER, deferSDPAnswer;
|
|
5707
|
-
return _regenerator.default.wrap(function
|
|
5708
|
-
while (1) switch (
|
|
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
|
-
|
|
5766
|
+
_context21.next = 4;
|
|
5713
5767
|
break;
|
|
5714
5768
|
}
|
|
5715
5769
|
_loggerProxy.default.logger.warn("".concat(LOG_HEADER, " offer not created yet"));
|
|
5716
|
-
return
|
|
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
|
|
5778
|
+
return _context21.abrupt("return", deferSDPAnswer.promise);
|
|
5725
5779
|
case 8:
|
|
5726
5780
|
case "end":
|
|
5727
|
-
return
|
|
5781
|
+
return _context21.stop();
|
|
5728
5782
|
}
|
|
5729
|
-
},
|
|
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
|
|
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
|
|
5750
|
-
while (1) switch (
|
|
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
|
-
|
|
5754
|
-
|
|
5807
|
+
_context22.prev = 1;
|
|
5808
|
+
_context22.next = 4;
|
|
5755
5809
|
return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, true);
|
|
5756
5810
|
case 4:
|
|
5757
|
-
|
|
5811
|
+
_context22.next = 10;
|
|
5758
5812
|
break;
|
|
5759
5813
|
case 6:
|
|
5760
|
-
|
|
5761
|
-
|
|
5762
|
-
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " retry with TURN-TLS failed, media connection unable to connect, "),
|
|
5763
|
-
throw
|
|
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
|
|
5820
|
+
return _context22.stop();
|
|
5767
5821
|
}
|
|
5768
|
-
},
|
|
5822
|
+
}, _callee22, this, [[1, 6]]);
|
|
5769
5823
|
}));
|
|
5770
|
-
function retryEstablishMediaConnectionWithForcedTurnDiscovery(
|
|
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
|
|
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
|
|
5790
|
-
while (1) switch (
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
5862
|
+
_context23.next = 9;
|
|
5809
5863
|
return this.join({
|
|
5810
5864
|
rejoin: true
|
|
5811
5865
|
});
|
|
5812
5866
|
case 9:
|
|
5813
|
-
|
|
5867
|
+
_context23.next = 11;
|
|
5814
5868
|
return this.retryEstablishMediaConnectionWithForcedTurnDiscovery(remoteMediaManagerConfig, bundlePolicy);
|
|
5815
5869
|
case 11:
|
|
5816
5870
|
case "end":
|
|
5817
|
-
return
|
|
5871
|
+
return _context23.stop();
|
|
5818
5872
|
}
|
|
5819
|
-
},
|
|
5873
|
+
}, _callee23, this);
|
|
5820
5874
|
}));
|
|
5821
|
-
function retryWithForcedTurnDiscovery(
|
|
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
|
|
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
|
|
5843
|
-
while (1) switch (
|
|
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
|
-
|
|
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
|
-
|
|
5905
|
+
_context24.next = 5;
|
|
5852
5906
|
return this.retryWithForcedTurnDiscovery(remoteMediaManagerConfig, bundlePolicy);
|
|
5853
5907
|
case 5:
|
|
5854
|
-
|
|
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
|
|
5915
|
+
return _context24.stop();
|
|
5862
5916
|
}
|
|
5863
|
-
},
|
|
5917
|
+
}, _callee24, this);
|
|
5864
5918
|
}));
|
|
5865
|
-
function handleWaitForMediaConnectionConnectedError(
|
|
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
|
|
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
|
|
5885
|
-
while (1) switch (
|
|
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
|
-
|
|
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
|
-
|
|
5949
|
+
_context25.next = 7;
|
|
5896
5950
|
return this.roap.doTurnDiscovery(this, isRetry, isForced);
|
|
5897
5951
|
case 7:
|
|
5898
|
-
turnDiscoveryObject =
|
|
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
|
-
|
|
5969
|
+
_context25.next = 15;
|
|
5916
5970
|
return this.createMediaConnection(turnServerInfo, bundlePolicy);
|
|
5917
5971
|
case 15:
|
|
5918
|
-
mc =
|
|
5972
|
+
mc = _context25.sent;
|
|
5919
5973
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " media connection created"));
|
|
5920
5974
|
if (!this.isMultistream) {
|
|
5921
|
-
|
|
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
|
-
|
|
5982
|
+
_context25.next = 24;
|
|
5929
5983
|
return this.remoteMediaManager.start();
|
|
5930
5984
|
case 24:
|
|
5931
|
-
|
|
5985
|
+
_context25.next = 26;
|
|
5932
5986
|
return mc.initiateOffer();
|
|
5933
5987
|
case 26:
|
|
5934
|
-
|
|
5988
|
+
_context25.next = 28;
|
|
5935
5989
|
return this.waitForRemoteSDPAnswer();
|
|
5936
5990
|
case 28:
|
|
5937
5991
|
this.handleMediaLogging(this.mediaProperties);
|
|
5938
|
-
|
|
5992
|
+
_context25.next = 35;
|
|
5939
5993
|
break;
|
|
5940
5994
|
case 31:
|
|
5941
|
-
|
|
5942
|
-
|
|
5943
|
-
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "),
|
|
5944
|
-
throw
|
|
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
|
-
|
|
5947
|
-
|
|
6000
|
+
_context25.prev = 35;
|
|
6001
|
+
_context25.next = 38;
|
|
5948
6002
|
return this.waitForMediaConnectionConnected();
|
|
5949
6003
|
case 38:
|
|
5950
|
-
|
|
6004
|
+
_context25.next = 44;
|
|
5951
6005
|
break;
|
|
5952
6006
|
case 40:
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
|
|
5956
|
-
return this.handleWaitForMediaConnectionConnectedError(
|
|
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
|
|
6013
|
+
return _context25.stop();
|
|
5960
6014
|
}
|
|
5961
|
-
},
|
|
6015
|
+
}, _callee25, this, [[3, 31], [35, 40]]);
|
|
5962
6016
|
}));
|
|
5963
|
-
function establishMediaConnection(
|
|
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
|
|
5978
|
-
return _regenerator.default.wrap(function
|
|
5979
|
-
while (1) switch (
|
|
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
|
-
|
|
6036
|
+
_context26.next = 3;
|
|
5983
6037
|
break;
|
|
5984
6038
|
}
|
|
5985
|
-
|
|
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
|
-
|
|
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
|
|
6057
|
+
return _context26.stop();
|
|
6004
6058
|
}
|
|
6005
|
-
},
|
|
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
|
|
6023
|
-
return _regenerator.default.wrap(function
|
|
6024
|
-
while (1) switch (
|
|
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
|
-
|
|
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
|
|
6100
|
+
return _context27.stop();
|
|
6047
6101
|
}
|
|
6048
|
-
},
|
|
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
|
|
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
|
-
|
|
6108
|
-
return _regenerator.default.wrap(function
|
|
6109
|
-
while (1) switch (
|
|
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 =
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
6194
|
-
|
|
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
|
-
|
|
6253
|
+
_context28.next = 25;
|
|
6200
6254
|
return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, false);
|
|
6201
6255
|
case 25:
|
|
6202
|
-
|
|
6256
|
+
_context28.next = 27;
|
|
6203
6257
|
return Meeting.handleDeviceLogging();
|
|
6204
6258
|
case 27:
|
|
6205
6259
|
if (!this.mediaProperties.hasLocalShareStream()) {
|
|
6206
|
-
|
|
6260
|
+
_context28.next = 30;
|
|
6207
6261
|
break;
|
|
6208
6262
|
}
|
|
6209
|
-
|
|
6263
|
+
_context28.next = 30;
|
|
6210
6264
|
return this.enqueueScreenShareFloorRequest();
|
|
6211
6265
|
case 30:
|
|
6212
|
-
|
|
6266
|
+
_context28.next = 32;
|
|
6213
6267
|
return this.mediaProperties.getCurrentConnectionType();
|
|
6214
6268
|
case 32:
|
|
6215
|
-
connectionType =
|
|
6216
|
-
|
|
6269
|
+
connectionType = _context28.sent;
|
|
6270
|
+
_context28.next = 35;
|
|
6217
6271
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
6218
6272
|
case 35:
|
|
6219
|
-
reachabilityStats =
|
|
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
|
-
|
|
6292
|
+
_context28.next = 54;
|
|
6239
6293
|
break;
|
|
6240
6294
|
case 42:
|
|
6241
|
-
|
|
6242
|
-
|
|
6243
|
-
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "),
|
|
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
|
-
|
|
6300
|
+
_context28.next = 47;
|
|
6247
6301
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
6248
6302
|
case 47:
|
|
6249
|
-
reachabilityMetrics =
|
|
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:
|
|
6254
|
-
stack:
|
|
6255
|
-
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
|
-
|
|
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 (
|
|
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
|
|
6331
|
+
throw _context28.t0;
|
|
6278
6332
|
case 54:
|
|
6279
6333
|
case "end":
|
|
6280
|
-
return
|
|
6334
|
+
return _context28.stop();
|
|
6281
6335
|
}
|
|
6282
|
-
},
|
|
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
|
|
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
|
|
6366
|
-
while (1) switch (
|
|
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
|
-
|
|
6426
|
+
_context29.next = 5;
|
|
6373
6427
|
break;
|
|
6374
6428
|
}
|
|
6375
|
-
return
|
|
6429
|
+
return _context29.abrupt("return", this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.UPDATE_MEDIA, options));
|
|
6376
6430
|
case 5:
|
|
6377
6431
|
if (!this.isMultistream) {
|
|
6378
|
-
|
|
6432
|
+
_context29.next = 10;
|
|
6379
6433
|
break;
|
|
6380
6434
|
}
|
|
6381
6435
|
if (!(shareAudioEnabled !== undefined || shareVideoEnabled !== undefined)) {
|
|
6382
|
-
|
|
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
|
-
|
|
6441
|
+
_context29.next = 12;
|
|
6388
6442
|
break;
|
|
6389
6443
|
case 10:
|
|
6390
6444
|
if (!(shareAudioEnabled !== undefined)) {
|
|
6391
|
-
|
|
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
|
-
|
|
6470
|
+
_context29.next = 18;
|
|
6417
6471
|
break;
|
|
6418
6472
|
}
|
|
6419
|
-
|
|
6473
|
+
_context29.next = 18;
|
|
6420
6474
|
return this.updateTranscodedMediaConnection();
|
|
6421
6475
|
case 18:
|
|
6422
|
-
return
|
|
6476
|
+
return _context29.abrupt("return", undefined);
|
|
6423
6477
|
case 19:
|
|
6424
6478
|
case "end":
|
|
6425
|
-
return
|
|
6479
|
+
return _context29.stop();
|
|
6426
6480
|
}
|
|
6427
|
-
},
|
|
6481
|
+
}, _callee29, this);
|
|
6428
6482
|
}));
|
|
6429
|
-
function updateMedia(
|
|
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
|
|
7341
|
-
return _regenerator.default.wrap(function
|
|
7342
|
-
while (1) switch (
|
|
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
|
-
|
|
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
|
-
|
|
7406
|
+
_context30.next = 8;
|
|
7353
7407
|
break;
|
|
7354
7408
|
}
|
|
7355
|
-
|
|
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
|
-
|
|
7415
|
+
_context30.next = 10;
|
|
7362
7416
|
break;
|
|
7363
7417
|
case 8:
|
|
7364
|
-
|
|
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
|
|
7422
|
+
return _context30.stop();
|
|
7369
7423
|
}
|
|
7370
|
-
},
|
|
7424
|
+
}, _callee30, this);
|
|
7371
7425
|
}));
|
|
7372
|
-
function enableMusicMode(
|
|
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
|
|
7437
|
-
return _regenerator.default.wrap(function
|
|
7438
|
-
while (1) switch (
|
|
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
|
-
|
|
7495
|
+
_context31.next = 2;
|
|
7442
7496
|
break;
|
|
7443
7497
|
}
|
|
7444
|
-
return
|
|
7498
|
+
return _context31.abrupt("return");
|
|
7445
7499
|
case 2:
|
|
7446
7500
|
if (!this.mediaProperties.webrtcMediaConnection) {
|
|
7447
|
-
|
|
7501
|
+
_context31.next = 7;
|
|
7448
7502
|
break;
|
|
7449
7503
|
}
|
|
7450
7504
|
if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
|
|
7451
|
-
|
|
7505
|
+
_context31.next = 6;
|
|
7452
7506
|
break;
|
|
7453
7507
|
}
|
|
7454
|
-
|
|
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
|
|
7519
|
+
return _context31.stop();
|
|
7466
7520
|
}
|
|
7467
|
-
},
|
|
7521
|
+
}, _callee31, this);
|
|
7468
7522
|
}));
|
|
7469
|
-
function publishStream(
|
|
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
|
|
7485
|
-
return _regenerator.default.wrap(function
|
|
7486
|
-
while (1) switch (
|
|
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
|
-
|
|
7543
|
+
_context32.next = 2;
|
|
7490
7544
|
break;
|
|
7491
7545
|
}
|
|
7492
|
-
return
|
|
7546
|
+
return _context32.abrupt("return");
|
|
7493
7547
|
case 2:
|
|
7494
7548
|
if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
|
|
7495
|
-
|
|
7549
|
+
_context32.next = 5;
|
|
7496
7550
|
break;
|
|
7497
7551
|
}
|
|
7498
|
-
|
|
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
|
|
7563
|
+
return _context32.stop();
|
|
7510
7564
|
}
|
|
7511
|
-
},
|
|
7565
|
+
}, _callee32, this);
|
|
7512
7566
|
}));
|
|
7513
|
-
function unpublishStream(
|
|
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
|
|
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
|
|
7531
|
-
while (1) switch (
|
|
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
|
-
|
|
7589
|
+
_context33.next = 3;
|
|
7536
7590
|
break;
|
|
7537
7591
|
}
|
|
7538
|
-
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
|
-
|
|
7596
|
+
_context33.next = 8;
|
|
7543
7597
|
break;
|
|
7544
7598
|
}
|
|
7545
|
-
|
|
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
|
-
|
|
7605
|
+
_context33.next = 12;
|
|
7552
7606
|
break;
|
|
7553
7607
|
}
|
|
7554
|
-
|
|
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
|
-
|
|
7614
|
+
_context33.next = 15;
|
|
7561
7615
|
break;
|
|
7562
7616
|
}
|
|
7563
|
-
|
|
7617
|
+
_context33.next = 15;
|
|
7564
7618
|
return this.setLocalAudioStream(streams.microphone);
|
|
7565
7619
|
case 15:
|
|
7566
7620
|
if (!streams.camera) {
|
|
7567
|
-
|
|
7621
|
+
_context33.next = 18;
|
|
7568
7622
|
break;
|
|
7569
7623
|
}
|
|
7570
|
-
|
|
7624
|
+
_context33.next = 18;
|
|
7571
7625
|
return this.setLocalVideoStream(streams.camera);
|
|
7572
7626
|
case 18:
|
|
7573
7627
|
if (this.isMultistream) {
|
|
7574
|
-
|
|
7628
|
+
_context33.next = 21;
|
|
7575
7629
|
break;
|
|
7576
7630
|
}
|
|
7577
|
-
|
|
7631
|
+
_context33.next = 21;
|
|
7578
7632
|
return this.updateTranscodedMediaConnection();
|
|
7579
7633
|
case 21:
|
|
7580
7634
|
if (!floorRequestNeeded) {
|
|
7581
|
-
|
|
7635
|
+
_context33.next = 24;
|
|
7582
7636
|
break;
|
|
7583
7637
|
}
|
|
7584
|
-
|
|
7638
|
+
_context33.next = 24;
|
|
7585
7639
|
return this.enqueueScreenShareFloorRequest();
|
|
7586
7640
|
case 24:
|
|
7587
7641
|
case "end":
|
|
7588
|
-
return
|
|
7642
|
+
return _context33.stop();
|
|
7589
7643
|
}
|
|
7590
|
-
},
|
|
7644
|
+
}, _callee33, this);
|
|
7591
7645
|
}));
|
|
7592
|
-
function publishStreams(
|
|
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
|
|
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
|
|
7609
|
-
while (1) switch (
|
|
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
|
-
|
|
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
|
|
7709
|
+
return _context34.stop();
|
|
7656
7710
|
}
|
|
7657
|
-
},
|
|
7711
|
+
}, _callee34, this);
|
|
7658
7712
|
}));
|
|
7659
|
-
function unpublishStreams(
|
|
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
|
|
7772
|
+
var _handleDeviceLogging = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee35() {
|
|
7719
7773
|
var devices;
|
|
7720
|
-
return _regenerator.default.wrap(function
|
|
7721
|
-
while (1) switch (
|
|
7774
|
+
return _regenerator.default.wrap(function _callee35$(_context35) {
|
|
7775
|
+
while (1) switch (_context35.prev = _context35.next) {
|
|
7722
7776
|
case 0:
|
|
7723
|
-
|
|
7724
|
-
|
|
7777
|
+
_context35.prev = 0;
|
|
7778
|
+
_context35.next = 3;
|
|
7725
7779
|
return (0, _mediaHelpers.getDevices)();
|
|
7726
7780
|
case 3:
|
|
7727
|
-
devices =
|
|
7781
|
+
devices = _context35.sent;
|
|
7728
7782
|
_util.default.handleDeviceLogging(devices);
|
|
7729
|
-
|
|
7783
|
+
_context35.next = 9;
|
|
7730
7784
|
break;
|
|
7731
7785
|
case 7:
|
|
7732
|
-
|
|
7733
|
-
|
|
7786
|
+
_context35.prev = 7;
|
|
7787
|
+
_context35.t0 = _context35["catch"](0);
|
|
7734
7788
|
case 9:
|
|
7735
7789
|
case "end":
|
|
7736
|
-
return
|
|
7790
|
+
return _context35.stop();
|
|
7737
7791
|
}
|
|
7738
|
-
},
|
|
7792
|
+
}, _callee35, null, [[0, 7]]);
|
|
7739
7793
|
}));
|
|
7740
7794
|
function handleDeviceLogging() {
|
|
7741
7795
|
return _handleDeviceLogging.apply(this, arguments);
|