@webex/plugin-meetings 3.6.0 → 3.7.0-ipv6-multi-turn-urls.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 +2 -1
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/common/errors/join-webinar-error.js +50 -0
- package/dist/common/errors/join-webinar-error.js.map +1 -0
- package/dist/config.js +4 -1
- package/dist/config.js.map +1 -1
- package/dist/constants.js +54 -4
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.js +1 -0
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/index.js +10 -3
- 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 +12 -0
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/controlsUtils.js +28 -4
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/fullState.js +2 -1
- package/dist/locus-info/fullState.js.map +1 -1
- package/dist/locus-info/index.js +61 -3
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/parser.js +5 -1
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/media/index.js +29 -1
- package/dist/media/index.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +29 -1
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +807 -540
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +2 -6
- package/dist/meeting/locusMediaRequest.js.map +1 -1
- package/dist/meeting/muteState.js +5 -2
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +21 -29
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/util.js +98 -61
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +80 -17
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meetings/index.js +29 -2
- package/dist/meetings/index.js.map +1 -1
- package/dist/members/index.js +3 -2
- package/dist/members/index.js.map +1 -1
- package/dist/members/util.js +13 -7
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +4 -1
- package/dist/metrics/constants.js.map +1 -1
- package/dist/multistream/remoteMedia.js +34 -15
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/reachability/clusterReachability.js +12 -15
- package/dist/reachability/clusterReachability.js.map +1 -1
- package/dist/reachability/index.js +433 -136
- package/dist/reachability/index.js.map +1 -1
- package/dist/{rtcMetrics/constants.js → reachability/reachability.types.js} +1 -5
- package/dist/reachability/reachability.types.js.map +1 -0
- package/dist/reachability/request.js +23 -9
- package/dist/reachability/request.js.map +1 -1
- package/dist/recording-controller/enums.js +8 -4
- package/dist/recording-controller/enums.js.map +1 -1
- package/dist/recording-controller/index.js +18 -9
- package/dist/recording-controller/index.js.map +1 -1
- package/dist/recording-controller/util.js +13 -9
- package/dist/recording-controller/util.js.map +1 -1
- package/dist/roap/index.js +5 -7
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +45 -79
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +3 -6
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/{common/errors/parameter.d.ts → types/common/errors/join-webinar-error.d.ts} +4 -5
- package/dist/types/config.d.ts +3 -0
- package/dist/types/constants.d.ts +43 -0
- package/dist/types/controls-options-manager/enums.d.ts +2 -1
- package/dist/types/controls-options-manager/index.d.ts +2 -1
- package/dist/types/controls-options-manager/types.d.ts +2 -0
- package/dist/types/index.d.ts +2 -1
- package/dist/types/locus-info/index.d.ts +9 -0
- package/dist/types/meeting/in-meeting-actions.d.ts +28 -0
- package/dist/types/meeting/index.d.ts +34 -3
- package/dist/types/meeting/locusMediaRequest.d.ts +2 -3
- package/dist/types/meeting/muteState.d.ts +2 -1
- package/dist/types/meeting/request.d.ts +2 -2
- package/dist/types/meeting/util.d.ts +2 -2
- package/dist/types/meeting-info/meeting-info-v2.d.ts +23 -0
- package/dist/types/meetings/index.d.ts +13 -1
- package/dist/types/members/index.d.ts +2 -1
- package/dist/types/members/util.d.ts +5 -1
- package/dist/types/metrics/constants.d.ts +3 -0
- package/dist/types/multistream/remoteMedia.d.ts +1 -0
- package/dist/types/reachability/clusterReachability.d.ts +1 -10
- package/dist/types/reachability/index.d.ts +74 -35
- package/dist/types/reachability/reachability.types.d.ts +64 -0
- package/dist/types/reachability/request.d.ts +5 -1
- package/dist/types/recording-controller/enums.d.ts +5 -2
- package/dist/types/recording-controller/index.d.ts +1 -0
- package/dist/types/recording-controller/util.d.ts +2 -1
- package/dist/types/roap/request.d.ts +1 -13
- package/dist/webinar/index.js +382 -19
- package/dist/webinar/index.js.map +1 -1
- package/package.json +22 -22
- package/src/common/errors/join-webinar-error.ts +24 -0
- package/src/config.ts +3 -0
- package/src/constants.ts +52 -0
- package/src/controls-options-manager/enums.ts +1 -0
- package/src/controls-options-manager/index.ts +19 -2
- package/src/controls-options-manager/types.ts +2 -0
- package/src/controls-options-manager/util.ts +12 -0
- package/src/index.ts +2 -0
- package/src/locus-info/controlsUtils.ts +46 -2
- package/src/locus-info/fullState.ts +1 -0
- package/src/locus-info/index.ts +60 -0
- package/src/locus-info/parser.ts +8 -1
- package/src/media/index.ts +15 -0
- package/src/meeting/in-meeting-actions.ts +58 -0
- package/src/meeting/index.ts +268 -32
- package/src/meeting/locusMediaRequest.ts +4 -8
- package/src/meeting/muteState.ts +6 -2
- package/src/meeting/request.ts +4 -11
- package/src/meeting/util.ts +31 -6
- package/src/meeting-info/meeting-info-v2.ts +63 -0
- package/src/meetings/index.ts +74 -40
- package/src/members/index.ts +4 -2
- package/src/members/util.ts +4 -1
- package/src/metrics/constants.ts +3 -0
- package/src/multistream/remoteMedia.ts +33 -15
- package/src/reachability/clusterReachability.ts +5 -15
- package/src/reachability/index.ts +285 -77
- package/src/reachability/reachability.types.ts +85 -0
- package/src/reachability/request.ts +55 -30
- package/src/recording-controller/enums.ts +5 -2
- package/src/recording-controller/index.ts +17 -4
- package/src/recording-controller/util.ts +20 -5
- package/src/roap/index.ts +4 -5
- package/src/roap/request.ts +32 -44
- package/src/roap/turnDiscovery.ts +2 -4
- package/src/webinar/index.ts +223 -17
- package/test/unit/spec/controls-options-manager/index.js +56 -32
- package/test/unit/spec/controls-options-manager/util.js +44 -0
- package/test/unit/spec/locus-info/controlsUtils.js +80 -4
- package/test/unit/spec/locus-info/index.js +88 -2
- package/test/unit/spec/meeting/in-meeting-actions.ts +31 -1
- package/test/unit/spec/meeting/index.js +407 -82
- package/test/unit/spec/meeting/locusMediaRequest.ts +18 -11
- package/test/unit/spec/meeting/muteState.js +8 -4
- package/test/unit/spec/meeting/request.js +3 -26
- package/test/unit/spec/meeting/utils.js +71 -14
- package/test/unit/spec/meeting-info/meetinginfov2.js +42 -0
- package/test/unit/spec/meetings/index.js +41 -6
- package/test/unit/spec/members/index.js +25 -2
- package/test/unit/spec/members/request.js +37 -3
- package/test/unit/spec/members/utils.js +110 -1
- package/test/unit/spec/multistream/remoteMedia.ts +27 -9
- package/test/unit/spec/reachability/clusterReachability.ts +7 -0
- package/test/unit/spec/reachability/index.ts +265 -1
- package/test/unit/spec/reachability/request.js +56 -15
- package/test/unit/spec/recording-controller/index.js +61 -5
- package/test/unit/spec/recording-controller/util.js +39 -3
- package/test/unit/spec/roap/index.ts +1 -1
- package/test/unit/spec/roap/request.ts +51 -109
- package/test/unit/spec/roap/turnDiscovery.ts +202 -147
- package/test/unit/spec/webinar/index.ts +443 -14
- package/dist/annotation/annotation.types.d.ts +0 -42
- package/dist/annotation/constants.d.ts +0 -31
- package/dist/annotation/index.d.ts +0 -117
- package/dist/breakouts/breakout.d.ts +0 -8
- package/dist/breakouts/collection.d.ts +0 -5
- package/dist/breakouts/edit-lock-error.d.ts +0 -15
- package/dist/breakouts/events.d.ts +0 -8
- package/dist/breakouts/index.d.ts +0 -5
- package/dist/breakouts/request.d.ts +0 -22
- package/dist/breakouts/utils.d.ts +0 -15
- package/dist/common/browser-detection.d.ts +0 -9
- package/dist/common/collection.d.ts +0 -48
- package/dist/common/config.d.ts +0 -2
- package/dist/common/errors/captcha-error.d.ts +0 -15
- package/dist/common/errors/intent-to-join.d.ts +0 -16
- package/dist/common/errors/join-meeting.d.ts +0 -17
- package/dist/common/errors/media.d.ts +0 -15
- package/dist/common/errors/no-meeting-info.d.ts +0 -14
- package/dist/common/errors/password-error.d.ts +0 -15
- package/dist/common/errors/permission.d.ts +0 -14
- package/dist/common/errors/reclaim-host-role-error.js +0 -149
- package/dist/common/errors/reclaim-host-role-error.js.map +0 -1
- package/dist/common/errors/reclaim-host-role-errors.d.ts +0 -60
- package/dist/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/common/errors/reconnection-in-progress.js +0 -33
- package/dist/common/errors/reconnection-in-progress.js.map +0 -1
- package/dist/common/errors/reconnection.d.ts +0 -15
- package/dist/common/errors/stats.d.ts +0 -15
- package/dist/common/errors/webex-errors.d.ts +0 -93
- package/dist/common/errors/webex-meetings-error.d.ts +0 -20
- package/dist/common/events/events-scope.d.ts +0 -17
- package/dist/common/events/events.d.ts +0 -12
- package/dist/common/events/trigger-proxy.d.ts +0 -2
- package/dist/common/events/util.d.ts +0 -2
- package/dist/common/logs/logger-config.d.ts +0 -2
- package/dist/common/logs/logger-proxy.d.ts +0 -2
- package/dist/common/logs/request.d.ts +0 -36
- package/dist/common/queue.d.ts +0 -34
- package/dist/config.d.ts +0 -72
- package/dist/constants.d.ts +0 -1088
- package/dist/controls-options-manager/constants.d.ts +0 -4
- package/dist/controls-options-manager/enums.d.ts +0 -15
- package/dist/controls-options-manager/index.d.ts +0 -136
- package/dist/controls-options-manager/types.d.ts +0 -43
- package/dist/controls-options-manager/util.d.ts +0 -1
- package/dist/index.d.ts +0 -7
- package/dist/interceptors/index.d.ts +0 -2
- package/dist/interceptors/locusRetry.d.ts +0 -27
- package/dist/interpretation/collection.d.ts +0 -5
- package/dist/interpretation/index.d.ts +0 -5
- package/dist/interpretation/siLanguage.d.ts +0 -5
- package/dist/locus-info/controlsUtils.d.ts +0 -2
- package/dist/locus-info/embeddedAppsUtils.d.ts +0 -2
- package/dist/locus-info/fullState.d.ts +0 -2
- package/dist/locus-info/hostUtils.d.ts +0 -2
- package/dist/locus-info/index.d.ts +0 -322
- package/dist/locus-info/infoUtils.d.ts +0 -2
- package/dist/locus-info/mediaSharesUtils.d.ts +0 -2
- package/dist/locus-info/parser.d.ts +0 -272
- package/dist/locus-info/selfUtils.d.ts +0 -2
- package/dist/media/index.d.ts +0 -34
- package/dist/media/properties.d.ts +0 -93
- package/dist/media/util.d.ts +0 -2
- package/dist/mediaQualityMetrics/config.d.ts +0 -241
- package/dist/mediaQualityMetrics/config.js +0 -502
- package/dist/mediaQualityMetrics/config.js.map +0 -1
- package/dist/meeting/effectsState.js +0 -260
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/meeting/in-meeting-actions.d.ts +0 -167
- package/dist/meeting/index.d.ts +0 -1825
- package/dist/meeting/locusMediaRequest.d.ts +0 -74
- package/dist/meeting/muteState.d.ts +0 -178
- package/dist/meeting/request.d.ts +0 -295
- package/dist/meeting/request.type.d.ts +0 -11
- package/dist/meeting/state.d.ts +0 -9
- package/dist/meeting/util.d.ts +0 -119
- package/dist/meeting/voicea-meeting.d.ts +0 -16
- package/dist/meeting-info/collection.d.ts +0 -20
- package/dist/meeting-info/index.d.ts +0 -69
- package/dist/meeting-info/meeting-info-v2.d.ts +0 -123
- package/dist/meeting-info/request.d.ts +0 -22
- package/dist/meeting-info/util.d.ts +0 -2
- package/dist/meeting-info/utilv2.d.ts +0 -2
- package/dist/meetings/collection.d.ts +0 -40
- package/dist/meetings/index.d.ts +0 -390
- package/dist/meetings/meetings.types.d.ts +0 -4
- package/dist/meetings/request.d.ts +0 -27
- package/dist/meetings/util.d.ts +0 -18
- package/dist/member/index.d.ts +0 -160
- package/dist/member/member.types.js +0 -17
- package/dist/member/member.types.js.map +0 -1
- package/dist/member/types.d.ts +0 -32
- package/dist/member/util.d.ts +0 -2
- package/dist/members/collection.d.ts +0 -29
- package/dist/members/index.d.ts +0 -353
- package/dist/members/request.d.ts +0 -114
- package/dist/members/types.d.ts +0 -25
- package/dist/members/util.d.ts +0 -215
- package/dist/metrics/config.js +0 -276
- package/dist/metrics/config.js.map +0 -1
- package/dist/metrics/constants.d.ts +0 -70
- package/dist/metrics/index.d.ts +0 -45
- package/dist/multistream/mediaRequestManager.d.ts +0 -119
- package/dist/multistream/receiveSlot.d.ts +0 -68
- package/dist/multistream/receiveSlotManager.d.ts +0 -56
- package/dist/multistream/remoteMedia.d.ts +0 -72
- package/dist/multistream/remoteMediaGroup.d.ts +0 -49
- package/dist/multistream/remoteMediaManager.d.ts +0 -300
- package/dist/multistream/sendSlotManager.d.ts +0 -69
- package/dist/networkQualityMonitor/index.d.ts +0 -70
- package/dist/networkQualityMonitor/index.js +0 -221
- package/dist/networkQualityMonitor/index.js.map +0 -1
- package/dist/peer-connection-manager/index.js +0 -671
- package/dist/peer-connection-manager/index.js.map +0 -1
- package/dist/peer-connection-manager/util.js +0 -109
- package/dist/peer-connection-manager/util.js.map +0 -1
- package/dist/personal-meeting-room/index.d.ts +0 -47
- package/dist/personal-meeting-room/request.d.ts +0 -14
- package/dist/personal-meeting-room/util.d.ts +0 -2
- package/dist/reachability/clusterReachability.d.ts +0 -109
- package/dist/reachability/index.d.ts +0 -105
- package/dist/reachability/request.d.ts +0 -39
- package/dist/reachability/util.d.ts +0 -8
- package/dist/reactions/constants.d.ts +0 -3
- package/dist/reactions/reactions.d.ts +0 -4
- package/dist/reactions/reactions.type.d.ts +0 -52
- package/dist/reconnection-manager/index.d.ts +0 -136
- package/dist/recording-controller/enums.d.ts +0 -7
- package/dist/recording-controller/index.d.ts +0 -207
- package/dist/recording-controller/util.d.ts +0 -14
- package/dist/roap/collection.js +0 -62
- package/dist/roap/collection.js.map +0 -1
- package/dist/roap/handler.js +0 -275
- package/dist/roap/handler.js.map +0 -1
- package/dist/roap/index.d.ts +0 -86
- package/dist/roap/request.d.ts +0 -39
- package/dist/roap/state.js +0 -126
- package/dist/roap/state.js.map +0 -1
- package/dist/roap/turnDiscovery.d.ts +0 -155
- package/dist/roap/util.js +0 -75
- package/dist/roap/util.js.map +0 -1
- package/dist/rtcMetrics/constants.d.ts +0 -4
- package/dist/rtcMetrics/constants.js.map +0 -1
- package/dist/rtcMetrics/index.d.ts +0 -61
- package/dist/rtcMetrics/index.js +0 -197
- package/dist/rtcMetrics/index.js.map +0 -1
- package/dist/statsAnalyzer/global.d.ts +0 -36
- package/dist/statsAnalyzer/global.js +0 -126
- package/dist/statsAnalyzer/global.js.map +0 -1
- package/dist/statsAnalyzer/index.d.ts +0 -217
- package/dist/statsAnalyzer/index.js +0 -1013
- package/dist/statsAnalyzer/index.js.map +0 -1
- package/dist/statsAnalyzer/mqaUtil.d.ts +0 -48
- package/dist/statsAnalyzer/mqaUtil.js +0 -179
- package/dist/statsAnalyzer/mqaUtil.js.map +0 -1
- package/dist/transcription/index.d.ts +0 -64
- package/dist/types/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/types/mediaQualityMetrics/config.d.ts +0 -241
- package/dist/types/networkQualityMonitor/index.d.ts +0 -70
- package/dist/types/rtcMetrics/constants.d.ts +0 -4
- package/dist/types/rtcMetrics/index.d.ts +0 -71
- package/dist/types/statsAnalyzer/global.d.ts +0 -36
- package/dist/types/statsAnalyzer/index.d.ts +0 -217
- package/dist/types/statsAnalyzer/mqaUtil.d.ts +0 -48
- package/dist/webinar/collection.d.ts +0 -16
- package/dist/webinar/index.d.ts +0 -5
package/dist/meeting/index.js
CHANGED
|
@@ -39,6 +39,7 @@ var _lodash = require("lodash");
|
|
|
39
39
|
var _jwtDecode = _interopRequireDefault(require("jwt-decode"));
|
|
40
40
|
var _webexCore = require("@webex/webex-core");
|
|
41
41
|
var _common = require("@webex/common");
|
|
42
|
+
var _commonTimers = require("@webex/common-timers");
|
|
42
43
|
var _internalPluginMetrics = require("@webex/internal-plugin-metrics");
|
|
43
44
|
var _internalMediaCore = require("@webex/internal-media-core");
|
|
44
45
|
var _mediaHelpers = require("@webex/media-helpers");
|
|
@@ -86,6 +87,7 @@ var _controlsOptionsManager = _interopRequireDefault(require("../controls-option
|
|
|
86
87
|
var _permission = _interopRequireDefault(require("../common/errors/permission"));
|
|
87
88
|
var _locusMediaRequest = require("./locusMediaRequest");
|
|
88
89
|
var _connectionStateHandler = require("./connectionStateHandler");
|
|
90
|
+
var _joinWebinarError = _interopRequireDefault(require("../common/errors/join-webinar-error"));
|
|
89
91
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"]; if (!it) { if (_Array$isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
90
92
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
91
93
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
@@ -551,6 +553,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
551
553
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "iceCandidateErrors", void 0);
|
|
552
554
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "iceCandidatesCount", void 0);
|
|
553
555
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "rtcMetrics", void 0);
|
|
556
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "uploadLogsTimer", void 0);
|
|
557
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "logUploadIntervalIndex", void 0);
|
|
554
558
|
/**
|
|
555
559
|
* Callback called when a relay event is received from meeting LLM Connection
|
|
556
560
|
* @param {RelayEvent} e Event object coming from LLM Connection
|
|
@@ -1003,7 +1007,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1003
1007
|
});
|
|
1004
1008
|
_this.iceCandidatesCount = 0;
|
|
1005
1009
|
_this.mediaProperties.webrtcMediaConnection.on(_internalMediaCore.MediaConnectionEventNames.ICE_CANDIDATE, function (event) {
|
|
1006
|
-
if (event.candidate) {
|
|
1010
|
+
if (event.candidate && event.candidate.candidate && event.candidate.candidate.length > 0) {
|
|
1007
1011
|
_this.iceCandidatesCount += 1;
|
|
1008
1012
|
}
|
|
1009
1013
|
});
|
|
@@ -1218,31 +1222,35 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1218
1222
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
1219
1223
|
while (1) switch (_context2.prev = _context2.next) {
|
|
1220
1224
|
case 0:
|
|
1225
|
+
_loggerProxy.default.logger.info("Meeting:index#handleShareAudioStreamEnded --> audio share stream ended");
|
|
1226
|
+
// current share audio stream has ended, but there might be an active
|
|
1227
|
+
// share video stream. we only leave from wireless share if share has
|
|
1228
|
+
// completely ended, which means no share audio or video streams active
|
|
1221
1229
|
if (!(_this.wirelessShare && !_this.mediaProperties.shareVideoStream)) {
|
|
1222
|
-
_context2.next =
|
|
1230
|
+
_context2.next = 5;
|
|
1223
1231
|
break;
|
|
1224
1232
|
}
|
|
1225
1233
|
_this.leave({
|
|
1226
1234
|
reason: _constants.MEETING_REMOVED_REASON.USER_ENDED_SHARE_STREAMS
|
|
1227
1235
|
});
|
|
1228
|
-
_context2.next =
|
|
1236
|
+
_context2.next = 13;
|
|
1229
1237
|
break;
|
|
1230
|
-
case
|
|
1231
|
-
_context2.prev =
|
|
1232
|
-
_context2.next =
|
|
1238
|
+
case 5:
|
|
1239
|
+
_context2.prev = 5;
|
|
1240
|
+
_context2.next = 8;
|
|
1233
1241
|
return _this.unpublishStreams([_this.mediaProperties.shareAudioStream]);
|
|
1234
|
-
case
|
|
1235
|
-
_context2.next =
|
|
1242
|
+
case 8:
|
|
1243
|
+
_context2.next = 13;
|
|
1236
1244
|
break;
|
|
1237
|
-
case
|
|
1238
|
-
_context2.prev =
|
|
1239
|
-
_context2.t0 = _context2["catch"](
|
|
1245
|
+
case 10:
|
|
1246
|
+
_context2.prev = 10;
|
|
1247
|
+
_context2.t0 = _context2["catch"](5);
|
|
1240
1248
|
_loggerProxy.default.logger.log('Meeting:index#handleShareAudioStreamEnded --> Error stopping share: ', _context2.t0);
|
|
1241
|
-
case
|
|
1249
|
+
case 13:
|
|
1242
1250
|
case "end":
|
|
1243
1251
|
return _context2.stop();
|
|
1244
1252
|
}
|
|
1245
|
-
}, _callee2, null, [[
|
|
1253
|
+
}, _callee2, null, [[5, 10]]);
|
|
1246
1254
|
})));
|
|
1247
1255
|
/**
|
|
1248
1256
|
* Functionality for when a share video is muted or unmuted.
|
|
@@ -1270,33 +1278,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1270
1278
|
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
1271
1279
|
while (1) switch (_context3.prev = _context3.next) {
|
|
1272
1280
|
case 0:
|
|
1281
|
+
_loggerProxy.default.logger.info("Meeting:index#handleShareVideoStreamEnded --> video share stream ended");
|
|
1282
|
+
// current share video stream has ended, but there might be an active
|
|
1283
|
+
// share audio stream. we only leave from wireless share if share has
|
|
1284
|
+
// completely ended, which means no share audio or video streams active
|
|
1273
1285
|
if (!(_this.wirelessShare && !_this.mediaProperties.shareAudioStream)) {
|
|
1274
|
-
_context3.next =
|
|
1286
|
+
_context3.next = 5;
|
|
1275
1287
|
break;
|
|
1276
1288
|
}
|
|
1277
1289
|
_this.leave({
|
|
1278
1290
|
reason: _constants.MEETING_REMOVED_REASON.USER_ENDED_SHARE_STREAMS
|
|
1279
1291
|
});
|
|
1280
|
-
_context3.next =
|
|
1292
|
+
_context3.next = 13;
|
|
1281
1293
|
break;
|
|
1282
|
-
case
|
|
1283
|
-
_context3.prev =
|
|
1284
|
-
_context3.next =
|
|
1294
|
+
case 5:
|
|
1295
|
+
_context3.prev = 5;
|
|
1296
|
+
_context3.next = 8;
|
|
1285
1297
|
return _this.unpublishStreams([_this.mediaProperties.shareVideoStream]);
|
|
1286
|
-
case
|
|
1287
|
-
_context3.next =
|
|
1298
|
+
case 8:
|
|
1299
|
+
_context3.next = 13;
|
|
1288
1300
|
break;
|
|
1289
|
-
case
|
|
1290
|
-
_context3.prev =
|
|
1291
|
-
_context3.t0 = _context3["catch"](
|
|
1301
|
+
case 10:
|
|
1302
|
+
_context3.prev = 10;
|
|
1303
|
+
_context3.t0 = _context3["catch"](5);
|
|
1292
1304
|
_loggerProxy.default.logger.log('Meeting:index#handleShareVideoStreamEnded --> Error stopping share: ', _context3.t0);
|
|
1293
|
-
case 12:
|
|
1294
|
-
_this.triggerStoppedSharing();
|
|
1295
1305
|
case 13:
|
|
1306
|
+
_this.triggerStoppedSharing();
|
|
1307
|
+
case 14:
|
|
1296
1308
|
case "end":
|
|
1297
1309
|
return _context3.stop();
|
|
1298
1310
|
}
|
|
1299
|
-
}, _callee3, null, [[
|
|
1311
|
+
}, _callee3, null, [[5, 10]]);
|
|
1300
1312
|
})));
|
|
1301
1313
|
/**
|
|
1302
1314
|
* Emits meeting:stoppedSharingLocal
|
|
@@ -1425,6 +1437,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1425
1437
|
_loggerProxy.default.logger.log("Meetings:index#constructor --> Initializing the meeting object with generated correlation id from sdk ".concat(_this.id));
|
|
1426
1438
|
_this.callStateForMetrics.correlationId = _this.id;
|
|
1427
1439
|
}
|
|
1440
|
+
_this.logUploadIntervalIndex = 0;
|
|
1441
|
+
|
|
1428
1442
|
/**
|
|
1429
1443
|
* @instance
|
|
1430
1444
|
* @type {String}
|
|
@@ -2413,8 +2427,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2413
2427
|
}
|
|
2414
2428
|
throw new _permission.default();
|
|
2415
2429
|
case 21:
|
|
2430
|
+
if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2JoinWebinarError)) {
|
|
2431
|
+
_context5.next = 29;
|
|
2432
|
+
break;
|
|
2433
|
+
}
|
|
2434
|
+
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WEBINAR_REGISTRATION;
|
|
2435
|
+
if (_constants.WEBINAR_ERROR_WEBCAST.includes(_context5.t0.wbxAppApiCode)) {
|
|
2436
|
+
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NEED_JOIN_WITH_WEBCAST;
|
|
2437
|
+
} else if (_constants.WEBINAR_ERROR_REGISTRATIONID.includes(_context5.t0.wbxAppApiCode)) {
|
|
2438
|
+
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WEBINAR_NEED_REGISTRATIONID;
|
|
2439
|
+
}
|
|
2440
|
+
this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
|
|
2441
|
+
if (_context5.t0.meetingInfo) {
|
|
2442
|
+
this.meetingInfo = _context5.t0.meetingInfo;
|
|
2443
|
+
}
|
|
2444
|
+
throw new _joinWebinarError.default();
|
|
2445
|
+
case 29:
|
|
2416
2446
|
if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2PasswordError)) {
|
|
2417
|
-
_context5.next =
|
|
2447
|
+
_context5.next = 41;
|
|
2418
2448
|
break;
|
|
2419
2449
|
}
|
|
2420
2450
|
_loggerProxy.default.logger.info( // @ts-ignore
|
|
@@ -2429,16 +2459,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2429
2459
|
this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
|
|
2430
2460
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
|
|
2431
2461
|
if (!this.requiredCaptcha) {
|
|
2432
|
-
_context5.next =
|
|
2462
|
+
_context5.next = 38;
|
|
2433
2463
|
break;
|
|
2434
2464
|
}
|
|
2435
|
-
_context5.next =
|
|
2465
|
+
_context5.next = 38;
|
|
2436
2466
|
return this.refreshCaptcha();
|
|
2437
|
-
case
|
|
2467
|
+
case 38:
|
|
2438
2468
|
throw new _passwordError.default();
|
|
2439
|
-
case
|
|
2469
|
+
case 41:
|
|
2440
2470
|
if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2CaptchaError)) {
|
|
2441
|
-
_context5.next =
|
|
2471
|
+
_context5.next = 50;
|
|
2442
2472
|
break;
|
|
2443
2473
|
}
|
|
2444
2474
|
_loggerProxy.default.logger.info( // @ts-ignore
|
|
@@ -2450,10 +2480,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2450
2480
|
}
|
|
2451
2481
|
this.requiredCaptcha = _context5.t0.captchaInfo;
|
|
2452
2482
|
throw new _captchaError.default();
|
|
2453
|
-
case
|
|
2483
|
+
case 50:
|
|
2454
2484
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.OTHER;
|
|
2455
2485
|
throw _context5.t0;
|
|
2456
|
-
case
|
|
2486
|
+
case 52:
|
|
2457
2487
|
case "end":
|
|
2458
2488
|
return _context5.stop();
|
|
2459
2489
|
}
|
|
@@ -2682,6 +2712,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2682
2712
|
this.setUpLocusInfoSelfListener();
|
|
2683
2713
|
this.setUpLocusInfoMeetingListener();
|
|
2684
2714
|
this.setUpLocusServicesListener();
|
|
2715
|
+
this.setUpLocusResourcesListener();
|
|
2685
2716
|
// members update listeners
|
|
2686
2717
|
this.setUpLocusFullStateListener();
|
|
2687
2718
|
this.setUpLocusUrlListener();
|
|
@@ -3198,8 +3229,45 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3198
3229
|
state: state
|
|
3199
3230
|
});
|
|
3200
3231
|
});
|
|
3201
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.
|
|
3232
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_WEBCAST_CHANGED, function (_ref22) {
|
|
3202
3233
|
var state = _ref22.state;
|
|
3234
|
+
_triggerProxy.default.trigger(_this13, {
|
|
3235
|
+
file: 'meeting/index',
|
|
3236
|
+
function: 'setupLocusControlsListener'
|
|
3237
|
+
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_WEBCAST_UPDATED, {
|
|
3238
|
+
state: state
|
|
3239
|
+
});
|
|
3240
|
+
});
|
|
3241
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_FULL_CHANGED, function (_ref23) {
|
|
3242
|
+
var state = _ref23.state;
|
|
3243
|
+
_triggerProxy.default.trigger(_this13, {
|
|
3244
|
+
file: 'meeting/index',
|
|
3245
|
+
function: 'setupLocusControlsListener'
|
|
3246
|
+
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_MEETING_FULL_UPDATED, {
|
|
3247
|
+
state: state
|
|
3248
|
+
});
|
|
3249
|
+
});
|
|
3250
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_PRACTICE_SESSION_STATUS_UPDATED, function (_ref24) {
|
|
3251
|
+
var state = _ref24.state;
|
|
3252
|
+
_this13.webinar.updatePracticeSessionStatus(state);
|
|
3253
|
+
_triggerProxy.default.trigger(_this13, {
|
|
3254
|
+
file: 'meeting/index',
|
|
3255
|
+
function: 'setupLocusControlsListener'
|
|
3256
|
+
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_PRACTICE_SESSION_STATUS_UPDATED, {
|
|
3257
|
+
state: state
|
|
3258
|
+
});
|
|
3259
|
+
});
|
|
3260
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_STAGE_VIEW_UPDATED, function (_ref25) {
|
|
3261
|
+
var state = _ref25.state;
|
|
3262
|
+
_triggerProxy.default.trigger(_this13, {
|
|
3263
|
+
file: 'meeting/index',
|
|
3264
|
+
function: 'setupLocusControlsListener'
|
|
3265
|
+
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_STAGE_VIEW_UPDATED, {
|
|
3266
|
+
state: state
|
|
3267
|
+
});
|
|
3268
|
+
});
|
|
3269
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIDEO_CHANGED, function (_ref26) {
|
|
3270
|
+
var state = _ref26.state;
|
|
3203
3271
|
_triggerProxy.default.trigger(_this13, {
|
|
3204
3272
|
file: 'meeting/index',
|
|
3205
3273
|
function: 'setupLocusControlsListener'
|
|
@@ -3246,7 +3314,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3246
3314
|
var _this14 = this;
|
|
3247
3315
|
// Will get triggered on local and remote share
|
|
3248
3316
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_MEDIA_SHARES, /*#__PURE__*/function () {
|
|
3249
|
-
var
|
|
3317
|
+
var _ref27 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(payload) {
|
|
3250
3318
|
var _payload$previous, _payload$previous2;
|
|
3251
3319
|
var _payload$current, contentShare, whiteboardShare, previousContentShare, previousWhiteboardShare, newShareStatus, oldShareStatus, sendStartedSharingRemote, _this14$mediaProperti;
|
|
3252
3320
|
return _regenerator.default.wrap(function _callee8$(_context8) {
|
|
@@ -3288,8 +3356,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3288
3356
|
else if ((previousContentShare && contentShare.disposition === _constants.FLOOR_ACTION.RELEASED || contentShare.disposition === null) && (previousWhiteboardShare && whiteboardShare.disposition === _constants.FLOOR_ACTION.RELEASED || whiteboardShare.disposition === null)) {
|
|
3289
3357
|
newShareStatus = _constants.SHARE_STATUS.NO_SHARE;
|
|
3290
3358
|
}
|
|
3359
|
+
_loggerProxy.default.logger.info("Meeting:index#setUpLocusInfoMediaInactiveListener --> this.shareStatus=".concat(_this14.shareStatus, " newShareStatus=").concat(newShareStatus));
|
|
3291
3360
|
if (!(newShareStatus !== _this14.shareStatus)) {
|
|
3292
|
-
_context8.next =
|
|
3361
|
+
_context8.next = 46;
|
|
3293
3362
|
break;
|
|
3294
3363
|
}
|
|
3295
3364
|
oldShareStatus = _this14.shareStatus; // update our state before we send out any notifications
|
|
@@ -3297,37 +3366,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3297
3366
|
|
|
3298
3367
|
// send out "stop" notifications for the old state
|
|
3299
3368
|
_context8.t0 = oldShareStatus;
|
|
3300
|
-
_context8.next = _context8.t0 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ?
|
|
3369
|
+
_context8.next = _context8.t0 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 15 : _context8.t0 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 17 : _context8.t0 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 19 : _context8.t0 === _constants.SHARE_STATUS.NO_SHARE ? 21 : 22;
|
|
3301
3370
|
break;
|
|
3302
|
-
case
|
|
3371
|
+
case 15:
|
|
3303
3372
|
_triggerProxy.default.trigger(_this14, {
|
|
3304
3373
|
file: 'meetings/index',
|
|
3305
3374
|
function: 'remoteShare'
|
|
3306
3375
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_REMOTE);
|
|
3307
|
-
return _context8.abrupt("break",
|
|
3308
|
-
case
|
|
3376
|
+
return _context8.abrupt("break", 23);
|
|
3377
|
+
case 17:
|
|
3309
3378
|
_triggerProxy.default.trigger(_this14, {
|
|
3310
3379
|
file: 'meeting/index',
|
|
3311
3380
|
function: 'localShare'
|
|
3312
3381
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
|
|
3313
3382
|
reason: _constants.SHARE_STOPPED_REASON.SELF_STOPPED
|
|
3314
3383
|
});
|
|
3315
|
-
return _context8.abrupt("break",
|
|
3316
|
-
case
|
|
3384
|
+
return _context8.abrupt("break", 23);
|
|
3385
|
+
case 19:
|
|
3317
3386
|
_triggerProxy.default.trigger(_this14, {
|
|
3318
3387
|
file: 'meeting/index',
|
|
3319
3388
|
function: 'stopWhiteboardShare'
|
|
3320
3389
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_WHITEBOARD);
|
|
3321
|
-
return _context8.abrupt("break",
|
|
3322
|
-
case 20:
|
|
3323
|
-
return _context8.abrupt("break", 22);
|
|
3390
|
+
return _context8.abrupt("break", 23);
|
|
3324
3391
|
case 21:
|
|
3325
|
-
return _context8.abrupt("break",
|
|
3392
|
+
return _context8.abrupt("break", 23);
|
|
3326
3393
|
case 22:
|
|
3394
|
+
return _context8.abrupt("break", 23);
|
|
3395
|
+
case 23:
|
|
3327
3396
|
_context8.t1 = newShareStatus;
|
|
3328
|
-
_context8.next = _context8.t1 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ?
|
|
3397
|
+
_context8.next = _context8.t1 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 26 : _context8.t1 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 35 : _context8.t1 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 38 : _context8.t1 === _constants.SHARE_STATUS.NO_SHARE ? 41 : 42;
|
|
3329
3398
|
break;
|
|
3330
|
-
case
|
|
3399
|
+
case 26:
|
|
3331
3400
|
sendStartedSharingRemote = function sendStartedSharingRemote() {
|
|
3332
3401
|
_this14.remoteShareInstanceId = contentShare.shareInstanceId;
|
|
3333
3402
|
_triggerProxy.default.trigger(_this14, {
|
|
@@ -3341,20 +3410,20 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3341
3410
|
resourceType: contentShare.resourceType
|
|
3342
3411
|
});
|
|
3343
3412
|
};
|
|
3344
|
-
_context8.prev =
|
|
3413
|
+
_context8.prev = 27;
|
|
3345
3414
|
if (!((_this14$mediaProperti = _this14.mediaProperties.mediaDirection) !== null && _this14$mediaProperti !== void 0 && _this14$mediaProperti.sendShare && oldShareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE)) {
|
|
3346
|
-
_context8.next =
|
|
3415
|
+
_context8.next = 31;
|
|
3347
3416
|
break;
|
|
3348
3417
|
}
|
|
3349
|
-
_context8.next =
|
|
3418
|
+
_context8.next = 31;
|
|
3350
3419
|
return _this14.unpublishStreams([_this14.mediaProperties.shareVideoStream, _this14.mediaProperties.shareAudioStream]);
|
|
3351
|
-
case
|
|
3352
|
-
_context8.prev =
|
|
3420
|
+
case 31:
|
|
3421
|
+
_context8.prev = 31;
|
|
3353
3422
|
sendStartedSharingRemote();
|
|
3354
|
-
return _context8.finish(
|
|
3355
|
-
case 33:
|
|
3356
|
-
return _context8.abrupt("break", 42);
|
|
3423
|
+
return _context8.finish(31);
|
|
3357
3424
|
case 34:
|
|
3425
|
+
return _context8.abrupt("break", 43);
|
|
3426
|
+
case 35:
|
|
3358
3427
|
_triggerProxy.default.trigger(_this14, {
|
|
3359
3428
|
file: 'meeting/index',
|
|
3360
3429
|
function: 'share'
|
|
@@ -3370,8 +3439,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3370
3439
|
meetingId: _this14.id
|
|
3371
3440
|
}
|
|
3372
3441
|
});
|
|
3373
|
-
return _context8.abrupt("break",
|
|
3374
|
-
case
|
|
3442
|
+
return _context8.abrupt("break", 43);
|
|
3443
|
+
case 38:
|
|
3375
3444
|
_triggerProxy.default.trigger(_this14, {
|
|
3376
3445
|
file: 'meeting/index',
|
|
3377
3446
|
function: 'startWhiteboardShare'
|
|
@@ -3389,16 +3458,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3389
3458
|
meetingId: _this14.id
|
|
3390
3459
|
}
|
|
3391
3460
|
});
|
|
3392
|
-
return _context8.abrupt("break",
|
|
3393
|
-
case 40:
|
|
3394
|
-
return _context8.abrupt("break", 42);
|
|
3461
|
+
return _context8.abrupt("break", 43);
|
|
3395
3462
|
case 41:
|
|
3396
|
-
return _context8.abrupt("break",
|
|
3463
|
+
return _context8.abrupt("break", 43);
|
|
3397
3464
|
case 42:
|
|
3465
|
+
return _context8.abrupt("break", 43);
|
|
3466
|
+
case 43:
|
|
3398
3467
|
_this14.members.locusMediaSharesUpdate(payload);
|
|
3399
|
-
_context8.next =
|
|
3468
|
+
_context8.next = 47;
|
|
3400
3469
|
break;
|
|
3401
|
-
case
|
|
3470
|
+
case 46:
|
|
3402
3471
|
if (newShareStatus === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE) {
|
|
3403
3472
|
// if we got here, then some remote participant has stolen
|
|
3404
3473
|
// the presentation from another remote participant
|
|
@@ -3436,14 +3505,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3436
3505
|
});
|
|
3437
3506
|
_this14.members.locusMediaSharesUpdate(payload);
|
|
3438
3507
|
}
|
|
3439
|
-
case
|
|
3508
|
+
case 47:
|
|
3440
3509
|
case "end":
|
|
3441
3510
|
return _context8.stop();
|
|
3442
3511
|
}
|
|
3443
|
-
}, _callee8, null, [[
|
|
3512
|
+
}, _callee8, null, [[27,, 31, 34]]);
|
|
3444
3513
|
}));
|
|
3445
3514
|
return function (_x8) {
|
|
3446
|
-
return
|
|
3515
|
+
return _ref27.apply(this, arguments);
|
|
3447
3516
|
};
|
|
3448
3517
|
}());
|
|
3449
3518
|
}
|
|
@@ -3493,14 +3562,29 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3493
3562
|
value: function setUpLocusServicesListener() {
|
|
3494
3563
|
var _this16 = this;
|
|
3495
3564
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LINKS_SERVICES, function (payload) {
|
|
3496
|
-
var _payload$services, _payload$services$rec, _this16$locusInfo, _this16$locusInfo$ful, _payload$services2, _payload$services2$br, _payload$services3, _payload$services3$ap, _payload$services4, _payload$services4$ap
|
|
3565
|
+
var _payload$services, _payload$services$rec, _this16$locusInfo, _this16$locusInfo$ful, _payload$services2, _payload$services2$br, _payload$services3, _payload$services3$ap, _payload$services4, _payload$services4$ap;
|
|
3497
3566
|
_this16.recordingController.setServiceUrl(payload === null || payload === void 0 ? void 0 : (_payload$services = payload.services) === null || _payload$services === void 0 ? void 0 : (_payload$services$rec = _payload$services.record) === null || _payload$services$rec === void 0 ? void 0 : _payload$services$rec.url);
|
|
3498
3567
|
_this16.recordingController.setSessionId((_this16$locusInfo = _this16.locusInfo) === null || _this16$locusInfo === void 0 ? void 0 : (_this16$locusInfo$ful = _this16$locusInfo.fullState) === null || _this16$locusInfo$ful === void 0 ? void 0 : _this16$locusInfo$ful.sessionId);
|
|
3499
3568
|
_this16.breakouts.breakoutServiceUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services2 = payload.services) === null || _payload$services2 === void 0 ? void 0 : (_payload$services2$br = _payload$services2.breakout) === null || _payload$services2$br === void 0 ? void 0 : _payload$services2$br.url);
|
|
3500
3569
|
_this16.annotation.approvalUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services3 = payload.services) === null || _payload$services3 === void 0 ? void 0 : (_payload$services3$ap = _payload$services3.approval) === null || _payload$services3$ap === void 0 ? void 0 : _payload$services3$ap.url);
|
|
3501
3570
|
_this16.simultaneousInterpretation.approvalUrlUpdate(payload === null || payload === void 0 ? void 0 : (_payload$services4 = payload.services) === null || _payload$services4 === void 0 ? void 0 : (_payload$services4$ap = _payload$services4.approval) === null || _payload$services4$ap === void 0 ? void 0 : _payload$services4$ap.url);
|
|
3502
|
-
|
|
3503
|
-
|
|
3571
|
+
});
|
|
3572
|
+
}
|
|
3573
|
+
|
|
3574
|
+
/**
|
|
3575
|
+
* Set up the locus info resources link listener
|
|
3576
|
+
* update the locusInfo for webcast instance url
|
|
3577
|
+
* @param {Object} payload - The event payload
|
|
3578
|
+
* @returns {undefined}
|
|
3579
|
+
* @private
|
|
3580
|
+
* @memberof Meeting
|
|
3581
|
+
*/
|
|
3582
|
+
}, {
|
|
3583
|
+
key: "setUpLocusResourcesListener",
|
|
3584
|
+
value: function setUpLocusResourcesListener() {
|
|
3585
|
+
var _this17 = this;
|
|
3586
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LINKS_RESOURCES, function (payload) {
|
|
3587
|
+
_this17.webinar.updateWebcastUrl(payload);
|
|
3504
3588
|
});
|
|
3505
3589
|
}
|
|
3506
3590
|
|
|
@@ -3513,10 +3597,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3513
3597
|
}, {
|
|
3514
3598
|
key: "setUpLocusInfoMeetingInfoListener",
|
|
3515
3599
|
value: function setUpLocusInfoMeetingInfoListener() {
|
|
3516
|
-
var
|
|
3600
|
+
var _this18 = this;
|
|
3517
3601
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_LOCKED, function (payload) {
|
|
3518
3602
|
if (payload) {
|
|
3519
|
-
_triggerProxy.default.trigger(
|
|
3603
|
+
_triggerProxy.default.trigger(_this18, {
|
|
3520
3604
|
file: 'meeting/index',
|
|
3521
3605
|
function: 'setUpLocusInfoMeetingInfoListener'
|
|
3522
3606
|
}, _constants.EVENT_TRIGGERS.MEETING_LOCKED, {
|
|
@@ -3526,7 +3610,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3526
3610
|
});
|
|
3527
3611
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_UNLOCKED, function (payload) {
|
|
3528
3612
|
if (payload) {
|
|
3529
|
-
_triggerProxy.default.trigger(
|
|
3613
|
+
_triggerProxy.default.trigger(_this18, {
|
|
3530
3614
|
file: 'meeting/index',
|
|
3531
3615
|
function: 'setUpLocusInfoMeetingInfoListener'
|
|
3532
3616
|
}, _constants.EVENT_TRIGGERS.MEETING_UNLOCKED, {
|
|
@@ -3534,16 +3618,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3534
3618
|
});
|
|
3535
3619
|
}
|
|
3536
3620
|
});
|
|
3537
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_INFO_UPDATED, function (
|
|
3538
|
-
var isInitializing =
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
|
|
3542
|
-
|
|
3543
|
-
|
|
3621
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_INFO_UPDATED, function (_ref28) {
|
|
3622
|
+
var isInitializing = _ref28.isInitializing;
|
|
3623
|
+
_this18.updateMeetingActions();
|
|
3624
|
+
_this18.recordingController.setDisplayHints(_this18.userDisplayHints);
|
|
3625
|
+
_this18.recordingController.setUserPolicy(_this18.selfUserPolicies);
|
|
3626
|
+
_this18.controlsOptionsManager.setDisplayHints(_this18.userDisplayHints);
|
|
3627
|
+
_this18.handleDataChannelUrlChange(_this18.datachannelUrl);
|
|
3544
3628
|
if (!isInitializing) {
|
|
3545
3629
|
// send updated trigger only if locus is not initializing the meeting
|
|
3546
|
-
_triggerProxy.default.trigger(
|
|
3630
|
+
_triggerProxy.default.trigger(_this18, {
|
|
3547
3631
|
file: 'meetings',
|
|
3548
3632
|
function: 'setUpLocusInfoMeetingInfoListener'
|
|
3549
3633
|
}, _constants.EVENT_TRIGGERS.MEETING_INFO_UPDATED);
|
|
@@ -3574,10 +3658,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3574
3658
|
}, {
|
|
3575
3659
|
key: "setUpLocusEmbeddedAppsListener",
|
|
3576
3660
|
value: function setUpLocusEmbeddedAppsListener() {
|
|
3577
|
-
var
|
|
3661
|
+
var _this19 = this;
|
|
3578
3662
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.EMBEDDED_APPS_UPDATED, function (embeddedApps) {
|
|
3579
3663
|
if (embeddedApps) {
|
|
3580
|
-
_triggerProxy.default.trigger(
|
|
3664
|
+
_triggerProxy.default.trigger(_this19, {
|
|
3581
3665
|
file: 'meeting/index',
|
|
3582
3666
|
function: 'setUpLocusEmbeddedAppsListener'
|
|
3583
3667
|
}, _constants.EVENT_TRIGGERS.MEETING_EMBEDDED_APPS_UPDATE, embeddedApps);
|
|
@@ -3594,11 +3678,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3594
3678
|
}, {
|
|
3595
3679
|
key: "setUpLocusInfoSelfListener",
|
|
3596
3680
|
value: function setUpLocusInfoSelfListener() {
|
|
3597
|
-
var
|
|
3681
|
+
var _this20 = this;
|
|
3598
3682
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LOCAL_UNMUTE_REQUIRED, function (payload) {
|
|
3599
|
-
if (
|
|
3600
|
-
|
|
3601
|
-
_triggerProxy.default.trigger(
|
|
3683
|
+
if (_this20.audio) {
|
|
3684
|
+
_this20.audio.handleServerLocalUnmuteRequired(_this20, payload.unmuteAllowed);
|
|
3685
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3602
3686
|
file: 'meeting/index',
|
|
3603
3687
|
function: 'setUpLocusInfoSelfListener'
|
|
3604
3688
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_UNMUTED_BY_OTHERS, {
|
|
@@ -3608,13 +3692,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3608
3692
|
});
|
|
3609
3693
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED, function (payload) {
|
|
3610
3694
|
if (payload) {
|
|
3611
|
-
if (
|
|
3695
|
+
if (_this20.video) {
|
|
3612
3696
|
var _payload$muted, _payload$unmuteAllowe;
|
|
3613
|
-
payload.muted = (_payload$muted = payload.muted) !== null && _payload$muted !== void 0 ? _payload$muted :
|
|
3614
|
-
payload.unmuteAllowed = (_payload$unmuteAllowe = payload.unmuteAllowed) !== null && _payload$unmuteAllowe !== void 0 ? _payload$unmuteAllowe :
|
|
3615
|
-
|
|
3697
|
+
payload.muted = (_payload$muted = payload.muted) !== null && _payload$muted !== void 0 ? _payload$muted : _this20.video.isRemotelyMuted();
|
|
3698
|
+
payload.unmuteAllowed = (_payload$unmuteAllowe = payload.unmuteAllowed) !== null && _payload$unmuteAllowe !== void 0 ? _payload$unmuteAllowe : _this20.video.isUnmuteAllowed();
|
|
3699
|
+
_this20.video.handleServerRemoteMuteUpdate(_this20, payload.muted, payload.unmuteAllowed);
|
|
3616
3700
|
}
|
|
3617
|
-
_triggerProxy.default.trigger(
|
|
3701
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3618
3702
|
file: 'meeting/index',
|
|
3619
3703
|
function: 'setUpLocusInfoSelfListener'
|
|
3620
3704
|
}, payload.muted ? _constants.EVENT_TRIGGERS.MEETING_SELF_VIDEO_MUTED_BY_OTHERS : _constants.EVENT_TRIGGERS.MEETING_SELF_VIDEO_UNMUTED_BY_OTHERS, {
|
|
@@ -3624,15 +3708,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3624
3708
|
});
|
|
3625
3709
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_REMOTE_MUTE_STATUS_UPDATED, function (payload) {
|
|
3626
3710
|
if (payload) {
|
|
3627
|
-
var
|
|
3628
|
-
if (
|
|
3629
|
-
|
|
3711
|
+
var _this20$audio;
|
|
3712
|
+
if (_this20.audio) {
|
|
3713
|
+
_this20.audio.handleServerRemoteMuteUpdate(_this20, payload.muted, payload.unmuteAllowed);
|
|
3630
3714
|
}
|
|
3631
3715
|
// with "mute on entry" server will send us remote mute even if we don't have media configured,
|
|
3632
3716
|
// so if being muted by others, always send the notification,
|
|
3633
3717
|
// but if being unmuted, only send it if we are also locally unmuted
|
|
3634
|
-
if (payload.muted || !((
|
|
3635
|
-
_triggerProxy.default.trigger(
|
|
3718
|
+
if (payload.muted || !((_this20$audio = _this20.audio) !== null && _this20$audio !== void 0 && _this20$audio.isMuted())) {
|
|
3719
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3636
3720
|
file: 'meeting/index',
|
|
3637
3721
|
function: 'setUpLocusInfoSelfListener'
|
|
3638
3722
|
}, payload.muted ? _constants.EVENT_TRIGGERS.MEETING_SELF_MUTED_BY_OTHERS : _constants.EVENT_TRIGGERS.MEETING_SELF_UNMUTED_BY_OTHERS, {
|
|
@@ -3642,7 +3726,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3642
3726
|
}
|
|
3643
3727
|
});
|
|
3644
3728
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LOCAL_UNMUTE_REQUESTED, function (payload) {
|
|
3645
|
-
_triggerProxy.default.trigger(
|
|
3729
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3646
3730
|
file: 'meeting/index',
|
|
3647
3731
|
function: 'setUpLocusInfoSelfListener'
|
|
3648
3732
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_REQUESTED_TO_UNMUTE, {
|
|
@@ -3651,8 +3735,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3651
3735
|
});
|
|
3652
3736
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_UNADMITTED_GUEST, function (payload) {
|
|
3653
3737
|
if (payload) {
|
|
3654
|
-
|
|
3655
|
-
_triggerProxy.default.trigger(
|
|
3738
|
+
_this20.startKeepAlive();
|
|
3739
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3656
3740
|
file: 'meeting/index',
|
|
3657
3741
|
function: 'setUpLocusInfoSelfListener'
|
|
3658
3742
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_LOBBY_WAITING, {
|
|
@@ -3660,24 +3744,27 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3660
3744
|
});
|
|
3661
3745
|
|
|
3662
3746
|
// @ts-ignore
|
|
3663
|
-
|
|
3747
|
+
_this20.webex.internal.newMetrics.submitClientEvent({
|
|
3664
3748
|
name: 'client.lobby.entered',
|
|
3665
3749
|
options: {
|
|
3666
|
-
meetingId:
|
|
3750
|
+
meetingId: _this20.id
|
|
3667
3751
|
}
|
|
3668
3752
|
});
|
|
3669
3753
|
}
|
|
3670
|
-
|
|
3754
|
+
_metrics.default.sendBehavioralMetric(_constants2.default.GUEST_ENTERED_LOBBY, {
|
|
3755
|
+
correlation_id: _this20.correlationId
|
|
3756
|
+
});
|
|
3757
|
+
_this20.updateLLMConnection();
|
|
3671
3758
|
});
|
|
3672
3759
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, /*#__PURE__*/function () {
|
|
3673
|
-
var
|
|
3674
|
-
var
|
|
3760
|
+
var _ref29 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(payload) {
|
|
3761
|
+
var _this20$rtcMetrics;
|
|
3675
3762
|
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
3676
3763
|
while (1) switch (_context9.prev = _context9.next) {
|
|
3677
3764
|
case 0:
|
|
3678
|
-
|
|
3765
|
+
_this20.stopKeepAlive();
|
|
3679
3766
|
if (payload) {
|
|
3680
|
-
_triggerProxy.default.trigger(
|
|
3767
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3681
3768
|
file: 'meeting/index',
|
|
3682
3769
|
function: 'setUpLocusInfoSelfListener'
|
|
3683
3770
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_GUEST_ADMITTED, {
|
|
@@ -3685,15 +3772,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3685
3772
|
});
|
|
3686
3773
|
|
|
3687
3774
|
// @ts-ignore
|
|
3688
|
-
|
|
3775
|
+
_this20.webex.internal.newMetrics.submitClientEvent({
|
|
3689
3776
|
name: 'client.lobby.exited',
|
|
3690
3777
|
options: {
|
|
3691
|
-
meetingId:
|
|
3778
|
+
meetingId: _this20.id
|
|
3692
3779
|
}
|
|
3693
3780
|
});
|
|
3781
|
+
_metrics.default.sendBehavioralMetric(_constants2.default.GUEST_EXITED_LOBBY, {
|
|
3782
|
+
correlation_id: _this20.correlationId
|
|
3783
|
+
});
|
|
3694
3784
|
}
|
|
3695
|
-
(
|
|
3696
|
-
|
|
3785
|
+
(_this20$rtcMetrics = _this20.rtcMetrics) === null || _this20$rtcMetrics === void 0 ? void 0 : _this20$rtcMetrics.sendNextMetrics();
|
|
3786
|
+
_this20.updateLLMConnection();
|
|
3697
3787
|
case 4:
|
|
3698
3788
|
case "end":
|
|
3699
3789
|
return _context9.stop();
|
|
@@ -3701,42 +3791,42 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3701
3791
|
}, _callee9);
|
|
3702
3792
|
}));
|
|
3703
3793
|
return function (_x9) {
|
|
3704
|
-
return
|
|
3794
|
+
return _ref29.apply(this, arguments);
|
|
3705
3795
|
};
|
|
3706
3796
|
}());
|
|
3707
3797
|
|
|
3708
3798
|
// @ts-ignore - check if MEDIA_INACTIVITY exists
|
|
3709
3799
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_INACTIVITY, function () {
|
|
3710
3800
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_MEDIA_INACTIVE, {
|
|
3711
|
-
correlation_id:
|
|
3712
|
-
locus_id:
|
|
3801
|
+
correlation_id: _this20.correlationId,
|
|
3802
|
+
locus_id: _this20.locusId
|
|
3713
3803
|
});
|
|
3714
3804
|
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoSelfListener --> MEDIA_INACTIVITY received, reconnecting...');
|
|
3715
|
-
|
|
3805
|
+
_this20.reconnect();
|
|
3716
3806
|
});
|
|
3717
3807
|
|
|
3718
3808
|
// There is two stats for mute one is the actual media being sent or received
|
|
3719
3809
|
// The second on is if the audio is muted, we need to tell the statsAnalyzer when
|
|
3720
3810
|
// the audio is muted or the user is not willing to send media
|
|
3721
3811
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_STATUS_CHANGE, function (status) {
|
|
3722
|
-
if (
|
|
3723
|
-
var
|
|
3724
|
-
|
|
3812
|
+
if (_this20.statsAnalyzer) {
|
|
3813
|
+
var _this20$mediaProperti, _this20$audio2, _this20$mediaProperti2, _this20$video, _this20$mediaProperti3, _this20$mediaProperti4, _this20$mediaProperti5, _this20$mediaProperti6;
|
|
3814
|
+
_this20.statsAnalyzer.updateMediaStatus({
|
|
3725
3815
|
actual: status,
|
|
3726
3816
|
expected: {
|
|
3727
3817
|
// We need to check what should be the actual direction of media
|
|
3728
|
-
sendAudio: ((
|
|
3729
|
-
sendVideo: ((
|
|
3730
|
-
sendShare: (
|
|
3731
|
-
receiveAudio: (
|
|
3732
|
-
receiveVideo: (
|
|
3733
|
-
receiveShare: (
|
|
3818
|
+
sendAudio: ((_this20$mediaProperti = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti === void 0 ? void 0 : _this20$mediaProperti.sendAudio) && !((_this20$audio2 = _this20.audio) !== null && _this20$audio2 !== void 0 && _this20$audio2.isMuted()),
|
|
3819
|
+
sendVideo: ((_this20$mediaProperti2 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti2 === void 0 ? void 0 : _this20$mediaProperti2.sendVideo) && !((_this20$video = _this20.video) !== null && _this20$video !== void 0 && _this20$video.isMuted()),
|
|
3820
|
+
sendShare: (_this20$mediaProperti3 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti3 === void 0 ? void 0 : _this20$mediaProperti3.sendShare,
|
|
3821
|
+
receiveAudio: (_this20$mediaProperti4 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti4 === void 0 ? void 0 : _this20$mediaProperti4.receiveAudio,
|
|
3822
|
+
receiveVideo: (_this20$mediaProperti5 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti5 === void 0 ? void 0 : _this20$mediaProperti5.receiveVideo,
|
|
3823
|
+
receiveShare: (_this20$mediaProperti6 = _this20.mediaProperties.mediaDirection) === null || _this20$mediaProperti6 === void 0 ? void 0 : _this20$mediaProperti6.receiveShare
|
|
3734
3824
|
}
|
|
3735
3825
|
});
|
|
3736
3826
|
}
|
|
3737
3827
|
});
|
|
3738
3828
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_CANNOT_VIEW_PARTICIPANT_LIST_CHANGE, function (payload) {
|
|
3739
|
-
_triggerProxy.default.trigger(
|
|
3829
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3740
3830
|
file: 'meeting/index',
|
|
3741
3831
|
function: 'setUpLocusInfoSelfListener'
|
|
3742
3832
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_CANNOT_VIEW_PARTICIPANT_LIST, {
|
|
@@ -3744,29 +3834,29 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3744
3834
|
});
|
|
3745
3835
|
});
|
|
3746
3836
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_BREAKOUTS_CHANGED, function (payload) {
|
|
3747
|
-
|
|
3748
|
-
_triggerProxy.default.trigger(
|
|
3837
|
+
_this20.breakouts.updateBreakoutSessions(payload);
|
|
3838
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3749
3839
|
file: 'meeting/index',
|
|
3750
3840
|
function: 'setUpLocusInfoSelfListener'
|
|
3751
3841
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
|
|
3752
3842
|
});
|
|
3753
3843
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_INTERPRETATION_CHANGED, function (payload) {
|
|
3754
|
-
var targetChanged =
|
|
3755
|
-
_triggerProxy.default.trigger(
|
|
3844
|
+
var targetChanged = _this20.simultaneousInterpretation.updateSelfInterpretation(payload);
|
|
3845
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3756
3846
|
file: 'meeting/index',
|
|
3757
3847
|
function: 'setUpLocusInfoSelfListener'
|
|
3758
3848
|
}, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE);
|
|
3759
|
-
if (targetChanged &&
|
|
3760
|
-
|
|
3849
|
+
if (targetChanged && _this20.mediaProperties.audioStream) {
|
|
3850
|
+
_this20.setSendNamedMediaGroup(_internalMediaCore.MediaType.AudioMain);
|
|
3761
3851
|
}
|
|
3762
3852
|
});
|
|
3763
3853
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ROLES_CHANGED, function (payload) {
|
|
3764
|
-
var _payload$newRoles, _payload$newRoles2, _payload$newRoles3
|
|
3854
|
+
var _payload$newRoles, _payload$newRoles2, _payload$newRoles3;
|
|
3765
3855
|
var isModeratorOrCohost = ((_payload$newRoles = payload.newRoles) === null || _payload$newRoles === void 0 ? void 0 : _payload$newRoles.includes(_constants.SELF_ROLES.MODERATOR)) || ((_payload$newRoles2 = payload.newRoles) === null || _payload$newRoles2 === void 0 ? void 0 : _payload$newRoles2.includes(_constants.SELF_ROLES.COHOST));
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
_triggerProxy.default.trigger(
|
|
3856
|
+
_this20.breakouts.updateCanManageBreakouts(isModeratorOrCohost);
|
|
3857
|
+
_this20.simultaneousInterpretation.updateCanManageInterpreters((_payload$newRoles3 = payload.newRoles) === null || _payload$newRoles3 === void 0 ? void 0 : _payload$newRoles3.includes(_constants.SELF_ROLES.MODERATOR));
|
|
3858
|
+
_this20.webinar.updateRoleChanged(payload);
|
|
3859
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3770
3860
|
file: 'meeting/index',
|
|
3771
3861
|
function: 'setUpLocusInfoSelfListener'
|
|
3772
3862
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_ROLES_CHANGED, {
|
|
@@ -3774,7 +3864,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3774
3864
|
});
|
|
3775
3865
|
});
|
|
3776
3866
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_IS_SHARING_BLOCKED_CHANGE, function (payload) {
|
|
3777
|
-
_triggerProxy.default.trigger(
|
|
3867
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3778
3868
|
file: 'meeting/index',
|
|
3779
3869
|
function: 'setUpLocusInfoSelfListener'
|
|
3780
3870
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_IS_SHARING_BLOCKED, {
|
|
@@ -3792,42 +3882,42 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3792
3882
|
}, {
|
|
3793
3883
|
key: "setUpLocusInfoMeetingListener",
|
|
3794
3884
|
value: function setUpLocusInfoMeetingListener() {
|
|
3795
|
-
var
|
|
3885
|
+
var _this21 = this;
|
|
3796
3886
|
this.locusInfo.on(_constants.EVENTS.REMOTE_RESPONSE, function (payload) {
|
|
3797
|
-
|
|
3887
|
+
_this21.meetingFiniteStateMachine.remote(payload);
|
|
3798
3888
|
if (payload.remoteDeclined) {
|
|
3799
|
-
|
|
3889
|
+
_this21.leave({
|
|
3800
3890
|
reason: payload.reason
|
|
3801
3891
|
}).then(function () {
|
|
3802
3892
|
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Attempting to leave meeting.');
|
|
3803
3893
|
}).catch(function (error) {
|
|
3804
3894
|
// @ts-ignore
|
|
3805
|
-
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Issue with leave for meeting, meeting still in collection: ".concat(
|
|
3895
|
+
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Issue with leave for meeting, meeting still in collection: ".concat(_this21, ", error: ").concat(error));
|
|
3806
3896
|
});
|
|
3807
3897
|
}
|
|
3808
3898
|
});
|
|
3809
3899
|
this.locusInfo.on(_constants.EVENTS.DESTROY_MEETING, /*#__PURE__*/function () {
|
|
3810
|
-
var
|
|
3900
|
+
var _ref30 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(payload) {
|
|
3811
3901
|
return _regenerator.default.wrap(function _callee10$(_context10) {
|
|
3812
3902
|
while (1) switch (_context10.prev = _context10.next) {
|
|
3813
3903
|
case 0:
|
|
3814
|
-
if (!
|
|
3904
|
+
if (!_this21.wirelessShare) {
|
|
3815
3905
|
_context10.next = 7;
|
|
3816
3906
|
break;
|
|
3817
3907
|
}
|
|
3818
|
-
if (!
|
|
3908
|
+
if (!_this21.mediaProperties.shareVideoStream) {
|
|
3819
3909
|
_context10.next = 4;
|
|
3820
3910
|
break;
|
|
3821
3911
|
}
|
|
3822
3912
|
_context10.next = 4;
|
|
3823
|
-
return
|
|
3913
|
+
return _this21.setLocalShareVideoStream(undefined);
|
|
3824
3914
|
case 4:
|
|
3825
|
-
if (!
|
|
3915
|
+
if (!_this21.mediaProperties.shareAudioStream) {
|
|
3826
3916
|
_context10.next = 7;
|
|
3827
3917
|
break;
|
|
3828
3918
|
}
|
|
3829
3919
|
_context10.next = 7;
|
|
3830
|
-
return
|
|
3920
|
+
return _this21.setLocalShareAudioStream(undefined);
|
|
3831
3921
|
case 7:
|
|
3832
3922
|
if (!payload.shouldLeave) {
|
|
3833
3923
|
_context10.next = 19;
|
|
@@ -3835,7 +3925,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3835
3925
|
}
|
|
3836
3926
|
_context10.prev = 8;
|
|
3837
3927
|
_context10.next = 11;
|
|
3838
|
-
return
|
|
3928
|
+
return _this21.leave({
|
|
3839
3929
|
reason: payload.reason
|
|
3840
3930
|
});
|
|
3841
3931
|
case 11:
|
|
@@ -3846,19 +3936,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3846
3936
|
_context10.prev = 14;
|
|
3847
3937
|
_context10.t0 = _context10["catch"](8);
|
|
3848
3938
|
// @ts-ignore
|
|
3849
|
-
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(
|
|
3939
|
+
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this21, ", error: ").concat(_context10.t0));
|
|
3850
3940
|
case 17:
|
|
3851
3941
|
_context10.next = 22;
|
|
3852
3942
|
break;
|
|
3853
3943
|
case 19:
|
|
3854
3944
|
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> MEETING_REMOVED_REASON', payload.reason);
|
|
3855
|
-
_util2.default.cleanUp(
|
|
3856
|
-
_triggerProxy.default.trigger(
|
|
3945
|
+
_util2.default.cleanUp(_this21);
|
|
3946
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3857
3947
|
file: 'meeting/index',
|
|
3858
3948
|
function: 'setUpLocusInfoMeetingListener'
|
|
3859
3949
|
}, _constants.EVENTS.DESTROY_MEETING, {
|
|
3860
3950
|
reason: payload.reason,
|
|
3861
|
-
meetingId:
|
|
3951
|
+
meetingId: _this21.id
|
|
3862
3952
|
});
|
|
3863
3953
|
case 22:
|
|
3864
3954
|
case "end":
|
|
@@ -3867,7 +3957,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3867
3957
|
}, _callee10, null, [[8, 14]]);
|
|
3868
3958
|
}));
|
|
3869
3959
|
return function (_x10) {
|
|
3870
|
-
return
|
|
3960
|
+
return _ref30.apply(this, arguments);
|
|
3871
3961
|
};
|
|
3872
3962
|
}());
|
|
3873
3963
|
}
|
|
@@ -3883,13 +3973,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3883
3973
|
}, {
|
|
3884
3974
|
key: "updateMeetingObject",
|
|
3885
3975
|
value: function updateMeetingObject(object) {
|
|
3886
|
-
var
|
|
3976
|
+
var _this22 = this;
|
|
3887
3977
|
// Validate if these are valid meeting object property
|
|
3888
3978
|
// TODO: add a check to make sure the value passed in the constructor
|
|
3889
3979
|
// is not changed by any delta event
|
|
3890
3980
|
if (object && (0, _keys.default)(object).length) {
|
|
3891
3981
|
(0, _keys.default)(object).forEach(function (key) {
|
|
3892
|
-
|
|
3982
|
+
_this22[key] = object[key];
|
|
3893
3983
|
});
|
|
3894
3984
|
}
|
|
3895
3985
|
}
|
|
@@ -4142,6 +4232,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4142
4232
|
canStopRecording: _util4.default.canUserStop(this.userDisplayHints, this.selfUserPolicies),
|
|
4143
4233
|
canPauseRecording: _util4.default.canUserPause(this.userDisplayHints, this.selfUserPolicies),
|
|
4144
4234
|
canResumeRecording: _util4.default.canUserResume(this.userDisplayHints, this.selfUserPolicies),
|
|
4235
|
+
isPremiseRecordingEnabled: _util4.default.isPremiseRecordingEnabled(this.userDisplayHints, this.selfUserPolicies),
|
|
4145
4236
|
canRaiseHand: _util2.default.canUserRaiseHand(this.userDisplayHints),
|
|
4146
4237
|
canLowerAllHands: _util2.default.canUserLowerAllHands(this.userDisplayHints),
|
|
4147
4238
|
canLowerSomeoneElsesHand: _util2.default.canUserLowerSomeoneElsesHand(this.userDisplayHints),
|
|
@@ -4219,6 +4310,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4219
4310
|
requiredHints: [_constants.DISPLAY_HINTS.DISABLE_VIEW_THE_PARTICIPANT_LIST],
|
|
4220
4311
|
displayHints: this.userDisplayHints
|
|
4221
4312
|
}),
|
|
4313
|
+
canEnableViewTheParticipantsListPanelist: _util5.default.hasHints({
|
|
4314
|
+
requiredHints: [_constants.DISPLAY_HINTS.ENABLE_VIEW_THE_PARTICIPANT_LIST_PANELIST],
|
|
4315
|
+
displayHints: this.userDisplayHints
|
|
4316
|
+
}),
|
|
4317
|
+
canDisableViewTheParticipantsListPanelist: _util5.default.hasHints({
|
|
4318
|
+
requiredHints: [_constants.DISPLAY_HINTS.DISABLE_VIEW_THE_PARTICIPANT_LIST_PANELIST],
|
|
4319
|
+
displayHints: this.userDisplayHints
|
|
4320
|
+
}),
|
|
4321
|
+
canEnableShowAttendeeCount: _util5.default.hasHints({
|
|
4322
|
+
requiredHints: [_constants.DISPLAY_HINTS.ENABLE_SHOW_ATTENDEE_COUNT],
|
|
4323
|
+
displayHints: this.userDisplayHints
|
|
4324
|
+
}),
|
|
4325
|
+
canDisableShowAttendeeCount: _util5.default.hasHints({
|
|
4326
|
+
requiredHints: [_constants.DISPLAY_HINTS.DISABLE_SHOW_ATTENDEE_COUNT],
|
|
4327
|
+
displayHints: this.userDisplayHints
|
|
4328
|
+
}),
|
|
4222
4329
|
canEnableRaiseHand: _util5.default.hasHints({
|
|
4223
4330
|
requiredHints: [_constants.DISPLAY_HINTS.ENABLE_RAISE_HAND],
|
|
4224
4331
|
displayHints: this.userDisplayHints
|
|
@@ -4235,6 +4342,42 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4235
4342
|
requiredHints: [_constants.DISPLAY_HINTS.DISABLE_VIDEO],
|
|
4236
4343
|
displayHints: this.userDisplayHints
|
|
4237
4344
|
}),
|
|
4345
|
+
canStartWebcast: _util5.default.hasHints({
|
|
4346
|
+
requiredHints: [_constants.DISPLAY_HINTS.WEBCAST_CONTROL_START],
|
|
4347
|
+
displayHints: this.userDisplayHints
|
|
4348
|
+
}),
|
|
4349
|
+
canStopWebcast: _util5.default.hasHints({
|
|
4350
|
+
requiredHints: [_constants.DISPLAY_HINTS.WEBCAST_CONTROL_STOP],
|
|
4351
|
+
displayHints: this.userDisplayHints
|
|
4352
|
+
}),
|
|
4353
|
+
canShowStageView: _util5.default.hasHints({
|
|
4354
|
+
requiredHints: [_constants.DISPLAY_HINTS.STAGE_VIEW_ACTIVE],
|
|
4355
|
+
displayHints: this.userDisplayHints
|
|
4356
|
+
}),
|
|
4357
|
+
canEnableStageView: _util5.default.hasHints({
|
|
4358
|
+
requiredHints: [_constants.DISPLAY_HINTS.ENABLE_STAGE_VIEW],
|
|
4359
|
+
displayHints: this.userDisplayHints
|
|
4360
|
+
}),
|
|
4361
|
+
canDisableStageView: _util5.default.hasHints({
|
|
4362
|
+
requiredHints: [_constants.DISPLAY_HINTS.DISABLE_STAGE_VIEW],
|
|
4363
|
+
displayHints: this.userDisplayHints
|
|
4364
|
+
}),
|
|
4365
|
+
isPracticeSessionOn: _util5.default.hasHints({
|
|
4366
|
+
requiredHints: [_constants.DISPLAY_HINTS.PRACTICE_SESSION_ON],
|
|
4367
|
+
displayHints: this.userDisplayHints
|
|
4368
|
+
}),
|
|
4369
|
+
isPracticeSessionOff: _util5.default.hasHints({
|
|
4370
|
+
requiredHints: [_constants.DISPLAY_HINTS.PRACTICE_SESSION_OFF],
|
|
4371
|
+
displayHints: this.userDisplayHints
|
|
4372
|
+
}),
|
|
4373
|
+
canStartPracticeSession: _util5.default.hasHints({
|
|
4374
|
+
requiredHints: [_constants.DISPLAY_HINTS.SHOW_PRACTICE_SESSION_START],
|
|
4375
|
+
displayHints: this.userDisplayHints
|
|
4376
|
+
}),
|
|
4377
|
+
canStopPracticeSession: _util5.default.hasHints({
|
|
4378
|
+
requiredHints: [_constants.DISPLAY_HINTS.SHOW_PRACTICE_SESSION_STOP],
|
|
4379
|
+
displayHints: this.userDisplayHints
|
|
4380
|
+
}),
|
|
4238
4381
|
canShareFile: _util5.default.hasHints({
|
|
4239
4382
|
requiredHints: [_constants.DISPLAY_HINTS.SHARE_FILE],
|
|
4240
4383
|
displayHints: this.userDisplayHints
|
|
@@ -4379,6 +4522,65 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4379
4522
|
_triggerProxy.default.trigger(this, options, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
|
|
4380
4523
|
}
|
|
4381
4524
|
|
|
4525
|
+
/**
|
|
4526
|
+
* sets the timer for periodic log upload
|
|
4527
|
+
* @returns {void}
|
|
4528
|
+
*/
|
|
4529
|
+
}, {
|
|
4530
|
+
key: "setLogUploadTimer",
|
|
4531
|
+
value: function setLogUploadTimer() {
|
|
4532
|
+
var _this23 = this;
|
|
4533
|
+
// start with short timeouts and increase them later on so in case users have very long multi-hour meetings we don't get too fragmented logs
|
|
4534
|
+
var LOG_UPLOAD_INTERVALS = [0.1, 15, 30, 60]; // in minutes
|
|
4535
|
+
|
|
4536
|
+
var delay = 1000 * 60 *
|
|
4537
|
+
// @ts-ignore - config coming from registerPlugin
|
|
4538
|
+
this.config.logUploadIntervalMultiplicationFactor * LOG_UPLOAD_INTERVALS[this.logUploadIntervalIndex];
|
|
4539
|
+
if (this.logUploadIntervalIndex < LOG_UPLOAD_INTERVALS.length - 1) {
|
|
4540
|
+
this.logUploadIntervalIndex += 1;
|
|
4541
|
+
}
|
|
4542
|
+
this.uploadLogsTimer = (0, _commonTimers.safeSetTimeout)(function () {
|
|
4543
|
+
_this23.uploadLogsTimer = undefined;
|
|
4544
|
+
_this23.uploadLogs();
|
|
4545
|
+
|
|
4546
|
+
// just as an extra precaution, to avoid uploading logs forever in case something goes wrong
|
|
4547
|
+
// and the page remains opened, we stop it if there is no media connection
|
|
4548
|
+
if (!_this23.mediaProperties.webrtcMediaConnection) {
|
|
4549
|
+
return;
|
|
4550
|
+
}
|
|
4551
|
+
_this23.setLogUploadTimer();
|
|
4552
|
+
}, delay);
|
|
4553
|
+
}
|
|
4554
|
+
|
|
4555
|
+
/**
|
|
4556
|
+
* Starts a periodic upload of logs
|
|
4557
|
+
*
|
|
4558
|
+
* @returns {undefined}
|
|
4559
|
+
*/
|
|
4560
|
+
}, {
|
|
4561
|
+
key: "startPeriodicLogUpload",
|
|
4562
|
+
value: function startPeriodicLogUpload() {
|
|
4563
|
+
// @ts-ignore - config coming from registerPlugin
|
|
4564
|
+
if (this.config.logUploadIntervalMultiplicationFactor && !this.uploadLogsTimer) {
|
|
4565
|
+
this.logUploadIntervalIndex = 0;
|
|
4566
|
+
this.setLogUploadTimer();
|
|
4567
|
+
}
|
|
4568
|
+
}
|
|
4569
|
+
|
|
4570
|
+
/**
|
|
4571
|
+
* Stops the periodic upload of logs
|
|
4572
|
+
*
|
|
4573
|
+
* @returns {undefined}
|
|
4574
|
+
*/
|
|
4575
|
+
}, {
|
|
4576
|
+
key: "stopPeriodicLogUpload",
|
|
4577
|
+
value: function stopPeriodicLogUpload() {
|
|
4578
|
+
if (this.uploadLogsTimer) {
|
|
4579
|
+
clearTimeout(this.uploadLogsTimer);
|
|
4580
|
+
this.uploadLogsTimer = undefined;
|
|
4581
|
+
}
|
|
4582
|
+
}
|
|
4583
|
+
|
|
4382
4584
|
/**
|
|
4383
4585
|
* Removes remote audio, video and share streams from class instance's mediaProperties
|
|
4384
4586
|
* @returns {undefined}
|
|
@@ -4413,7 +4615,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4413
4615
|
}, {
|
|
4414
4616
|
key: "closeRemoteStreams",
|
|
4415
4617
|
value: function closeRemoteStreams() {
|
|
4416
|
-
var
|
|
4618
|
+
var _this24 = this;
|
|
4417
4619
|
var _this$mediaProperties4 = this.mediaProperties,
|
|
4418
4620
|
remoteAudioStream = _this$mediaProperties4.remoteAudioStream,
|
|
4419
4621
|
remoteVideoStream = _this$mediaProperties4.remoteVideoStream,
|
|
@@ -4427,7 +4629,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4427
4629
|
*/
|
|
4428
4630
|
// eslint-disable-next-line @typescript-eslint/no-shadow
|
|
4429
4631
|
var triggerMediaStoppedEvent = function triggerMediaStoppedEvent(mediaType) {
|
|
4430
|
-
_triggerProxy.default.trigger(
|
|
4632
|
+
_triggerProxy.default.trigger(_this24, {
|
|
4431
4633
|
file: 'meeting/index',
|
|
4432
4634
|
function: 'closeRemoteStreams'
|
|
4433
4635
|
}, _constants.EVENT_TRIGGERS.MEDIA_STOPPED, {
|
|
@@ -4735,7 +4937,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4735
4937
|
}, {
|
|
4736
4938
|
key: "setMercuryListener",
|
|
4737
4939
|
value: function setMercuryListener() {
|
|
4738
|
-
var
|
|
4940
|
+
var _this25 = this;
|
|
4739
4941
|
// Client will have a socket manager and handle reconnecting to mercury, when we reconnect to mercury
|
|
4740
4942
|
// if the meeting has active peer connections, it should try to reconnect.
|
|
4741
4943
|
// @ts-ignore
|
|
@@ -4743,33 +4945,33 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4743
4945
|
_loggerProxy.default.logger.info('Meeting:index#setMercuryListener --> Web socket online');
|
|
4744
4946
|
|
|
4745
4947
|
// Only send restore event when it was disconnected before and for connected later
|
|
4746
|
-
if (!
|
|
4948
|
+
if (!_this25.hasWebsocketConnected) {
|
|
4747
4949
|
// @ts-ignore
|
|
4748
|
-
|
|
4950
|
+
_this25.webex.internal.newMetrics.submitClientEvent({
|
|
4749
4951
|
name: 'client.mercury.connection.restored',
|
|
4750
4952
|
options: {
|
|
4751
|
-
meetingId:
|
|
4953
|
+
meetingId: _this25.id
|
|
4752
4954
|
}
|
|
4753
4955
|
});
|
|
4754
4956
|
_metrics.default.sendBehavioralMetric(_constants2.default.MERCURY_CONNECTION_RESTORED, {
|
|
4755
|
-
correlation_id:
|
|
4957
|
+
correlation_id: _this25.correlationId
|
|
4756
4958
|
});
|
|
4757
4959
|
}
|
|
4758
|
-
|
|
4960
|
+
_this25.hasWebsocketConnected = true;
|
|
4759
4961
|
});
|
|
4760
4962
|
|
|
4761
4963
|
// @ts-ignore
|
|
4762
4964
|
this.webex.internal.mercury.on(_constants.OFFLINE, function () {
|
|
4763
4965
|
_loggerProxy.default.logger.error('Meeting:index#setMercuryListener --> Web socket offline');
|
|
4764
4966
|
// @ts-ignore
|
|
4765
|
-
|
|
4967
|
+
_this25.webex.internal.newMetrics.submitClientEvent({
|
|
4766
4968
|
name: 'client.mercury.connection.lost',
|
|
4767
4969
|
options: {
|
|
4768
|
-
meetingId:
|
|
4970
|
+
meetingId: _this25.id
|
|
4769
4971
|
}
|
|
4770
4972
|
});
|
|
4771
4973
|
_metrics.default.sendBehavioralMetric(_constants2.default.MERCURY_CONNECTION_FAILURE, {
|
|
4772
|
-
correlation_id:
|
|
4974
|
+
correlation_id: _this25.correlationId
|
|
4773
4975
|
});
|
|
4774
4976
|
});
|
|
4775
4977
|
}
|
|
@@ -4871,7 +5073,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4871
5073
|
}, {
|
|
4872
5074
|
key: "muteAudio",
|
|
4873
5075
|
value: function muteAudio() {
|
|
4874
|
-
var
|
|
5076
|
+
var _this26 = this;
|
|
4875
5077
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
4876
5078
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
4877
5079
|
}
|
|
@@ -4887,22 +5089,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4887
5089
|
|
|
4888
5090
|
// First, stop sending the local audio media
|
|
4889
5091
|
return logRequest(this.audio.handleClientRequest(this, true).then(function () {
|
|
4890
|
-
_util2.default.handleAudioLogging(
|
|
5092
|
+
_util2.default.handleAudioLogging(_this26.mediaProperties.audioStream);
|
|
4891
5093
|
// @ts-ignore
|
|
4892
|
-
|
|
5094
|
+
_this26.webex.internal.newMetrics.submitClientEvent({
|
|
4893
5095
|
name: 'client.muted',
|
|
4894
5096
|
payload: {
|
|
4895
5097
|
trigger: 'user-interaction',
|
|
4896
5098
|
mediaType: 'audio'
|
|
4897
5099
|
},
|
|
4898
5100
|
options: {
|
|
4899
|
-
meetingId:
|
|
5101
|
+
meetingId: _this26.id
|
|
4900
5102
|
}
|
|
4901
5103
|
});
|
|
4902
5104
|
}).catch(function (error) {
|
|
4903
5105
|
_metrics.default.sendBehavioralMetric(_constants2.default.MUTE_AUDIO_FAILURE, {
|
|
4904
|
-
correlation_id:
|
|
4905
|
-
locus_id:
|
|
5106
|
+
correlation_id: _this26.correlationId,
|
|
5107
|
+
locus_id: _this26.locusUrl.split('/').pop(),
|
|
4906
5108
|
reason: error.message,
|
|
4907
5109
|
stack: error.stack
|
|
4908
5110
|
});
|
|
@@ -4921,7 +5123,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4921
5123
|
}, {
|
|
4922
5124
|
key: "unmuteAudio",
|
|
4923
5125
|
value: function unmuteAudio() {
|
|
4924
|
-
var
|
|
5126
|
+
var _this27 = this;
|
|
4925
5127
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
4926
5128
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
4927
5129
|
}
|
|
@@ -4937,22 +5139,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4937
5139
|
|
|
4938
5140
|
// First, send the control to unmute the participant on the server
|
|
4939
5141
|
return logRequest(this.audio.handleClientRequest(this, false).then(function () {
|
|
4940
|
-
_util2.default.handleAudioLogging(
|
|
5142
|
+
_util2.default.handleAudioLogging(_this27.mediaProperties.audioStream);
|
|
4941
5143
|
// @ts-ignore
|
|
4942
|
-
|
|
5144
|
+
_this27.webex.internal.newMetrics.submitClientEvent({
|
|
4943
5145
|
name: 'client.unmuted',
|
|
4944
5146
|
payload: {
|
|
4945
5147
|
trigger: 'user-interaction',
|
|
4946
5148
|
mediaType: 'audio'
|
|
4947
5149
|
},
|
|
4948
5150
|
options: {
|
|
4949
|
-
meetingId:
|
|
5151
|
+
meetingId: _this27.id
|
|
4950
5152
|
}
|
|
4951
5153
|
});
|
|
4952
5154
|
}).catch(function (error) {
|
|
4953
5155
|
_metrics.default.sendBehavioralMetric(_constants2.default.UNMUTE_AUDIO_FAILURE, {
|
|
4954
|
-
correlation_id:
|
|
4955
|
-
locus_id:
|
|
5156
|
+
correlation_id: _this27.correlationId,
|
|
5157
|
+
locus_id: _this27.locusUrl.split('/').pop(),
|
|
4956
5158
|
reason: error.message,
|
|
4957
5159
|
stack: error.stack
|
|
4958
5160
|
});
|
|
@@ -4971,7 +5173,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4971
5173
|
}, {
|
|
4972
5174
|
key: "muteVideo",
|
|
4973
5175
|
value: function muteVideo() {
|
|
4974
|
-
var
|
|
5176
|
+
var _this28 = this;
|
|
4975
5177
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
4976
5178
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
4977
5179
|
}
|
|
@@ -4985,22 +5187,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4985
5187
|
return _promise.default.reject(new _parameter.default('no video control associated to the meeting'));
|
|
4986
5188
|
}
|
|
4987
5189
|
return logRequest(this.video.handleClientRequest(this, true).then(function () {
|
|
4988
|
-
_util2.default.handleVideoLogging(
|
|
5190
|
+
_util2.default.handleVideoLogging(_this28.mediaProperties.videoStream);
|
|
4989
5191
|
// @ts-ignore
|
|
4990
|
-
|
|
5192
|
+
_this28.webex.internal.newMetrics.submitClientEvent({
|
|
4991
5193
|
name: 'client.muted',
|
|
4992
5194
|
payload: {
|
|
4993
5195
|
trigger: 'user-interaction',
|
|
4994
5196
|
mediaType: 'video'
|
|
4995
5197
|
},
|
|
4996
5198
|
options: {
|
|
4997
|
-
meetingId:
|
|
5199
|
+
meetingId: _this28.id
|
|
4998
5200
|
}
|
|
4999
5201
|
});
|
|
5000
5202
|
}).catch(function (error) {
|
|
5001
5203
|
_metrics.default.sendBehavioralMetric(_constants2.default.MUTE_VIDEO_FAILURE, {
|
|
5002
|
-
correlation_id:
|
|
5003
|
-
locus_id:
|
|
5204
|
+
correlation_id: _this28.correlationId,
|
|
5205
|
+
locus_id: _this28.locusUrl.split('/').pop(),
|
|
5004
5206
|
reason: error.message,
|
|
5005
5207
|
stack: error.stack
|
|
5006
5208
|
});
|
|
@@ -5019,7 +5221,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5019
5221
|
}, {
|
|
5020
5222
|
key: "unmuteVideo",
|
|
5021
5223
|
value: function unmuteVideo() {
|
|
5022
|
-
var
|
|
5224
|
+
var _this29 = this;
|
|
5023
5225
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
5024
5226
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
5025
5227
|
}
|
|
@@ -5033,22 +5235,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5033
5235
|
return _promise.default.reject(new _parameter.default('no audio control associated to the meeting'));
|
|
5034
5236
|
}
|
|
5035
5237
|
return logRequest(this.video.handleClientRequest(this, false).then(function () {
|
|
5036
|
-
_util2.default.handleVideoLogging(
|
|
5238
|
+
_util2.default.handleVideoLogging(_this29.mediaProperties.videoStream);
|
|
5037
5239
|
// @ts-ignore
|
|
5038
|
-
|
|
5240
|
+
_this29.webex.internal.newMetrics.submitClientEvent({
|
|
5039
5241
|
name: 'client.unmuted',
|
|
5040
5242
|
payload: {
|
|
5041
5243
|
trigger: 'user-interaction',
|
|
5042
5244
|
mediaType: 'video'
|
|
5043
5245
|
},
|
|
5044
5246
|
options: {
|
|
5045
|
-
meetingId:
|
|
5247
|
+
meetingId: _this29.id
|
|
5046
5248
|
}
|
|
5047
5249
|
});
|
|
5048
5250
|
}).catch(function (error) {
|
|
5049
5251
|
_metrics.default.sendBehavioralMetric(_constants2.default.UNMUTE_VIDEO_FAILURE, {
|
|
5050
|
-
correlation_id:
|
|
5051
|
-
locus_id:
|
|
5252
|
+
correlation_id: _this29.correlationId,
|
|
5253
|
+
locus_id: _this29.locusUrl.split('/').pop(),
|
|
5052
5254
|
reason: error.message,
|
|
5053
5255
|
stack: error.stack
|
|
5054
5256
|
});
|
|
@@ -5078,7 +5280,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5078
5280
|
key: "joinWithMedia",
|
|
5079
5281
|
value: (function () {
|
|
5080
5282
|
var _joinWithMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
|
|
5081
|
-
var
|
|
5283
|
+
var _this30 = this;
|
|
5082
5284
|
var options,
|
|
5083
5285
|
mediaOptions,
|
|
5084
5286
|
_options$joinOptions,
|
|
@@ -5118,34 +5320,30 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5118
5320
|
_context15.prev = 9;
|
|
5119
5321
|
forceTurnDiscovery = false;
|
|
5120
5322
|
if (joinResponse) {
|
|
5121
|
-
_context15.next =
|
|
5323
|
+
_context15.next = 33;
|
|
5122
5324
|
break;
|
|
5123
5325
|
}
|
|
5124
5326
|
_context15.next = 14;
|
|
5125
|
-
return this.webex.meetings.reachability.getReachabilityResults();
|
|
5126
|
-
case 14:
|
|
5127
|
-
joinOptions.reachability = _context15.sent;
|
|
5128
|
-
_context15.next = 17;
|
|
5129
5327
|
return this.roap.generateTurnDiscoveryRequestMessage(this, true);
|
|
5130
|
-
case
|
|
5328
|
+
case 14:
|
|
5131
5329
|
turnDiscoveryRequest = _context15.sent;
|
|
5132
5330
|
turnDiscoverySkippedReason = turnDiscoveryRequest.turnDiscoverySkippedReason;
|
|
5133
5331
|
joinOptions.roapMessage = turnDiscoveryRequest.roapMessage;
|
|
5134
5332
|
_loggerProxy.default.logger.info('Meeting:index#joinWithMedia ---> calling join with joinOptions, ', joinOptions);
|
|
5135
|
-
_context15.next =
|
|
5333
|
+
_context15.next = 20;
|
|
5136
5334
|
return this.join(joinOptions);
|
|
5137
|
-
case
|
|
5335
|
+
case 20:
|
|
5138
5336
|
joinResponse = _context15.sent;
|
|
5139
5337
|
joined = true;
|
|
5140
5338
|
|
|
5141
5339
|
// if we sent out TURN discovery Roap message with join, process the TURN discovery response
|
|
5142
5340
|
if (!joinOptions.roapMessage) {
|
|
5143
|
-
_context15.next =
|
|
5341
|
+
_context15.next = 31;
|
|
5144
5342
|
break;
|
|
5145
5343
|
}
|
|
5146
|
-
_context15.next =
|
|
5344
|
+
_context15.next = 25;
|
|
5147
5345
|
return this.roap.handleTurnDiscoveryHttpResponse(this, joinResponse);
|
|
5148
|
-
case
|
|
5346
|
+
case 25:
|
|
5149
5347
|
_yield$this$roap$hand = _context15.sent;
|
|
5150
5348
|
turnServerInfo = _yield$this$roap$hand.turnServerInfo;
|
|
5151
5349
|
turnDiscoverySkippedReason = _yield$this$roap$hand.turnDiscoverySkippedReason;
|
|
@@ -5154,20 +5352,20 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5154
5352
|
if (turnServerInfo === undefined) {
|
|
5155
5353
|
this.roap.abortTurnDiscovery();
|
|
5156
5354
|
}
|
|
5157
|
-
case
|
|
5158
|
-
_context15.next =
|
|
5355
|
+
case 31:
|
|
5356
|
+
_context15.next = 35;
|
|
5159
5357
|
break;
|
|
5160
|
-
case
|
|
5358
|
+
case 33:
|
|
5161
5359
|
// This is a retry, when join succeeded but addMedia failed, so we'll just call addMedia() again,
|
|
5162
5360
|
// but we need to ensure that it also does a new TURN discovery
|
|
5163
5361
|
forceTurnDiscovery = true;
|
|
5164
5362
|
joined = true;
|
|
5165
|
-
case
|
|
5166
|
-
_context15.next =
|
|
5363
|
+
case 35:
|
|
5364
|
+
_context15.next = 37;
|
|
5167
5365
|
return this.addMediaInternal(function () {
|
|
5168
|
-
return
|
|
5366
|
+
return _this30.joinWithMediaRetryInfo.isRetry ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
|
|
5169
5367
|
}, turnServerInfo, forceTurnDiscovery, mediaOptions);
|
|
5170
|
-
case
|
|
5368
|
+
case 37:
|
|
5171
5369
|
mediaResponse = _context15.sent;
|
|
5172
5370
|
this.joinWithMediaRetryInfo = {
|
|
5173
5371
|
isRetry: false,
|
|
@@ -5177,30 +5375,30 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5177
5375
|
join: joinResponse,
|
|
5178
5376
|
media: mediaResponse
|
|
5179
5377
|
});
|
|
5180
|
-
case
|
|
5181
|
-
_context15.prev =
|
|
5378
|
+
case 42:
|
|
5379
|
+
_context15.prev = 42;
|
|
5182
5380
|
_context15.t0 = _context15["catch"](9);
|
|
5183
5381
|
_loggerProxy.default.logger.error('Meeting:index#joinWithMedia --> ', _context15.t0);
|
|
5184
5382
|
this.roap.abortTurnDiscovery();
|
|
5185
5383
|
if (!(joined && isRetry)) {
|
|
5186
|
-
_context15.next =
|
|
5384
|
+
_context15.next = 56;
|
|
5187
5385
|
break;
|
|
5188
5386
|
}
|
|
5189
|
-
_context15.prev =
|
|
5190
|
-
_context15.next =
|
|
5387
|
+
_context15.prev = 47;
|
|
5388
|
+
_context15.next = 50;
|
|
5191
5389
|
return this.leave({
|
|
5192
5390
|
resourceId: joinOptions === null || joinOptions === void 0 ? void 0 : joinOptions.resourceId,
|
|
5193
5391
|
reason: 'joinWithMedia failure'
|
|
5194
5392
|
});
|
|
5195
|
-
case
|
|
5196
|
-
_context15.next =
|
|
5393
|
+
case 50:
|
|
5394
|
+
_context15.next = 56;
|
|
5197
5395
|
break;
|
|
5198
|
-
case
|
|
5199
|
-
_context15.prev =
|
|
5200
|
-
_context15.t1 = _context15["catch"](
|
|
5396
|
+
case 52:
|
|
5397
|
+
_context15.prev = 52;
|
|
5398
|
+
_context15.t1 = _context15["catch"](47);
|
|
5201
5399
|
_loggerProxy.default.logger.error('Meeting:index#joinWithMedia --> leave error', _context15.t1);
|
|
5202
5400
|
leaveError = _context15.t1;
|
|
5203
|
-
case
|
|
5401
|
+
case 56:
|
|
5204
5402
|
_metrics.default.sendBehavioralMetric(_constants2.default.JOIN_WITH_MEDIA_FAILURE, {
|
|
5205
5403
|
correlation_id: this.correlationId,
|
|
5206
5404
|
locus_id: (_this$locusUrl = this.locusUrl) === null || _this$locusUrl === void 0 ? void 0 : _this$locusUrl.split('/').pop(),
|
|
@@ -5221,24 +5419,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5221
5419
|
shouldRetry = false;
|
|
5222
5420
|
}
|
|
5223
5421
|
if (!shouldRetry) {
|
|
5224
|
-
_context15.next =
|
|
5422
|
+
_context15.next = 64;
|
|
5225
5423
|
break;
|
|
5226
5424
|
}
|
|
5227
5425
|
_loggerProxy.default.logger.warn('Meeting:index#joinWithMedia --> retrying call to joinWithMedia');
|
|
5228
5426
|
this.joinWithMediaRetryInfo.isRetry = true;
|
|
5229
5427
|
this.joinWithMediaRetryInfo.prevJoinResponse = joinResponse;
|
|
5230
5428
|
return _context15.abrupt("return", this.joinWithMedia(options));
|
|
5231
|
-
case
|
|
5429
|
+
case 64:
|
|
5232
5430
|
this.joinWithMediaRetryInfo = {
|
|
5233
5431
|
isRetry: false,
|
|
5234
5432
|
prevJoinResponse: undefined
|
|
5235
5433
|
};
|
|
5236
5434
|
throw _context15.t0;
|
|
5237
|
-
case
|
|
5435
|
+
case 66:
|
|
5238
5436
|
case "end":
|
|
5239
5437
|
return _context15.stop();
|
|
5240
5438
|
}
|
|
5241
|
-
}, _callee15, this, [[9,
|
|
5439
|
+
}, _callee15, this, [[9, 42], [47, 52]]);
|
|
5242
5440
|
}));
|
|
5243
5441
|
function joinWithMedia() {
|
|
5244
5442
|
return _joinWithMedia.apply(this, arguments);
|
|
@@ -5257,7 +5455,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5257
5455
|
}, {
|
|
5258
5456
|
key: "reconnect",
|
|
5259
5457
|
value: function reconnect(options) {
|
|
5260
|
-
var
|
|
5458
|
+
var _this31 = this;
|
|
5261
5459
|
_loggerProxy.default.logger.log("Meeting:index#reconnect --> attempting to reconnect meeting ".concat(this.id));
|
|
5262
5460
|
if (!this.reconnectionManager || !this.reconnectionManager.reconnect) {
|
|
5263
5461
|
return _promise.default.reject(new _parameter.default('Cannot reconnect, ReconnectionManager must first be defined.'));
|
|
@@ -5267,15 +5465,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5267
5465
|
if (!_util2.default.isMediaEstablished(this.currentMediaStatus)) {
|
|
5268
5466
|
return _promise.default.reject(new _parameter.default('Cannot reconnect, Media has not established to reconnect'));
|
|
5269
5467
|
}
|
|
5468
|
+
this.cleanUpBeforeReconnection();
|
|
5270
5469
|
return this.reconnectionManager.reconnect(options, /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
|
|
5271
5470
|
return _regenerator.default.wrap(function _callee16$(_context16) {
|
|
5272
5471
|
while (1) switch (_context16.prev = _context16.next) {
|
|
5273
5472
|
case 0:
|
|
5274
5473
|
_context16.next = 2;
|
|
5275
|
-
return
|
|
5474
|
+
return _this31.waitForRemoteSDPAnswer();
|
|
5276
5475
|
case 2:
|
|
5277
5476
|
_context16.next = 4;
|
|
5278
|
-
return
|
|
5477
|
+
return _this31.waitForMediaConnectionConnected();
|
|
5279
5478
|
case 4:
|
|
5280
5479
|
case "end":
|
|
5281
5480
|
return _context16.stop();
|
|
@@ -5289,7 +5488,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5289
5488
|
return _promise.default.resolve();
|
|
5290
5489
|
}
|
|
5291
5490
|
_loggerProxy.default.logger.error('Meeting:index#reconnect --> Meeting reconnect failed', error);
|
|
5292
|
-
|
|
5491
|
+
_this31.uploadLogs({
|
|
5293
5492
|
file: 'meeting/index',
|
|
5294
5493
|
function: 'reconnect'
|
|
5295
5494
|
});
|
|
@@ -5336,19 +5535,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5336
5535
|
}, {
|
|
5337
5536
|
key: "setCaptionLanguage",
|
|
5338
5537
|
value: function setCaptionLanguage(language) {
|
|
5339
|
-
var
|
|
5538
|
+
var _this32 = this;
|
|
5340
5539
|
return new _promise.default(function (resolve, reject) {
|
|
5341
|
-
if (!
|
|
5540
|
+
if (!_this32.isTranscriptionSupported()) {
|
|
5342
5541
|
_loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
|
|
5343
5542
|
reject(new Error('Webex Assistant is not enabled/supported'));
|
|
5344
5543
|
}
|
|
5345
5544
|
try {
|
|
5346
5545
|
var voiceaListenerCaptionUpdate = function voiceaListenerCaptionUpdate(payload) {
|
|
5347
5546
|
// @ts-ignore
|
|
5348
|
-
|
|
5547
|
+
_this32.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
|
|
5349
5548
|
var statusCode = payload.statusCode;
|
|
5350
5549
|
if (statusCode === 200) {
|
|
5351
|
-
|
|
5550
|
+
_this32.transcription.languageOptions = _objectSpread(_objectSpread({}, _this32.transcription.languageOptions), {}, {
|
|
5352
5551
|
currentCaptionLanguage: language
|
|
5353
5552
|
});
|
|
5354
5553
|
resolve(language);
|
|
@@ -5357,9 +5556,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5357
5556
|
}
|
|
5358
5557
|
};
|
|
5359
5558
|
// @ts-ignore
|
|
5360
|
-
|
|
5559
|
+
_this32.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
|
|
5361
5560
|
// @ts-ignore
|
|
5362
|
-
|
|
5561
|
+
_this32.webex.internal.voicea.requestLanguage(language);
|
|
5363
5562
|
} catch (error) {
|
|
5364
5563
|
_loggerProxy.default.logger.error("Meeting:index#setCaptionLanguage --> ".concat(error));
|
|
5365
5564
|
reject(error);
|
|
@@ -5375,23 +5574,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5375
5574
|
}, {
|
|
5376
5575
|
key: "setSpokenLanguage",
|
|
5377
5576
|
value: function setSpokenLanguage(language) {
|
|
5378
|
-
var
|
|
5577
|
+
var _this33 = this;
|
|
5379
5578
|
return new _promise.default(function (resolve, reject) {
|
|
5380
|
-
if (!
|
|
5579
|
+
if (!_this33.isTranscriptionSupported()) {
|
|
5381
5580
|
_loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
|
|
5382
5581
|
reject(new Error('Webex Assistant is not enabled/supported'));
|
|
5383
5582
|
}
|
|
5384
|
-
if (
|
|
5583
|
+
if (_this33.getCurUserType() !== 'host') {
|
|
5385
5584
|
_loggerProxy.default.logger.error('Meeting:index#setSpokenLanguage --> Only host can set spoken language');
|
|
5386
5585
|
reject(new Error('Only host can set spoken language'));
|
|
5387
5586
|
}
|
|
5388
5587
|
try {
|
|
5389
5588
|
var voiceaListenerLanguageUpdate = function voiceaListenerLanguageUpdate(payload) {
|
|
5390
5589
|
// @ts-ignore
|
|
5391
|
-
|
|
5590
|
+
_this33.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
|
|
5392
5591
|
var languageCode = payload.languageCode;
|
|
5393
5592
|
if (languageCode) {
|
|
5394
|
-
|
|
5593
|
+
_this33.transcription.languageOptions = _objectSpread(_objectSpread({}, _this33.transcription.languageOptions), {}, {
|
|
5395
5594
|
currentSpokenLanguage: languageCode
|
|
5396
5595
|
});
|
|
5397
5596
|
resolve(languageCode);
|
|
@@ -5401,10 +5600,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5401
5600
|
};
|
|
5402
5601
|
|
|
5403
5602
|
// @ts-ignore
|
|
5404
|
-
|
|
5603
|
+
_this33.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
|
|
5405
5604
|
|
|
5406
5605
|
// @ts-ignore
|
|
5407
|
-
|
|
5606
|
+
_this33.webex.internal.voicea.setSpokenLanguage(language);
|
|
5408
5607
|
} catch (error) {
|
|
5409
5608
|
_loggerProxy.default.logger.error("Meeting:index#setSpokenLanguage --> ".concat(error));
|
|
5410
5609
|
reject(error);
|
|
@@ -5524,7 +5723,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5524
5723
|
*/
|
|
5525
5724
|
function () {
|
|
5526
5725
|
var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
|
|
5527
|
-
var
|
|
5726
|
+
var _this34 = this;
|
|
5528
5727
|
var options,
|
|
5529
5728
|
errorMessage,
|
|
5530
5729
|
error,
|
|
@@ -5576,18 +5775,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5576
5775
|
this.meetingFiniteStateMachine.reset();
|
|
5577
5776
|
}
|
|
5578
5777
|
|
|
5579
|
-
//
|
|
5580
|
-
|
|
5581
|
-
|
|
5582
|
-
|
|
5583
|
-
|
|
5584
|
-
|
|
5585
|
-
|
|
5586
|
-
|
|
5587
|
-
|
|
5588
|
-
|
|
5589
|
-
|
|
5590
|
-
|
|
5778
|
+
// send client.call.initiated unless told not to
|
|
5779
|
+
if (options.sendCallInitiated !== false) {
|
|
5780
|
+
// @ts-ignore
|
|
5781
|
+
this.webex.internal.newMetrics.submitClientEvent({
|
|
5782
|
+
name: 'client.call.initiated',
|
|
5783
|
+
payload: {
|
|
5784
|
+
trigger: this.callStateForMetrics.joinTrigger || 'user-interaction',
|
|
5785
|
+
isRoapCallEnabled: true,
|
|
5786
|
+
pstnAudioType: options === null || options === void 0 ? void 0 : options.pstnAudioType
|
|
5787
|
+
},
|
|
5788
|
+
options: {
|
|
5789
|
+
meetingId: this.id
|
|
5790
|
+
}
|
|
5791
|
+
});
|
|
5792
|
+
}
|
|
5591
5793
|
_loggerProxy.default.logger.log('Meeting:index#join --> Joining a meeting');
|
|
5592
5794
|
if (this.meetingFiniteStateMachine.state === _constants.MEETING_STATE_MACHINE.STATES.ENDED) {
|
|
5593
5795
|
this.meetingFiniteStateMachine.reset();
|
|
@@ -5670,62 +5872,62 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5670
5872
|
return _context18.abrupt("return", _promise.default.reject(_context18.t0));
|
|
5671
5873
|
case 51:
|
|
5672
5874
|
return _context18.abrupt("return", _util2.default.joinMeetingOptions(this, options).then(function (join) {
|
|
5673
|
-
|
|
5674
|
-
|
|
5875
|
+
_this34.meetingFiniteStateMachine.join();
|
|
5876
|
+
_this34.setupLocusMediaRequest();
|
|
5675
5877
|
|
|
5676
5878
|
// @ts-ignore
|
|
5677
|
-
|
|
5678
|
-
(0, _classPrivateFieldSet2.default)(
|
|
5879
|
+
_this34.webex.internal.device.meetingStarted();
|
|
5880
|
+
(0, _classPrivateFieldSet2.default)(_this34, _isoLocalClientMeetingJoinTime, new Date().toISOString());
|
|
5679
5881
|
_loggerProxy.default.logger.log('Meeting:index#join --> Success');
|
|
5680
5882
|
_metrics.default.sendBehavioralMetric(_constants2.default.JOIN_SUCCESS, {
|
|
5681
|
-
correlation_id:
|
|
5883
|
+
correlation_id: _this34.correlationId
|
|
5682
5884
|
});
|
|
5683
5885
|
joinSuccess(join);
|
|
5684
|
-
|
|
5886
|
+
_this34.deferJoin = undefined;
|
|
5685
5887
|
return join;
|
|
5686
5888
|
}).catch(function (error) {
|
|
5687
|
-
var
|
|
5688
|
-
|
|
5889
|
+
var _this34$meetingInfo, _error$error;
|
|
5890
|
+
_this34.meetingFiniteStateMachine.fail(error);
|
|
5689
5891
|
_loggerProxy.default.logger.error('Meeting:index#join --> Failed', error);
|
|
5690
5892
|
|
|
5691
5893
|
// @ts-ignore
|
|
5692
|
-
|
|
5894
|
+
_this34.webex.internal.newMetrics.submitClientEvent({
|
|
5693
5895
|
name: 'client.locus.join.response',
|
|
5694
5896
|
payload: {
|
|
5695
5897
|
identifiers: {
|
|
5696
|
-
meetingLookupUrl: (
|
|
5898
|
+
meetingLookupUrl: (_this34$meetingInfo = _this34.meetingInfo) === null || _this34$meetingInfo === void 0 ? void 0 : _this34$meetingInfo.meetingLookupUrl
|
|
5697
5899
|
}
|
|
5698
5900
|
},
|
|
5699
5901
|
options: {
|
|
5700
|
-
meetingId:
|
|
5902
|
+
meetingId: _this34.id,
|
|
5701
5903
|
rawError: error
|
|
5702
5904
|
}
|
|
5703
5905
|
});
|
|
5704
5906
|
|
|
5705
5907
|
// TODO: change this to error codes and pre defined dictionary
|
|
5706
5908
|
_metrics.default.sendBehavioralMetric(_constants2.default.JOIN_FAILURE, {
|
|
5707
|
-
correlation_id:
|
|
5909
|
+
correlation_id: _this34.correlationId,
|
|
5708
5910
|
reason: (_error$error = error.error) === null || _error$error === void 0 ? void 0 : _error$error.message,
|
|
5709
5911
|
stack: error.stack
|
|
5710
5912
|
});
|
|
5711
5913
|
|
|
5712
5914
|
// Upload logs on join Failure
|
|
5713
|
-
_triggerProxy.default.trigger(
|
|
5915
|
+
_triggerProxy.default.trigger(_this34, {
|
|
5714
5916
|
file: 'meeting/index',
|
|
5715
5917
|
function: 'join'
|
|
5716
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
5918
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this34);
|
|
5717
5919
|
joinFailed(error);
|
|
5718
|
-
|
|
5920
|
+
_this34.deferJoin = undefined;
|
|
5719
5921
|
return _promise.default.reject(error);
|
|
5720
5922
|
}).then(function (join) {
|
|
5721
5923
|
// @ts-ignore - config coming from registerPlugin
|
|
5722
|
-
if (
|
|
5924
|
+
if (_this34.config.enableAutomaticLLM) {
|
|
5723
5925
|
// @ts-ignore
|
|
5724
|
-
|
|
5725
|
-
|
|
5926
|
+
_this34.webex.internal.llm.on('online', _this34.handleLLMOnline);
|
|
5927
|
+
_this34.updateLLMConnection().catch(function (error) {
|
|
5726
5928
|
_loggerProxy.default.logger.error('Meeting:index#join --> Transcription Socket Connection Failed', error);
|
|
5727
5929
|
_metrics.default.sendBehavioralMetric(_constants2.default.LLM_CONNECTION_AFTER_JOIN_FAILURE, {
|
|
5728
|
-
correlation_id:
|
|
5930
|
+
correlation_id: _this34.correlationId,
|
|
5729
5931
|
reason: error === null || error === void 0 ? void 0 : error.message,
|
|
5730
5932
|
stack: error.stack
|
|
5731
5933
|
});
|
|
@@ -5757,7 +5959,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5757
5959
|
key: "updateLLMConnection",
|
|
5758
5960
|
value: (function () {
|
|
5759
5961
|
var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
|
|
5760
|
-
var
|
|
5962
|
+
var _this35 = this;
|
|
5761
5963
|
var _this$locusInfo6, url, _this$locusInfo6$info, _this$locusInfo6$info2, datachannelUrl, isJoined;
|
|
5762
5964
|
return _regenerator.default.wrap(function _callee19$(_context19) {
|
|
5763
5965
|
while (1) switch (_context19.prev = _context19.next) {
|
|
@@ -5793,9 +5995,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5793
5995
|
case 10:
|
|
5794
5996
|
return _context19.abrupt("return", this.webex.internal.llm.registerAndConnect(url, datachannelUrl).then(function (registerAndConnectResult) {
|
|
5795
5997
|
// @ts-ignore - Fix type
|
|
5796
|
-
|
|
5998
|
+
_this35.webex.internal.llm.off('event:relay.event', _this35.processRelayEvent);
|
|
5797
5999
|
// @ts-ignore - Fix type
|
|
5798
|
-
|
|
6000
|
+
_this35.webex.internal.llm.on('event:relay.event', _this35.processRelayEvent);
|
|
5799
6001
|
_loggerProxy.default.logger.info('Meeting:index#updateLLMConnection --> enabled to receive relay events!');
|
|
5800
6002
|
return _promise.default.resolve(registerAndConnectResult);
|
|
5801
6003
|
}));
|
|
@@ -5849,7 +6051,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5849
6051
|
}, {
|
|
5850
6052
|
key: "dialInPstn",
|
|
5851
6053
|
value: function dialInPstn() {
|
|
5852
|
-
var
|
|
6054
|
+
var _this36 = this;
|
|
5853
6055
|
if (this.isPhoneProvisioned(this.dialInDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial in devices from being provisioned
|
|
5854
6056
|
|
|
5855
6057
|
var correlationId = this.correlationId,
|
|
@@ -5865,10 +6067,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5865
6067
|
}).catch(function (error) {
|
|
5866
6068
|
var _error$error2;
|
|
5867
6069
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_IN_FAILURE, {
|
|
5868
|
-
correlation_id:
|
|
5869
|
-
dial_in_url:
|
|
6070
|
+
correlation_id: _this36.correlationId,
|
|
6071
|
+
dial_in_url: _this36.dialInUrl,
|
|
5870
6072
|
locus_id: locusUrl.split('/').pop(),
|
|
5871
|
-
client_url:
|
|
6073
|
+
client_url: _this36.deviceUrl,
|
|
5872
6074
|
reason: (_error$error2 = error.error) === null || _error$error2 === void 0 ? void 0 : _error$error2.message,
|
|
5873
6075
|
stack: error.stack
|
|
5874
6076
|
});
|
|
@@ -5886,7 +6088,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5886
6088
|
}, {
|
|
5887
6089
|
key: "dialOutPstn",
|
|
5888
6090
|
value: function dialOutPstn(phoneNumber) {
|
|
5889
|
-
var
|
|
6091
|
+
var _this37 = this;
|
|
5890
6092
|
if (this.isPhoneProvisioned(this.dialOutDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial out devices from being provisioned
|
|
5891
6093
|
|
|
5892
6094
|
var correlationId = this.correlationId,
|
|
@@ -5903,10 +6105,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5903
6105
|
}).catch(function (error) {
|
|
5904
6106
|
var _error$error3;
|
|
5905
6107
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_OUT_FAILURE, {
|
|
5906
|
-
correlation_id:
|
|
5907
|
-
dial_out_url:
|
|
6108
|
+
correlation_id: _this37.correlationId,
|
|
6109
|
+
dial_out_url: _this37.dialOutUrl,
|
|
5908
6110
|
locus_id: locusUrl.split('/').pop(),
|
|
5909
|
-
client_url:
|
|
6111
|
+
client_url: _this37.deviceUrl,
|
|
5910
6112
|
reason: (_error$error3 = error.error) === null || _error$error3 === void 0 ? void 0 : _error$error3.message,
|
|
5911
6113
|
stack: error.stack
|
|
5912
6114
|
});
|
|
@@ -5937,7 +6139,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5937
6139
|
}, {
|
|
5938
6140
|
key: "moveTo",
|
|
5939
6141
|
value: function moveTo(resourceId) {
|
|
5940
|
-
var
|
|
6142
|
+
var _this38 = this;
|
|
5941
6143
|
if (!resourceId) {
|
|
5942
6144
|
throw new _parameter.default('Cannot move call without a resourceId.');
|
|
5943
6145
|
}
|
|
@@ -5981,12 +6183,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5981
6183
|
while (1) switch (_context20.prev = _context20.next) {
|
|
5982
6184
|
case 0:
|
|
5983
6185
|
_context20.prev = 0;
|
|
5984
|
-
if (!(
|
|
6186
|
+
if (!(_this38.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
|
|
5985
6187
|
_context20.next = 4;
|
|
5986
6188
|
break;
|
|
5987
6189
|
}
|
|
5988
6190
|
_context20.next = 4;
|
|
5989
|
-
return
|
|
6191
|
+
return _this38.releaseScreenShareFloor();
|
|
5990
6192
|
case 4:
|
|
5991
6193
|
mediaSettings = {
|
|
5992
6194
|
mediaDirection: {
|
|
@@ -5998,37 +6200,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5998
6200
|
receiveShare: true
|
|
5999
6201
|
}
|
|
6000
6202
|
};
|
|
6001
|
-
|
|
6002
|
-
|
|
6203
|
+
_this38.mediaProperties.setMediaDirection(mediaSettings.mediaDirection);
|
|
6204
|
+
_this38.mediaProperties.unsetRemoteMedia();
|
|
6003
6205
|
|
|
6004
6206
|
// 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
|
|
6005
6207
|
// once the device answers we close the old connection and create new media server connection with only share enabled
|
|
6006
|
-
if (!
|
|
6208
|
+
if (!_this38.statsAnalyzer) {
|
|
6007
6209
|
_context20.next = 10;
|
|
6008
6210
|
break;
|
|
6009
6211
|
}
|
|
6010
6212
|
_context20.next = 10;
|
|
6011
|
-
return
|
|
6213
|
+
return _this38.statsAnalyzer.stopAnalyzer();
|
|
6012
6214
|
case 10:
|
|
6013
6215
|
_context20.next = 12;
|
|
6014
|
-
return
|
|
6216
|
+
return _this38.closeRemoteStreams();
|
|
6015
6217
|
case 12:
|
|
6016
6218
|
_context20.next = 14;
|
|
6017
|
-
return
|
|
6219
|
+
return _this38.closePeerConnections();
|
|
6018
6220
|
case 14:
|
|
6019
|
-
|
|
6020
|
-
|
|
6021
|
-
|
|
6022
|
-
|
|
6221
|
+
_this38.cleanupLocalStreams();
|
|
6222
|
+
_this38.unsetRemoteStreams();
|
|
6223
|
+
_this38.unsetPeerConnections();
|
|
6224
|
+
_this38.reconnectionManager.cleanUp();
|
|
6023
6225
|
_context20.next = 20;
|
|
6024
|
-
return
|
|
6226
|
+
return _this38.addMedia({
|
|
6025
6227
|
audioEnabled: false,
|
|
6026
6228
|
videoEnabled: false,
|
|
6027
6229
|
shareVideoEnabled: true
|
|
6028
6230
|
});
|
|
6029
6231
|
case 20:
|
|
6030
6232
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
|
|
6031
|
-
|
|
6233
|
+
_this38.isMoveToInProgress = false;
|
|
6032
6234
|
_context20.next = 29;
|
|
6033
6235
|
break;
|
|
6034
6236
|
case 24:
|
|
@@ -6036,12 +6238,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6036
6238
|
_context20.t0 = _context20["catch"](0);
|
|
6037
6239
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context20.t0);
|
|
6038
6240
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
6039
|
-
correlation_id:
|
|
6040
|
-
locus_id:
|
|
6241
|
+
correlation_id: _this38.correlationId,
|
|
6242
|
+
locus_id: _this38.locusUrl.split('/').pop(),
|
|
6041
6243
|
reason: _context20.t0.message,
|
|
6042
6244
|
stack: _context20.t0.stack
|
|
6043
6245
|
});
|
|
6044
|
-
|
|
6246
|
+
_this38.isMoveToInProgress = false;
|
|
6045
6247
|
case 29:
|
|
6046
6248
|
case "end":
|
|
6047
6249
|
return _context20.stop();
|
|
@@ -6057,17 +6259,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6057
6259
|
resourceId: resourceId,
|
|
6058
6260
|
moveToResource: true
|
|
6059
6261
|
}).then(function () {
|
|
6060
|
-
|
|
6262
|
+
_this38.meetingFiniteStateMachine.join();
|
|
6061
6263
|
}).catch(function (error) {
|
|
6062
|
-
|
|
6264
|
+
_this38.meetingFiniteStateMachine.fail(error);
|
|
6063
6265
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
6064
|
-
correlation_id:
|
|
6065
|
-
locus_id:
|
|
6266
|
+
correlation_id: _this38.correlationId,
|
|
6267
|
+
locus_id: _this38.locusUrl.split('/').pop(),
|
|
6066
6268
|
reason: error.message,
|
|
6067
6269
|
stack: error.stack
|
|
6068
6270
|
});
|
|
6069
6271
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', error);
|
|
6070
|
-
|
|
6272
|
+
_this38.isMoveToInProgress = false;
|
|
6071
6273
|
return _promise.default.reject(error);
|
|
6072
6274
|
});
|
|
6073
6275
|
}
|
|
@@ -6082,7 +6284,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6082
6284
|
}, {
|
|
6083
6285
|
key: "moveFrom",
|
|
6084
6286
|
value: function moveFrom(resourceId) {
|
|
6085
|
-
var
|
|
6287
|
+
var _this39 = this;
|
|
6086
6288
|
// On moveFrom ask the developer to re capture it moveFrom then updateMedia
|
|
6087
6289
|
if (!resourceId) {
|
|
6088
6290
|
throw new _parameter.default('Cannot move call without a resourceId.');
|
|
@@ -6097,19 +6299,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6097
6299
|
}
|
|
6098
6300
|
});
|
|
6099
6301
|
return _util2.default.joinMeetingOptions(this).then(function () {
|
|
6100
|
-
return _util2.default.leaveMeeting(
|
|
6302
|
+
return _util2.default.leaveMeeting(_this39, {
|
|
6101
6303
|
resourceId: resourceId,
|
|
6102
6304
|
correlationId: oldCorrelationId,
|
|
6103
6305
|
moveMeeting: true
|
|
6104
6306
|
}).then(function () {
|
|
6105
|
-
|
|
6307
|
+
_this39.resourceId = '';
|
|
6106
6308
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_SUCCESS);
|
|
6107
6309
|
});
|
|
6108
6310
|
}).catch(function (error) {
|
|
6109
|
-
|
|
6311
|
+
_this39.meetingFiniteStateMachine.fail(error);
|
|
6110
6312
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_FAILURE, {
|
|
6111
|
-
correlation_id:
|
|
6112
|
-
locus_id:
|
|
6313
|
+
correlation_id: _this39.correlationId,
|
|
6314
|
+
locus_id: _this39.locusUrl.split('/').pop(),
|
|
6113
6315
|
reason: error.message,
|
|
6114
6316
|
stack: error.stack
|
|
6115
6317
|
});
|
|
@@ -6222,9 +6424,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6222
6424
|
}, {
|
|
6223
6425
|
key: "forwardEvent",
|
|
6224
6426
|
value: function forwardEvent(eventEmitter, eventTypeToForward, meetingEventType) {
|
|
6225
|
-
var
|
|
6427
|
+
var _this40 = this;
|
|
6226
6428
|
eventEmitter.on(eventTypeToForward, function (data) {
|
|
6227
|
-
return _triggerProxy.default.trigger(
|
|
6429
|
+
return _triggerProxy.default.trigger(_this40, {
|
|
6228
6430
|
file: 'meetings',
|
|
6229
6431
|
function: 'addMedia'
|
|
6230
6432
|
}, meetingEventType, data);
|
|
@@ -6411,7 +6613,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6411
6613
|
*/
|
|
6412
6614
|
function () {
|
|
6413
6615
|
var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24() {
|
|
6414
|
-
var
|
|
6616
|
+
var _this41 = this;
|
|
6415
6617
|
var LOG_HEADER, deferSDPAnswer;
|
|
6416
6618
|
return _regenerator.default.wrap(function _callee24$(_context24) {
|
|
6417
6619
|
while (1) switch (_context24.prev = _context24.next) {
|
|
@@ -6428,18 +6630,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6428
6630
|
this.sdpResponseTimer = setTimeout(function () {
|
|
6429
6631
|
_loggerProxy.default.logger.warn("".concat(LOG_HEADER, " timeout! no REMOTE SDP ANSWER received within ").concat(_constants.ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT / 1000, " seconds"));
|
|
6430
6632
|
// @ts-ignore
|
|
6431
|
-
|
|
6633
|
+
_this41.webex.internal.newMetrics.submitClientEvent({
|
|
6432
6634
|
name: 'client.media-engine.remote-sdp-received',
|
|
6433
6635
|
payload: {
|
|
6434
6636
|
canProceed: false,
|
|
6435
6637
|
errors: [
|
|
6436
6638
|
// @ts-ignore
|
|
6437
|
-
|
|
6639
|
+
_this41.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
|
|
6438
6640
|
clientErrorCode: _internalPluginMetrics.CALL_DIAGNOSTIC_CONFIG.MISSING_ROAP_ANSWER_CLIENT_CODE
|
|
6439
6641
|
})]
|
|
6440
6642
|
},
|
|
6441
6643
|
options: {
|
|
6442
|
-
meetingId:
|
|
6644
|
+
meetingId: _this41.id,
|
|
6443
6645
|
rawError: new Error('Timeout waiting for SDP answer')
|
|
6444
6646
|
}
|
|
6445
6647
|
});
|
|
@@ -6825,6 +7027,43 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6825
7027
|
return _cleanUpBeforeRetryWithTurnServer.apply(this, arguments);
|
|
6826
7028
|
}
|
|
6827
7029
|
return cleanUpBeforeRetryWithTurnServer;
|
|
7030
|
+
}())
|
|
7031
|
+
}, {
|
|
7032
|
+
key: "cleanUpBeforeReconnection",
|
|
7033
|
+
value: function () {
|
|
7034
|
+
var _cleanUpBeforeReconnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32() {
|
|
7035
|
+
return _regenerator.default.wrap(function _callee32$(_context32) {
|
|
7036
|
+
while (1) switch (_context32.prev = _context32.next) {
|
|
7037
|
+
case 0:
|
|
7038
|
+
_context32.prev = 0;
|
|
7039
|
+
_context32.next = 3;
|
|
7040
|
+
return this.forceSendStatsReport({
|
|
7041
|
+
callFrom: 'cleanUpBeforeReconnection'
|
|
7042
|
+
});
|
|
7043
|
+
case 3:
|
|
7044
|
+
if (!this.statsAnalyzer) {
|
|
7045
|
+
_context32.next = 6;
|
|
7046
|
+
break;
|
|
7047
|
+
}
|
|
7048
|
+
_context32.next = 6;
|
|
7049
|
+
return this.statsAnalyzer.stopAnalyzer();
|
|
7050
|
+
case 6:
|
|
7051
|
+
_context32.next = 11;
|
|
7052
|
+
break;
|
|
7053
|
+
case 8:
|
|
7054
|
+
_context32.prev = 8;
|
|
7055
|
+
_context32.t0 = _context32["catch"](0);
|
|
7056
|
+
_loggerProxy.default.logger.error('Meeting:index#cleanUpBeforeReconnection --> Error during cleanup: ', _context32.t0);
|
|
7057
|
+
case 11:
|
|
7058
|
+
case "end":
|
|
7059
|
+
return _context32.stop();
|
|
7060
|
+
}
|
|
7061
|
+
}, _callee32, this, [[0, 8]]);
|
|
7062
|
+
}));
|
|
7063
|
+
function cleanUpBeforeReconnection() {
|
|
7064
|
+
return _cleanUpBeforeReconnection.apply(this, arguments);
|
|
7065
|
+
}
|
|
7066
|
+
return cleanUpBeforeReconnection;
|
|
6828
7067
|
}()
|
|
6829
7068
|
/**
|
|
6830
7069
|
* Creates an instance of LocusMediaRequest for this meeting - it is needed for doing any calls
|
|
@@ -6832,7 +7071,6 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6832
7071
|
*
|
|
6833
7072
|
* @returns {void}
|
|
6834
7073
|
*/
|
|
6835
|
-
)
|
|
6836
7074
|
}, {
|
|
6837
7075
|
key: "setupLocusMediaRequest",
|
|
6838
7076
|
value: function setupLocusMediaRequest() {
|
|
@@ -6867,10 +7105,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6867
7105
|
}, {
|
|
6868
7106
|
key: "addMedia",
|
|
6869
7107
|
value: function addMedia() {
|
|
6870
|
-
var
|
|
7108
|
+
var _this42 = this;
|
|
6871
7109
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
6872
7110
|
return this.addMediaInternal(function () {
|
|
6873
|
-
return
|
|
7111
|
+
return _this42.turnServerUsed ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
|
|
6874
7112
|
}, undefined, false, options);
|
|
6875
7113
|
}
|
|
6876
7114
|
|
|
@@ -6888,7 +7126,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6888
7126
|
}, {
|
|
6889
7127
|
key: "addMediaInternal",
|
|
6890
7128
|
value: (function () {
|
|
6891
|
-
var _addMediaInternal = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
7129
|
+
var _addMediaInternal = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(icePhaseCallback, turnServerInfo, forceTurnDiscovery) {
|
|
6892
7130
|
var options,
|
|
6893
7131
|
LOG_HEADER,
|
|
6894
7132
|
localStreams,
|
|
@@ -6901,6 +7139,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6901
7139
|
_options$shareVideoEn,
|
|
6902
7140
|
shareVideoEnabled,
|
|
6903
7141
|
remoteMediaManagerConfig,
|
|
7142
|
+
_options$bundlePolicy,
|
|
6904
7143
|
bundlePolicy,
|
|
6905
7144
|
_this$remoteMediaMana,
|
|
6906
7145
|
_yield$this$mediaProp,
|
|
@@ -6935,35 +7174,35 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6935
7174
|
_selectedCandidatePairChanges,
|
|
6936
7175
|
_numTransports,
|
|
6937
7176
|
_iceCandidateErrors,
|
|
6938
|
-
|
|
6939
|
-
return _regenerator.default.wrap(function
|
|
6940
|
-
while (1) switch (
|
|
7177
|
+
_args33 = arguments;
|
|
7178
|
+
return _regenerator.default.wrap(function _callee33$(_context33) {
|
|
7179
|
+
while (1) switch (_context33.prev = _context33.next) {
|
|
6941
7180
|
case 0:
|
|
6942
|
-
options =
|
|
7181
|
+
options = _args33.length > 3 && _args33[3] !== undefined ? _args33[3] : {};
|
|
6943
7182
|
this.addMediaData.retriedWithTurnServer = false;
|
|
6944
7183
|
this.addMediaData.icePhaseCallback = icePhaseCallback;
|
|
6945
7184
|
this.hasMediaConnectionConnectedAtLeastOnce = false;
|
|
6946
7185
|
LOG_HEADER = 'Meeting:index#addMedia -->';
|
|
6947
7186
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " called with: options=").concat((0, _stringify.default)(options), ", turnServerInfo=").concat((0, _stringify.default)(turnServerInfo), ", forceTurnDiscovery=").concat(forceTurnDiscovery));
|
|
6948
7187
|
if (!(options.allowMediaInLobby !== true && this.meetingState !== _constants.FULL_STATE.ACTIVE)) {
|
|
6949
|
-
|
|
7188
|
+
_context33.next = 8;
|
|
6950
7189
|
break;
|
|
6951
7190
|
}
|
|
6952
7191
|
throw new _webexErrors.MeetingNotActiveError();
|
|
6953
7192
|
case 8:
|
|
6954
7193
|
if (!_util2.default.isUserInLeftState(this.locusInfo)) {
|
|
6955
|
-
|
|
7194
|
+
_context33.next = 10;
|
|
6956
7195
|
break;
|
|
6957
7196
|
}
|
|
6958
7197
|
throw new _webexErrors.UserNotJoinedError();
|
|
6959
7198
|
case 10:
|
|
6960
|
-
localStreams = options.localStreams, _options$audioEnabled = options.audioEnabled, audioEnabled = _options$audioEnabled === void 0 ? true : _options$audioEnabled, _options$videoEnabled = options.videoEnabled, videoEnabled = _options$videoEnabled === void 0 ? true : _options$videoEnabled, _options$shareAudioEn = options.shareAudioEnabled, shareAudioEnabled = _options$shareAudioEn === void 0 ? true : _options$shareAudioEn, _options$shareVideoEn = options.shareVideoEnabled, shareVideoEnabled = _options$shareVideoEn === void 0 ? true : _options$shareVideoEn, remoteMediaManagerConfig = options.remoteMediaManagerConfig, bundlePolicy = options.bundlePolicy;
|
|
7199
|
+
localStreams = options.localStreams, _options$audioEnabled = options.audioEnabled, audioEnabled = _options$audioEnabled === void 0 ? true : _options$audioEnabled, _options$videoEnabled = options.videoEnabled, videoEnabled = _options$videoEnabled === void 0 ? true : _options$videoEnabled, _options$shareAudioEn = options.shareAudioEnabled, shareAudioEnabled = _options$shareAudioEn === void 0 ? true : _options$shareAudioEn, _options$shareVideoEn = options.shareVideoEnabled, shareVideoEnabled = _options$shareVideoEn === void 0 ? true : _options$shareVideoEn, remoteMediaManagerConfig = options.remoteMediaManagerConfig, _options$bundlePolicy = options.bundlePolicy, bundlePolicy = _options$bundlePolicy === void 0 ? 'max-bundle' : _options$bundlePolicy;
|
|
6961
7200
|
this.allowMediaInLobby = options === null || options === void 0 ? void 0 : options.allowMediaInLobby;
|
|
6962
7201
|
|
|
6963
7202
|
// If the user is unjoined or guest waiting in lobby dont allow the user to addMedia
|
|
6964
7203
|
// @ts-ignore - isUserUnadmitted coming from SelfUtil
|
|
6965
7204
|
if (!(this.isUserUnadmitted && !this.wirelessShare && !this.allowMediaInLobby)) {
|
|
6966
|
-
|
|
7205
|
+
_context33.next = 14;
|
|
6967
7206
|
break;
|
|
6968
7207
|
}
|
|
6969
7208
|
throw new _webexErrors.UserInLobbyError();
|
|
@@ -7006,45 +7245,45 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7006
7245
|
});
|
|
7007
7246
|
this.audio = (0, _muteState.createMuteState)(_constants.AUDIO, this, audioEnabled);
|
|
7008
7247
|
this.video = (0, _muteState.createMuteState)(_constants.VIDEO, this, videoEnabled);
|
|
7009
|
-
|
|
7010
|
-
|
|
7248
|
+
_context33.prev = 18;
|
|
7249
|
+
_context33.next = 21;
|
|
7011
7250
|
return this.setUpLocalStreamReferences(localStreams);
|
|
7012
7251
|
case 21:
|
|
7013
7252
|
this.setMercuryListener();
|
|
7014
7253
|
this.createStatsAnalyzer();
|
|
7015
|
-
|
|
7254
|
+
_context33.next = 25;
|
|
7016
7255
|
return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, forceTurnDiscovery, turnServerInfo);
|
|
7017
7256
|
case 25:
|
|
7018
7257
|
if (!(audioEnabled || videoEnabled)) {
|
|
7019
|
-
|
|
7258
|
+
_context33.next = 30;
|
|
7020
7259
|
break;
|
|
7021
7260
|
}
|
|
7022
|
-
|
|
7261
|
+
_context33.next = 28;
|
|
7023
7262
|
return Meeting.handleDeviceLogging(audioEnabled, videoEnabled);
|
|
7024
7263
|
case 28:
|
|
7025
|
-
|
|
7264
|
+
_context33.next = 31;
|
|
7026
7265
|
break;
|
|
7027
7266
|
case 30:
|
|
7028
7267
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " device logging not required"));
|
|
7029
7268
|
case 31:
|
|
7030
7269
|
if (!this.mediaProperties.hasLocalShareStream()) {
|
|
7031
|
-
|
|
7270
|
+
_context33.next = 34;
|
|
7032
7271
|
break;
|
|
7033
7272
|
}
|
|
7034
|
-
|
|
7273
|
+
_context33.next = 34;
|
|
7035
7274
|
return this.enqueueScreenShareFloorRequest();
|
|
7036
7275
|
case 34:
|
|
7037
|
-
|
|
7276
|
+
_context33.next = 36;
|
|
7038
7277
|
return this.mediaProperties.getCurrentConnectionInfo();
|
|
7039
7278
|
case 36:
|
|
7040
|
-
_yield$this$mediaProp =
|
|
7279
|
+
_yield$this$mediaProp = _context33.sent;
|
|
7041
7280
|
connectionType = _yield$this$mediaProp.connectionType;
|
|
7042
7281
|
selectedCandidatePairChanges = _yield$this$mediaProp.selectedCandidatePairChanges;
|
|
7043
7282
|
numTransports = _yield$this$mediaProp.numTransports;
|
|
7044
|
-
|
|
7283
|
+
_context33.next = 42;
|
|
7045
7284
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
7046
7285
|
case 42:
|
|
7047
|
-
reachabilityStats =
|
|
7286
|
+
reachabilityStats = _context33.sent;
|
|
7048
7287
|
iceCandidateErrors = Object.fromEntries(this.iceCandidateErrors);
|
|
7049
7288
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_SUCCESS, _objectSpread(_objectSpread(_objectSpread({
|
|
7050
7289
|
correlation_id: this.correlationId,
|
|
@@ -7069,31 +7308,32 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7069
7308
|
|
|
7070
7309
|
// We can log ReceiveSlot SSRCs only after the SDP exchange, so doing it here:
|
|
7071
7310
|
(_this$remoteMediaMana = this.remoteMediaManager) === null || _this$remoteMediaMana === void 0 ? void 0 : _this$remoteMediaMana.logAllReceiveSlots();
|
|
7072
|
-
|
|
7311
|
+
this.startPeriodicLogUpload();
|
|
7312
|
+
_context33.next = 69;
|
|
7073
7313
|
break;
|
|
7074
|
-
case
|
|
7075
|
-
|
|
7076
|
-
|
|
7077
|
-
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "),
|
|
7314
|
+
case 51:
|
|
7315
|
+
_context33.prev = 51;
|
|
7316
|
+
_context33.t0 = _context33["catch"](18);
|
|
7317
|
+
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _context33.t0);
|
|
7078
7318
|
|
|
7079
7319
|
// @ts-ignore
|
|
7080
|
-
|
|
7320
|
+
_context33.next = 56;
|
|
7081
7321
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
7082
|
-
case
|
|
7083
|
-
reachabilityMetrics =
|
|
7084
|
-
|
|
7322
|
+
case 56:
|
|
7323
|
+
reachabilityMetrics = _context33.sent;
|
|
7324
|
+
_context33.next = 59;
|
|
7085
7325
|
return this.mediaProperties.getCurrentConnectionInfo();
|
|
7086
|
-
case
|
|
7087
|
-
_yield$this$mediaProp2 =
|
|
7326
|
+
case 59:
|
|
7327
|
+
_yield$this$mediaProp2 = _context33.sent;
|
|
7088
7328
|
_selectedCandidatePairChanges = _yield$this$mediaProp2.selectedCandidatePairChanges;
|
|
7089
7329
|
_numTransports = _yield$this$mediaProp2.numTransports;
|
|
7090
7330
|
_iceCandidateErrors = Object.fromEntries(this.iceCandidateErrors);
|
|
7091
7331
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_FAILURE, _objectSpread(_objectSpread(_objectSpread({
|
|
7092
7332
|
correlation_id: this.correlationId,
|
|
7093
7333
|
locus_id: this.locusUrl.split('/').pop(),
|
|
7094
|
-
reason:
|
|
7095
|
-
stack:
|
|
7096
|
-
code:
|
|
7334
|
+
reason: _context33.t0.message,
|
|
7335
|
+
stack: _context33.t0.stack,
|
|
7336
|
+
code: _context33.t0.code,
|
|
7097
7337
|
selectedCandidatePairChanges: _selectedCandidatePairChanges,
|
|
7098
7338
|
numTransports: _numTransports,
|
|
7099
7339
|
turnDiscoverySkippedReason: this.turnDiscoverySkippedReason,
|
|
@@ -7107,29 +7347,29 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7107
7347
|
}, reachabilityMetrics), _iceCandidateErrors), {}, {
|
|
7108
7348
|
iceCandidatesCount: this.iceCandidatesCount
|
|
7109
7349
|
}));
|
|
7110
|
-
|
|
7350
|
+
_context33.next = 66;
|
|
7111
7351
|
return this.cleanUpOnAddMediaFailure();
|
|
7112
|
-
case
|
|
7352
|
+
case 66:
|
|
7113
7353
|
// Upload logs on error while adding media
|
|
7114
7354
|
_triggerProxy.default.trigger(this, {
|
|
7115
7355
|
file: 'meeting/index',
|
|
7116
7356
|
function: 'addMedia'
|
|
7117
7357
|
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
|
|
7118
|
-
if (
|
|
7358
|
+
if (_context33.t0 instanceof _internalMediaCore.Errors.SdpError) {
|
|
7119
7359
|
this.leave({
|
|
7120
7360
|
reason: _constants.MEETING_REMOVED_REASON.MEETING_CONNECTION_FAILED
|
|
7121
7361
|
});
|
|
7122
7362
|
}
|
|
7123
|
-
throw
|
|
7124
|
-
case
|
|
7125
|
-
|
|
7363
|
+
throw _context33.t0;
|
|
7364
|
+
case 69:
|
|
7365
|
+
_context33.prev = 69;
|
|
7126
7366
|
this.addMediaData.icePhaseCallback = DEFAULT_ICE_PHASE_CALLBACK;
|
|
7127
|
-
return
|
|
7128
|
-
case
|
|
7367
|
+
return _context33.finish(69);
|
|
7368
|
+
case 72:
|
|
7129
7369
|
case "end":
|
|
7130
|
-
return
|
|
7370
|
+
return _context33.stop();
|
|
7131
7371
|
}
|
|
7132
|
-
},
|
|
7372
|
+
}, _callee33, this, [[18, 51, 69, 72]]);
|
|
7133
7373
|
}));
|
|
7134
7374
|
function addMediaInternal(_x32, _x33, _x34) {
|
|
7135
7375
|
return _addMediaInternal.apply(this, arguments);
|
|
@@ -7161,7 +7401,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7161
7401
|
* @memberof Meeting
|
|
7162
7402
|
*/
|
|
7163
7403
|
function enqueueMediaUpdate(mediaUpdateType) {
|
|
7164
|
-
var
|
|
7404
|
+
var _this43 = this;
|
|
7165
7405
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
7166
7406
|
var canUpdateMediaNow = this.canUpdateMedia();
|
|
7167
7407
|
return new _promise.default(function (resolve, reject) {
|
|
@@ -7172,9 +7412,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7172
7412
|
options: options
|
|
7173
7413
|
};
|
|
7174
7414
|
_loggerProxy.default.logger.log("Meeting:index#enqueueMediaUpdate --> enqueuing media update type=".concat(mediaUpdateType));
|
|
7175
|
-
|
|
7415
|
+
_this43.queuedMediaUpdates.push(queueItem);
|
|
7176
7416
|
if (canUpdateMediaNow) {
|
|
7177
|
-
|
|
7417
|
+
_this43.processNextQueuedMediaUpdate();
|
|
7178
7418
|
}
|
|
7179
7419
|
});
|
|
7180
7420
|
}
|
|
@@ -7197,35 +7437,35 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7197
7437
|
* @memberof Meeting
|
|
7198
7438
|
*/
|
|
7199
7439
|
function () {
|
|
7200
|
-
var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
7440
|
+
var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee34(options) {
|
|
7201
7441
|
var audioEnabled, videoEnabled, shareAudioEnabled, shareVideoEnabled, _this$audio3, _this$video3;
|
|
7202
|
-
return _regenerator.default.wrap(function
|
|
7203
|
-
while (1) switch (
|
|
7442
|
+
return _regenerator.default.wrap(function _callee34$(_context34) {
|
|
7443
|
+
while (1) switch (_context34.prev = _context34.next) {
|
|
7204
7444
|
case 0:
|
|
7205
7445
|
this.checkMediaConnection();
|
|
7206
7446
|
audioEnabled = options.audioEnabled, videoEnabled = options.videoEnabled, shareAudioEnabled = options.shareAudioEnabled, shareVideoEnabled = options.shareVideoEnabled;
|
|
7207
7447
|
_loggerProxy.default.logger.log("Meeting:index#updateMedia --> called with options=".concat((0, _stringify.default)(options)));
|
|
7208
7448
|
if (this.canUpdateMedia()) {
|
|
7209
|
-
|
|
7449
|
+
_context34.next = 5;
|
|
7210
7450
|
break;
|
|
7211
7451
|
}
|
|
7212
|
-
return
|
|
7452
|
+
return _context34.abrupt("return", this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.UPDATE_MEDIA, options));
|
|
7213
7453
|
case 5:
|
|
7214
7454
|
if (!this.isMultistream) {
|
|
7215
|
-
|
|
7455
|
+
_context34.next = 10;
|
|
7216
7456
|
break;
|
|
7217
7457
|
}
|
|
7218
7458
|
if (!(shareAudioEnabled !== undefined || shareVideoEnabled !== undefined)) {
|
|
7219
|
-
|
|
7459
|
+
_context34.next = 8;
|
|
7220
7460
|
break;
|
|
7221
7461
|
}
|
|
7222
7462
|
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');
|
|
7223
7463
|
case 8:
|
|
7224
|
-
|
|
7464
|
+
_context34.next = 12;
|
|
7225
7465
|
break;
|
|
7226
7466
|
case 10:
|
|
7227
7467
|
if (!(shareAudioEnabled !== undefined)) {
|
|
7228
|
-
|
|
7468
|
+
_context34.next = 12;
|
|
7229
7469
|
break;
|
|
7230
7470
|
}
|
|
7231
7471
|
throw new Error('toggling shareAudioEnabled in a transcoded meeting is not supported as of now');
|
|
@@ -7250,18 +7490,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7250
7490
|
this.mediaProperties.mediaDirection.receiveShare = !!(shareAudioEnabled || shareVideoEnabled);
|
|
7251
7491
|
}
|
|
7252
7492
|
if (this.isMultistream) {
|
|
7253
|
-
|
|
7493
|
+
_context34.next = 18;
|
|
7254
7494
|
break;
|
|
7255
7495
|
}
|
|
7256
|
-
|
|
7496
|
+
_context34.next = 18;
|
|
7257
7497
|
return this.updateTranscodedMediaConnection();
|
|
7258
7498
|
case 18:
|
|
7259
|
-
return
|
|
7499
|
+
return _context34.abrupt("return", undefined);
|
|
7260
7500
|
case 19:
|
|
7261
7501
|
case "end":
|
|
7262
|
-
return
|
|
7502
|
+
return _context34.stop();
|
|
7263
7503
|
}
|
|
7264
|
-
},
|
|
7504
|
+
}, _callee34, this);
|
|
7265
7505
|
}));
|
|
7266
7506
|
function updateMedia(_x35) {
|
|
7267
7507
|
return _updateMedia.apply(this, arguments);
|
|
@@ -7279,7 +7519,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7279
7519
|
}, {
|
|
7280
7520
|
key: "acknowledge",
|
|
7281
7521
|
value: function acknowledge(type) {
|
|
7282
|
-
var
|
|
7522
|
+
var _this44 = this;
|
|
7283
7523
|
if (!type) {
|
|
7284
7524
|
return _promise.default.reject(new _parameter.default('Type must be set to acknowledge the meeting.'));
|
|
7285
7525
|
}
|
|
@@ -7291,12 +7531,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7291
7531
|
}).then(function (response) {
|
|
7292
7532
|
return _promise.default.resolve(response);
|
|
7293
7533
|
}).then(function (response) {
|
|
7294
|
-
|
|
7534
|
+
_this44.meetingFiniteStateMachine.ring(type);
|
|
7295
7535
|
// @ts-ignore
|
|
7296
|
-
|
|
7536
|
+
_this44.webex.internal.newMetrics.submitClientEvent({
|
|
7297
7537
|
name: 'client.alert.displayed',
|
|
7298
7538
|
options: {
|
|
7299
|
-
meetingId:
|
|
7539
|
+
meetingId: _this44.id
|
|
7300
7540
|
}
|
|
7301
7541
|
});
|
|
7302
7542
|
return _promise.default.resolve({
|
|
@@ -7321,12 +7561,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7321
7561
|
}, {
|
|
7322
7562
|
key: "decline",
|
|
7323
7563
|
value: function decline(reason) {
|
|
7324
|
-
var
|
|
7564
|
+
var _this45 = this;
|
|
7325
7565
|
return _util2.default.declineMeeting(this, reason).then(function (decline) {
|
|
7326
|
-
|
|
7566
|
+
_this45.meetingFiniteStateMachine.decline();
|
|
7327
7567
|
return _promise.default.resolve(decline);
|
|
7328
7568
|
}).catch(function (error) {
|
|
7329
|
-
|
|
7569
|
+
_this45.meetingFiniteStateMachine.fail(error);
|
|
7330
7570
|
return _promise.default.reject(error);
|
|
7331
7571
|
});
|
|
7332
7572
|
}
|
|
@@ -7377,7 +7617,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7377
7617
|
}, {
|
|
7378
7618
|
key: "leave",
|
|
7379
7619
|
value: function leave() {
|
|
7380
|
-
var
|
|
7620
|
+
var _this46 = this;
|
|
7381
7621
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7382
7622
|
var leaveReason = options.reason || _constants.MEETING_REMOVED_REASON.CLIENT_LEAVE_REQUEST;
|
|
7383
7623
|
|
|
@@ -7389,7 +7629,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7389
7629
|
var payload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7390
7630
|
return (
|
|
7391
7631
|
// @ts-ignore
|
|
7392
|
-
|
|
7632
|
+
_this46.webex.internal.newMetrics.submitClientEvent({
|
|
7393
7633
|
name: 'client.call.leave',
|
|
7394
7634
|
payload: _objectSpread({
|
|
7395
7635
|
trigger: 'user-interaction',
|
|
@@ -7397,7 +7637,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7397
7637
|
leaveReason: options.clientEventLeaveReason
|
|
7398
7638
|
}, payload),
|
|
7399
7639
|
options: {
|
|
7400
|
-
meetingId:
|
|
7640
|
+
meetingId: _this46.id
|
|
7401
7641
|
}
|
|
7402
7642
|
})
|
|
7403
7643
|
);
|
|
@@ -7406,24 +7646,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7406
7646
|
return _util2.default.leaveMeeting(this, options).then(function (leave) {
|
|
7407
7647
|
// CA team recommends submitting this *after* locus /leave
|
|
7408
7648
|
submitLeaveMetric();
|
|
7409
|
-
|
|
7410
|
-
|
|
7649
|
+
_this46.meetingFiniteStateMachine.leave();
|
|
7650
|
+
_this46.clearMeetingData();
|
|
7411
7651
|
|
|
7412
7652
|
// upload logs on leave irrespective of meeting delete
|
|
7413
|
-
_triggerProxy.default.trigger(
|
|
7653
|
+
_triggerProxy.default.trigger(_this46, {
|
|
7414
7654
|
file: 'meeting/index',
|
|
7415
7655
|
function: 'leave'
|
|
7416
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7656
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this46);
|
|
7417
7657
|
|
|
7418
7658
|
// TODO: more testing before we remove this code, we are not sure the scenarios for destroy here
|
|
7419
|
-
if (
|
|
7659
|
+
if (_this46.wirelessShare || _this46.guest) {
|
|
7420
7660
|
// If screen sharing clean the meeting object
|
|
7421
|
-
_triggerProxy.default.trigger(
|
|
7661
|
+
_triggerProxy.default.trigger(_this46, {
|
|
7422
7662
|
file: 'meeting/index',
|
|
7423
7663
|
function: 'leave'
|
|
7424
7664
|
}, _constants.EVENTS.DESTROY_MEETING, {
|
|
7425
7665
|
reason: options.reason,
|
|
7426
|
-
meetingId:
|
|
7666
|
+
meetingId: _this46.id
|
|
7427
7667
|
});
|
|
7428
7668
|
}
|
|
7429
7669
|
_loggerProxy.default.logger.log('Meeting:index#leave --> LEAVE REASON ', leaveReason);
|
|
@@ -7440,16 +7680,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7440
7680
|
shownToUser: false
|
|
7441
7681
|
}]
|
|
7442
7682
|
});
|
|
7443
|
-
|
|
7683
|
+
_this46.meetingFiniteStateMachine.fail(error);
|
|
7444
7684
|
_loggerProxy.default.logger.error('Meeting:index#leave --> Failed to leave ', error);
|
|
7445
7685
|
// upload logs on leave irrespective of meeting delete
|
|
7446
|
-
_triggerProxy.default.trigger(
|
|
7686
|
+
_triggerProxy.default.trigger(_this46, {
|
|
7447
7687
|
file: 'meeting/index',
|
|
7448
7688
|
function: 'leave'
|
|
7449
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7689
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this46);
|
|
7450
7690
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_LEAVE_FAILURE, {
|
|
7451
|
-
correlation_id:
|
|
7452
|
-
locus_id:
|
|
7691
|
+
correlation_id: _this46.correlationId,
|
|
7692
|
+
locus_id: _this46.locusUrl.split('/').pop(),
|
|
7453
7693
|
reason: error.message,
|
|
7454
7694
|
stack: error.stack,
|
|
7455
7695
|
code: error.code
|
|
@@ -7469,7 +7709,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7469
7709
|
}, {
|
|
7470
7710
|
key: "startWhiteboardShare",
|
|
7471
7711
|
value: function startWhiteboardShare(channelUrl, resourceToken) {
|
|
7472
|
-
var
|
|
7712
|
+
var _this47 = this;
|
|
7473
7713
|
var whiteboard = this.locusInfo.mediaShares.find(function (element) {
|
|
7474
7714
|
return element.name === 'whiteboard';
|
|
7475
7715
|
});
|
|
@@ -7498,13 +7738,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7498
7738
|
body.resourceToken = resourceToken;
|
|
7499
7739
|
}
|
|
7500
7740
|
return this.meetingRequest.changeMeetingFloor(body).then(function () {
|
|
7501
|
-
|
|
7741
|
+
_this47.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
7502
7742
|
return _promise.default.resolve();
|
|
7503
7743
|
}).catch(function (error) {
|
|
7504
7744
|
_loggerProxy.default.logger.error('Meeting:index#startWhiteboardShare --> Error ', error);
|
|
7505
7745
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_START_WHITEBOARD_SHARE_FAILURE, {
|
|
7506
|
-
correlation_id:
|
|
7507
|
-
locus_id:
|
|
7746
|
+
correlation_id: _this47.correlationId,
|
|
7747
|
+
locus_id: _this47.locusUrl.split('/').pop(),
|
|
7508
7748
|
reason: error.message,
|
|
7509
7749
|
stack: error.stack,
|
|
7510
7750
|
board: {
|
|
@@ -7527,7 +7767,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7527
7767
|
}, {
|
|
7528
7768
|
key: "stopWhiteboardShare",
|
|
7529
7769
|
value: function stopWhiteboardShare(channelUrl) {
|
|
7530
|
-
var
|
|
7770
|
+
var _this48 = this;
|
|
7531
7771
|
var whiteboard = this.locusInfo.mediaShares.find(function (element) {
|
|
7532
7772
|
return element.name === 'whiteboard';
|
|
7533
7773
|
});
|
|
@@ -7550,8 +7790,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7550
7790
|
}).catch(function (error) {
|
|
7551
7791
|
_loggerProxy.default.logger.error('Meeting:index#stopWhiteboardShare --> Error ', error);
|
|
7552
7792
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_STOP_WHITEBOARD_SHARE_FAILURE, {
|
|
7553
|
-
correlation_id:
|
|
7554
|
-
locus_id:
|
|
7793
|
+
correlation_id: _this48.correlationId,
|
|
7794
|
+
locus_id: _this48.locusUrl.split('/').pop(),
|
|
7555
7795
|
reason: error.message,
|
|
7556
7796
|
stack: error.stack,
|
|
7557
7797
|
board: {
|
|
@@ -7573,7 +7813,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7573
7813
|
}, {
|
|
7574
7814
|
key: "requestScreenShareFloor",
|
|
7575
7815
|
value: function requestScreenShareFloor() {
|
|
7576
|
-
var
|
|
7816
|
+
var _this49 = this;
|
|
7577
7817
|
if (!this.mediaProperties.hasLocalShareStream() || !this.mediaProperties.mediaDirection.sendShare) {
|
|
7578
7818
|
_loggerProxy.default.logger.log("Meeting:index#requestScreenShareFloor --> NOT requesting floor, because we don't have the share stream anymore (shareStream=".concat(this.mediaProperties.shareVideoStream ? 'yes' : 'no', ", sendShare=").concat(this.mediaProperties.mediaDirection.sendShare, ")"));
|
|
7579
7819
|
this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
@@ -7604,34 +7844,34 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7604
7844
|
resourceUrl: this.resourceUrl,
|
|
7605
7845
|
shareInstanceId: this.localShareInstanceId
|
|
7606
7846
|
}).then(function () {
|
|
7607
|
-
|
|
7847
|
+
_this49.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
|
|
7608
7848
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_SUCCESS, {
|
|
7609
|
-
correlation_id:
|
|
7610
|
-
locus_id:
|
|
7849
|
+
correlation_id: _this49.correlationId,
|
|
7850
|
+
locus_id: _this49.locusUrl.split('/').pop()
|
|
7611
7851
|
});
|
|
7612
7852
|
return _promise.default.resolve();
|
|
7613
7853
|
}).catch(function (error) {
|
|
7614
7854
|
_loggerProxy.default.logger.error('Meeting:index#share --> Error ', error);
|
|
7615
7855
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_FAILURE, {
|
|
7616
|
-
correlation_id:
|
|
7617
|
-
locus_id:
|
|
7856
|
+
correlation_id: _this49.correlationId,
|
|
7857
|
+
locus_id: _this49.locusUrl.split('/').pop(),
|
|
7618
7858
|
reason: error.message,
|
|
7619
7859
|
stack: error.stack
|
|
7620
7860
|
});
|
|
7621
7861
|
|
|
7622
7862
|
// @ts-ignore
|
|
7623
|
-
|
|
7863
|
+
_this49.webex.internal.newMetrics.submitClientEvent({
|
|
7624
7864
|
name: 'client.share.floor-granted.local',
|
|
7625
7865
|
payload: {
|
|
7626
7866
|
mediaType: 'share',
|
|
7627
7867
|
errors: _util2.default.getChangeMeetingFloorErrorPayload(error.message),
|
|
7628
|
-
shareInstanceId:
|
|
7868
|
+
shareInstanceId: _this49.localShareInstanceId
|
|
7629
7869
|
},
|
|
7630
7870
|
options: {
|
|
7631
|
-
meetingId:
|
|
7871
|
+
meetingId: _this49.id
|
|
7632
7872
|
}
|
|
7633
7873
|
});
|
|
7634
|
-
|
|
7874
|
+
_this49.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
7635
7875
|
return _promise.default.reject(error);
|
|
7636
7876
|
});
|
|
7637
7877
|
}
|
|
@@ -7654,10 +7894,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7654
7894
|
}, {
|
|
7655
7895
|
key: "requestScreenShareFloorIfPending",
|
|
7656
7896
|
value: function requestScreenShareFloorIfPending() {
|
|
7657
|
-
var
|
|
7897
|
+
var _this50 = this;
|
|
7658
7898
|
if (this.floorGrantPending && this.state === _constants.MEETING_STATE.STATES.JOINED) {
|
|
7659
7899
|
this.requestScreenShareFloor().then(function () {
|
|
7660
|
-
|
|
7900
|
+
_this50.floorGrantPending = false;
|
|
7661
7901
|
});
|
|
7662
7902
|
}
|
|
7663
7903
|
}
|
|
@@ -7671,7 +7911,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7671
7911
|
}, {
|
|
7672
7912
|
key: "releaseScreenShareFloor",
|
|
7673
7913
|
value: function releaseScreenShareFloor() {
|
|
7674
|
-
var
|
|
7914
|
+
var _this51 = this;
|
|
7675
7915
|
var content = this.locusInfo.mediaShares.find(function (element) {
|
|
7676
7916
|
return element.name === _constants.CONTENT;
|
|
7677
7917
|
});
|
|
@@ -7706,8 +7946,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7706
7946
|
}).catch(function (error) {
|
|
7707
7947
|
_loggerProxy.default.logger.error('Meeting:index#releaseScreenShareFloor --> Error ', error);
|
|
7708
7948
|
_metrics.default.sendBehavioralMetric(_constants2.default.STOP_FLOOR_REQUEST_FAILURE, {
|
|
7709
|
-
correlation_id:
|
|
7710
|
-
locus_id:
|
|
7949
|
+
correlation_id: _this51.correlationId,
|
|
7950
|
+
locus_id: _this51.locusUrl.split('/').pop(),
|
|
7711
7951
|
reason: error.message,
|
|
7712
7952
|
stack: error.stack
|
|
7713
7953
|
});
|
|
@@ -7763,13 +8003,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7763
8003
|
* @param {boolean} mutedEnabled
|
|
7764
8004
|
* @param {boolean} disallowUnmuteEnabled
|
|
7765
8005
|
* @param {boolean} muteOnEntryEnabled
|
|
8006
|
+
* @param {array} roles
|
|
7766
8007
|
* @public
|
|
7767
8008
|
* @memberof Meeting
|
|
7768
8009
|
*/
|
|
7769
8010
|
}, {
|
|
7770
8011
|
key: "setMuteAll",
|
|
7771
|
-
value: function setMuteAll(mutedEnabled, disallowUnmuteEnabled, muteOnEntryEnabled) {
|
|
7772
|
-
return this.controlsOptionsManager.setMuteAll(mutedEnabled, disallowUnmuteEnabled, muteOnEntryEnabled);
|
|
8012
|
+
value: function setMuteAll(mutedEnabled, disallowUnmuteEnabled, muteOnEntryEnabled, roles) {
|
|
8013
|
+
return this.controlsOptionsManager.setMuteAll(mutedEnabled, disallowUnmuteEnabled, muteOnEntryEnabled, roles);
|
|
7773
8014
|
}
|
|
7774
8015
|
|
|
7775
8016
|
/**
|
|
@@ -7886,7 +8127,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7886
8127
|
}, {
|
|
7887
8128
|
key: "changeVideoLayout",
|
|
7888
8129
|
value: function changeVideoLayout(layoutType) {
|
|
7889
|
-
var
|
|
8130
|
+
var _this52 = this;
|
|
7890
8131
|
var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
7891
8132
|
var main = renderInfo.main,
|
|
7892
8133
|
content = renderInfo.content;
|
|
@@ -7940,7 +8181,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7940
8181
|
}
|
|
7941
8182
|
this.lastVideoLayoutInfo = (0, _lodash.cloneDeep)(layoutInfo);
|
|
7942
8183
|
this.locusInfo.once(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_LAYOUT_UPDATED, function (envelope) {
|
|
7943
|
-
_triggerProxy.default.trigger(
|
|
8184
|
+
_triggerProxy.default.trigger(_this52, {
|
|
7944
8185
|
file: 'meeting/index',
|
|
7945
8186
|
function: 'changeVideoLayout'
|
|
7946
8187
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_LAYOUT_UPDATE, {
|
|
@@ -8056,7 +8297,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8056
8297
|
}, {
|
|
8057
8298
|
key: "endMeetingForAll",
|
|
8058
8299
|
value: function endMeetingForAll() {
|
|
8059
|
-
var
|
|
8300
|
+
var _this53 = this;
|
|
8060
8301
|
// @ts-ignore
|
|
8061
8302
|
this.webex.internal.newMetrics.submitClientEvent({
|
|
8062
8303
|
name: 'client.call.leave',
|
|
@@ -8074,25 +8315,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8074
8315
|
locus_id: this.locusId
|
|
8075
8316
|
});
|
|
8076
8317
|
return _util2.default.endMeetingForAll(this).then(function (end) {
|
|
8077
|
-
|
|
8078
|
-
|
|
8318
|
+
_this53.meetingFiniteStateMachine.end();
|
|
8319
|
+
_this53.clearMeetingData();
|
|
8079
8320
|
// upload logs on leave irrespective of meeting delete
|
|
8080
|
-
_triggerProxy.default.trigger(
|
|
8321
|
+
_triggerProxy.default.trigger(_this53, {
|
|
8081
8322
|
file: 'meeting/index',
|
|
8082
8323
|
function: 'endMeetingForAll'
|
|
8083
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
8324
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this53);
|
|
8084
8325
|
return end;
|
|
8085
8326
|
}).catch(function (error) {
|
|
8086
|
-
|
|
8327
|
+
_this53.meetingFiniteStateMachine.fail(error);
|
|
8087
8328
|
_loggerProxy.default.logger.error('Meeting:index#endMeetingForAll --> Failed to end meeting ', error);
|
|
8088
8329
|
// upload logs on leave irrespective of meeting delete
|
|
8089
|
-
_triggerProxy.default.trigger(
|
|
8330
|
+
_triggerProxy.default.trigger(_this53, {
|
|
8090
8331
|
file: 'meeting/index',
|
|
8091
8332
|
function: 'endMeetingForAll'
|
|
8092
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
8333
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this53);
|
|
8093
8334
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_END_ALL_FAILURE, {
|
|
8094
|
-
correlation_id:
|
|
8095
|
-
locus_id:
|
|
8335
|
+
correlation_id: _this53.correlationId,
|
|
8336
|
+
locus_id: _this53.locusUrl.split('/').pop(),
|
|
8096
8337
|
reason: error.message,
|
|
8097
8338
|
stack: error.stack,
|
|
8098
8339
|
code: error.code
|
|
@@ -8181,37 +8422,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8181
8422
|
}, {
|
|
8182
8423
|
key: "enableMusicMode",
|
|
8183
8424
|
value: (function () {
|
|
8184
|
-
var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
8185
|
-
return _regenerator.default.wrap(function
|
|
8186
|
-
while (1) switch (
|
|
8425
|
+
var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee35(shouldEnableMusicMode) {
|
|
8426
|
+
return _regenerator.default.wrap(function _callee35$(_context35) {
|
|
8427
|
+
while (1) switch (_context35.prev = _context35.next) {
|
|
8187
8428
|
case 0:
|
|
8188
8429
|
this.checkMediaConnection();
|
|
8189
8430
|
if (this.isMultistream) {
|
|
8190
|
-
|
|
8431
|
+
_context35.next = 3;
|
|
8191
8432
|
break;
|
|
8192
8433
|
}
|
|
8193
8434
|
throw new Error('enableMusicMode() only supported with multistream');
|
|
8194
8435
|
case 3:
|
|
8195
8436
|
if (!shouldEnableMusicMode) {
|
|
8196
|
-
|
|
8437
|
+
_context35.next = 8;
|
|
8197
8438
|
break;
|
|
8198
8439
|
}
|
|
8199
|
-
|
|
8440
|
+
_context35.next = 6;
|
|
8200
8441
|
return this.sendSlotManager.setCodecParameters(_internalMediaCore.MediaType.AudioMain, {
|
|
8201
8442
|
maxaveragebitrate: '64000',
|
|
8202
8443
|
maxplaybackrate: '48000'
|
|
8203
8444
|
});
|
|
8204
8445
|
case 6:
|
|
8205
|
-
|
|
8446
|
+
_context35.next = 10;
|
|
8206
8447
|
break;
|
|
8207
8448
|
case 8:
|
|
8208
|
-
|
|
8449
|
+
_context35.next = 10;
|
|
8209
8450
|
return this.sendSlotManager.deleteCodecParameters(_internalMediaCore.MediaType.AudioMain, ['maxaveragebitrate', 'maxplaybackrate']);
|
|
8210
8451
|
case 10:
|
|
8211
8452
|
case "end":
|
|
8212
|
-
return
|
|
8453
|
+
return _context35.stop();
|
|
8213
8454
|
}
|
|
8214
|
-
},
|
|
8455
|
+
}, _callee35, this);
|
|
8215
8456
|
}));
|
|
8216
8457
|
function enableMusicMode(_x36) {
|
|
8217
8458
|
return _enableMusicMode.apply(this, arguments);
|
|
@@ -8234,7 +8475,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8234
8475
|
_this$mediaProperties41,
|
|
8235
8476
|
_this$mediaProperties42,
|
|
8236
8477
|
_this$mediaProperties43,
|
|
8237
|
-
|
|
8478
|
+
_this54 = this;
|
|
8238
8479
|
var LOG_HEADER = 'Meeting:index#updateTranscodedMediaConnection -->';
|
|
8239
8480
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " starting"));
|
|
8240
8481
|
if (!this.canUpdateMedia()) {
|
|
@@ -8259,8 +8500,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8259
8500
|
}).catch(function (error) {
|
|
8260
8501
|
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " Error: "), error);
|
|
8261
8502
|
_metrics.default.sendBehavioralMetric(_constants2.default.UPDATE_MEDIA_FAILURE, {
|
|
8262
|
-
correlation_id:
|
|
8263
|
-
locus_id:
|
|
8503
|
+
correlation_id: _this54.correlationId,
|
|
8504
|
+
locus_id: _this54.locusUrl.split('/').pop(),
|
|
8264
8505
|
reason: error.message,
|
|
8265
8506
|
stack: error.stack
|
|
8266
8507
|
});
|
|
@@ -8304,25 +8545,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8304
8545
|
}, {
|
|
8305
8546
|
key: "publishStream",
|
|
8306
8547
|
value: (function () {
|
|
8307
|
-
var _publishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
8308
|
-
return _regenerator.default.wrap(function
|
|
8309
|
-
while (1) switch (
|
|
8548
|
+
var _publishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee36(mediaType, stream) {
|
|
8549
|
+
return _regenerator.default.wrap(function _callee36$(_context36) {
|
|
8550
|
+
while (1) switch (_context36.prev = _context36.next) {
|
|
8310
8551
|
case 0:
|
|
8311
8552
|
if (stream) {
|
|
8312
|
-
|
|
8553
|
+
_context36.next = 2;
|
|
8313
8554
|
break;
|
|
8314
8555
|
}
|
|
8315
|
-
return
|
|
8556
|
+
return _context36.abrupt("return");
|
|
8316
8557
|
case 2:
|
|
8317
8558
|
if (!this.mediaProperties.webrtcMediaConnection) {
|
|
8318
|
-
|
|
8559
|
+
_context36.next = 7;
|
|
8319
8560
|
break;
|
|
8320
8561
|
}
|
|
8321
8562
|
if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
|
|
8322
|
-
|
|
8563
|
+
_context36.next = 6;
|
|
8323
8564
|
break;
|
|
8324
8565
|
}
|
|
8325
|
-
|
|
8566
|
+
_context36.next = 6;
|
|
8326
8567
|
return this.sendSlotManager.publishStream(mediaType, stream);
|
|
8327
8568
|
case 6:
|
|
8328
8569
|
this.emitPublishStateChangeEvent({
|
|
@@ -8333,9 +8574,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8333
8574
|
});
|
|
8334
8575
|
case 7:
|
|
8335
8576
|
case "end":
|
|
8336
|
-
return
|
|
8577
|
+
return _context36.stop();
|
|
8337
8578
|
}
|
|
8338
|
-
},
|
|
8579
|
+
}, _callee36, this);
|
|
8339
8580
|
}));
|
|
8340
8581
|
function publishStream(_x37, _x38) {
|
|
8341
8582
|
return _publishStream.apply(this, arguments);
|
|
@@ -8353,21 +8594,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8353
8594
|
}, {
|
|
8354
8595
|
key: "unpublishStream",
|
|
8355
8596
|
value: (function () {
|
|
8356
|
-
var _unpublishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
8357
|
-
return _regenerator.default.wrap(function
|
|
8358
|
-
while (1) switch (
|
|
8597
|
+
var _unpublishStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee37(mediaType, stream) {
|
|
8598
|
+
return _regenerator.default.wrap(function _callee37$(_context37) {
|
|
8599
|
+
while (1) switch (_context37.prev = _context37.next) {
|
|
8359
8600
|
case 0:
|
|
8360
8601
|
if (stream) {
|
|
8361
|
-
|
|
8602
|
+
_context37.next = 2;
|
|
8362
8603
|
break;
|
|
8363
8604
|
}
|
|
8364
|
-
return
|
|
8605
|
+
return _context37.abrupt("return");
|
|
8365
8606
|
case 2:
|
|
8366
8607
|
if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
|
|
8367
|
-
|
|
8608
|
+
_context37.next = 5;
|
|
8368
8609
|
break;
|
|
8369
8610
|
}
|
|
8370
|
-
|
|
8611
|
+
_context37.next = 5;
|
|
8371
8612
|
return this.sendSlotManager.unpublishStream(mediaType);
|
|
8372
8613
|
case 5:
|
|
8373
8614
|
this.emitPublishStateChangeEvent({
|
|
@@ -8378,9 +8619,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8378
8619
|
});
|
|
8379
8620
|
case 6:
|
|
8380
8621
|
case "end":
|
|
8381
|
-
return
|
|
8622
|
+
return _context37.stop();
|
|
8382
8623
|
}
|
|
8383
|
-
},
|
|
8624
|
+
}, _callee37, this);
|
|
8384
8625
|
}));
|
|
8385
8626
|
function unpublishStream(_x39, _x40) {
|
|
8386
8627
|
return _unpublishStream.apply(this, arguments);
|
|
@@ -8397,67 +8638,92 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8397
8638
|
}, {
|
|
8398
8639
|
key: "publishStreams",
|
|
8399
8640
|
value: (function () {
|
|
8400
|
-
var _publishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
8401
|
-
var _streams$screenShare, _streams$screenShare2, _streams$
|
|
8402
|
-
var floorRequestNeeded, _streams$
|
|
8403
|
-
return _regenerator.default.wrap(function
|
|
8404
|
-
while (1) switch (
|
|
8641
|
+
var _publishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee38(streams) {
|
|
8642
|
+
var _streams$screenShare, _streams$screenShare2, _streams$screenShare3, _streams$screenShare4, _streams$screenShare5, _streams$screenShare6;
|
|
8643
|
+
var streamChecks, _i, _streamChecks, _streamChecks$_i, stream, name, floorRequestNeeded, _streams$screenShare7;
|
|
8644
|
+
return _regenerator.default.wrap(function _callee38$(_context38) {
|
|
8645
|
+
while (1) switch (_context38.prev = _context38.next) {
|
|
8405
8646
|
case 0:
|
|
8647
|
+
_loggerProxy.default.logger.info("Meeting:index#publishStreams --> called with: ".concat((0, _stringify.default)(streams)));
|
|
8406
8648
|
this.checkMediaConnection();
|
|
8407
8649
|
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))) {
|
|
8408
|
-
|
|
8650
|
+
_context38.next = 4;
|
|
8409
8651
|
break;
|
|
8410
8652
|
}
|
|
8411
|
-
return
|
|
8412
|
-
case
|
|
8413
|
-
|
|
8414
|
-
|
|
8653
|
+
return _context38.abrupt("return");
|
|
8654
|
+
case 4:
|
|
8655
|
+
streamChecks = [{
|
|
8656
|
+
stream: streams === null || streams === void 0 ? void 0 : streams.microphone,
|
|
8657
|
+
name: 'microphone'
|
|
8658
|
+
}, {
|
|
8659
|
+
stream: streams === null || streams === void 0 ? void 0 : streams.camera,
|
|
8660
|
+
name: 'camera'
|
|
8661
|
+
}, {
|
|
8662
|
+
stream: streams === null || streams === void 0 ? void 0 : (_streams$screenShare3 = streams.screenShare) === null || _streams$screenShare3 === void 0 ? void 0 : _streams$screenShare3.audio,
|
|
8663
|
+
name: 'screenShare audio'
|
|
8664
|
+
}, {
|
|
8665
|
+
stream: streams === null || streams === void 0 ? void 0 : (_streams$screenShare4 = streams.screenShare) === null || _streams$screenShare4 === void 0 ? void 0 : _streams$screenShare4.video,
|
|
8666
|
+
name: 'screenShare video'
|
|
8667
|
+
}];
|
|
8668
|
+
_i = 0, _streamChecks = streamChecks;
|
|
8669
|
+
case 6:
|
|
8670
|
+
if (!(_i < _streamChecks.length)) {
|
|
8671
|
+
_context38.next = 13;
|
|
8415
8672
|
break;
|
|
8416
8673
|
}
|
|
8417
|
-
|
|
8418
|
-
|
|
8674
|
+
_streamChecks$_i = _streamChecks[_i], stream = _streamChecks$_i.stream, name = _streamChecks$_i.name;
|
|
8675
|
+
if (!((stream === null || stream === void 0 ? void 0 : stream.readyState) === 'ended')) {
|
|
8676
|
+
_context38.next = 10;
|
|
8677
|
+
break;
|
|
8678
|
+
}
|
|
8679
|
+
throw new Error("Attempted to publish ".concat(name, " stream with ended readyState, correlationId=").concat(this.correlationId));
|
|
8680
|
+
case 10:
|
|
8681
|
+
_i++;
|
|
8682
|
+
_context38.next = 6;
|
|
8683
|
+
break;
|
|
8684
|
+
case 13:
|
|
8419
8685
|
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
|
|
8420
|
-
if (!(this.isMultistream && (_streams$
|
|
8421
|
-
|
|
8686
|
+
if (!(this.isMultistream && (_streams$screenShare5 = streams.screenShare) !== null && _streams$screenShare5 !== void 0 && _streams$screenShare5.audio)) {
|
|
8687
|
+
_context38.next = 18;
|
|
8422
8688
|
break;
|
|
8423
8689
|
}
|
|
8424
|
-
|
|
8690
|
+
_context38.next = 17;
|
|
8425
8691
|
return this.setLocalShareAudioStream(streams.screenShare.audio);
|
|
8426
|
-
case
|
|
8692
|
+
case 17:
|
|
8427
8693
|
floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
|
|
8428
|
-
case
|
|
8429
|
-
if (!((_streams$
|
|
8430
|
-
|
|
8694
|
+
case 18:
|
|
8695
|
+
if (!((_streams$screenShare6 = streams.screenShare) !== null && _streams$screenShare6 !== void 0 && _streams$screenShare6.video)) {
|
|
8696
|
+
_context38.next = 22;
|
|
8431
8697
|
break;
|
|
8432
8698
|
}
|
|
8433
|
-
|
|
8434
|
-
return this.setLocalShareVideoStream((_streams$
|
|
8435
|
-
case
|
|
8699
|
+
_context38.next = 21;
|
|
8700
|
+
return this.setLocalShareVideoStream((_streams$screenShare7 = streams.screenShare) === null || _streams$screenShare7 === void 0 ? void 0 : _streams$screenShare7.video);
|
|
8701
|
+
case 21:
|
|
8436
8702
|
floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
|
|
8437
|
-
case
|
|
8703
|
+
case 22:
|
|
8438
8704
|
if (!streams.microphone) {
|
|
8439
|
-
|
|
8705
|
+
_context38.next = 25;
|
|
8440
8706
|
break;
|
|
8441
8707
|
}
|
|
8442
|
-
|
|
8708
|
+
_context38.next = 25;
|
|
8443
8709
|
return this.setLocalAudioStream(streams.microphone);
|
|
8444
|
-
case
|
|
8710
|
+
case 25:
|
|
8445
8711
|
if (!streams.camera) {
|
|
8446
|
-
|
|
8712
|
+
_context38.next = 28;
|
|
8447
8713
|
break;
|
|
8448
8714
|
}
|
|
8449
|
-
|
|
8715
|
+
_context38.next = 28;
|
|
8450
8716
|
return this.setLocalVideoStream(streams.camera);
|
|
8451
|
-
case
|
|
8717
|
+
case 28:
|
|
8452
8718
|
if (this.isMultistream) {
|
|
8453
|
-
|
|
8719
|
+
_context38.next = 31;
|
|
8454
8720
|
break;
|
|
8455
8721
|
}
|
|
8456
|
-
|
|
8722
|
+
_context38.next = 31;
|
|
8457
8723
|
return this.updateTranscodedMediaConnection();
|
|
8458
|
-
case
|
|
8724
|
+
case 31:
|
|
8459
8725
|
if (!floorRequestNeeded) {
|
|
8460
|
-
|
|
8726
|
+
_context38.next = 37;
|
|
8461
8727
|
break;
|
|
8462
8728
|
}
|
|
8463
8729
|
this.localShareInstanceId = _uuid.default.v4();
|
|
@@ -8481,13 +8747,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8481
8747
|
// we're sending the http request to Locus to request the screen share floor
|
|
8482
8748
|
// only after the SDP update, because that's how it's always been done for transcoded meetings
|
|
8483
8749
|
// and also if sharing from the start, we need confluence to have been created
|
|
8484
|
-
|
|
8750
|
+
_context38.next = 37;
|
|
8485
8751
|
return this.enqueueScreenShareFloorRequest();
|
|
8486
|
-
case
|
|
8752
|
+
case 37:
|
|
8487
8753
|
case "end":
|
|
8488
|
-
return
|
|
8754
|
+
return _context38.stop();
|
|
8489
8755
|
}
|
|
8490
|
-
},
|
|
8756
|
+
}, _callee38, this);
|
|
8491
8757
|
}));
|
|
8492
8758
|
function publishStreams(_x41) {
|
|
8493
8759
|
return _publishStreams.apply(this, arguments);
|
|
@@ -8504,11 +8770,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8504
8770
|
}, {
|
|
8505
8771
|
key: "unpublishStreams",
|
|
8506
8772
|
value: (function () {
|
|
8507
|
-
var _unpublishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
8773
|
+
var _unpublishStreams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee39(streams) {
|
|
8508
8774
|
var promises, _iterator, _step, stream;
|
|
8509
|
-
return _regenerator.default.wrap(function
|
|
8510
|
-
while (1) switch (
|
|
8775
|
+
return _regenerator.default.wrap(function _callee39$(_context39) {
|
|
8776
|
+
while (1) switch (_context39.prev = _context39.next) {
|
|
8511
8777
|
case 0:
|
|
8778
|
+
_loggerProxy.default.logger.info("Meeting:index#unpublishStreams --> called with: ".concat((0, _stringify.default)(streams)));
|
|
8512
8779
|
this.checkMediaConnection();
|
|
8513
8780
|
promises = [];
|
|
8514
8781
|
_iterator = _createForOfIteratorHelper(streams.filter(function (t) {
|
|
@@ -8538,9 +8805,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8538
8805
|
if (!this.isMultistream) {
|
|
8539
8806
|
promises.push(this.updateTranscodedMediaConnection());
|
|
8540
8807
|
}
|
|
8541
|
-
|
|
8808
|
+
_context39.next = 8;
|
|
8542
8809
|
return _promise.default.all(promises);
|
|
8543
|
-
case
|
|
8810
|
+
case 8:
|
|
8544
8811
|
// we're allowing for the SDK to support just audio share as well
|
|
8545
8812
|
// so a share could be active with only video, only audio, or both
|
|
8546
8813
|
// we're only releasing the floor if both streams have ended
|
|
@@ -8557,11 +8824,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8557
8824
|
// nothing to do here, error is logged already inside releaseScreenShareFloor()
|
|
8558
8825
|
}
|
|
8559
8826
|
}
|
|
8560
|
-
case
|
|
8827
|
+
case 9:
|
|
8561
8828
|
case "end":
|
|
8562
|
-
return
|
|
8829
|
+
return _context39.stop();
|
|
8563
8830
|
}
|
|
8564
|
-
},
|
|
8831
|
+
}, _callee39, this);
|
|
8565
8832
|
}));
|
|
8566
8833
|
function unpublishStreams(_x42) {
|
|
8567
8834
|
return _unpublishStreams.apply(this, arguments);
|
|
@@ -8623,55 +8890,55 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8623
8890
|
}], [{
|
|
8624
8891
|
key: "handleDeviceLogging",
|
|
8625
8892
|
value: (function () {
|
|
8626
|
-
var _handleDeviceLogging = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
8893
|
+
var _handleDeviceLogging = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee40(isAudioEnabled, isVideoEnabled) {
|
|
8627
8894
|
var devices;
|
|
8628
|
-
return _regenerator.default.wrap(function
|
|
8629
|
-
while (1) switch (
|
|
8895
|
+
return _regenerator.default.wrap(function _callee40$(_context40) {
|
|
8896
|
+
while (1) switch (_context40.prev = _context40.next) {
|
|
8630
8897
|
case 0:
|
|
8631
|
-
|
|
8898
|
+
_context40.prev = 0;
|
|
8632
8899
|
devices = [];
|
|
8633
8900
|
if (!(isVideoEnabled && isAudioEnabled)) {
|
|
8634
|
-
|
|
8901
|
+
_context40.next = 8;
|
|
8635
8902
|
break;
|
|
8636
8903
|
}
|
|
8637
|
-
|
|
8904
|
+
_context40.next = 5;
|
|
8638
8905
|
return (0, _mediaHelpers.getDevices)();
|
|
8639
8906
|
case 5:
|
|
8640
|
-
devices =
|
|
8641
|
-
|
|
8907
|
+
devices = _context40.sent;
|
|
8908
|
+
_context40.next = 18;
|
|
8642
8909
|
break;
|
|
8643
8910
|
case 8:
|
|
8644
8911
|
if (!isVideoEnabled) {
|
|
8645
|
-
|
|
8912
|
+
_context40.next = 14;
|
|
8646
8913
|
break;
|
|
8647
8914
|
}
|
|
8648
|
-
|
|
8915
|
+
_context40.next = 11;
|
|
8649
8916
|
return (0, _mediaHelpers.getDevices)(_media.default.DeviceKind.VIDEO_INPUT);
|
|
8650
8917
|
case 11:
|
|
8651
|
-
devices =
|
|
8652
|
-
|
|
8918
|
+
devices = _context40.sent;
|
|
8919
|
+
_context40.next = 18;
|
|
8653
8920
|
break;
|
|
8654
8921
|
case 14:
|
|
8655
8922
|
if (!isAudioEnabled) {
|
|
8656
|
-
|
|
8923
|
+
_context40.next = 18;
|
|
8657
8924
|
break;
|
|
8658
8925
|
}
|
|
8659
|
-
|
|
8926
|
+
_context40.next = 17;
|
|
8660
8927
|
return (0, _mediaHelpers.getDevices)(_media.default.DeviceKind.AUDIO_INPUT);
|
|
8661
8928
|
case 17:
|
|
8662
|
-
devices =
|
|
8929
|
+
devices = _context40.sent;
|
|
8663
8930
|
case 18:
|
|
8664
8931
|
_util2.default.handleDeviceLogging(devices);
|
|
8665
|
-
|
|
8932
|
+
_context40.next = 23;
|
|
8666
8933
|
break;
|
|
8667
8934
|
case 21:
|
|
8668
|
-
|
|
8669
|
-
|
|
8935
|
+
_context40.prev = 21;
|
|
8936
|
+
_context40.t0 = _context40["catch"](0);
|
|
8670
8937
|
case 23:
|
|
8671
8938
|
case "end":
|
|
8672
|
-
return
|
|
8939
|
+
return _context40.stop();
|
|
8673
8940
|
}
|
|
8674
|
-
},
|
|
8941
|
+
}, _callee40, null, [[0, 21]]);
|
|
8675
8942
|
}));
|
|
8676
8943
|
function handleDeviceLogging(_x43, _x44) {
|
|
8677
8944
|
return _handleDeviceLogging.apply(this, arguments);
|