@webex/plugin-meetings 3.1.0-next.9 → 3.2.0
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/annotation/annotation.types.d.ts +42 -0
- package/dist/annotation/constants.d.ts +31 -0
- package/dist/annotation/index.d.ts +117 -0
- package/dist/breakouts/breakout.d.ts +8 -0
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/collection.d.ts +5 -0
- package/dist/breakouts/edit-lock-error.d.ts +15 -0
- package/dist/breakouts/events.d.ts +8 -0
- package/dist/breakouts/index.d.ts +5 -0
- package/dist/breakouts/index.js +1 -1
- package/dist/breakouts/request.d.ts +22 -0
- package/dist/breakouts/utils.d.ts +15 -0
- package/dist/common/browser-detection.d.ts +9 -0
- package/dist/common/collection.d.ts +48 -0
- package/dist/common/config.d.ts +2 -0
- package/dist/common/errors/captcha-error.d.ts +15 -0
- package/dist/common/errors/intent-to-join.d.ts +16 -0
- package/dist/common/errors/join-meeting.d.ts +17 -0
- package/dist/common/errors/media.d.ts +15 -0
- package/dist/common/errors/no-meeting-info.d.ts +14 -0
- package/dist/common/errors/parameter.d.ts +15 -0
- package/dist/common/errors/password-error.d.ts +15 -0
- package/dist/common/errors/permission.d.ts +14 -0
- package/dist/common/errors/reclaim-host-role-errors.d.ts +60 -0
- package/dist/common/errors/reconnection-in-progress.d.ts +9 -0
- package/dist/common/errors/reconnection-in-progress.js +34 -0
- package/dist/common/errors/reconnection-in-progress.js.map +1 -0
- package/dist/common/errors/reconnection.d.ts +15 -0
- package/dist/common/errors/stats.d.ts +15 -0
- package/dist/common/errors/webex-errors.d.ts +93 -0
- package/dist/common/errors/webex-meetings-error.d.ts +20 -0
- package/dist/common/events/events-scope.d.ts +17 -0
- package/dist/common/events/events.d.ts +12 -0
- package/dist/common/events/trigger-proxy.d.ts +2 -0
- package/dist/common/events/util.d.ts +2 -0
- package/dist/common/logs/logger-config.d.ts +2 -0
- package/dist/common/logs/logger-proxy.d.ts +2 -0
- package/dist/common/logs/request.d.ts +36 -0
- package/dist/common/queue.d.ts +34 -0
- package/dist/config.d.ts +73 -0
- package/dist/constants.d.ts +1088 -0
- package/dist/constants.js +6 -3
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/constants.d.ts +4 -0
- package/dist/controls-options-manager/enums.d.ts +15 -0
- package/dist/controls-options-manager/index.d.ts +136 -0
- package/dist/controls-options-manager/types.d.ts +43 -0
- package/dist/controls-options-manager/util.d.ts +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/interceptors/index.d.ts +2 -0
- package/dist/interceptors/locusRetry.d.ts +27 -0
- package/dist/interpretation/collection.d.ts +5 -0
- package/dist/interpretation/index.d.ts +5 -0
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.d.ts +5 -0
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/controlsUtils.d.ts +2 -0
- package/dist/locus-info/embeddedAppsUtils.d.ts +2 -0
- package/dist/locus-info/fullState.d.ts +2 -0
- package/dist/locus-info/hostUtils.d.ts +2 -0
- package/dist/locus-info/index.d.ts +322 -0
- package/dist/locus-info/infoUtils.d.ts +2 -0
- package/dist/locus-info/mediaSharesUtils.d.ts +2 -0
- package/dist/locus-info/parser.d.ts +272 -0
- package/dist/locus-info/selfUtils.d.ts +2 -0
- package/dist/media/MediaConnectionAwaiter.d.ts +61 -0
- package/dist/media/index.d.ts +34 -0
- package/dist/media/properties.d.ts +93 -0
- package/dist/media/util.d.ts +2 -0
- package/dist/mediaQualityMetrics/config.d.ts +241 -0
- package/dist/mediaQualityMetrics/config.js +10 -10
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/in-meeting-actions.d.ts +167 -0
- package/dist/meeting/index.d.ts +1825 -0
- package/dist/meeting/index.js +112 -64
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.d.ts +74 -0
- package/dist/meeting/locusMediaRequest.js +27 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -1
- package/dist/meeting/muteState.d.ts +178 -0
- package/dist/meeting/request.d.ts +295 -0
- package/dist/meeting/request.type.d.ts +11 -0
- package/dist/meeting/state.d.ts +9 -0
- package/dist/meeting/util.d.ts +119 -0
- package/dist/meeting/util.js +0 -16
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting/voicea-meeting.d.ts +16 -0
- package/dist/meeting/voicea-meeting.js +37 -49
- package/dist/meeting/voicea-meeting.js.map +1 -1
- package/dist/meeting-info/collection.d.ts +20 -0
- package/dist/meeting-info/index.d.ts +69 -0
- package/dist/meeting-info/meeting-info-v2.d.ts +123 -0
- package/dist/meeting-info/request.d.ts +22 -0
- package/dist/meeting-info/util.d.ts +2 -0
- package/dist/meeting-info/utilv2.d.ts +2 -0
- package/dist/meetings/collection.d.ts +40 -0
- package/dist/meetings/index.d.ts +398 -0
- package/dist/meetings/index.js +12 -28
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/meetings.types.d.ts +4 -0
- package/dist/meetings/request.d.ts +27 -0
- package/dist/meetings/util.d.ts +18 -0
- package/dist/member/index.d.ts +160 -0
- package/dist/member/types.d.ts +32 -0
- package/dist/member/util.d.ts +2 -0
- package/dist/members/collection.d.ts +29 -0
- package/dist/members/index.d.ts +353 -0
- package/dist/members/request.d.ts +114 -0
- package/dist/members/types.d.ts +25 -0
- package/dist/members/util.d.ts +215 -0
- package/dist/metrics/constants.d.ts +70 -0
- package/dist/metrics/index.d.ts +45 -0
- package/dist/multistream/mediaRequestManager.d.ts +119 -0
- package/dist/multistream/receiveSlot.d.ts +68 -0
- package/dist/multistream/receiveSlotManager.d.ts +56 -0
- package/dist/multistream/remoteMedia.d.ts +72 -0
- package/dist/multistream/remoteMediaGroup.d.ts +49 -0
- package/dist/multistream/remoteMediaManager.d.ts +300 -0
- package/dist/multistream/sendSlotManager.d.ts +69 -0
- package/dist/networkQualityMonitor/index.d.ts +70 -0
- package/dist/personal-meeting-room/index.d.ts +47 -0
- package/dist/personal-meeting-room/request.d.ts +14 -0
- package/dist/personal-meeting-room/util.d.ts +2 -0
- package/dist/reachability/clusterReachability.d.ts +110 -0
- package/dist/reachability/index.d.ts +109 -0
- package/dist/reachability/index.js +88 -9
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.d.ts +39 -0
- package/dist/reachability/util.d.ts +15 -0
- package/dist/reactions/constants.d.ts +3 -0
- package/dist/reactions/reactions.d.ts +4 -0
- package/dist/reactions/reactions.type.d.ts +52 -0
- package/dist/reconnection-manager/index.d.ts +136 -0
- package/dist/recording-controller/enums.d.ts +7 -0
- package/dist/recording-controller/index.d.ts +207 -0
- package/dist/recording-controller/util.d.ts +14 -0
- package/dist/roap/index.d.ts +86 -0
- package/dist/roap/request.d.ts +39 -0
- package/dist/roap/request.js +3 -27
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.d.ts +155 -0
- package/dist/rtcMetrics/constants.d.ts +4 -0
- package/dist/rtcMetrics/index.d.ts +61 -0
- package/dist/statsAnalyzer/global.d.ts +36 -0
- package/dist/statsAnalyzer/index.d.ts +217 -0
- package/dist/statsAnalyzer/index.js +4 -2
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.d.ts +48 -0
- package/dist/statsAnalyzer/mqaUtil.js +14 -0
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/transcription/index.d.ts +64 -0
- package/dist/types/constants.d.ts +3 -1
- package/dist/types/mediaQualityMetrics/config.d.ts +8 -2
- package/dist/types/meeting/index.d.ts +10 -1
- package/dist/types/meeting/locusMediaRequest.d.ts +1 -0
- package/dist/types/meeting/voicea-meeting.d.ts +3 -2
- package/dist/types/meetings/index.d.ts +1 -16
- package/dist/types/reachability/index.d.ts +11 -0
- package/dist/webinar/collection.d.ts +16 -0
- package/dist/webinar/index.d.ts +5 -0
- package/dist/webinar/index.js +1 -1
- package/package.json +21 -21
- package/src/constants.ts +3 -2
- package/src/mediaQualityMetrics/config.ts +13 -7
- package/src/meeting/index.ts +73 -30
- package/src/meeting/locusMediaRequest.ts +31 -0
- package/src/meeting/util.ts +1 -16
- package/src/meeting/voicea-meeting.ts +44 -46
- package/src/meetings/index.ts +15 -27
- package/src/reachability/index.ts +60 -0
- package/src/roap/request.ts +1 -24
- package/src/statsAnalyzer/index.ts +6 -3
- package/src/statsAnalyzer/mqaUtil.ts +18 -0
- package/test/unit/spec/meeting/index.js +70 -33
- package/test/unit/spec/meeting/locusMediaRequest.ts +49 -0
- package/test/unit/spec/meeting/utils.js +0 -10
- package/test/unit/spec/meeting/voicea-meeting.ts +5 -14
- package/test/unit/spec/meetings/index.js +59 -17
- package/test/unit/spec/reachability/index.ts +266 -0
- package/test/unit/spec/roap/request.ts +0 -37
- package/test/unit/spec/stats-analyzer/index.js +89 -8
package/dist/meeting/index.js
CHANGED
|
@@ -490,6 +490,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
490
490
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "turnDiscoverySkippedReason", void 0);
|
|
491
491
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "turnServerUsed", void 0);
|
|
492
492
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "areVoiceaEventsSetup", false);
|
|
493
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "isMoveToInProgress", false);
|
|
493
494
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "voiceaListenerCallbacks", (0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)({}, _internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, function (payload) {
|
|
494
495
|
_this.transcription.languageOptions = payload;
|
|
495
496
|
_loggerProxy.default.logger.debug("".concat(_util.default.getScopeLog({
|
|
@@ -560,6 +561,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
560
561
|
break;
|
|
561
562
|
}
|
|
562
563
|
});
|
|
564
|
+
/**
|
|
565
|
+
* This is a callback for the LLM event that is triggered when it comes online
|
|
566
|
+
* This method in turn will trigger an event to the developers that the LLM is connected
|
|
567
|
+
* @private
|
|
568
|
+
* @memberof Meeting
|
|
569
|
+
* @returns {null}
|
|
570
|
+
*/
|
|
571
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleLLMOnline", function () {
|
|
572
|
+
// @ts-ignore
|
|
573
|
+
_this.webex.internal.llm.off('online', _this.handleLLMOnline);
|
|
574
|
+
_triggerProxy.default.trigger((0, _assertThisInitialized2.default)(_this), {
|
|
575
|
+
file: 'meeting/index',
|
|
576
|
+
function: 'handleLLMOnline'
|
|
577
|
+
}, _constants.EVENT_TRIGGERS.MEETING_TRANSCRIPTION_CONNECTED, undefined);
|
|
578
|
+
});
|
|
563
579
|
/**
|
|
564
580
|
* Handles ROAP_FAILURE event from the webrtc media connection
|
|
565
581
|
*
|
|
@@ -1972,10 +1988,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1972
1988
|
*/
|
|
1973
1989
|
_this.remoteMediaManager = null;
|
|
1974
1990
|
_this.localAudioStreamMuteStateHandler = function () {
|
|
1975
|
-
_this
|
|
1991
|
+
var _this$audio;
|
|
1992
|
+
(_this$audio = _this.audio) === null || _this$audio === void 0 ? void 0 : _this$audio.handleLocalStreamMuteStateChange((0, _assertThisInitialized2.default)(_this));
|
|
1976
1993
|
};
|
|
1977
1994
|
_this.localVideoStreamMuteStateHandler = function () {
|
|
1978
|
-
_this
|
|
1995
|
+
var _this$video;
|
|
1996
|
+
(_this$video = _this.video) === null || _this$video === void 0 ? void 0 : _this$video.handleLocalStreamMuteStateChange((0, _assertThisInitialized2.default)(_this));
|
|
1979
1997
|
};
|
|
1980
1998
|
|
|
1981
1999
|
// The handling of output track changes should be done inside
|
|
@@ -3504,6 +3522,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3504
3522
|
}
|
|
3505
3523
|
});
|
|
3506
3524
|
}
|
|
3525
|
+
_this19.updateLLMConnection();
|
|
3507
3526
|
});
|
|
3508
3527
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, /*#__PURE__*/function () {
|
|
3509
3528
|
var _ref25 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(payload) {
|
|
@@ -4291,6 +4310,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4291
4310
|
key: "setLocalAudioStream",
|
|
4292
4311
|
value: (function () {
|
|
4293
4312
|
var _setLocalAudioStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(localStream) {
|
|
4313
|
+
var _this$audio2;
|
|
4294
4314
|
var oldStream;
|
|
4295
4315
|
return _regenerator.default.wrap(function _callee11$(_context11) {
|
|
4296
4316
|
while (1) switch (_context11.prev = _context11.next) {
|
|
@@ -4302,7 +4322,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4302
4322
|
|
|
4303
4323
|
// we don't update this.mediaProperties.mediaDirection.sendAudio, because we always keep it as true to avoid extra SDP exchanges
|
|
4304
4324
|
this.mediaProperties.setLocalAudioStream(localStream);
|
|
4305
|
-
this.audio.handleLocalStreamChange(this);
|
|
4325
|
+
(_this$audio2 = this.audio) === null || _this$audio2 === void 0 ? void 0 : _this$audio2.handleLocalStreamChange(this);
|
|
4306
4326
|
localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localAudioStreamMuteStateHandler);
|
|
4307
4327
|
localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.localAudioStreamMuteStateHandler);
|
|
4308
4328
|
localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
|
|
@@ -4338,6 +4358,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4338
4358
|
key: "setLocalVideoStream",
|
|
4339
4359
|
value: (function () {
|
|
4340
4360
|
var _setLocalVideoStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12(localStream) {
|
|
4361
|
+
var _this$video2;
|
|
4341
4362
|
var oldStream;
|
|
4342
4363
|
return _regenerator.default.wrap(function _callee12$(_context12) {
|
|
4343
4364
|
while (1) switch (_context12.prev = _context12.next) {
|
|
@@ -4349,7 +4370,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4349
4370
|
|
|
4350
4371
|
// we don't update this.mediaProperties.mediaDirection.sendVideo, because we always keep it as true to avoid extra SDP exchanges
|
|
4351
4372
|
this.mediaProperties.setLocalVideoStream(localStream);
|
|
4352
|
-
this.video.handleLocalStreamChange(this);
|
|
4373
|
+
(_this$video2 = this.video) === null || _this$video2 === void 0 ? void 0 : _this$video2.handleLocalStreamChange(this);
|
|
4353
4374
|
localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localVideoStreamMuteStateHandler);
|
|
4354
4375
|
localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.localVideoStreamMuteStateHandler);
|
|
4355
4376
|
localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
|
|
@@ -5111,10 +5132,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5111
5132
|
key: "isTranscriptionSupported",
|
|
5112
5133
|
value: function isTranscriptionSupported() {
|
|
5113
5134
|
var _this$locusInfo$contr;
|
|
5114
|
-
if ((_this$locusInfo$contr = this.locusInfo.controls.transcribe) !== null && _this$locusInfo$contr !== void 0 && _this$locusInfo$contr.
|
|
5135
|
+
if ((_this$locusInfo$contr = this.locusInfo.controls.transcribe) !== null && _this$locusInfo$contr !== void 0 && _this$locusInfo$contr.caption) {
|
|
5115
5136
|
return true;
|
|
5116
5137
|
}
|
|
5117
|
-
_loggerProxy.default.logger.error('Meeting:index#isTranscriptionSupported -->
|
|
5138
|
+
_loggerProxy.default.logger.error('Meeting:index#isTranscriptionSupported --> Closed Captions is not enabled/supported');
|
|
5118
5139
|
return false;
|
|
5119
5140
|
}
|
|
5120
5141
|
|
|
@@ -5310,7 +5331,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5310
5331
|
function: 'triggerStopReceivingTranscriptionEvent'
|
|
5311
5332
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION);
|
|
5312
5333
|
}
|
|
5313
|
-
|
|
5334
|
+
}, {
|
|
5335
|
+
key: "join",
|
|
5336
|
+
value: (
|
|
5314
5337
|
/**
|
|
5315
5338
|
* Specify joining via audio (option: pstn), video, screenshare
|
|
5316
5339
|
* @param {JoinOptions} options A configurable options object for joining a meeting
|
|
@@ -5323,9 +5346,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5323
5346
|
* if joining as host on second loop, pass pin and pass moderator if joining as guest on second loop
|
|
5324
5347
|
* Scenario D: Joining any other way (sip, pstn, conversationUrl, link just need to specify resourceId)
|
|
5325
5348
|
*/
|
|
5326
|
-
|
|
5327
|
-
key: "join",
|
|
5328
|
-
value: (function () {
|
|
5349
|
+
function () {
|
|
5329
5350
|
var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
|
|
5330
5351
|
var _this31 = this;
|
|
5331
5352
|
var options,
|
|
@@ -5518,6 +5539,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5518
5539
|
}).then(function (join) {
|
|
5519
5540
|
// @ts-ignore - config coming from registerPlugin
|
|
5520
5541
|
if (_this31.config.enableAutomaticLLM) {
|
|
5542
|
+
// @ts-ignore
|
|
5543
|
+
_this31.webex.internal.llm.on('online', _this31.handleLLMOnline);
|
|
5521
5544
|
_this31.updateLLMConnection().catch(function (error) {
|
|
5522
5545
|
_loggerProxy.default.logger.error('Meeting:index#join --> Transcription Socket Connection Failed', error);
|
|
5523
5546
|
_metrics.default.sendBehavioralMetric(_constants2.default.LLM_CONNECTION_AFTER_JOIN_FAILURE, {
|
|
@@ -5527,10 +5550,6 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5527
5550
|
});
|
|
5528
5551
|
}).then(function () {
|
|
5529
5552
|
_loggerProxy.default.logger.info('Meeting:index#join --> Transcription Socket Connection Success');
|
|
5530
|
-
_triggerProxy.default.trigger(_this31, {
|
|
5531
|
-
file: 'meeting/index',
|
|
5532
|
-
function: 'join'
|
|
5533
|
-
}, _constants.EVENT_TRIGGERS.MEETING_TRANSCRIPTION_CONNECTED, undefined);
|
|
5534
5553
|
});
|
|
5535
5554
|
}
|
|
5536
5555
|
return join;
|
|
@@ -5794,22 +5813,41 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5794
5813
|
receiveShare: true
|
|
5795
5814
|
}
|
|
5796
5815
|
};
|
|
5797
|
-
_this35.cleanupLocalStreams();
|
|
5798
5816
|
_this35.mediaProperties.setMediaDirection(mediaSettings.mediaDirection);
|
|
5799
5817
|
_this35.mediaProperties.unsetRemoteMedia();
|
|
5800
5818
|
|
|
5801
|
-
// when a move to is intiated by the client , Locus delets the existing media node from the server as soon the
|
|
5802
|
-
// once the
|
|
5803
|
-
|
|
5819
|
+
// when a move to is intiated by the client , Locus delets the existing media node from the server as soon the device answers the meeting
|
|
5820
|
+
// once the device answers we close the old connection and create new media server connection with only share enabled
|
|
5821
|
+
if (!_this35.statsAnalyzer) {
|
|
5822
|
+
_context20.next = 10;
|
|
5823
|
+
break;
|
|
5824
|
+
}
|
|
5804
5825
|
_context20.next = 10;
|
|
5805
|
-
return _this35.
|
|
5806
|
-
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
|
|
5807
|
-
});
|
|
5826
|
+
return _this35.statsAnalyzer.stopAnalyzer();
|
|
5808
5827
|
case 10:
|
|
5809
|
-
_context20.next =
|
|
5810
|
-
|
|
5828
|
+
_context20.next = 12;
|
|
5829
|
+
return _this35.closeRemoteStreams();
|
|
5811
5830
|
case 12:
|
|
5812
|
-
_context20.
|
|
5831
|
+
_context20.next = 14;
|
|
5832
|
+
return _this35.closePeerConnections();
|
|
5833
|
+
case 14:
|
|
5834
|
+
_this35.cleanupLocalStreams();
|
|
5835
|
+
_this35.unsetRemoteStreams();
|
|
5836
|
+
_this35.unsetPeerConnections();
|
|
5837
|
+
_this35.reconnectionManager.cleanUp();
|
|
5838
|
+
_context20.next = 20;
|
|
5839
|
+
return _this35.addMedia({
|
|
5840
|
+
audioEnabled: false,
|
|
5841
|
+
videoEnabled: false,
|
|
5842
|
+
shareVideoEnabled: true
|
|
5843
|
+
});
|
|
5844
|
+
case 20:
|
|
5845
|
+
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
|
|
5846
|
+
_this35.isMoveToInProgress = false;
|
|
5847
|
+
_context20.next = 29;
|
|
5848
|
+
break;
|
|
5849
|
+
case 24:
|
|
5850
|
+
_context20.prev = 24;
|
|
5813
5851
|
_context20.t0 = _context20["catch"](0);
|
|
5814
5852
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context20.t0);
|
|
5815
5853
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
@@ -5818,13 +5856,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5818
5856
|
reason: _context20.t0.message,
|
|
5819
5857
|
stack: _context20.t0.stack
|
|
5820
5858
|
});
|
|
5821
|
-
|
|
5859
|
+
_this35.isMoveToInProgress = false;
|
|
5860
|
+
case 29:
|
|
5822
5861
|
case "end":
|
|
5823
5862
|
return _context20.stop();
|
|
5824
5863
|
}
|
|
5825
|
-
}, _callee20, null, [[0,
|
|
5864
|
+
}, _callee20, null, [[0, 24]]);
|
|
5826
5865
|
})));
|
|
5827
5866
|
_loggerProxy.default.logger.info('Meeting:index#moveTo --> Initated moved to using resourceId', resourceId);
|
|
5867
|
+
|
|
5868
|
+
// TODO: Check with locus if SELF_OBSERVING event would ever be not emitted
|
|
5869
|
+
// If yes, introduce a timeout mechanism
|
|
5870
|
+
this.isMoveToInProgress = true;
|
|
5828
5871
|
return _util2.default.joinMeetingOptions(this, {
|
|
5829
5872
|
resourceId: resourceId,
|
|
5830
5873
|
moveToResource: true
|
|
@@ -5839,6 +5882,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5839
5882
|
stack: error.stack
|
|
5840
5883
|
});
|
|
5841
5884
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', error);
|
|
5885
|
+
_this35.isMoveToInProgress = false;
|
|
5842
5886
|
return _promise.default.reject(error);
|
|
5843
5887
|
});
|
|
5844
5888
|
}
|
|
@@ -6322,7 +6366,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6322
6366
|
/**
|
|
6323
6367
|
* Performs TURN discovery as a separate call to the Locus /media API
|
|
6324
6368
|
*
|
|
6325
|
-
* @param {boolean}
|
|
6369
|
+
* @param {boolean} isReconnecting
|
|
6326
6370
|
* @param {boolean} isForced
|
|
6327
6371
|
* @returns {Promise}
|
|
6328
6372
|
*/
|
|
@@ -6330,7 +6374,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6330
6374
|
}, {
|
|
6331
6375
|
key: "doTurnDiscovery",
|
|
6332
6376
|
value: (function () {
|
|
6333
|
-
var _doTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28(
|
|
6377
|
+
var _doTurnDiscovery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28(isReconnecting, isForced) {
|
|
6334
6378
|
var cdl, turnDiscoveryResult;
|
|
6335
6379
|
return _regenerator.default.wrap(function _callee28$(_context28) {
|
|
6336
6380
|
while (1) switch (_context28.prev = _context28.next) {
|
|
@@ -6341,7 +6385,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6341
6385
|
name: 'internal.client.add-media.turn-discovery.start'
|
|
6342
6386
|
});
|
|
6343
6387
|
_context28.next = 4;
|
|
6344
|
-
return this.roap.doTurnDiscovery(this,
|
|
6388
|
+
return this.roap.doTurnDiscovery(this, isReconnecting, isForced);
|
|
6345
6389
|
case 4:
|
|
6346
6390
|
turnDiscoveryResult = _context28.sent;
|
|
6347
6391
|
this.turnDiscoverySkippedReason = turnDiscoveryResult === null || turnDiscoveryResult === void 0 ? void 0 : turnDiscoveryResult.turnDiscoverySkippedReason;
|
|
@@ -6386,30 +6430,33 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6386
6430
|
key: "establishMediaConnection",
|
|
6387
6431
|
value: (function () {
|
|
6388
6432
|
var _establishMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee29(remoteMediaManagerConfig, bundlePolicy, isForced, turnServerInfo) {
|
|
6389
|
-
var LOG_HEADER,
|
|
6433
|
+
var LOG_HEADER, isReconnecting, _yield$this$doTurnDis, mc;
|
|
6390
6434
|
return _regenerator.default.wrap(function _callee29$(_context29) {
|
|
6391
6435
|
while (1) switch (_context29.prev = _context29.next) {
|
|
6392
6436
|
case 0:
|
|
6393
6437
|
LOG_HEADER = 'Meeting:index#addMedia():establishMediaConnection -->';
|
|
6394
|
-
|
|
6395
|
-
|
|
6438
|
+
isReconnecting = this.isMoveToInProgress || this.retriedWithTurnServer; // We are forcing turn discovery if the case is moveTo and a turn server was used already
|
|
6439
|
+
if (this.isMoveToInProgress && this.turnServerUsed) {
|
|
6440
|
+
isForced = true;
|
|
6441
|
+
}
|
|
6442
|
+
_context29.prev = 3;
|
|
6396
6443
|
if (turnServerInfo) {
|
|
6397
|
-
_context29.next =
|
|
6444
|
+
_context29.next = 9;
|
|
6398
6445
|
break;
|
|
6399
6446
|
}
|
|
6400
|
-
_context29.next =
|
|
6401
|
-
return this.doTurnDiscovery(
|
|
6402
|
-
case
|
|
6447
|
+
_context29.next = 7;
|
|
6448
|
+
return this.doTurnDiscovery(isReconnecting, isForced);
|
|
6449
|
+
case 7:
|
|
6403
6450
|
_yield$this$doTurnDis = _context29.sent;
|
|
6404
6451
|
turnServerInfo = _yield$this$doTurnDis.turnServerInfo;
|
|
6405
|
-
case
|
|
6406
|
-
_context29.next =
|
|
6452
|
+
case 9:
|
|
6453
|
+
_context29.next = 11;
|
|
6407
6454
|
return this.createMediaConnection(turnServerInfo, bundlePolicy);
|
|
6408
|
-
case
|
|
6455
|
+
case 11:
|
|
6409
6456
|
mc = _context29.sent;
|
|
6410
6457
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " media connection created"));
|
|
6411
6458
|
if (!this.isMultistream) {
|
|
6412
|
-
_context29.next =
|
|
6459
|
+
_context29.next = 21;
|
|
6413
6460
|
break;
|
|
6414
6461
|
}
|
|
6415
6462
|
this.remoteMediaManager = new _remoteMediaManager.RemoteMediaManager(this.receiveSlotManager, this.mediaRequestManagers, remoteMediaManagerConfig);
|
|
@@ -6417,40 +6464,40 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6417
6464
|
this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.InterpretationAudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_INTERPRETATION_AUDIO_CREATED);
|
|
6418
6465
|
this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.ScreenShareAudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_SCREEN_SHARE_AUDIO_CREATED);
|
|
6419
6466
|
this.forwardEvent(this.remoteMediaManager, _remoteMediaManager.Event.VideoLayoutChanged, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_VIDEO_LAYOUT_CHANGED);
|
|
6420
|
-
_context29.next =
|
|
6467
|
+
_context29.next = 21;
|
|
6421
6468
|
return this.remoteMediaManager.start();
|
|
6422
|
-
case
|
|
6423
|
-
_context29.next =
|
|
6469
|
+
case 21:
|
|
6470
|
+
_context29.next = 23;
|
|
6424
6471
|
return mc.initiateOffer();
|
|
6425
|
-
case
|
|
6426
|
-
_context29.next =
|
|
6472
|
+
case 23:
|
|
6473
|
+
_context29.next = 25;
|
|
6427
6474
|
return this.waitForRemoteSDPAnswer();
|
|
6428
|
-
case
|
|
6475
|
+
case 25:
|
|
6429
6476
|
this.handleMediaLogging(this.mediaProperties);
|
|
6430
|
-
_context29.next =
|
|
6477
|
+
_context29.next = 32;
|
|
6431
6478
|
break;
|
|
6432
|
-
case
|
|
6433
|
-
_context29.prev =
|
|
6434
|
-
_context29.t0 = _context29["catch"](
|
|
6479
|
+
case 28:
|
|
6480
|
+
_context29.prev = 28;
|
|
6481
|
+
_context29.t0 = _context29["catch"](3);
|
|
6435
6482
|
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " error establishing media connection, "), _context29.t0);
|
|
6436
6483
|
throw _context29.t0;
|
|
6437
|
-
case
|
|
6438
|
-
_context29.prev =
|
|
6439
|
-
_context29.next =
|
|
6484
|
+
case 32:
|
|
6485
|
+
_context29.prev = 32;
|
|
6486
|
+
_context29.next = 35;
|
|
6440
6487
|
return this.waitForMediaConnectionConnected();
|
|
6441
|
-
case
|
|
6442
|
-
_context29.next =
|
|
6488
|
+
case 35:
|
|
6489
|
+
_context29.next = 41;
|
|
6443
6490
|
break;
|
|
6444
|
-
case
|
|
6445
|
-
_context29.prev =
|
|
6446
|
-
_context29.t1 = _context29["catch"](
|
|
6447
|
-
_context29.next =
|
|
6491
|
+
case 37:
|
|
6492
|
+
_context29.prev = 37;
|
|
6493
|
+
_context29.t1 = _context29["catch"](32);
|
|
6494
|
+
_context29.next = 41;
|
|
6448
6495
|
return this.handleWaitForMediaConnectionConnectedError(_context29.t1, remoteMediaManagerConfig, bundlePolicy);
|
|
6449
|
-
case
|
|
6496
|
+
case 41:
|
|
6450
6497
|
case "end":
|
|
6451
6498
|
return _context29.stop();
|
|
6452
6499
|
}
|
|
6453
|
-
}, _callee29, this, [[
|
|
6500
|
+
}, _callee29, this, [[3, 28], [32, 37]]);
|
|
6454
6501
|
}));
|
|
6455
6502
|
function establishMediaConnection(_x28, _x29, _x30, _x31) {
|
|
6456
6503
|
return _establishMediaConnection.apply(this, arguments);
|
|
@@ -6677,6 +6724,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6677
6724
|
});
|
|
6678
6725
|
this.locusMediaRequest = new _locusMediaRequest.LocusMediaRequest({
|
|
6679
6726
|
correlationId: this.correlationId,
|
|
6727
|
+
meetingId: this.id,
|
|
6680
6728
|
device: {
|
|
6681
6729
|
url: this.deviceUrl,
|
|
6682
6730
|
// @ts-ignore
|
|
@@ -6875,7 +6923,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6875
6923
|
*/
|
|
6876
6924
|
function () {
|
|
6877
6925
|
var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(options) {
|
|
6878
|
-
var audioEnabled, videoEnabled, shareAudioEnabled, shareVideoEnabled;
|
|
6926
|
+
var audioEnabled, videoEnabled, shareAudioEnabled, shareVideoEnabled, _this$audio3, _this$video3;
|
|
6879
6927
|
return _regenerator.default.wrap(function _callee33$(_context33) {
|
|
6880
6928
|
while (1) switch (_context33.prev = _context33.next) {
|
|
6881
6929
|
case 0:
|
|
@@ -6910,7 +6958,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6910
6958
|
if (audioEnabled !== undefined) {
|
|
6911
6959
|
this.mediaProperties.mediaDirection.sendAudio = audioEnabled;
|
|
6912
6960
|
this.mediaProperties.mediaDirection.receiveAudio = audioEnabled;
|
|
6913
|
-
this.audio.enable(this, audioEnabled);
|
|
6961
|
+
(_this$audio3 = this.audio) === null || _this$audio3 === void 0 ? void 0 : _this$audio3.enable(this, audioEnabled);
|
|
6914
6962
|
if (this.isMultistream) {
|
|
6915
6963
|
this.sendSlotManager.setActive(_internalMediaCore.MediaType.AudioMain, audioEnabled);
|
|
6916
6964
|
}
|
|
@@ -6918,7 +6966,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6918
6966
|
if (videoEnabled !== undefined) {
|
|
6919
6967
|
this.mediaProperties.mediaDirection.sendVideo = videoEnabled;
|
|
6920
6968
|
this.mediaProperties.mediaDirection.receiveVideo = videoEnabled;
|
|
6921
|
-
this.video.enable(this, videoEnabled);
|
|
6969
|
+
(_this$video3 = this.video) === null || _this$video3 === void 0 ? void 0 : _this$video3.enable(this, videoEnabled);
|
|
6922
6970
|
if (this.isMultistream) {
|
|
6923
6971
|
this.sendSlotManager.setActive(_internalMediaCore.MediaType.VideoMain, videoEnabled);
|
|
6924
6972
|
}
|