@webex/plugin-meetings 3.0.0-bnr.4 → 3.0.0-stream-classes.1
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/README.md +46 -8
- package/dist/annotation/annotation.types.js +7 -0
- package/dist/annotation/annotation.types.js.map +1 -0
- package/dist/annotation/constants.js +49 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +342 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +70 -32
- package/dist/breakouts/breakout.js.map +1 -1
- package/dist/breakouts/events.js +45 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +422 -217
- package/dist/breakouts/index.js.map +1 -1
- package/dist/breakouts/utils.js +12 -1
- package/dist/breakouts/utils.js.map +1 -1
- package/dist/common/errors/webex-errors.js +3 -2
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +1 -1
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/common/logs/request.d.ts +1 -1
- package/dist/common/queue.js +24 -9
- package/dist/common/queue.js.map +1 -1
- package/dist/config.js +1 -7
- package/dist/config.js.map +1 -1
- package/dist/constants.js +118 -24
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.js +2 -0
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/index.js +19 -14
- package/dist/controls-options-manager/index.js.map +1 -1
- package/dist/controls-options-manager/types.js.map +1 -1
- package/dist/controls-options-manager/util.js +80 -11
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/index.js +62 -20
- package/dist/index.js.map +1 -1
- package/dist/interpretation/collection.js +23 -0
- package/dist/interpretation/collection.js.map +1 -0
- package/dist/interpretation/index.js +366 -0
- package/dist/interpretation/index.js.map +1 -0
- package/dist/interpretation/siLanguage.js +25 -0
- package/dist/interpretation/siLanguage.js.map +1 -0
- package/dist/locus-info/controlsUtils.js +71 -1
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +305 -57
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +7 -1
- package/dist/locus-info/infoUtils.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +43 -1
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +219 -63
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +44 -22
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +57 -104
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +60 -121
- package/dist/media/properties.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +61 -3
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +2530 -2534
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +292 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -0
- package/dist/meeting/muteState.js +125 -205
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +150 -150
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/util.js +568 -438
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/index.js +48 -7
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +94 -38
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/utilv2.js +4 -2
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/index.d.ts +0 -2
- package/dist/meetings/index.js +260 -85
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/meetings.types.js +7 -0
- package/dist/meetings/meetings.types.js.map +1 -0
- package/dist/meetings/util.js +42 -7
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.d.ts +2 -0
- package/dist/member/index.js +26 -0
- package/dist/member/index.js.map +1 -1
- package/dist/member/member.types.d.ts +11 -0
- package/dist/member/member.types.js +18 -0
- package/dist/member/member.types.js.map +1 -0
- package/dist/member/types.js +11 -1
- package/dist/member/types.js.map +1 -1
- package/dist/member/util.js +60 -23
- package/dist/member/util.js.map +1 -1
- package/dist/members/index.js +4 -1
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +75 -45
- package/dist/members/request.js.map +1 -1
- package/dist/members/util.js +308 -317
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/config.js +1 -3
- package/dist/metrics/config.js.map +1 -1
- package/dist/metrics/constants.js +1 -0
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.d.ts +1 -1
- package/dist/metrics/index.js +1 -451
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +136 -40
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/receiveSlot.js.map +1 -1
- package/dist/multistream/receiveSlotManager.js +4 -4
- package/dist/multistream/receiveSlotManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/remoteMediaGroup.js +60 -3
- package/dist/multistream/remoteMediaGroup.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +36 -0
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/multistream/sendSlotManager.js +233 -0
- package/dist/multistream/sendSlotManager.js.map +1 -0
- package/dist/reachability/index.js +18 -3
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +5 -3
- package/dist/reachability/request.js.map +1 -1
- package/dist/reconnection-manager/index.js +181 -153
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/index.js +21 -2
- package/dist/recording-controller/index.js.map +1 -1
- package/dist/recording-controller/util.js +9 -8
- package/dist/recording-controller/util.js.map +1 -1
- package/dist/roap/index.js +25 -32
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +42 -51
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +97 -38
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/rtcMetrics/constants.js +12 -0
- package/dist/rtcMetrics/constants.js.map +1 -0
- package/dist/rtcMetrics/index.js +117 -0
- package/dist/rtcMetrics/index.js.map +1 -0
- package/dist/statsAnalyzer/index.js +0 -1
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +43 -0
- package/dist/types/annotation/constants.d.ts +31 -0
- package/dist/types/annotation/index.d.ts +124 -0
- package/dist/types/breakouts/events.d.ts +2 -0
- package/dist/types/breakouts/utils.d.ts +7 -0
- package/dist/types/common/errors/webex-errors.d.ts +1 -1
- package/dist/types/config.d.ts +0 -6
- package/dist/types/constants.d.ts +51 -21
- package/dist/types/controls-options-manager/enums.d.ts +2 -0
- package/dist/types/controls-options-manager/index.d.ts +1 -1
- package/dist/types/controls-options-manager/types.d.ts +7 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/interpretation/collection.d.ts +5 -0
- package/dist/types/interpretation/index.d.ts +5 -0
- package/dist/types/interpretation/siLanguage.d.ts +5 -0
- package/dist/types/locus-info/index.d.ts +39 -1
- package/dist/types/media/index.d.ts +2 -0
- package/dist/types/media/properties.d.ts +16 -38
- package/dist/types/meeting/in-meeting-actions.d.ts +46 -2
- package/dist/types/meeting/index.d.ts +179 -379
- package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
- package/dist/types/meeting/muteState.d.ts +39 -40
- package/dist/types/meeting/request.d.ts +25 -26
- package/dist/types/meeting/util.d.ts +74 -1
- package/dist/types/meeting-info/meeting-info-v2.d.ts +14 -3
- package/dist/types/meetings/index.d.ts +49 -1
- package/dist/types/meetings/meetings.types.d.ts +4 -0
- package/dist/types/member/index.d.ts +2 -0
- package/dist/types/members/request.d.ts +56 -11
- package/dist/types/members/util.d.ts +209 -1
- package/dist/types/metrics/config.d.ts +26 -2
- package/dist/types/metrics/constants.d.ts +1 -0
- package/dist/types/metrics/index.d.ts +17 -0
- package/dist/types/multistream/mediaRequestManager.d.ts +27 -10
- package/dist/types/multistream/receiveSlot.d.ts +3 -3
- package/dist/types/multistream/remoteMedia.d.ts +2 -2
- package/dist/types/multistream/remoteMediaManager.d.ts +14 -0
- package/dist/types/roap/request.d.ts +6 -8
- package/dist/types/roap/turnDiscovery.d.ts +18 -1
- package/package.json +3 -2
- package/src/annotation/annotation.types.ts +50 -0
- package/src/annotation/constants.ts +36 -0
- package/src/annotation/index.ts +328 -0
- package/src/breakouts/README.md +3 -2
- package/src/breakouts/breakout.ts +62 -27
- package/src/breakouts/events.ts +56 -0
- package/src/breakouts/index.ts +244 -64
- package/src/breakouts/utils.ts +13 -0
- package/src/common/errors/webex-errors.ts +6 -2
- package/src/common/logs/logger-proxy.ts +1 -1
- package/src/common/queue.ts +22 -8
- package/src/config.ts +0 -6
- package/src/constants.ts +111 -19
- package/src/controls-options-manager/enums.ts +2 -0
- package/src/controls-options-manager/index.ts +13 -10
- package/src/controls-options-manager/types.ts +10 -0
- package/src/controls-options-manager/util.ts +82 -11
- package/src/index.ts +18 -11
- package/src/interpretation/README.md +60 -0
- package/src/interpretation/collection.ts +19 -0
- package/src/interpretation/index.ts +332 -0
- package/src/interpretation/siLanguage.ts +18 -0
- package/src/locus-info/controlsUtils.ts +81 -0
- package/src/locus-info/index.ts +318 -57
- package/src/locus-info/infoUtils.ts +10 -2
- package/src/locus-info/mediaSharesUtils.ts +48 -0
- package/src/locus-info/parser.ts +224 -39
- package/src/locus-info/selfUtils.ts +32 -20
- package/src/media/index.ts +94 -108
- package/src/media/properties.ts +69 -109
- package/src/meeting/in-meeting-actions.ts +120 -4
- package/src/meeting/index.ts +1967 -2120
- package/src/meeting/locusMediaRequest.ts +314 -0
- package/src/meeting/muteState.ts +119 -194
- package/src/meeting/request.ts +122 -115
- package/src/meeting/util.ts +549 -413
- package/src/meeting-info/index.ts +54 -8
- package/src/meeting-info/meeting-info-v2.ts +89 -24
- package/src/meeting-info/utilv2.ts +6 -2
- package/src/meetings/index.ts +247 -87
- package/src/meetings/meetings.types.ts +12 -0
- package/src/meetings/util.ts +47 -12
- package/src/member/index.ts +28 -1
- package/src/member/types.ts +14 -0
- package/src/member/util.ts +75 -26
- package/src/members/index.ts +7 -1
- package/src/members/request.ts +61 -21
- package/src/members/util.ts +316 -326
- package/src/metrics/constants.ts +1 -0
- package/src/metrics/index.ts +1 -474
- package/src/multistream/mediaRequestManager.ts +183 -67
- package/src/multistream/receiveSlot.ts +4 -4
- package/src/multistream/receiveSlotManager.ts +4 -4
- package/src/multistream/remoteMedia.ts +2 -2
- package/src/multistream/remoteMediaGroup.ts +59 -0
- package/src/multistream/remoteMediaManager.ts +33 -0
- package/src/multistream/sendSlotManager.ts +170 -0
- package/src/reachability/index.ts +15 -4
- package/src/reachability/request.ts +7 -3
- package/src/reconnection-manager/index.ts +36 -29
- package/src/recording-controller/index.ts +20 -3
- package/src/recording-controller/util.ts +26 -9
- package/src/roap/index.ts +25 -30
- package/src/roap/request.ts +44 -51
- package/src/roap/turnDiscovery.ts +51 -25
- package/src/rtcMetrics/constants.ts +3 -0
- package/src/rtcMetrics/index.ts +100 -0
- package/src/statsAnalyzer/index.ts +0 -1
- package/test/integration/spec/converged-space-meetings.js +60 -3
- package/test/integration/spec/journey.js +336 -259
- package/test/integration/spec/space-meeting.js +76 -3
- package/test/unit/spec/annotation/index.ts +418 -0
- package/test/unit/spec/breakouts/breakout.ts +85 -26
- package/test/unit/spec/breakouts/events.ts +89 -0
- package/test/unit/spec/breakouts/index.ts +636 -98
- package/test/unit/spec/breakouts/utils.js +19 -1
- package/test/unit/spec/common/queue.js +31 -2
- package/test/unit/spec/controls-options-manager/index.js +8 -1
- package/test/unit/spec/controls-options-manager/util.js +576 -397
- package/test/unit/spec/fixture/locus.js +1 -0
- package/test/unit/spec/interpretation/collection.ts +15 -0
- package/test/unit/spec/interpretation/index.ts +589 -0
- package/test/unit/spec/interpretation/siLanguage.ts +28 -0
- package/test/unit/spec/locus-info/controlsUtils.js +195 -1
- package/test/unit/spec/locus-info/index.js +950 -45
- package/test/unit/spec/locus-info/infoUtils.js +37 -15
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
- package/test/unit/spec/locus-info/parser.js +62 -22
- package/test/unit/spec/locus-info/selfConstant.js +19 -0
- package/test/unit/spec/locus-info/selfUtils.js +131 -26
- package/test/unit/spec/media/index.ts +82 -79
- package/test/unit/spec/meeting/in-meeting-actions.ts +60 -2
- package/test/unit/spec/meeting/index.js +3208 -1734
- package/test/unit/spec/meeting/locusMediaRequest.ts +443 -0
- package/test/unit/spec/meeting/muteState.js +328 -417
- package/test/unit/spec/meeting/request.js +393 -48
- package/test/unit/spec/meeting/utils.js +552 -76
- package/test/unit/spec/meeting-info/index.js +181 -0
- package/test/unit/spec/meeting-info/meetinginfov2.js +258 -20
- package/test/unit/spec/meeting-info/utilv2.js +21 -0
- package/test/unit/spec/meetings/index.js +631 -145
- package/test/unit/spec/meetings/utils.js +164 -9
- package/test/unit/spec/member/index.js +44 -14
- package/test/unit/spec/member/util.js +296 -155
- package/test/unit/spec/members/index.js +23 -3
- package/test/unit/spec/members/request.js +167 -35
- package/test/unit/spec/metrics/index.js +1 -50
- package/test/unit/spec/multistream/mediaRequestManager.ts +366 -8
- package/test/unit/spec/multistream/receiveSlot.ts +1 -1
- package/test/unit/spec/multistream/remoteMediaGroup.ts +266 -0
- package/test/unit/spec/multistream/remoteMediaManager.ts +123 -0
- package/test/unit/spec/multistream/sendSlotManager.ts +242 -0
- package/test/unit/spec/reachability/index.ts +66 -5
- package/test/unit/spec/reachability/request.js +3 -1
- package/test/unit/spec/reconnection-manager/index.js +55 -5
- package/test/unit/spec/recording-controller/index.js +294 -218
- package/test/unit/spec/recording-controller/util.js +223 -96
- package/test/unit/spec/roap/index.ts +21 -48
- package/test/unit/spec/roap/request.ts +74 -60
- package/test/unit/spec/roap/turnDiscovery.ts +30 -6
- package/test/unit/spec/rtcMetrics/index.ts +68 -0
- package/test/utils/integrationTestUtils.js +46 -0
- package/test/utils/testUtils.js +0 -60
- package/src/metrics/config.ts +0 -487
package/dist/meetings/index.js
CHANGED
|
@@ -2,19 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
var _typeof = require("@babel/runtime-corejs2/helpers/typeof");
|
|
4
4
|
var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
|
|
5
|
-
var
|
|
6
|
-
var _Object$
|
|
5
|
+
var _Object$keys2 = require("@babel/runtime-corejs2/core-js/object/keys");
|
|
6
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
|
|
7
7
|
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
|
|
8
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
|
|
9
|
+
var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
|
|
10
|
+
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
11
|
+
var _WeakMap = require("@babel/runtime-corejs2/core-js/weak-map");
|
|
8
12
|
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
9
13
|
_Object$defineProperty(exports, "__esModule", {
|
|
10
14
|
value: true
|
|
11
15
|
});
|
|
12
16
|
exports.default = void 0;
|
|
13
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
|
|
14
17
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
15
18
|
var _now = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/date/now"));
|
|
16
19
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
|
|
17
20
|
var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
|
|
21
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
|
|
22
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/toConsumableArray"));
|
|
18
23
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
|
|
19
24
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
|
|
20
25
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
@@ -25,14 +30,14 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/he
|
|
|
25
30
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
26
31
|
require("@webex/internal-plugin-mercury");
|
|
27
32
|
require("@webex/internal-plugin-conversation");
|
|
33
|
+
require("@webex/internal-plugin-metrics");
|
|
28
34
|
var _webexCore = require("@webex/webex-core");
|
|
29
35
|
var _internalMediaCore = require("@webex/internal-media-core");
|
|
30
36
|
var mediaHelpersModule = _interopRequireWildcard(require("@webex/media-helpers"));
|
|
31
37
|
require("webrtc-adapter");
|
|
32
38
|
var _metrics = _interopRequireDefault(require("../metrics"));
|
|
33
|
-
var _config = require("../metrics/config");
|
|
34
39
|
var _loggerConfig = _interopRequireDefault(require("../common/logs/logger-config"));
|
|
35
|
-
var
|
|
40
|
+
var _config = _interopRequireDefault(require("../common/config"));
|
|
36
41
|
var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
|
|
37
42
|
var _request = _interopRequireDefault(require("../common/logs/request"));
|
|
38
43
|
var _triggerProxy = _interopRequireDefault(require("../common/events/trigger-proxy"));
|
|
@@ -53,6 +58,8 @@ var _util2 = _interopRequireDefault(require("./util"));
|
|
|
53
58
|
var _permission = _interopRequireDefault(require("../common/errors/permission"));
|
|
54
59
|
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
55
60
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
61
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys2(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
62
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
56
63
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
57
64
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
58
65
|
var mediaLogger;
|
|
@@ -183,7 +190,50 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
183
190
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "geoHintInfo", void 0);
|
|
184
191
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingInfo", void 0);
|
|
185
192
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaHelpers", void 0);
|
|
193
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "breakoutLocusForHandleLater", void 0);
|
|
186
194
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "namespace", _constants.MEETINGS);
|
|
195
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "createNoiseReductionEffect", /*#__PURE__*/function () {
|
|
196
|
+
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(options) {
|
|
197
|
+
var authToken;
|
|
198
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
199
|
+
while (1) switch (_context.prev = _context.next) {
|
|
200
|
+
case 0:
|
|
201
|
+
// @ts-ignore
|
|
202
|
+
authToken = _this.webex.credentials.supertoken.access_token;
|
|
203
|
+
return _context.abrupt("return", new mediaHelpersModule.NoiseReductionEffect(_objectSpread({
|
|
204
|
+
authToken: authToken
|
|
205
|
+
}, options)));
|
|
206
|
+
case 2:
|
|
207
|
+
case "end":
|
|
208
|
+
return _context.stop();
|
|
209
|
+
}
|
|
210
|
+
}, _callee);
|
|
211
|
+
}));
|
|
212
|
+
return function (_x) {
|
|
213
|
+
return _ref.apply(this, arguments);
|
|
214
|
+
};
|
|
215
|
+
}());
|
|
216
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "createVirtualBackgroundEffect", /*#__PURE__*/function () {
|
|
217
|
+
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(options) {
|
|
218
|
+
var authToken;
|
|
219
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
220
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
221
|
+
case 0:
|
|
222
|
+
// @ts-ignore
|
|
223
|
+
authToken = _this.webex.credentials.supertoken.access_token;
|
|
224
|
+
return _context2.abrupt("return", new mediaHelpersModule.VirtualBackgroundEffect(_objectSpread({
|
|
225
|
+
authToken: authToken
|
|
226
|
+
}, options)));
|
|
227
|
+
case 2:
|
|
228
|
+
case "end":
|
|
229
|
+
return _context2.stop();
|
|
230
|
+
}
|
|
231
|
+
}, _callee2);
|
|
232
|
+
}));
|
|
233
|
+
return function (_x2) {
|
|
234
|
+
return _ref2.apply(this, arguments);
|
|
235
|
+
};
|
|
236
|
+
}());
|
|
187
237
|
_this.mediaHelpers = mediaHelpersModule;
|
|
188
238
|
|
|
189
239
|
/**
|
|
@@ -217,15 +267,17 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
217
267
|
* @memberof Meetings
|
|
218
268
|
*/
|
|
219
269
|
_this.personalMeetingRoom = null;
|
|
270
|
+
|
|
220
271
|
/**
|
|
221
|
-
* The Reachability object to interact with server
|
|
272
|
+
* The Reachability object to interact with server
|
|
222
273
|
* starts as null
|
|
223
274
|
* @instance
|
|
224
275
|
* @type {Object}
|
|
225
276
|
* @private
|
|
226
277
|
* @memberof Meetings
|
|
227
278
|
*/
|
|
228
|
-
|
|
279
|
+
// @ts-ignore
|
|
280
|
+
_this.reachability = new _reachability.default(_this.webex);
|
|
229
281
|
|
|
230
282
|
/**
|
|
231
283
|
* If the meetings plugin has been registered and listening via {@link Meetings#register}
|
|
@@ -254,8 +306,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
254
306
|
* @memberof Meetings
|
|
255
307
|
*/
|
|
256
308
|
_this.media = {
|
|
257
|
-
getUserMedia: _media.default.getUserMedia
|
|
258
|
-
getSupportedDevice: _media.default.getSupportedDevice
|
|
309
|
+
getUserMedia: _media.default.getUserMedia
|
|
259
310
|
};
|
|
260
311
|
_this.onReady();
|
|
261
312
|
return _this;
|
|
@@ -277,8 +328,12 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
277
328
|
var breakoutLocus = this.meetingCollection.getActiveBreakoutLocus(breakoutUrl);
|
|
278
329
|
var isSelfJoined = (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self = newLocus.self) === null || _newLocus$self === void 0 ? void 0 : _newLocus$self.state) === _constants._JOINED_;
|
|
279
330
|
var isSelfMoved = (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self2 = newLocus.self) === null || _newLocus$self2 === void 0 ? void 0 : _newLocus$self2.state) === _constants._LEFT_ && (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self3 = newLocus.self) === null || _newLocus$self3 === void 0 ? void 0 : _newLocus$self3.reason) === _constants._MOVED_;
|
|
280
|
-
|
|
281
|
-
var
|
|
331
|
+
// @ts-ignore
|
|
332
|
+
var deviceFromNewLocus = _util2.default.getThisDevice(newLocus, this.webex.internal.device.url);
|
|
333
|
+
var isResourceMovedOnThisDevice = (deviceFromNewLocus === null || deviceFromNewLocus === void 0 ? void 0 : deviceFromNewLocus.state) === _constants._LEFT_ && (deviceFromNewLocus === null || deviceFromNewLocus === void 0 ? void 0 : deviceFromNewLocus.reason) === _constants._MOVED_;
|
|
334
|
+
var isNewLocusJoinThisDevice = _util2.default.joinedOnThisDevice(meeting, newLocus,
|
|
335
|
+
// @ts-ignore
|
|
336
|
+
this.webex.internal.device.url);
|
|
282
337
|
var isBreakoutLocusJoinThisDevice = (breakoutLocus === null || breakoutLocus === void 0 ? void 0 : (_breakoutLocus$joined = breakoutLocus.joinedWith) === null || _breakoutLocus$joined === void 0 ? void 0 : _breakoutLocus$joined.correlationId) && breakoutLocus.joinedWith.correlationId === (meeting === null || meeting === void 0 ? void 0 : meeting.correlationId);
|
|
283
338
|
if (isSelfJoined && isNewLocusJoinThisDevice) {
|
|
284
339
|
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> self this device shown as JOINED in the main session');
|
|
@@ -297,8 +352,12 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
297
352
|
_loggerProxy.default.logger.log("Meetings:index#isNeedHandleMainLocus --> there is active breakout session and joined on this device, and don't need to handle main session: ".concat(breakoutUrl));
|
|
298
353
|
return false;
|
|
299
354
|
}
|
|
300
|
-
if (isSelfMoved && newLocus !== null && newLocus !== void 0 && (_newLocus$self4 = newLocus.self) !== null && _newLocus$self4 !== void 0 && _newLocus$self4.removed) {
|
|
301
|
-
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> self moved main locus with self removed status, not need to handle');
|
|
355
|
+
if (isSelfMoved && (newLocus !== null && newLocus !== void 0 && (_newLocus$self4 = newLocus.self) !== null && _newLocus$self4 !== void 0 && _newLocus$self4.removed || isResourceMovedOnThisDevice)) {
|
|
356
|
+
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> self moved main locus with self removed status or with device resource moved, not need to handle');
|
|
357
|
+
return false;
|
|
358
|
+
}
|
|
359
|
+
if (isSelfJoined && isResourceMovedOnThisDevice) {
|
|
360
|
+
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> self device left&moved in main locus with self joined status, not need to handle');
|
|
302
361
|
return false;
|
|
303
362
|
}
|
|
304
363
|
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> this is a normal main session locusDTO update case');
|
|
@@ -317,8 +376,8 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
317
376
|
key: "isNeedHandleLocusDTO",
|
|
318
377
|
value: function isNeedHandleLocusDTO(meeting, newLocus) {
|
|
319
378
|
if (newLocus) {
|
|
320
|
-
var _newLocus$
|
|
321
|
-
var isNewLocusAsBreakout = (
|
|
379
|
+
var _newLocus$self5, _newLocus$self6;
|
|
380
|
+
var isNewLocusAsBreakout = _util2.default.isBreakoutLocusDTO(newLocus);
|
|
322
381
|
var isSelfMoved = (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self5 = newLocus.self) === null || _newLocus$self5 === void 0 ? void 0 : _newLocus$self5.state) === _constants._LEFT_ && (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self6 = newLocus.self) === null || _newLocus$self6 === void 0 ? void 0 : _newLocus$self6.reason) === _constants._MOVED_;
|
|
323
382
|
if (!meeting) {
|
|
324
383
|
if (isNewLocusAsBreakout) {
|
|
@@ -336,6 +395,29 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
336
395
|
return true;
|
|
337
396
|
}
|
|
338
397
|
|
|
398
|
+
/**
|
|
399
|
+
* get corresponding meeting object by locus data
|
|
400
|
+
* @param {Object} data a locus event
|
|
401
|
+
* @param {String} data.locusUrl
|
|
402
|
+
* @param {Object} data.locus
|
|
403
|
+
* @returns {Object}
|
|
404
|
+
* @private
|
|
405
|
+
* @memberof Meetings
|
|
406
|
+
*/
|
|
407
|
+
}, {
|
|
408
|
+
key: "getCorrespondingMeetingByLocus",
|
|
409
|
+
value: function getCorrespondingMeetingByLocus(data) {
|
|
410
|
+
var _data$locus$info, _data$locus, _data$locus$info2;
|
|
411
|
+
// getting meeting by correlationId. This will happen for the new event
|
|
412
|
+
// Either the locus
|
|
413
|
+
// TODO : Add check for the callBack Address
|
|
414
|
+
return this.meetingCollection.getByKey(_constants.LOCUS_URL, data.locusUrl) ||
|
|
415
|
+
// @ts-ignore
|
|
416
|
+
this.meetingCollection.getByKey(_constants.CORRELATION_ID,
|
|
417
|
+
// @ts-ignore
|
|
418
|
+
_util2.default.checkForCorrelationId(this.webex.internal.device.url, data.locus)) || this.meetingCollection.getByKey(_constants.SIP_URI, data.locus.self && data.locus.self.callbackInfo && data.locus.self.callbackInfo.callbackAddress) || ((_data$locus$info = data.locus.info) !== null && _data$locus$info !== void 0 && _data$locus$info.isUnifiedSpaceMeeting ? undefined : this.meetingCollection.getByKey(_constants.CONVERSATION_URL, data.locus.conversationUrl)) || this.meetingCollection.getByKey(_constants.MEETINGNUMBER, (_data$locus = data.locus) === null || _data$locus === void 0 ? void 0 : (_data$locus$info2 = _data$locus.info) === null || _data$locus$info2 === void 0 ? void 0 : _data$locus$info2.webExMeetingId);
|
|
419
|
+
}
|
|
420
|
+
|
|
339
421
|
/**
|
|
340
422
|
* handle locus events and takes meeting actions with them as they come in
|
|
341
423
|
* @param {Object} data a locus event
|
|
@@ -350,22 +432,11 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
350
432
|
}, {
|
|
351
433
|
key: "handleLocusEvent",
|
|
352
434
|
value: function handleLocusEvent(data) {
|
|
353
|
-
var _data$
|
|
354
|
-
_data$locus,
|
|
355
|
-
_data$locus$info2,
|
|
356
|
-
_data$locus2,
|
|
435
|
+
var _data$locus2,
|
|
357
436
|
_data$locus2$replaces,
|
|
358
437
|
_this2 = this;
|
|
359
438
|
var useRandomDelayForInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
360
|
-
var meeting =
|
|
361
|
-
// getting meeting by correlationId. This will happen for the new event
|
|
362
|
-
// Either the locus
|
|
363
|
-
// TODO : Add check for the callBack Address
|
|
364
|
-
meeting = this.meetingCollection.getByKey(_constants.LOCUS_URL, data.locusUrl) ||
|
|
365
|
-
// @ts-ignore
|
|
366
|
-
this.meetingCollection.getByKey(_constants.CORRELATION_ID,
|
|
367
|
-
// @ts-ignore
|
|
368
|
-
_util2.default.checkForCorrelationId(this.webex.internal.device.url, data.locus)) || this.meetingCollection.getByKey(_constants.SIP_URI, data.locus.self && data.locus.self.callbackInfo && data.locus.self.callbackInfo.callbackAddress) || ((_data$locus$info = data.locus.info) !== null && _data$locus$info !== void 0 && _data$locus$info.isUnifiedSpaceMeeting ? undefined : this.meetingCollection.getByKey(_constants.CONVERSATION_URL, data.locus.conversationUrl)) || this.meetingCollection.getByKey(_constants.MEETINGNUMBER, (_data$locus = data.locus) === null || _data$locus === void 0 ? void 0 : (_data$locus$info2 = _data$locus.info) === null || _data$locus$info2 === void 0 ? void 0 : _data$locus$info2.webExMeetingId);
|
|
439
|
+
var meeting = this.getCorrespondingMeetingByLocus(data);
|
|
369
440
|
|
|
370
441
|
// Special case when locus has got replaced, This only happend once if a replace locus exists
|
|
371
442
|
// https://sqbu-github.cisco.com/WebExSquared/locus/wiki/Locus-changing-mid-call
|
|
@@ -374,6 +445,9 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
374
445
|
// Always the last element in the replace is the active one
|
|
375
446
|
meeting = this.meetingCollection.getByKey(_constants.LOCUS_URL, data.locus.replaces[data.locus.replaces.length - 1].locusUrl);
|
|
376
447
|
}
|
|
448
|
+
if (meeting && !_util2.default.isBreakoutLocusDTO(data.locus)) {
|
|
449
|
+
meeting.locusInfo.updateMainSessionLocusCache(data.locus);
|
|
450
|
+
}
|
|
377
451
|
if (!this.isNeedHandleLocusDTO(meeting, data.locus)) {
|
|
378
452
|
_loggerProxy.default.logger.log("Meetings:index#handleLocusEvent --> doesn't need to process locus event");
|
|
379
453
|
return;
|
|
@@ -417,6 +491,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
417
491
|
|
|
418
492
|
// It's a new meeting so initialize the locus data
|
|
419
493
|
meeting.locusInfo.initialSetup(data.locus);
|
|
494
|
+
_this2.checkHandleBreakoutLocus(data.locus);
|
|
420
495
|
}).catch(function (e) {
|
|
421
496
|
_loggerProxy.default.logger.error(e);
|
|
422
497
|
}).finally(function () {
|
|
@@ -424,11 +499,14 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
424
499
|
// because the other user left so before sending 'added' event make sure it exists in the collection
|
|
425
500
|
|
|
426
501
|
if (_this2.getMeetingByType(_constants._ID_, meeting.id)) {
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
trigger:
|
|
502
|
+
// @ts-ignore
|
|
503
|
+
_this2.webex.internal.newMetrics.submitClientEvent({
|
|
504
|
+
name: 'client.call.remote-started',
|
|
505
|
+
payload: {
|
|
506
|
+
trigger: 'mercury-event'
|
|
507
|
+
},
|
|
508
|
+
options: {
|
|
509
|
+
meetingId: meeting.id
|
|
432
510
|
}
|
|
433
511
|
});
|
|
434
512
|
_triggerProxy.default.trigger(_this2, {
|
|
@@ -542,7 +620,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
542
620
|
// @ts-ignore
|
|
543
621
|
this.webex.once(_constants.READY, function () {
|
|
544
622
|
// @ts-ignore
|
|
545
|
-
|
|
623
|
+
_config.default.set(_this4.config);
|
|
546
624
|
// @ts-ignore
|
|
547
625
|
_loggerConfig.default.set(_this4.config.logging);
|
|
548
626
|
// @ts-ignore
|
|
@@ -579,7 +657,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
579
657
|
disableNotifications: true
|
|
580
658
|
});
|
|
581
659
|
// @ts-ignore
|
|
582
|
-
_metrics.default.initialSetup(_this4.
|
|
660
|
+
_metrics.default.initialSetup(_this4.webex);
|
|
583
661
|
});
|
|
584
662
|
}
|
|
585
663
|
|
|
@@ -729,6 +807,17 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
729
807
|
);
|
|
730
808
|
}
|
|
731
809
|
|
|
810
|
+
/**
|
|
811
|
+
* Creates a noise reduction effect
|
|
812
|
+
*
|
|
813
|
+
* @param {INoiseReductionEffect} options optional custom effect options
|
|
814
|
+
* @returns {Promise<effect>} noise reduction effect.
|
|
815
|
+
* @public
|
|
816
|
+
* @memberof Meetings
|
|
817
|
+
*/
|
|
818
|
+
}, {
|
|
819
|
+
key: "uploadLogs",
|
|
820
|
+
value:
|
|
732
821
|
/**
|
|
733
822
|
* Uploads logs to the webex services for tracking
|
|
734
823
|
* @param {Object} [options={}]
|
|
@@ -741,9 +830,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
741
830
|
* @param {String} [options.orgId] org id
|
|
742
831
|
* @returns {String} feedback ID logs were submitted under
|
|
743
832
|
*/
|
|
744
|
-
|
|
745
|
-
key: "uploadLogs",
|
|
746
|
-
value: function uploadLogs() {
|
|
833
|
+
function uploadLogs() {
|
|
747
834
|
var _this7 = this;
|
|
748
835
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
749
836
|
_loggerProxy.default.logger.info('Meetings:index#uploadLogs --> uploading logs');
|
|
@@ -776,19 +863,6 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
776
863
|
});
|
|
777
864
|
}
|
|
778
865
|
|
|
779
|
-
/**
|
|
780
|
-
* initializes the reachability instance for Meetings
|
|
781
|
-
* @returns {undefined}
|
|
782
|
-
* @public
|
|
783
|
-
* @memberof Meetings
|
|
784
|
-
*/
|
|
785
|
-
}, {
|
|
786
|
-
key: "setReachability",
|
|
787
|
-
value: function setReachability() {
|
|
788
|
-
// @ts-ignore
|
|
789
|
-
this.reachability = new _reachability.default(this.webex);
|
|
790
|
-
}
|
|
791
|
-
|
|
792
866
|
/**
|
|
793
867
|
* gets the reachability instance for Meetings
|
|
794
868
|
* @returns {Reachability}
|
|
@@ -810,9 +884,6 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
810
884
|
}, {
|
|
811
885
|
key: "startReachability",
|
|
812
886
|
value: function startReachability() {
|
|
813
|
-
if (!this.reachability) {
|
|
814
|
-
this.setReachability();
|
|
815
|
-
}
|
|
816
887
|
return this.getReachability().gatherReachability();
|
|
817
888
|
}
|
|
818
889
|
|
|
@@ -846,6 +917,23 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
846
917
|
if (res) {
|
|
847
918
|
_this9.preferredWebexSite = _util2.default.parseDefaultSiteFromMeetingPreferences(res);
|
|
848
919
|
}
|
|
920
|
+
|
|
921
|
+
// fall back to getting the preferred site from the user information
|
|
922
|
+
if (!_this9.preferredWebexSite) {
|
|
923
|
+
// @ts-ignore
|
|
924
|
+
return _this9.webex.internal.user.get().then(function (user) {
|
|
925
|
+
var _user$userPreferences, _user$userPreferences2;
|
|
926
|
+
var preferredWebexSite = user === null || user === void 0 ? void 0 : (_user$userPreferences = user.userPreferences) === null || _user$userPreferences === void 0 ? void 0 : (_user$userPreferences2 = _user$userPreferences.userPreferencesItems) === null || _user$userPreferences2 === void 0 ? void 0 : _user$userPreferences2.preferredWebExSite;
|
|
927
|
+
if (preferredWebexSite) {
|
|
928
|
+
_this9.preferredWebexSite = preferredWebexSite;
|
|
929
|
+
} else {
|
|
930
|
+
throw new Error('site not found');
|
|
931
|
+
}
|
|
932
|
+
}).catch(function () {
|
|
933
|
+
_loggerProxy.default.logger.error('Failed to fetch preferred site from user - no site will be set');
|
|
934
|
+
});
|
|
935
|
+
}
|
|
936
|
+
return _promise.default.resolve();
|
|
849
937
|
});
|
|
850
938
|
}
|
|
851
939
|
|
|
@@ -888,6 +976,8 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
888
976
|
* @param {string} destination - sipURL, spaceId, phonenumber, or locus object}
|
|
889
977
|
* @param {string} [type] - the optional specified type, such as locusId
|
|
890
978
|
* @param {Boolean} useRandomDelayForInfo - whether a random delay should be added to fetching meeting info
|
|
979
|
+
* @param {Object} infoExtraParams extra parameters to be provided when fetching meeting info
|
|
980
|
+
* @param {string} correlationId - the optional specified correlationId
|
|
891
981
|
* @returns {Promise<Meeting>} A new Meeting.
|
|
892
982
|
* @public
|
|
893
983
|
* @memberof Meetings
|
|
@@ -898,6 +988,8 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
898
988
|
var _this10 = this;
|
|
899
989
|
var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
900
990
|
var useRandomDelayForInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
991
|
+
var infoExtraParams = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
992
|
+
var correlationId = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : undefined;
|
|
901
993
|
// TODO: type should be from a dictionary
|
|
902
994
|
|
|
903
995
|
// Validate meeting information based on the provided destination and
|
|
@@ -936,7 +1028,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
936
1028
|
// Validate if a meeting was found.
|
|
937
1029
|
if (!meeting) {
|
|
938
1030
|
// Create a meeting based on the normalized destination and type.
|
|
939
|
-
return _this10.createMeeting(targetDest, type, useRandomDelayForInfo).then(function (createdMeeting) {
|
|
1031
|
+
return _this10.createMeeting(targetDest, type, useRandomDelayForInfo, infoExtraParams, correlationId).then(function (createdMeeting) {
|
|
940
1032
|
// If the meeting was successfully created.
|
|
941
1033
|
if (createdMeeting && createdMeeting.on) {
|
|
942
1034
|
// Create a destruction event for the meeting.
|
|
@@ -988,6 +1080,8 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
988
1080
|
* @param {String} destination see create()
|
|
989
1081
|
* @param {String} type see create()
|
|
990
1082
|
* @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
|
|
1083
|
+
* @param {Object} infoExtraParams extra parameters to be provided when fetching meeting info
|
|
1084
|
+
* @param {String} correlationId the optional specified correlationId
|
|
991
1085
|
* @returns {Promise} a new meeting instance complete with meeting info and destination
|
|
992
1086
|
* @private
|
|
993
1087
|
* @memberof Meetings
|
|
@@ -995,9 +1089,11 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
995
1089
|
}, {
|
|
996
1090
|
key: "createMeeting",
|
|
997
1091
|
value: function () {
|
|
998
|
-
var _createMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
1092
|
+
var _createMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(destination) {
|
|
999
1093
|
var type,
|
|
1000
1094
|
useRandomDelayForInfo,
|
|
1095
|
+
infoExtraParams,
|
|
1096
|
+
correlationId,
|
|
1001
1097
|
meeting,
|
|
1002
1098
|
_destination$fullStat,
|
|
1003
1099
|
waitingTime,
|
|
@@ -1009,12 +1105,14 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1009
1105
|
isMeetingActive,
|
|
1010
1106
|
enableUnifiedMeetings,
|
|
1011
1107
|
meetingAddedType,
|
|
1012
|
-
|
|
1013
|
-
return _regenerator.default.wrap(function
|
|
1014
|
-
while (1) switch (
|
|
1108
|
+
_args3 = arguments;
|
|
1109
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
1110
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
1015
1111
|
case 0:
|
|
1016
|
-
type =
|
|
1017
|
-
useRandomDelayForInfo =
|
|
1112
|
+
type = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : null;
|
|
1113
|
+
useRandomDelayForInfo = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : false;
|
|
1114
|
+
infoExtraParams = _args3.length > 3 && _args3[3] !== undefined ? _args3[3] : {};
|
|
1115
|
+
correlationId = _args3.length > 4 && _args3[4] !== undefined ? _args3[4] : undefined;
|
|
1018
1116
|
meeting = new _meeting.default({
|
|
1019
1117
|
// @ts-ignore
|
|
1020
1118
|
userId: this.webex.internal.device.userId,
|
|
@@ -1026,13 +1124,14 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1026
1124
|
// pass the locus object if present
|
|
1027
1125
|
meetingInfoProvider: this.meetingInfo,
|
|
1028
1126
|
destination: destination,
|
|
1029
|
-
destinationType: type
|
|
1127
|
+
destinationType: type,
|
|
1128
|
+
correlationId: correlationId
|
|
1030
1129
|
}, {
|
|
1031
1130
|
// @ts-ignore
|
|
1032
1131
|
parent: this.webex
|
|
1033
1132
|
});
|
|
1034
1133
|
this.meetingCollection.set(meeting);
|
|
1035
|
-
|
|
1134
|
+
_context3.prev = 6;
|
|
1036
1135
|
// if no participant has joined the scheduled meeting (meaning meeting is not active) and we get a locusEvent,
|
|
1037
1136
|
// it means the meeting will start in 5-6 min. In that case, we want to fetchMeetingInfo
|
|
1038
1137
|
// between 5 and 2 min (random between 3 minutes) before the meeting starts
|
|
@@ -1049,32 +1148,36 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1049
1148
|
isMeetingActive = !!((_destination$fullStat = destination.fullState) !== null && _destination$fullStat !== void 0 && _destination$fullStat.active); // @ts-ignore
|
|
1050
1149
|
enableUnifiedMeetings = this.config.experimental.enableUnifiedMeetings;
|
|
1051
1150
|
if (!(enableUnifiedMeetings && !isMeetingActive && useRandomDelayForInfo && waitingTime > 0)) {
|
|
1052
|
-
|
|
1151
|
+
_context3.next = 16;
|
|
1053
1152
|
break;
|
|
1054
1153
|
}
|
|
1055
1154
|
meeting.fetchMeetingInfoTimeoutId = setTimeout(function () {
|
|
1056
|
-
return meeting.fetchMeetingInfo({
|
|
1155
|
+
return meeting.fetchMeetingInfo({
|
|
1156
|
+
extraParams: infoExtraParams
|
|
1157
|
+
});
|
|
1057
1158
|
}, waitingTime);
|
|
1058
1159
|
meeting.parseMeetingInfo(undefined, destination);
|
|
1059
|
-
|
|
1160
|
+
_context3.next = 18;
|
|
1060
1161
|
break;
|
|
1061
|
-
case 14:
|
|
1062
|
-
_context.next = 16;
|
|
1063
|
-
return meeting.fetchMeetingInfo({});
|
|
1064
1162
|
case 16:
|
|
1065
|
-
|
|
1066
|
-
|
|
1163
|
+
_context3.next = 18;
|
|
1164
|
+
return meeting.fetchMeetingInfo({
|
|
1165
|
+
extraParams: infoExtraParams
|
|
1166
|
+
});
|
|
1067
1167
|
case 18:
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1168
|
+
_context3.next = 24;
|
|
1169
|
+
break;
|
|
1170
|
+
case 20:
|
|
1171
|
+
_context3.prev = 20;
|
|
1172
|
+
_context3.t0 = _context3["catch"](6);
|
|
1173
|
+
if (!(_context3.t0 instanceof _captchaError.default) && !(_context3.t0 instanceof _passwordError.default) && !(_context3.t0 instanceof _permission.default)) {
|
|
1071
1174
|
// if there is no meeting info we assume its a 1:1 call or wireless share
|
|
1072
1175
|
_loggerProxy.default.logger.info("Meetings:index#createMeeting --> Info Unable to fetch meeting info for ".concat(destination, "."));
|
|
1073
1176
|
_loggerProxy.default.logger.info('Meetings:index#createMeeting --> Info assuming this destination is a 1:1 or wireless share');
|
|
1074
1177
|
}
|
|
1075
|
-
_loggerProxy.default.logger.debug("Meetings:index#createMeeting --> Debug ".concat(
|
|
1076
|
-
case
|
|
1077
|
-
|
|
1178
|
+
_loggerProxy.default.logger.debug("Meetings:index#createMeeting --> Debug ".concat(_context3.t0, " fetching /meetingInfo for creation."));
|
|
1179
|
+
case 24:
|
|
1180
|
+
_context3.prev = 24;
|
|
1078
1181
|
// For type LOCUS_ID we need to parse the locus object to get the information
|
|
1079
1182
|
// about the caller and callee
|
|
1080
1183
|
// Meeting Added event will be created in `handleLocusEvent`
|
|
@@ -1094,16 +1197,16 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1094
1197
|
type: meetingAddedType
|
|
1095
1198
|
});
|
|
1096
1199
|
}
|
|
1097
|
-
return
|
|
1098
|
-
case
|
|
1099
|
-
return
|
|
1100
|
-
case
|
|
1200
|
+
return _context3.finish(24);
|
|
1201
|
+
case 27:
|
|
1202
|
+
return _context3.abrupt("return", meeting);
|
|
1203
|
+
case 28:
|
|
1101
1204
|
case "end":
|
|
1102
|
-
return
|
|
1205
|
+
return _context3.stop();
|
|
1103
1206
|
}
|
|
1104
|
-
},
|
|
1207
|
+
}, _callee3, this, [[6, 20, 24, 27]]);
|
|
1105
1208
|
}));
|
|
1106
|
-
function createMeeting(
|
|
1209
|
+
function createMeeting(_x3) {
|
|
1107
1210
|
return _createMeeting.apply(this, arguments);
|
|
1108
1211
|
}
|
|
1109
1212
|
return createMeeting;
|
|
@@ -1153,7 +1256,8 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1153
1256
|
return this.request.getActiveMeetings().then(function (locusArray) {
|
|
1154
1257
|
var activeLocusUrl = [];
|
|
1155
1258
|
if (locusArray !== null && locusArray !== void 0 && locusArray.loci && locusArray.loci.length > 0) {
|
|
1156
|
-
locusArray.loci
|
|
1259
|
+
var lociToUpdate = _this11.sortLocusArrayToUpdate(locusArray.loci);
|
|
1260
|
+
lociToUpdate.forEach(function (locus) {
|
|
1157
1261
|
activeLocusUrl.push(locus.url);
|
|
1158
1262
|
_this11.handleLocusEvent({
|
|
1159
1263
|
locus: locus,
|
|
@@ -1181,6 +1285,77 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1181
1285
|
});
|
|
1182
1286
|
}
|
|
1183
1287
|
|
|
1288
|
+
/**
|
|
1289
|
+
* sort out locus array for initial creating
|
|
1290
|
+
* @param {Array} loci original locus array
|
|
1291
|
+
* @returns {undefined}
|
|
1292
|
+
* @public
|
|
1293
|
+
* @memberof Meetings
|
|
1294
|
+
*/
|
|
1295
|
+
}, {
|
|
1296
|
+
key: "sortLocusArrayToUpdate",
|
|
1297
|
+
value: function sortLocusArrayToUpdate(loci) {
|
|
1298
|
+
var _this12 = this;
|
|
1299
|
+
var mainLoci = loci.filter(function (locus) {
|
|
1300
|
+
return !_util2.default.isBreakoutLocusDTO(locus);
|
|
1301
|
+
});
|
|
1302
|
+
var breakoutLoci = loci.filter(function (locus) {
|
|
1303
|
+
return _util2.default.isValidBreakoutLocus(locus);
|
|
1304
|
+
});
|
|
1305
|
+
this.breakoutLocusForHandleLater = [];
|
|
1306
|
+
var lociToUpdate = (0, _toConsumableArray2.default)(mainLoci);
|
|
1307
|
+
breakoutLoci.forEach(function (breakoutLocus) {
|
|
1308
|
+
var associateMainLocus = mainLoci.find(function (mainLocus) {
|
|
1309
|
+
var _mainLocus$controls, _mainLocus$controls$b, _breakoutLocus$contro, _breakoutLocus$contro2;
|
|
1310
|
+
return ((_mainLocus$controls = mainLocus.controls) === null || _mainLocus$controls === void 0 ? void 0 : (_mainLocus$controls$b = _mainLocus$controls.breakout) === null || _mainLocus$controls$b === void 0 ? void 0 : _mainLocus$controls$b.url) === ((_breakoutLocus$contro = breakoutLocus.controls) === null || _breakoutLocus$contro === void 0 ? void 0 : (_breakoutLocus$contro2 = _breakoutLocus$contro.breakout) === null || _breakoutLocus$contro2 === void 0 ? void 0 : _breakoutLocus$contro2.url);
|
|
1311
|
+
});
|
|
1312
|
+
var existCorrespondingMeeting = _this12.getCorrespondingMeetingByLocus({
|
|
1313
|
+
locus: breakoutLocus,
|
|
1314
|
+
locusUrl: breakoutLocus.url
|
|
1315
|
+
});
|
|
1316
|
+
if (associateMainLocus && !existCorrespondingMeeting) {
|
|
1317
|
+
// if exists both main session and breakout session locus of the same non-exist meeting, handle main locus first,
|
|
1318
|
+
// after meeting create with main locus, then handle the associate breakout locus.
|
|
1319
|
+
// if only handle breakout locus, will miss some date
|
|
1320
|
+
_this12.breakoutLocusForHandleLater.push(breakoutLocus);
|
|
1321
|
+
} else {
|
|
1322
|
+
lociToUpdate.push(breakoutLocus);
|
|
1323
|
+
}
|
|
1324
|
+
});
|
|
1325
|
+
return lociToUpdate;
|
|
1326
|
+
}
|
|
1327
|
+
|
|
1328
|
+
/**
|
|
1329
|
+
* check breakout locus which waiting for main locus's meeting to be created, then handle the breakout locus
|
|
1330
|
+
* @param {Object} newCreatedLocus the locus which just create meeting object of it
|
|
1331
|
+
* @returns {undefined}
|
|
1332
|
+
* @public
|
|
1333
|
+
* @memberof Meetings
|
|
1334
|
+
*/
|
|
1335
|
+
}, {
|
|
1336
|
+
key: "checkHandleBreakoutLocus",
|
|
1337
|
+
value: function checkHandleBreakoutLocus(newCreatedLocus) {
|
|
1338
|
+
if (!newCreatedLocus || !this.breakoutLocusForHandleLater || !this.breakoutLocusForHandleLater.length) {
|
|
1339
|
+
return;
|
|
1340
|
+
}
|
|
1341
|
+
if (_util2.default.isBreakoutLocusDTO(newCreatedLocus)) {
|
|
1342
|
+
return;
|
|
1343
|
+
}
|
|
1344
|
+
var existIndex = this.breakoutLocusForHandleLater.findIndex(function (breakoutLocus) {
|
|
1345
|
+
var _breakoutLocus$contro3, _breakoutLocus$contro4, _newCreatedLocus$cont, _newCreatedLocus$cont2;
|
|
1346
|
+
return ((_breakoutLocus$contro3 = breakoutLocus.controls) === null || _breakoutLocus$contro3 === void 0 ? void 0 : (_breakoutLocus$contro4 = _breakoutLocus$contro3.breakout) === null || _breakoutLocus$contro4 === void 0 ? void 0 : _breakoutLocus$contro4.url) === ((_newCreatedLocus$cont = newCreatedLocus.controls) === null || _newCreatedLocus$cont === void 0 ? void 0 : (_newCreatedLocus$cont2 = _newCreatedLocus$cont.breakout) === null || _newCreatedLocus$cont2 === void 0 ? void 0 : _newCreatedLocus$cont2.url);
|
|
1347
|
+
});
|
|
1348
|
+
if (existIndex < 0) {
|
|
1349
|
+
return;
|
|
1350
|
+
}
|
|
1351
|
+
var associateBreakoutLocus = this.breakoutLocusForHandleLater[existIndex];
|
|
1352
|
+
this.handleLocusEvent({
|
|
1353
|
+
locus: associateBreakoutLocus,
|
|
1354
|
+
locusUrl: associateBreakoutLocus.url
|
|
1355
|
+
});
|
|
1356
|
+
this.breakoutLocusForHandleLater.splice(existIndex, 1);
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1184
1359
|
/**
|
|
1185
1360
|
* Get all scheduled meetings.
|
|
1186
1361
|
* @param {object} options
|