@webex/plugin-meetings 3.7.0-next.63 → 3.7.0-next.65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/constants.js +15 -3
- package/dist/constants.js.map +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/media/MediaConnectionAwaiter.js +1 -0
- package/dist/media/MediaConnectionAwaiter.js.map +1 -1
- package/dist/media/properties.js +30 -16
- package/dist/media/properties.js.map +1 -1
- package/dist/meeting/index.js +511 -440
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +19 -12
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/utilv2.js +5 -1
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/metrics/constants.js +2 -0
- package/dist/metrics/constants.js.map +1 -1
- package/dist/types/constants.d.ts +9 -2
- package/dist/types/meeting/index.d.ts +21 -0
- package/dist/types/meeting-info/meeting-info-v2.d.ts +3 -1
- package/dist/types/metrics/constants.d.ts +2 -0
- package/dist/webinar/index.js +1 -1
- package/package.json +5 -5
- package/src/constants.ts +10 -2
- package/src/media/MediaConnectionAwaiter.ts +2 -0
- package/src/media/properties.ts +34 -13
- package/src/meeting/index.ts +99 -8
- package/src/meeting-info/meeting-info-v2.ts +9 -1
- package/src/meeting-info/utilv2.ts +14 -2
- package/src/metrics/constants.ts +2 -0
- package/test/unit/spec/media/properties.ts +15 -0
- package/test/unit/spec/meeting/index.js +56 -4
- package/test/unit/spec/meeting-info/utilv2.js +9 -0
package/dist/meeting/index.js
CHANGED
|
@@ -510,6 +510,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
510
510
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "turnServerUsed", void 0);
|
|
511
511
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "areVoiceaEventsSetup", false);
|
|
512
512
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "isMoveToInProgress", false);
|
|
513
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "registrationIdStatus", void 0);
|
|
513
514
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "brbState", void 0);
|
|
514
515
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "voiceaListenerCallbacks", (0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)((0, _defineProperty3.default)({}, _internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, function (payload) {
|
|
515
516
|
_this.transcription.languageOptions = payload;
|
|
@@ -2013,6 +2014,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2013
2014
|
*/
|
|
2014
2015
|
_this.passwordStatus = _constants.PASSWORD_STATUS.UNKNOWN;
|
|
2015
2016
|
|
|
2017
|
+
/**
|
|
2018
|
+
* registrationId status. If it's REGISTRATIONID_STATUS.REQUIRED then verifyRegistrationId() needs to be called
|
|
2019
|
+
* with the correct registrationId before calling join()
|
|
2020
|
+
* @instance
|
|
2021
|
+
* @type {REGISTRATION_ID_STATUS}
|
|
2022
|
+
* @public
|
|
2023
|
+
* @memberof Meeting
|
|
2024
|
+
*/
|
|
2025
|
+
_this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.UNKNOWN;
|
|
2026
|
+
|
|
2016
2027
|
/**
|
|
2017
2028
|
* Information about required captcha. If null, then no captcha is required. status. If it's PASSWORD_STATUS.REQUIRED then verifyPassword() needs to be called
|
|
2018
2029
|
* with the correct password before calling join()
|
|
@@ -2340,6 +2351,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2340
2351
|
} else {
|
|
2341
2352
|
this.passwordStatus = _constants.PASSWORD_STATUS.NOT_REQUIRED;
|
|
2342
2353
|
}
|
|
2354
|
+
if (this.registrationIdStatus === _constants.REGISTRATION_ID_STATUS.REQUIRED || this.registrationIdStatus === _constants.REGISTRATION_ID_STATUS.VERIFIED) {
|
|
2355
|
+
this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.VERIFIED;
|
|
2356
|
+
} else {
|
|
2357
|
+
this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.NOT_REQUIRED;
|
|
2358
|
+
}
|
|
2343
2359
|
_triggerProxy.default.trigger(this, {
|
|
2344
2360
|
file: 'meetings',
|
|
2345
2361
|
function: 'fetchMeetingInfo'
|
|
@@ -2395,6 +2411,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2395
2411
|
value: function prepForFetchMeetingInfo(_ref7, caller) {
|
|
2396
2412
|
var _ref7$password = _ref7.password,
|
|
2397
2413
|
password = _ref7$password === void 0 ? null : _ref7$password,
|
|
2414
|
+
_ref7$registrationId = _ref7.registrationId,
|
|
2415
|
+
registrationId = _ref7$registrationId === void 0 ? null : _ref7$registrationId,
|
|
2398
2416
|
_ref7$captchaCode = _ref7.captchaCode,
|
|
2399
2417
|
captchaCode = _ref7$captchaCode === void 0 ? null : _ref7$captchaCode,
|
|
2400
2418
|
_ref7$extraParams = _ref7.extraParams,
|
|
@@ -2423,11 +2441,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2423
2441
|
key: "fetchMeetingInfoInternal",
|
|
2424
2442
|
value: (function () {
|
|
2425
2443
|
var _fetchMeetingInfoInternal = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(_ref8) {
|
|
2426
|
-
var destination, destinationType, _ref8$password, password, _ref8$captchaCode, captchaCode, _ref8$extraParams, extraParams, _ref8$sendCAevents, sendCAevents, captchaInfo, info, _err$body, _err$body2;
|
|
2444
|
+
var destination, destinationType, _ref8$password, password, _ref8$captchaCode, captchaCode, _ref8$extraParams, extraParams, _ref8$sendCAevents, sendCAevents, _ref8$registrationId, registrationId, captchaInfo, info, _err$body, _err$body2;
|
|
2427
2445
|
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
2428
2446
|
while (1) switch (_context5.prev = _context5.next) {
|
|
2429
2447
|
case 0:
|
|
2430
|
-
destination = _ref8.destination, destinationType = _ref8.destinationType, _ref8$password = _ref8.password, password = _ref8$password === void 0 ? null : _ref8$password, _ref8$captchaCode = _ref8.captchaCode, captchaCode = _ref8$captchaCode === void 0 ? null : _ref8$captchaCode, _ref8$extraParams = _ref8.extraParams, extraParams = _ref8$extraParams === void 0 ? {} : _ref8$extraParams, _ref8$sendCAevents = _ref8.sendCAevents, sendCAevents = _ref8$sendCAevents === void 0 ? false : _ref8$sendCAevents;
|
|
2448
|
+
destination = _ref8.destination, destinationType = _ref8.destinationType, _ref8$password = _ref8.password, password = _ref8$password === void 0 ? null : _ref8$password, _ref8$captchaCode = _ref8.captchaCode, captchaCode = _ref8$captchaCode === void 0 ? null : _ref8$captchaCode, _ref8$extraParams = _ref8.extraParams, extraParams = _ref8$extraParams === void 0 ? {} : _ref8$extraParams, _ref8$sendCAevents = _ref8.sendCAevents, sendCAevents = _ref8$sendCAevents === void 0 ? false : _ref8$sendCAevents, _ref8$registrationId = _ref8.registrationId, registrationId = _ref8$registrationId === void 0 ? null : _ref8$registrationId;
|
|
2431
2449
|
_context5.prev = 1;
|
|
2432
2450
|
captchaInfo = captchaCode ? {
|
|
2433
2451
|
code: captchaCode,
|
|
@@ -2439,7 +2457,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2439
2457
|
this.config.installedOrgID, this.locusId, extraParams, {
|
|
2440
2458
|
meetingId: this.id,
|
|
2441
2459
|
sendCAevents: sendCAevents
|
|
2442
|
-
});
|
|
2460
|
+
}, registrationId);
|
|
2443
2461
|
case 5:
|
|
2444
2462
|
info = _context5.sent;
|
|
2445
2463
|
this.parseMeetingInfo(info === null || info === void 0 ? void 0 : info.body, this.destination, info === null || info === void 0 ? void 0 : info.errors);
|
|
@@ -2461,23 +2479,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2461
2479
|
throw new _permission.default();
|
|
2462
2480
|
case 21:
|
|
2463
2481
|
if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2JoinWebinarError)) {
|
|
2464
|
-
_context5.next =
|
|
2482
|
+
_context5.next = 30;
|
|
2465
2483
|
break;
|
|
2466
2484
|
}
|
|
2467
2485
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WEBINAR_REGISTRATION;
|
|
2468
2486
|
if (_constants.WEBINAR_ERROR_WEBCAST.includes(_context5.t0.wbxAppApiCode)) {
|
|
2469
2487
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NEED_JOIN_WITH_WEBCAST;
|
|
2470
|
-
} else if (_constants.
|
|
2471
|
-
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.
|
|
2488
|
+
} else if (_constants.WEBINAR_ERROR_REGISTRATION_ID.includes(_context5.t0.wbxAppApiCode)) {
|
|
2489
|
+
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WEBINAR_NEED_REGISTRATION_ID;
|
|
2472
2490
|
}
|
|
2473
2491
|
this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
|
|
2474
2492
|
if (_context5.t0.meetingInfo) {
|
|
2475
2493
|
this.meetingInfo = _context5.t0.meetingInfo;
|
|
2476
2494
|
}
|
|
2495
|
+
this.requiredCaptcha = null;
|
|
2477
2496
|
throw new _joinWebinarError.default();
|
|
2478
|
-
case
|
|
2497
|
+
case 30:
|
|
2479
2498
|
if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2JoinForbiddenError)) {
|
|
2480
|
-
_context5.next =
|
|
2499
|
+
_context5.next = 38;
|
|
2481
2500
|
break;
|
|
2482
2501
|
}
|
|
2483
2502
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.JOIN_FORBIDDEN;
|
|
@@ -2491,9 +2510,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2491
2510
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NOT_REACH_JBH;
|
|
2492
2511
|
}
|
|
2493
2512
|
throw new _joinForbiddenError.default(this.meetingInfoFailureReason, _context5.t0);
|
|
2494
|
-
case
|
|
2513
|
+
case 38:
|
|
2495
2514
|
if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2PasswordError)) {
|
|
2496
|
-
_context5.next =
|
|
2515
|
+
_context5.next = 50;
|
|
2497
2516
|
break;
|
|
2498
2517
|
}
|
|
2499
2518
|
_loggerProxy.default.logger.info( // @ts-ignore
|
|
@@ -2508,31 +2527,40 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2508
2527
|
this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
|
|
2509
2528
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
|
|
2510
2529
|
if (!this.requiredCaptcha) {
|
|
2511
|
-
_context5.next =
|
|
2530
|
+
_context5.next = 47;
|
|
2512
2531
|
break;
|
|
2513
2532
|
}
|
|
2514
|
-
_context5.next =
|
|
2533
|
+
_context5.next = 47;
|
|
2515
2534
|
return this.refreshCaptcha();
|
|
2516
|
-
case
|
|
2535
|
+
case 47:
|
|
2517
2536
|
throw new _passwordError.default();
|
|
2518
|
-
case
|
|
2537
|
+
case 50:
|
|
2519
2538
|
if (!(_context5.t0 instanceof _meetingInfoV.MeetingInfoV2CaptchaError)) {
|
|
2520
|
-
_context5.next =
|
|
2539
|
+
_context5.next = 60;
|
|
2521
2540
|
break;
|
|
2522
2541
|
}
|
|
2523
2542
|
_loggerProxy.default.logger.info( // @ts-ignore
|
|
2524
2543
|
"Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - captcha required (code=").concat(_context5.t0 === null || _context5.t0 === void 0 ? void 0 : (_err$body2 = _context5.t0.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.code, ")."));
|
|
2525
|
-
|
|
2544
|
+
if (this.requiredCaptcha) {
|
|
2545
|
+
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_CAPTCHA;
|
|
2546
|
+
} else if (_context5.t0.isRegistrationIdRequired) {
|
|
2547
|
+
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_REGISTRATION_ID;
|
|
2548
|
+
} else {
|
|
2549
|
+
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
|
|
2550
|
+
}
|
|
2526
2551
|
this.meetingInfoFailureCode = _context5.t0.wbxAppApiCode;
|
|
2527
2552
|
if (_context5.t0.isPasswordRequired) {
|
|
2528
2553
|
this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
|
|
2529
2554
|
}
|
|
2555
|
+
if (_context5.t0.isRegistrationIdRequired) {
|
|
2556
|
+
this.registrationIdStatus = _constants.REGISTRATION_ID_STATUS.REQUIRED;
|
|
2557
|
+
}
|
|
2530
2558
|
this.requiredCaptcha = _context5.t0.captchaInfo;
|
|
2531
2559
|
throw new _captchaError.default();
|
|
2532
|
-
case
|
|
2560
|
+
case 60:
|
|
2533
2561
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.OTHER;
|
|
2534
2562
|
throw _context5.t0;
|
|
2535
|
-
case
|
|
2563
|
+
case 62:
|
|
2536
2564
|
case "end":
|
|
2537
2565
|
return _context5.stop();
|
|
2538
2566
|
}
|
|
@@ -2695,6 +2723,45 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2695
2723
|
});
|
|
2696
2724
|
}
|
|
2697
2725
|
|
|
2726
|
+
/**
|
|
2727
|
+
* Checks if the supplied registrationId is correct. It returns a promise with information whether the
|
|
2728
|
+
* registrationId and captcha code were correct or not.
|
|
2729
|
+
* @param {String | undefined} registrationId - can be undefined if only captcha was required
|
|
2730
|
+
* @param {String | undefined} captchaCode - can be undefined if captcha was not required by the server
|
|
2731
|
+
* @param {Boolean} sendCAevents - whether Call Analyzer events should be sent when fetching meeting information
|
|
2732
|
+
* @public
|
|
2733
|
+
* @memberof Meeting
|
|
2734
|
+
* @returns {Promise<{isRegistrationIdValid: boolean, requiredCaptcha: boolean, failureReason: MEETING_INFO_FAILURE_REASON}>}
|
|
2735
|
+
*/
|
|
2736
|
+
}, {
|
|
2737
|
+
key: "verifyRegistrationId",
|
|
2738
|
+
value: function verifyRegistrationId(registrationId, captchaCode) {
|
|
2739
|
+
var _this3 = this;
|
|
2740
|
+
var sendCAevents = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
2741
|
+
return this.fetchMeetingInfo({
|
|
2742
|
+
registrationId: registrationId,
|
|
2743
|
+
captchaCode: captchaCode,
|
|
2744
|
+
sendCAevents: sendCAevents
|
|
2745
|
+
}).then(function () {
|
|
2746
|
+
_metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_REGISTRATION_ID_SUCCESS);
|
|
2747
|
+
return {
|
|
2748
|
+
isRegistrationIdValid: true,
|
|
2749
|
+
requiredCaptcha: null,
|
|
2750
|
+
failureReason: _constants.MEETING_INFO_FAILURE_REASON.NONE
|
|
2751
|
+
};
|
|
2752
|
+
}).catch(function (error) {
|
|
2753
|
+
_metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_REGISTRATION_ID_ERROR);
|
|
2754
|
+
if (error instanceof _joinWebinarError.default || error instanceof _captchaError.default) {
|
|
2755
|
+
return {
|
|
2756
|
+
isRegistrationIdValid: _this3.registrationIdStatus === _constants.REGISTRATION_ID_STATUS.VERIFIED,
|
|
2757
|
+
requiredCaptcha: _this3.requiredCaptcha,
|
|
2758
|
+
failureReason: error instanceof _joinWebinarError.default ? _constants.MEETING_INFO_FAILURE_REASON.WRONG_REGISTRATION_ID : _this3.meetingInfoFailureReason
|
|
2759
|
+
};
|
|
2760
|
+
}
|
|
2761
|
+
throw error;
|
|
2762
|
+
});
|
|
2763
|
+
}
|
|
2764
|
+
|
|
2698
2765
|
/**
|
|
2699
2766
|
* Refreshes the captcha. As a result the meeting will have new captcha id, image and audio.
|
|
2700
2767
|
* If the refresh operation fails, meeting remains with the old captcha properties.
|
|
@@ -2705,7 +2772,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2705
2772
|
}, {
|
|
2706
2773
|
key: "refreshCaptcha",
|
|
2707
2774
|
value: function refreshCaptcha() {
|
|
2708
|
-
var
|
|
2775
|
+
var _this4 = this;
|
|
2709
2776
|
if (!this.requiredCaptcha) {
|
|
2710
2777
|
return _promise.default.reject(new Error('There is no captcha to refresh'));
|
|
2711
2778
|
}
|
|
@@ -2720,11 +2787,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2720
2787
|
captchaRefreshUrl: "".concat(this.requiredCaptcha.refreshURL, "&siteFullName=").concat(hostname),
|
|
2721
2788
|
captchaId: this.requiredCaptcha.captchaId
|
|
2722
2789
|
}).then(function (response) {
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2790
|
+
_this4.requiredCaptcha.captchaId = response.body.captchaID;
|
|
2791
|
+
_this4.requiredCaptcha.verificationImageURL = response.body.verificationImageURL;
|
|
2792
|
+
_this4.requiredCaptcha.verificationAudioURL = response.body.verificationAudioURL;
|
|
2726
2793
|
}).catch(function (error) {
|
|
2727
|
-
_loggerProxy.default.logger.error("Meeting:index#refreshCaptcha --> Error Unable to refresh captcha for ".concat(
|
|
2794
|
+
_loggerProxy.default.logger.error("Meeting:index#refreshCaptcha --> Error Unable to refresh captcha for ".concat(_this4.destination, " - ").concat(error));
|
|
2728
2795
|
throw error;
|
|
2729
2796
|
});
|
|
2730
2797
|
}
|
|
@@ -2787,47 +2854,47 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2787
2854
|
}, {
|
|
2788
2855
|
key: "setUpBreakoutsListener",
|
|
2789
2856
|
value: function setUpBreakoutsListener() {
|
|
2790
|
-
var
|
|
2857
|
+
var _this5 = this;
|
|
2791
2858
|
this.breakouts.on(_constants.BREAKOUTS.EVENTS.BREAKOUTS_CLOSING, function () {
|
|
2792
|
-
_triggerProxy.default.trigger(
|
|
2859
|
+
_triggerProxy.default.trigger(_this5, {
|
|
2793
2860
|
file: 'meeting/index',
|
|
2794
2861
|
function: 'setUpBreakoutsListener'
|
|
2795
2862
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_CLOSING);
|
|
2796
2863
|
});
|
|
2797
2864
|
this.breakouts.on(_constants.BREAKOUTS.EVENTS.MESSAGE, function (messageEvent) {
|
|
2798
|
-
_triggerProxy.default.trigger(
|
|
2865
|
+
_triggerProxy.default.trigger(_this5, {
|
|
2799
2866
|
file: 'meeting/index',
|
|
2800
2867
|
function: 'setUpBreakoutsListener'
|
|
2801
2868
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_MESSAGE, messageEvent);
|
|
2802
2869
|
});
|
|
2803
2870
|
this.breakouts.on(_constants.BREAKOUTS.EVENTS.MEMBERS_UPDATE, function () {
|
|
2804
|
-
_triggerProxy.default.trigger(
|
|
2871
|
+
_triggerProxy.default.trigger(_this5, {
|
|
2805
2872
|
file: 'meeting/index',
|
|
2806
2873
|
function: 'setUpBreakoutsListener'
|
|
2807
2874
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
|
|
2808
2875
|
});
|
|
2809
2876
|
this.breakouts.on(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN, function () {
|
|
2810
|
-
if (
|
|
2811
|
-
_triggerProxy.default.trigger(
|
|
2877
|
+
if (_this5.isJoined()) {
|
|
2878
|
+
_triggerProxy.default.trigger(_this5, {
|
|
2812
2879
|
file: 'meeting/index',
|
|
2813
2880
|
function: 'setUpBreakoutsListener'
|
|
2814
2881
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_ASK_RETURN_TO_MAIN);
|
|
2815
2882
|
}
|
|
2816
2883
|
});
|
|
2817
2884
|
this.breakouts.on(_constants.BREAKOUTS.EVENTS.LEAVE_BREAKOUT, function () {
|
|
2818
|
-
_triggerProxy.default.trigger(
|
|
2885
|
+
_triggerProxy.default.trigger(_this5, {
|
|
2819
2886
|
file: 'meeting/index',
|
|
2820
2887
|
function: 'setUpBreakoutsListener'
|
|
2821
2888
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_LEAVE);
|
|
2822
2889
|
});
|
|
2823
2890
|
this.breakouts.on(_constants.BREAKOUTS.EVENTS.ASK_FOR_HELP, function (helpEvent) {
|
|
2824
|
-
_triggerProxy.default.trigger(
|
|
2891
|
+
_triggerProxy.default.trigger(_this5, {
|
|
2825
2892
|
file: 'meeting/index',
|
|
2826
2893
|
function: 'setUpBreakoutsListener'
|
|
2827
2894
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_ASK_FOR_HELP, helpEvent);
|
|
2828
2895
|
});
|
|
2829
2896
|
this.breakouts.on(_constants.BREAKOUTS.EVENTS.PRE_ASSIGNMENTS_UPDATE, function () {
|
|
2830
|
-
_triggerProxy.default.trigger(
|
|
2897
|
+
_triggerProxy.default.trigger(_this5, {
|
|
2831
2898
|
file: 'meeting/index',
|
|
2832
2899
|
function: 'setUpBreakoutsListener'
|
|
2833
2900
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_PRE_ASSIGNMENTS_UPDATE);
|
|
@@ -2843,17 +2910,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2843
2910
|
}, {
|
|
2844
2911
|
key: "setUpInterpretationListener",
|
|
2845
2912
|
value: function setUpInterpretationListener() {
|
|
2846
|
-
var
|
|
2913
|
+
var _this6 = this;
|
|
2847
2914
|
// TODO: check if its getting used or not
|
|
2848
2915
|
this.simultaneousInterpretation.on(_constants.INTERPRETATION.EVENTS.SUPPORT_LANGUAGES_UPDATE, function () {
|
|
2849
|
-
_triggerProxy.default.trigger(
|
|
2916
|
+
_triggerProxy.default.trigger(_this6, {
|
|
2850
2917
|
file: 'meeting/index',
|
|
2851
2918
|
function: 'setUpInterpretationListener'
|
|
2852
2919
|
}, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_SUPPORT_LANGUAGES_UPDATE);
|
|
2853
2920
|
});
|
|
2854
2921
|
// TODO: check if its getting used or not
|
|
2855
2922
|
this.simultaneousInterpretation.on(_constants.INTERPRETATION.EVENTS.HANDOFF_REQUESTS_ARRIVED, function (payload) {
|
|
2856
|
-
_triggerProxy.default.trigger(
|
|
2923
|
+
_triggerProxy.default.trigger(_this6, {
|
|
2857
2924
|
file: 'meeting/index',
|
|
2858
2925
|
function: 'setUpInterpretationListener'
|
|
2859
2926
|
}, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_HANDOFF_REQUESTS_ARRIVED, payload);
|
|
@@ -2895,30 +2962,30 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2895
2962
|
}, {
|
|
2896
2963
|
key: "setUpLocusInfoMediaInactiveListener",
|
|
2897
2964
|
value: function setUpLocusInfoMediaInactiveListener() {
|
|
2898
|
-
var
|
|
2965
|
+
var _this7 = this;
|
|
2899
2966
|
// User gets kicked off the meeting due to inactivity or user did a refresh
|
|
2900
2967
|
this.locusInfo.on(_constants.EVENTS.DISCONNECT_DUE_TO_INACTIVITY, function (res) {
|
|
2901
2968
|
// https:// jira-eng-gpk2.cisco.com/jira/browse/SPARK-240520
|
|
2902
2969
|
// TODO: send custom parameter explaining why the inactivity happened
|
|
2903
2970
|
// refresh , no media or network got dsconnected or something else
|
|
2904
2971
|
_metrics.default.sendBehavioralMetric(_constants2.default.DISCONNECT_DUE_TO_INACTIVITY, {
|
|
2905
|
-
correlation_id:
|
|
2906
|
-
locus_id:
|
|
2972
|
+
correlation_id: _this7.correlationId,
|
|
2973
|
+
locus_id: _this7.locusId
|
|
2907
2974
|
});
|
|
2908
2975
|
|
|
2909
2976
|
// Upload logs on media inactivity
|
|
2910
2977
|
// Normally media should not be inactive
|
|
2911
|
-
_triggerProxy.default.trigger(
|
|
2978
|
+
_triggerProxy.default.trigger(_this7, {
|
|
2912
2979
|
file: 'meeting/index',
|
|
2913
2980
|
function: 'setUpLocusInfoMediaInactiveListener'
|
|
2914
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
2981
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this7);
|
|
2915
2982
|
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMediaInactiveListener --> Meeting disconnected due to inactivity: ".concat(res.reason));
|
|
2916
2983
|
|
|
2917
2984
|
// @ts-ignore - config coming from registerPlugin
|
|
2918
|
-
if (
|
|
2919
|
-
|
|
2985
|
+
if (_this7.config.reconnection.autoRejoin) {
|
|
2986
|
+
_this7.reconnect();
|
|
2920
2987
|
} else {
|
|
2921
|
-
_triggerProxy.default.trigger(
|
|
2988
|
+
_triggerProxy.default.trigger(_this7, {
|
|
2922
2989
|
file: 'meeting/index',
|
|
2923
2990
|
function: 'setUpLocusInfoMediaInactiveListener'
|
|
2924
2991
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_LEFT, res.reason);
|
|
@@ -2935,16 +3002,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2935
3002
|
}, {
|
|
2936
3003
|
key: "setUpLocusInfoAssignHostListener",
|
|
2937
3004
|
value: function setUpLocusInfoAssignHostListener() {
|
|
2938
|
-
var
|
|
3005
|
+
var _this8 = this;
|
|
2939
3006
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_CAN_ASSIGN_HOST, function (payload) {
|
|
2940
|
-
var changed =
|
|
3007
|
+
var changed = _this8.inMeetingActions.set({
|
|
2941
3008
|
canAssignHost: payload.canAssignHost
|
|
2942
3009
|
});
|
|
2943
3010
|
if (changed) {
|
|
2944
|
-
_triggerProxy.default.trigger(
|
|
3011
|
+
_triggerProxy.default.trigger(_this8, {
|
|
2945
3012
|
file: 'meeting/index',
|
|
2946
3013
|
function: 'setUpLocusInfoAssignHostListener'
|
|
2947
|
-
}, _constants.EVENT_TRIGGERS.MEETING_ACTIONS_UPDATE,
|
|
3014
|
+
}, _constants.EVENT_TRIGGERS.MEETING_ACTIONS_UPDATE, _this8.inMeetingActions.get());
|
|
2948
3015
|
}
|
|
2949
3016
|
});
|
|
2950
3017
|
}
|
|
@@ -2958,9 +3025,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2958
3025
|
}, {
|
|
2959
3026
|
key: "setUpLocusFullStateListener",
|
|
2960
3027
|
value: function setUpLocusFullStateListener() {
|
|
2961
|
-
var
|
|
3028
|
+
var _this9 = this;
|
|
2962
3029
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.FULL_STATE_MEETING_STATE_CHANGE, function (payload) {
|
|
2963
|
-
_triggerProxy.default.trigger(
|
|
3030
|
+
_triggerProxy.default.trigger(_this9, {
|
|
2964
3031
|
file: 'meeting/index',
|
|
2965
3032
|
function: 'setUpLocusFullStateListener'
|
|
2966
3033
|
}, _constants.EVENT_TRIGGERS.MEETING_STATE_CHANGE, {
|
|
@@ -2968,7 +3035,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2968
3035
|
});
|
|
2969
3036
|
});
|
|
2970
3037
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.FULL_STATE_TYPE_UPDATE, function (payload) {
|
|
2971
|
-
|
|
3038
|
+
_this9.members.locusFullStateTypeUpdate(payload);
|
|
2972
3039
|
});
|
|
2973
3040
|
}
|
|
2974
3041
|
|
|
@@ -3007,13 +3074,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3007
3074
|
}, {
|
|
3008
3075
|
key: "setUpLocusSelfListener",
|
|
3009
3076
|
value: function setUpLocusSelfListener() {
|
|
3010
|
-
var
|
|
3077
|
+
var _this10 = this;
|
|
3011
3078
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_SELF, function (payload) {
|
|
3012
|
-
|
|
3013
|
-
|
|
3079
|
+
_this10.members.locusSelfUpdate(payload);
|
|
3080
|
+
_this10.pstnUpdate(payload);
|
|
3014
3081
|
|
|
3015
3082
|
// If user moved to a JOINED state and there is a pending floor grant trigger it
|
|
3016
|
-
|
|
3083
|
+
_this10.requestScreenShareFloorIfPending();
|
|
3017
3084
|
});
|
|
3018
3085
|
}
|
|
3019
3086
|
|
|
@@ -3027,14 +3094,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3027
3094
|
}, {
|
|
3028
3095
|
key: "pstnUpdate",
|
|
3029
3096
|
value: function pstnUpdate(payload) {
|
|
3030
|
-
var
|
|
3097
|
+
var _this11 = this;
|
|
3031
3098
|
if (this.locusInfo.self) {
|
|
3032
3099
|
var _payload$newSelf, _payload$newSelf2;
|
|
3033
3100
|
var dialInPstnDevice = (_payload$newSelf = payload.newSelf) === null || _payload$newSelf === void 0 ? void 0 : _payload$newSelf.pstnDevices.find(function (device) {
|
|
3034
|
-
return device.url ===
|
|
3101
|
+
return device.url === _this11.dialInUrl;
|
|
3035
3102
|
});
|
|
3036
3103
|
var dialOutPstnDevice = (_payload$newSelf2 = payload.newSelf) === null || _payload$newSelf2 === void 0 ? void 0 : _payload$newSelf2.pstnDevices.find(function (device) {
|
|
3037
|
-
return device.url ===
|
|
3104
|
+
return device.url === _this11.dialOutUrl;
|
|
3038
3105
|
});
|
|
3039
3106
|
var changed = false;
|
|
3040
3107
|
if (dialInPstnDevice) {
|
|
@@ -3083,9 +3150,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3083
3150
|
}, {
|
|
3084
3151
|
key: "setUpLocusHostListener",
|
|
3085
3152
|
value: function setUpLocusHostListener() {
|
|
3086
|
-
var
|
|
3153
|
+
var _this12 = this;
|
|
3087
3154
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_HOST, function (payload) {
|
|
3088
|
-
|
|
3155
|
+
_this12.members.locusHostUpdate(payload);
|
|
3089
3156
|
});
|
|
3090
3157
|
}
|
|
3091
3158
|
|
|
@@ -3100,9 +3167,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3100
3167
|
}, {
|
|
3101
3168
|
key: "setUpLocusParticipantsListener",
|
|
3102
3169
|
value: function setUpLocusParticipantsListener() {
|
|
3103
|
-
var
|
|
3170
|
+
var _this13 = this;
|
|
3104
3171
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_PARTICIPANTS, function (payload) {
|
|
3105
|
-
|
|
3172
|
+
_this13.members.locusParticipantsUpdate(payload);
|
|
3106
3173
|
});
|
|
3107
3174
|
}
|
|
3108
3175
|
|
|
@@ -3127,7 +3194,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3127
3194
|
}, {
|
|
3128
3195
|
key: "setupLocusControlsListener",
|
|
3129
3196
|
value: function setupLocusControlsListener() {
|
|
3130
|
-
var
|
|
3197
|
+
var _this14 = this;
|
|
3131
3198
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RECORDING_UPDATED, function (_ref9) {
|
|
3132
3199
|
var state = _ref9.state,
|
|
3133
3200
|
modifiedBy = _ref9.modifiedBy,
|
|
@@ -3152,19 +3219,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3152
3219
|
}
|
|
3153
3220
|
|
|
3154
3221
|
// `RESUMED` state should be converted to `RECORDING` after triggering the event
|
|
3155
|
-
|
|
3222
|
+
_this14.recording = {
|
|
3156
3223
|
state: state === _constants.RECORDING_STATE.RESUMED ? _constants.RECORDING_STATE.RECORDING : state,
|
|
3157
3224
|
modifiedBy: modifiedBy,
|
|
3158
3225
|
lastModified: lastModified
|
|
3159
3226
|
};
|
|
3160
|
-
_triggerProxy.default.trigger(
|
|
3227
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3161
3228
|
file: 'meeting/index',
|
|
3162
3229
|
function: 'setupLocusControlsListener'
|
|
3163
|
-
}, event,
|
|
3230
|
+
}, event, _this14.recording);
|
|
3164
3231
|
});
|
|
3165
3232
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_CONTAINER_UPDATED, function (_ref10) {
|
|
3166
3233
|
var meetingContainerUrl = _ref10.meetingContainerUrl;
|
|
3167
|
-
_triggerProxy.default.trigger(
|
|
3234
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3168
3235
|
file: 'meeting/index',
|
|
3169
3236
|
function: 'setupLocusControlsListener'
|
|
3170
3237
|
}, _constants.EVENT_TRIGGERS.MEETING_MEETING_CONTAINER_UPDATE, {
|
|
@@ -3175,12 +3242,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3175
3242
|
var caption = _ref11.caption,
|
|
3176
3243
|
transcribing = _ref11.transcribing;
|
|
3177
3244
|
// user need to be joined to start the llm and receive transcription
|
|
3178
|
-
if (
|
|
3245
|
+
if (_this14.isJoined()) {
|
|
3179
3246
|
// @ts-ignore - config coming from registerPlugin
|
|
3180
|
-
if (transcribing && !
|
|
3181
|
-
|
|
3182
|
-
} else if (!transcribing &&
|
|
3183
|
-
_triggerProxy.default.trigger(
|
|
3247
|
+
if (transcribing && !_this14.transcription) {
|
|
3248
|
+
_this14.startTranscription();
|
|
3249
|
+
} else if (!transcribing && _this14.transcription) {
|
|
3250
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3184
3251
|
file: 'meeting/index',
|
|
3185
3252
|
function: 'setupLocusControlsListener'
|
|
3186
3253
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION, {
|
|
@@ -3192,7 +3259,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3192
3259
|
});
|
|
3193
3260
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_MANUAL_CAPTION_UPDATED, function (_ref12) {
|
|
3194
3261
|
var enable = _ref12.enable;
|
|
3195
|
-
_triggerProxy.default.trigger(
|
|
3262
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3196
3263
|
file: 'meeting/index',
|
|
3197
3264
|
function: 'setupLocusControlsListener'
|
|
3198
3265
|
}, _constants.EVENT_TRIGGERS.MEETING_MANUAL_CAPTION_UPDATED, {
|
|
@@ -3201,23 +3268,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3201
3268
|
});
|
|
3202
3269
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_BREAKOUT_UPDATED, function (_ref13) {
|
|
3203
3270
|
var breakout = _ref13.breakout;
|
|
3204
|
-
|
|
3205
|
-
_triggerProxy.default.trigger(
|
|
3271
|
+
_this14.breakouts.updateBreakout(breakout);
|
|
3272
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3206
3273
|
file: 'meeting/index',
|
|
3207
3274
|
function: 'setupLocusControlsListener'
|
|
3208
3275
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
|
|
3209
3276
|
});
|
|
3210
3277
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_INTERPRETATION_UPDATED, function (_ref14) {
|
|
3211
3278
|
var interpretation = _ref14.interpretation;
|
|
3212
|
-
|
|
3213
|
-
_triggerProxy.default.trigger(
|
|
3279
|
+
_this14.simultaneousInterpretation.updateInterpretation(interpretation);
|
|
3280
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3214
3281
|
file: 'meeting/index',
|
|
3215
3282
|
function: 'setupLocusControlsListener'
|
|
3216
3283
|
}, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE);
|
|
3217
3284
|
});
|
|
3218
3285
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_ENTRY_EXIT_TONE_UPDATED, function (_ref15) {
|
|
3219
3286
|
var entryExitTone = _ref15.entryExitTone;
|
|
3220
|
-
_triggerProxy.default.trigger(
|
|
3287
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3221
3288
|
file: 'meeting/index',
|
|
3222
3289
|
function: 'setupLocusControlsListener'
|
|
3223
3290
|
}, _constants.EVENT_TRIGGERS.MEETING_ENTRY_EXIT_TONE_UPDATE, {
|
|
@@ -3226,7 +3293,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3226
3293
|
});
|
|
3227
3294
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MUTE_ON_ENTRY_CHANGED, function (_ref16) {
|
|
3228
3295
|
var state = _ref16.state;
|
|
3229
|
-
_triggerProxy.default.trigger(
|
|
3296
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3230
3297
|
file: 'meeting/index',
|
|
3231
3298
|
function: 'setupLocusControlsListener'
|
|
3232
3299
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_MUTE_ON_ENTRY_UPDATED, {
|
|
@@ -3235,7 +3302,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3235
3302
|
});
|
|
3236
3303
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_SHARE_CONTROL_CHANGED, function (_ref17) {
|
|
3237
3304
|
var state = _ref17.state;
|
|
3238
|
-
_triggerProxy.default.trigger(
|
|
3305
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3239
3306
|
file: 'meeting/index',
|
|
3240
3307
|
function: 'setupLocusControlsListener'
|
|
3241
3308
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_SHARE_CONTROL_UPDATED, {
|
|
@@ -3244,7 +3311,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3244
3311
|
});
|
|
3245
3312
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_DISALLOW_UNMUTE_CHANGED, function (_ref18) {
|
|
3246
3313
|
var state = _ref18.state;
|
|
3247
|
-
_triggerProxy.default.trigger(
|
|
3314
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3248
3315
|
file: 'meeting/index',
|
|
3249
3316
|
function: 'setupLocusControlsListener'
|
|
3250
3317
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_DISALLOW_UNMUTE_UPDATED, {
|
|
@@ -3253,7 +3320,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3253
3320
|
});
|
|
3254
3321
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_REACTIONS_CHANGED, function (_ref19) {
|
|
3255
3322
|
var state = _ref19.state;
|
|
3256
|
-
_triggerProxy.default.trigger(
|
|
3323
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3257
3324
|
file: 'meeting/index',
|
|
3258
3325
|
function: 'setupLocusControlsListener'
|
|
3259
3326
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_REACTIONS_UPDATED, {
|
|
@@ -3262,7 +3329,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3262
3329
|
});
|
|
3263
3330
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED, function (_ref20) {
|
|
3264
3331
|
var state = _ref20.state;
|
|
3265
|
-
_triggerProxy.default.trigger(
|
|
3332
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3266
3333
|
file: 'meeting/index',
|
|
3267
3334
|
function: 'setupLocusControlsListener'
|
|
3268
3335
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_VIEW_THE_PARTICIPANTS_LIST_UPDATED, {
|
|
@@ -3271,7 +3338,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3271
3338
|
});
|
|
3272
3339
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RAISE_HAND_CHANGED, function (_ref21) {
|
|
3273
3340
|
var state = _ref21.state;
|
|
3274
|
-
_triggerProxy.default.trigger(
|
|
3341
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3275
3342
|
file: 'meeting/index',
|
|
3276
3343
|
function: 'setupLocusControlsListener'
|
|
3277
3344
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_RAISE_HAND_UPDATED, {
|
|
@@ -3280,7 +3347,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3280
3347
|
});
|
|
3281
3348
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_WEBCAST_CHANGED, function (_ref22) {
|
|
3282
3349
|
var state = _ref22.state;
|
|
3283
|
-
_triggerProxy.default.trigger(
|
|
3350
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3284
3351
|
file: 'meeting/index',
|
|
3285
3352
|
function: 'setupLocusControlsListener'
|
|
3286
3353
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_WEBCAST_UPDATED, {
|
|
@@ -3289,7 +3356,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3289
3356
|
});
|
|
3290
3357
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_FULL_CHANGED, function (_ref23) {
|
|
3291
3358
|
var state = _ref23.state;
|
|
3292
|
-
_triggerProxy.default.trigger(
|
|
3359
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3293
3360
|
file: 'meeting/index',
|
|
3294
3361
|
function: 'setupLocusControlsListener'
|
|
3295
3362
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_MEETING_FULL_UPDATED, {
|
|
@@ -3298,8 +3365,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3298
3365
|
});
|
|
3299
3366
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_PRACTICE_SESSION_STATUS_UPDATED, function (_ref24) {
|
|
3300
3367
|
var state = _ref24.state;
|
|
3301
|
-
|
|
3302
|
-
_triggerProxy.default.trigger(
|
|
3368
|
+
_this14.webinar.updatePracticeSessionStatus(state);
|
|
3369
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3303
3370
|
file: 'meeting/index',
|
|
3304
3371
|
function: 'setupLocusControlsListener'
|
|
3305
3372
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_PRACTICE_SESSION_STATUS_UPDATED, {
|
|
@@ -3308,7 +3375,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3308
3375
|
});
|
|
3309
3376
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_STAGE_VIEW_UPDATED, function (_ref25) {
|
|
3310
3377
|
var state = _ref25.state;
|
|
3311
|
-
_triggerProxy.default.trigger(
|
|
3378
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3312
3379
|
file: 'meeting/index',
|
|
3313
3380
|
function: 'setupLocusControlsListener'
|
|
3314
3381
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_STAGE_VIEW_UPDATED, {
|
|
@@ -3317,7 +3384,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3317
3384
|
});
|
|
3318
3385
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIDEO_CHANGED, function (_ref26) {
|
|
3319
3386
|
var state = _ref26.state;
|
|
3320
|
-
_triggerProxy.default.trigger(
|
|
3387
|
+
_triggerProxy.default.trigger(_this14, {
|
|
3321
3388
|
file: 'meeting/index',
|
|
3322
3389
|
function: 'setupLocusControlsListener'
|
|
3323
3390
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_VIDEO_UPDATED, {
|
|
@@ -3360,37 +3427,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3360
3427
|
}, {
|
|
3361
3428
|
key: "setUpLocusMediaSharesListener",
|
|
3362
3429
|
value: function setUpLocusMediaSharesListener() {
|
|
3363
|
-
var
|
|
3430
|
+
var _this15 = this;
|
|
3364
3431
|
// Will get triggered on local and remote share
|
|
3365
3432
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_MEDIA_SHARES, /*#__PURE__*/function () {
|
|
3366
3433
|
var _ref27 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(payload) {
|
|
3367
3434
|
var _payload$previous, _payload$previous2;
|
|
3368
|
-
var _payload$current, contentShare, whiteboardShare, previousContentShare, previousWhiteboardShare, newShareStatus,
|
|
3435
|
+
var _payload$current, contentShare, whiteboardShare, previousContentShare, previousWhiteboardShare, newShareStatus, _this15$locusInfo, _this15$locusInfo$inf, _this15$webinar, oldShareStatus, sendStartedSharingRemote, _this15$mediaProperti;
|
|
3369
3436
|
return _regenerator.default.wrap(function _callee8$(_context8) {
|
|
3370
3437
|
while (1) switch (_context8.prev = _context8.next) {
|
|
3371
3438
|
case 0:
|
|
3372
3439
|
_payload$current = payload.current, contentShare = _payload$current.content, whiteboardShare = _payload$current.whiteboard;
|
|
3373
3440
|
previousContentShare = (_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.content;
|
|
3374
3441
|
previousWhiteboardShare = (_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.whiteboard;
|
|
3375
|
-
|
|
3442
|
+
_this15.triggerAnnotationInfoEvent(contentShare, previousContentShare);
|
|
3376
3443
|
if (!(!payload.forceUpdate && contentShare.beneficiaryId === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.beneficiaryId) && contentShare.disposition === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.disposition) && contentShare.deviceUrlSharing === previousContentShare.deviceUrlSharing && whiteboardShare.beneficiaryId === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.beneficiaryId) && whiteboardShare.disposition === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.disposition) && whiteboardShare.resourceUrl === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.resourceUrl) && contentShare.resourceType === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.resourceType))) {
|
|
3377
3444
|
_context8.next = 6;
|
|
3378
3445
|
break;
|
|
3379
3446
|
}
|
|
3380
3447
|
return _context8.abrupt("return");
|
|
3381
3448
|
case 6:
|
|
3382
|
-
newShareStatus =
|
|
3383
|
-
if (
|
|
3449
|
+
newShareStatus = _this15.shareStatus; // REMOTE - check if remote started sharing
|
|
3450
|
+
if (_this15.selfId !== contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
|
|
3384
3451
|
// CONTENT - sharing content remote
|
|
3385
3452
|
newShareStatus = _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE;
|
|
3386
3453
|
}
|
|
3387
3454
|
// LOCAL - check if we started sharing content
|
|
3388
|
-
else if (
|
|
3455
|
+
else if (_this15.selfId === contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED && contentShare.deviceUrlSharing === _this15.deviceUrl) {
|
|
3389
3456
|
// CONTENT - sharing content local
|
|
3390
3457
|
newShareStatus = _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE;
|
|
3391
3458
|
}
|
|
3392
3459
|
// SAME USER REMOTE - check if same user started sharing content from another client
|
|
3393
|
-
else if (
|
|
3460
|
+
else if (_this15.selfId === contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED && contentShare.deviceUrlSharing !== _this15.deviceUrl) {
|
|
3394
3461
|
// CONTENT - same user sharing content remote
|
|
3395
3462
|
newShareStatus = _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE;
|
|
3396
3463
|
}
|
|
@@ -3400,32 +3467,32 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3400
3467
|
else if (whiteboardShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
|
|
3401
3468
|
// WHITEBOARD - sharing whiteboard
|
|
3402
3469
|
// Webinar attendee should receive whiteboard as remote share
|
|
3403
|
-
newShareStatus = (
|
|
3470
|
+
newShareStatus = (_this15$locusInfo = _this15.locusInfo) !== null && _this15$locusInfo !== void 0 && (_this15$locusInfo$inf = _this15$locusInfo.info) !== null && _this15$locusInfo$inf !== void 0 && _this15$locusInfo$inf.isWebinar && (_this15$webinar = _this15.webinar) !== null && _this15$webinar !== void 0 && _this15$webinar.selfIsAttendee ? _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE : _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE;
|
|
3404
3471
|
}
|
|
3405
3472
|
// or if content share is either released or null and whiteboard share is either released or null, no one is sharing
|
|
3406
3473
|
else if ((previousContentShare && contentShare.disposition === _constants.FLOOR_ACTION.RELEASED || contentShare.disposition === null) && (previousWhiteboardShare && whiteboardShare.disposition === _constants.FLOOR_ACTION.RELEASED || whiteboardShare.disposition === null)) {
|
|
3407
3474
|
newShareStatus = _constants.SHARE_STATUS.NO_SHARE;
|
|
3408
3475
|
}
|
|
3409
|
-
_loggerProxy.default.logger.info("Meeting:index#setUpLocusInfoMediaInactiveListener --> this.shareStatus=".concat(
|
|
3410
|
-
if (!(newShareStatus !==
|
|
3476
|
+
_loggerProxy.default.logger.info("Meeting:index#setUpLocusInfoMediaInactiveListener --> this.shareStatus=".concat(_this15.shareStatus, " newShareStatus=").concat(newShareStatus));
|
|
3477
|
+
if (!(newShareStatus !== _this15.shareStatus)) {
|
|
3411
3478
|
_context8.next = 46;
|
|
3412
3479
|
break;
|
|
3413
3480
|
}
|
|
3414
|
-
oldShareStatus =
|
|
3415
|
-
|
|
3481
|
+
oldShareStatus = _this15.shareStatus; // update our state before we send out any notifications
|
|
3482
|
+
_this15.shareStatus = newShareStatus;
|
|
3416
3483
|
|
|
3417
3484
|
// send out "stop" notifications for the old state
|
|
3418
3485
|
_context8.t0 = oldShareStatus;
|
|
3419
3486
|
_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;
|
|
3420
3487
|
break;
|
|
3421
3488
|
case 15:
|
|
3422
|
-
_triggerProxy.default.trigger(
|
|
3489
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3423
3490
|
file: 'meetings/index',
|
|
3424
3491
|
function: 'remoteShare'
|
|
3425
3492
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_REMOTE);
|
|
3426
3493
|
return _context8.abrupt("break", 23);
|
|
3427
3494
|
case 17:
|
|
3428
|
-
_triggerProxy.default.trigger(
|
|
3495
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3429
3496
|
file: 'meeting/index',
|
|
3430
3497
|
function: 'localShare'
|
|
3431
3498
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
|
|
@@ -3433,7 +3500,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3433
3500
|
});
|
|
3434
3501
|
return _context8.abrupt("break", 23);
|
|
3435
3502
|
case 19:
|
|
3436
|
-
_triggerProxy.default.trigger(
|
|
3503
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3437
3504
|
file: 'meeting/index',
|
|
3438
3505
|
function: 'stopWhiteboardShare'
|
|
3439
3506
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_WHITEBOARD);
|
|
@@ -3448,25 +3515,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3448
3515
|
break;
|
|
3449
3516
|
case 26:
|
|
3450
3517
|
sendStartedSharingRemote = function sendStartedSharingRemote() {
|
|
3451
|
-
|
|
3452
|
-
_triggerProxy.default.trigger(
|
|
3518
|
+
_this15.remoteShareInstanceId = contentShare.shareInstanceId;
|
|
3519
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3453
3520
|
file: 'meetings/index',
|
|
3454
3521
|
function: 'remoteShare'
|
|
3455
3522
|
}, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_REMOTE, {
|
|
3456
3523
|
memberId: contentShare.beneficiaryId,
|
|
3457
3524
|
url: contentShare.url,
|
|
3458
|
-
shareInstanceId:
|
|
3525
|
+
shareInstanceId: _this15.remoteShareInstanceId,
|
|
3459
3526
|
annotationInfo: contentShare.annotation,
|
|
3460
3527
|
resourceType: contentShare.resourceType
|
|
3461
3528
|
});
|
|
3462
3529
|
};
|
|
3463
3530
|
_context8.prev = 27;
|
|
3464
|
-
if (!((
|
|
3531
|
+
if (!((_this15$mediaProperti = _this15.mediaProperties.mediaDirection) !== null && _this15$mediaProperti !== void 0 && _this15$mediaProperti.sendShare && oldShareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE)) {
|
|
3465
3532
|
_context8.next = 31;
|
|
3466
3533
|
break;
|
|
3467
3534
|
}
|
|
3468
3535
|
_context8.next = 31;
|
|
3469
|
-
return
|
|
3536
|
+
return _this15.unpublishStreams([_this15.mediaProperties.shareVideoStream, _this15.mediaProperties.shareAudioStream]);
|
|
3470
3537
|
case 31:
|
|
3471
3538
|
_context8.prev = 31;
|
|
3472
3539
|
sendStartedSharingRemote();
|
|
@@ -3474,24 +3541,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3474
3541
|
case 34:
|
|
3475
3542
|
return _context8.abrupt("break", 43);
|
|
3476
3543
|
case 35:
|
|
3477
|
-
_triggerProxy.default.trigger(
|
|
3544
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3478
3545
|
file: 'meeting/index',
|
|
3479
3546
|
function: 'share'
|
|
3480
3547
|
}, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_LOCAL);
|
|
3481
3548
|
// @ts-ignore
|
|
3482
|
-
|
|
3549
|
+
_this15.webex.internal.newMetrics.submitClientEvent({
|
|
3483
3550
|
name: 'client.share.floor-granted.local',
|
|
3484
3551
|
payload: {
|
|
3485
3552
|
mediaType: 'share',
|
|
3486
|
-
shareInstanceId:
|
|
3553
|
+
shareInstanceId: _this15.localShareInstanceId
|
|
3487
3554
|
},
|
|
3488
3555
|
options: {
|
|
3489
|
-
meetingId:
|
|
3556
|
+
meetingId: _this15.id
|
|
3490
3557
|
}
|
|
3491
3558
|
});
|
|
3492
3559
|
return _context8.abrupt("break", 43);
|
|
3493
3560
|
case 38:
|
|
3494
|
-
_triggerProxy.default.trigger(
|
|
3561
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3495
3562
|
file: 'meeting/index',
|
|
3496
3563
|
function: 'startWhiteboardShare'
|
|
3497
3564
|
}, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_WHITEBOARD, {
|
|
@@ -3499,13 +3566,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3499
3566
|
memberId: whiteboardShare.beneficiaryId
|
|
3500
3567
|
});
|
|
3501
3568
|
// @ts-ignore
|
|
3502
|
-
|
|
3569
|
+
_this15.webex.internal.newMetrics.submitClientEvent({
|
|
3503
3570
|
name: 'client.share.floor-granted.local',
|
|
3504
3571
|
payload: {
|
|
3505
3572
|
mediaType: 'whiteboard'
|
|
3506
3573
|
},
|
|
3507
3574
|
options: {
|
|
3508
|
-
meetingId:
|
|
3575
|
+
meetingId: _this15.id
|
|
3509
3576
|
}
|
|
3510
3577
|
});
|
|
3511
3578
|
return _context8.abrupt("break", 43);
|
|
@@ -3514,29 +3581,29 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3514
3581
|
case 42:
|
|
3515
3582
|
return _context8.abrupt("break", 43);
|
|
3516
3583
|
case 43:
|
|
3517
|
-
|
|
3584
|
+
_this15.members.locusMediaSharesUpdate(payload);
|
|
3518
3585
|
_context8.next = 47;
|
|
3519
3586
|
break;
|
|
3520
3587
|
case 46:
|
|
3521
3588
|
if (newShareStatus === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE) {
|
|
3522
3589
|
// if we got here, then some remote participant has stolen
|
|
3523
3590
|
// the presentation from another remote participant
|
|
3524
|
-
|
|
3525
|
-
_triggerProxy.default.trigger(
|
|
3591
|
+
_this15.remoteShareInstanceId = contentShare.shareInstanceId;
|
|
3592
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3526
3593
|
file: 'meetings/index',
|
|
3527
3594
|
function: 'remoteShare'
|
|
3528
3595
|
}, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_REMOTE, {
|
|
3529
3596
|
memberId: contentShare.beneficiaryId,
|
|
3530
3597
|
url: contentShare.url,
|
|
3531
|
-
shareInstanceId:
|
|
3598
|
+
shareInstanceId: _this15.remoteShareInstanceId,
|
|
3532
3599
|
annotationInfo: contentShare.annotation,
|
|
3533
3600
|
resourceType: contentShare.resourceType
|
|
3534
3601
|
});
|
|
3535
|
-
|
|
3602
|
+
_this15.members.locusMediaSharesUpdate(payload);
|
|
3536
3603
|
} else if (newShareStatus === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE) {
|
|
3537
3604
|
// if we got here, then some remote participant has stolen
|
|
3538
3605
|
// the presentation from another remote participant
|
|
3539
|
-
_triggerProxy.default.trigger(
|
|
3606
|
+
_triggerProxy.default.trigger(_this15, {
|
|
3540
3607
|
file: 'meeting/index',
|
|
3541
3608
|
function: 'startWhiteboardShare'
|
|
3542
3609
|
}, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_WHITEBOARD, {
|
|
@@ -3544,16 +3611,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3544
3611
|
memberId: whiteboardShare.beneficiaryId
|
|
3545
3612
|
});
|
|
3546
3613
|
// @ts-ignore
|
|
3547
|
-
|
|
3614
|
+
_this15.webex.internal.newMetrics.submitClientEvent({
|
|
3548
3615
|
name: 'client.share.floor-granted.local',
|
|
3549
3616
|
payload: {
|
|
3550
3617
|
mediaType: 'whiteboard'
|
|
3551
3618
|
},
|
|
3552
3619
|
options: {
|
|
3553
|
-
meetingId:
|
|
3620
|
+
meetingId: _this15.id
|
|
3554
3621
|
}
|
|
3555
3622
|
});
|
|
3556
|
-
|
|
3623
|
+
_this15.members.locusMediaSharesUpdate(payload);
|
|
3557
3624
|
}
|
|
3558
3625
|
case 47:
|
|
3559
3626
|
case "end":
|
|
@@ -3577,19 +3644,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3577
3644
|
}, {
|
|
3578
3645
|
key: "setUpLocusUrlListener",
|
|
3579
3646
|
value: function setUpLocusUrlListener() {
|
|
3580
|
-
var
|
|
3647
|
+
var _this16 = this;
|
|
3581
3648
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_URL, function (payload) {
|
|
3582
|
-
var
|
|
3583
|
-
|
|
3584
|
-
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
_triggerProxy.default.trigger(
|
|
3649
|
+
var _this16$locusUrl;
|
|
3650
|
+
_this16.members.locusUrlUpdate(payload);
|
|
3651
|
+
_this16.breakouts.locusUrlUpdate(payload);
|
|
3652
|
+
_this16.simultaneousInterpretation.locusUrlUpdate(payload);
|
|
3653
|
+
_this16.annotation.locusUrlUpdate(payload);
|
|
3654
|
+
_this16.locusUrl = payload;
|
|
3655
|
+
_this16.locusId = (_this16$locusUrl = _this16.locusUrl) === null || _this16$locusUrl === void 0 ? void 0 : _this16$locusUrl.split('/').pop();
|
|
3656
|
+
_this16.recordingController.setLocusUrl(_this16.locusUrl);
|
|
3657
|
+
_this16.controlsOptionsManager.setLocusUrl(_this16.locusUrl);
|
|
3658
|
+
_this16.webinar.locusUrlUpdate(payload);
|
|
3659
|
+
_triggerProxy.default.trigger(_this16, {
|
|
3593
3660
|
file: 'meeting/index',
|
|
3594
3661
|
function: 'setUpLocusSelfListener'
|
|
3595
3662
|
}, _constants.EVENT_TRIGGERS.MEETING_LOCUS_URL_UPDATE, {
|
|
@@ -3610,14 +3677,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3610
3677
|
}, {
|
|
3611
3678
|
key: "setUpLocusServicesListener",
|
|
3612
3679
|
value: function setUpLocusServicesListener() {
|
|
3613
|
-
var
|
|
3680
|
+
var _this17 = this;
|
|
3614
3681
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LINKS_SERVICES, function (payload) {
|
|
3615
|
-
var _payload$services, _payload$services$rec,
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3682
|
+
var _payload$services, _payload$services$rec, _this17$locusInfo, _this17$locusInfo$ful, _payload$services2, _payload$services2$br, _payload$services3, _payload$services3$ap, _payload$services4, _payload$services4$ap;
|
|
3683
|
+
_this17.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);
|
|
3684
|
+
_this17.recordingController.setSessionId((_this17$locusInfo = _this17.locusInfo) === null || _this17$locusInfo === void 0 ? void 0 : (_this17$locusInfo$ful = _this17$locusInfo.fullState) === null || _this17$locusInfo$ful === void 0 ? void 0 : _this17$locusInfo$ful.sessionId);
|
|
3685
|
+
_this17.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);
|
|
3686
|
+
_this17.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);
|
|
3687
|
+
_this17.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);
|
|
3621
3688
|
});
|
|
3622
3689
|
}
|
|
3623
3690
|
|
|
@@ -3632,11 +3699,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3632
3699
|
}, {
|
|
3633
3700
|
key: "setUpLocusResourcesListener",
|
|
3634
3701
|
value: function setUpLocusResourcesListener() {
|
|
3635
|
-
var
|
|
3702
|
+
var _this18 = this;
|
|
3636
3703
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LINKS_RESOURCES, function (payload) {
|
|
3637
3704
|
if (payload) {
|
|
3638
|
-
|
|
3639
|
-
_triggerProxy.default.trigger(
|
|
3705
|
+
_this18.webinar.updateWebcastUrl(payload);
|
|
3706
|
+
_triggerProxy.default.trigger(_this18, {
|
|
3640
3707
|
file: 'meeting/index',
|
|
3641
3708
|
function: 'setUpLocusInfoMeetingInfoListener'
|
|
3642
3709
|
}, _constants.EVENT_TRIGGERS.MEETING_RESOURCE_LINKS_UPDATE, {
|
|
@@ -3655,10 +3722,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3655
3722
|
}, {
|
|
3656
3723
|
key: "setUpLocusInfoMeetingInfoListener",
|
|
3657
3724
|
value: function setUpLocusInfoMeetingInfoListener() {
|
|
3658
|
-
var
|
|
3725
|
+
var _this19 = this;
|
|
3659
3726
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_LOCKED, function (payload) {
|
|
3660
3727
|
if (payload) {
|
|
3661
|
-
_triggerProxy.default.trigger(
|
|
3728
|
+
_triggerProxy.default.trigger(_this19, {
|
|
3662
3729
|
file: 'meeting/index',
|
|
3663
3730
|
function: 'setUpLocusInfoMeetingInfoListener'
|
|
3664
3731
|
}, _constants.EVENT_TRIGGERS.MEETING_LOCKED, {
|
|
@@ -3668,7 +3735,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3668
3735
|
});
|
|
3669
3736
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_UNLOCKED, function (payload) {
|
|
3670
3737
|
if (payload) {
|
|
3671
|
-
_triggerProxy.default.trigger(
|
|
3738
|
+
_triggerProxy.default.trigger(_this19, {
|
|
3672
3739
|
file: 'meeting/index',
|
|
3673
3740
|
function: 'setUpLocusInfoMeetingInfoListener'
|
|
3674
3741
|
}, _constants.EVENT_TRIGGERS.MEETING_UNLOCKED, {
|
|
@@ -3678,14 +3745,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3678
3745
|
});
|
|
3679
3746
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEETING_INFO_UPDATED, function (_ref28) {
|
|
3680
3747
|
var isInitializing = _ref28.isInitializing;
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
|
|
3748
|
+
_this19.updateMeetingActions();
|
|
3749
|
+
_this19.recordingController.setDisplayHints(_this19.userDisplayHints);
|
|
3750
|
+
_this19.recordingController.setUserPolicy(_this19.selfUserPolicies);
|
|
3751
|
+
_this19.controlsOptionsManager.setDisplayHints(_this19.userDisplayHints);
|
|
3752
|
+
_this19.handleDataChannelUrlChange(_this19.datachannelUrl);
|
|
3686
3753
|
if (!isInitializing) {
|
|
3687
3754
|
// send updated trigger only if locus is not initializing the meeting
|
|
3688
|
-
_triggerProxy.default.trigger(
|
|
3755
|
+
_triggerProxy.default.trigger(_this19, {
|
|
3689
3756
|
file: 'meetings',
|
|
3690
3757
|
function: 'setUpLocusInfoMeetingInfoListener'
|
|
3691
3758
|
}, _constants.EVENT_TRIGGERS.MEETING_INFO_UPDATED);
|
|
@@ -3716,10 +3783,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3716
3783
|
}, {
|
|
3717
3784
|
key: "setUpLocusEmbeddedAppsListener",
|
|
3718
3785
|
value: function setUpLocusEmbeddedAppsListener() {
|
|
3719
|
-
var
|
|
3786
|
+
var _this20 = this;
|
|
3720
3787
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.EMBEDDED_APPS_UPDATED, function (embeddedApps) {
|
|
3721
3788
|
if (embeddedApps) {
|
|
3722
|
-
_triggerProxy.default.trigger(
|
|
3789
|
+
_triggerProxy.default.trigger(_this20, {
|
|
3723
3790
|
file: 'meeting/index',
|
|
3724
3791
|
function: 'setUpLocusEmbeddedAppsListener'
|
|
3725
3792
|
}, _constants.EVENT_TRIGGERS.MEETING_EMBEDDED_APPS_UPDATE, embeddedApps);
|
|
@@ -3736,11 +3803,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3736
3803
|
}, {
|
|
3737
3804
|
key: "setUpLocusInfoSelfListener",
|
|
3738
3805
|
value: function setUpLocusInfoSelfListener() {
|
|
3739
|
-
var
|
|
3806
|
+
var _this21 = this;
|
|
3740
3807
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LOCAL_UNMUTE_REQUIRED, function (payload) {
|
|
3741
|
-
if (
|
|
3742
|
-
|
|
3743
|
-
_triggerProxy.default.trigger(
|
|
3808
|
+
if (_this21.audio) {
|
|
3809
|
+
_this21.audio.handleServerLocalUnmuteRequired(_this21, payload.unmuteAllowed);
|
|
3810
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3744
3811
|
file: 'meeting/index',
|
|
3745
3812
|
function: 'setUpLocusInfoSelfListener'
|
|
3746
3813
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_UNMUTED_BY_OTHERS, {
|
|
@@ -3750,13 +3817,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3750
3817
|
});
|
|
3751
3818
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED, function (payload) {
|
|
3752
3819
|
if (payload) {
|
|
3753
|
-
if (
|
|
3820
|
+
if (_this21.video) {
|
|
3754
3821
|
var _payload$muted, _payload$unmuteAllowe;
|
|
3755
|
-
payload.muted = (_payload$muted = payload.muted) !== null && _payload$muted !== void 0 ? _payload$muted :
|
|
3756
|
-
payload.unmuteAllowed = (_payload$unmuteAllowe = payload.unmuteAllowed) !== null && _payload$unmuteAllowe !== void 0 ? _payload$unmuteAllowe :
|
|
3757
|
-
|
|
3822
|
+
payload.muted = (_payload$muted = payload.muted) !== null && _payload$muted !== void 0 ? _payload$muted : _this21.video.isRemotelyMuted();
|
|
3823
|
+
payload.unmuteAllowed = (_payload$unmuteAllowe = payload.unmuteAllowed) !== null && _payload$unmuteAllowe !== void 0 ? _payload$unmuteAllowe : _this21.video.isUnmuteAllowed();
|
|
3824
|
+
_this21.video.handleServerRemoteMuteUpdate(_this21, payload.muted, payload.unmuteAllowed);
|
|
3758
3825
|
}
|
|
3759
|
-
_triggerProxy.default.trigger(
|
|
3826
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3760
3827
|
file: 'meeting/index',
|
|
3761
3828
|
function: 'setUpLocusInfoSelfListener'
|
|
3762
3829
|
}, payload.muted ? _constants.EVENT_TRIGGERS.MEETING_SELF_VIDEO_MUTED_BY_OTHERS : _constants.EVENT_TRIGGERS.MEETING_SELF_VIDEO_UNMUTED_BY_OTHERS, {
|
|
@@ -3766,15 +3833,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3766
3833
|
});
|
|
3767
3834
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_REMOTE_MUTE_STATUS_UPDATED, function (payload) {
|
|
3768
3835
|
if (payload) {
|
|
3769
|
-
var
|
|
3770
|
-
if (
|
|
3771
|
-
|
|
3836
|
+
var _this21$audio;
|
|
3837
|
+
if (_this21.audio) {
|
|
3838
|
+
_this21.audio.handleServerRemoteMuteUpdate(_this21, payload.muted, payload.unmuteAllowed);
|
|
3772
3839
|
}
|
|
3773
3840
|
// with "mute on entry" server will send us remote mute even if we don't have media configured,
|
|
3774
3841
|
// so if being muted by others, always send the notification,
|
|
3775
3842
|
// but if being unmuted, only send it if we are also locally unmuted
|
|
3776
|
-
if (payload.muted || !((
|
|
3777
|
-
_triggerProxy.default.trigger(
|
|
3843
|
+
if (payload.muted || !((_this21$audio = _this21.audio) !== null && _this21$audio !== void 0 && _this21$audio.isMuted())) {
|
|
3844
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3778
3845
|
file: 'meeting/index',
|
|
3779
3846
|
function: 'setUpLocusInfoSelfListener'
|
|
3780
3847
|
}, payload.muted ? _constants.EVENT_TRIGGERS.MEETING_SELF_MUTED_BY_OTHERS : _constants.EVENT_TRIGGERS.MEETING_SELF_UNMUTED_BY_OTHERS, {
|
|
@@ -3784,7 +3851,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3784
3851
|
}
|
|
3785
3852
|
});
|
|
3786
3853
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.LOCAL_UNMUTE_REQUESTED, function (payload) {
|
|
3787
|
-
_triggerProxy.default.trigger(
|
|
3854
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3788
3855
|
file: 'meeting/index',
|
|
3789
3856
|
function: 'setUpLocusInfoSelfListener'
|
|
3790
3857
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_REQUESTED_TO_UNMUTE, {
|
|
@@ -3793,8 +3860,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3793
3860
|
});
|
|
3794
3861
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_UNADMITTED_GUEST, function (payload) {
|
|
3795
3862
|
if (payload) {
|
|
3796
|
-
|
|
3797
|
-
_triggerProxy.default.trigger(
|
|
3863
|
+
_this21.startKeepAlive();
|
|
3864
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3798
3865
|
file: 'meeting/index',
|
|
3799
3866
|
function: 'setUpLocusInfoSelfListener'
|
|
3800
3867
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_LOBBY_WAITING, {
|
|
@@ -3802,27 +3869,27 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3802
3869
|
});
|
|
3803
3870
|
|
|
3804
3871
|
// @ts-ignore
|
|
3805
|
-
|
|
3872
|
+
_this21.webex.internal.newMetrics.submitClientEvent({
|
|
3806
3873
|
name: 'client.lobby.entered',
|
|
3807
3874
|
options: {
|
|
3808
|
-
meetingId:
|
|
3875
|
+
meetingId: _this21.id
|
|
3809
3876
|
}
|
|
3810
3877
|
});
|
|
3811
3878
|
}
|
|
3812
3879
|
_metrics.default.sendBehavioralMetric(_constants2.default.GUEST_ENTERED_LOBBY, {
|
|
3813
|
-
correlation_id:
|
|
3880
|
+
correlation_id: _this21.correlationId
|
|
3814
3881
|
});
|
|
3815
|
-
|
|
3882
|
+
_this21.updateLLMConnection();
|
|
3816
3883
|
});
|
|
3817
3884
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ADMITTED_GUEST, /*#__PURE__*/function () {
|
|
3818
3885
|
var _ref29 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(payload) {
|
|
3819
|
-
var
|
|
3886
|
+
var _this21$rtcMetrics;
|
|
3820
3887
|
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
3821
3888
|
while (1) switch (_context9.prev = _context9.next) {
|
|
3822
3889
|
case 0:
|
|
3823
|
-
|
|
3890
|
+
_this21.stopKeepAlive();
|
|
3824
3891
|
if (payload) {
|
|
3825
|
-
_triggerProxy.default.trigger(
|
|
3892
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3826
3893
|
file: 'meeting/index',
|
|
3827
3894
|
function: 'setUpLocusInfoSelfListener'
|
|
3828
3895
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_GUEST_ADMITTED, {
|
|
@@ -3830,18 +3897,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3830
3897
|
});
|
|
3831
3898
|
|
|
3832
3899
|
// @ts-ignore
|
|
3833
|
-
|
|
3900
|
+
_this21.webex.internal.newMetrics.submitClientEvent({
|
|
3834
3901
|
name: 'client.lobby.exited',
|
|
3835
3902
|
options: {
|
|
3836
|
-
meetingId:
|
|
3903
|
+
meetingId: _this21.id
|
|
3837
3904
|
}
|
|
3838
3905
|
});
|
|
3839
3906
|
_metrics.default.sendBehavioralMetric(_constants2.default.GUEST_EXITED_LOBBY, {
|
|
3840
|
-
correlation_id:
|
|
3907
|
+
correlation_id: _this21.correlationId
|
|
3841
3908
|
});
|
|
3842
3909
|
}
|
|
3843
|
-
(
|
|
3844
|
-
|
|
3910
|
+
(_this21$rtcMetrics = _this21.rtcMetrics) === null || _this21$rtcMetrics === void 0 ? void 0 : _this21$rtcMetrics.sendNextMetrics();
|
|
3911
|
+
_this21.updateLLMConnection();
|
|
3845
3912
|
case 4:
|
|
3846
3913
|
case "end":
|
|
3847
3914
|
return _context9.stop();
|
|
@@ -3856,35 +3923,38 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3856
3923
|
// @ts-ignore - check if MEDIA_INACTIVITY exists
|
|
3857
3924
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_INACTIVITY, function () {
|
|
3858
3925
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_MEDIA_INACTIVE, {
|
|
3859
|
-
correlation_id:
|
|
3860
|
-
locus_id:
|
|
3926
|
+
correlation_id: _this21.correlationId,
|
|
3927
|
+
locus_id: _this21.locusId
|
|
3861
3928
|
});
|
|
3862
3929
|
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoSelfListener --> MEDIA_INACTIVITY received, reconnecting...');
|
|
3863
|
-
|
|
3930
|
+
_this21.reconnect();
|
|
3864
3931
|
});
|
|
3865
3932
|
|
|
3866
3933
|
// There is two stats for mute one is the actual media being sent or received
|
|
3867
3934
|
// The second on is if the audio is muted, we need to tell the statsAnalyzer when
|
|
3868
3935
|
// the audio is muted or the user is not willing to send media
|
|
3869
3936
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.MEDIA_STATUS_CHANGE, function (status) {
|
|
3870
|
-
|
|
3871
|
-
|
|
3872
|
-
|
|
3937
|
+
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoSelfListener --> MEDIA_STATUS_CHANGE received, processing...');
|
|
3938
|
+
if (_this21.statsAnalyzer) {
|
|
3939
|
+
var _this21$mediaProperti, _this21$audio2, _this21$mediaProperti2, _this21$video, _this21$mediaProperti3, _this21$mediaProperti4, _this21$mediaProperti5, _this21$mediaProperti6;
|
|
3940
|
+
_this21.statsAnalyzer.updateMediaStatus({
|
|
3873
3941
|
actual: status,
|
|
3874
3942
|
expected: {
|
|
3875
3943
|
// We need to check what should be the actual direction of media
|
|
3876
|
-
sendAudio: ((
|
|
3877
|
-
sendVideo: ((
|
|
3878
|
-
sendShare: (
|
|
3879
|
-
receiveAudio: (
|
|
3880
|
-
receiveVideo: (
|
|
3881
|
-
receiveShare: (
|
|
3944
|
+
sendAudio: ((_this21$mediaProperti = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti === void 0 ? void 0 : _this21$mediaProperti.sendAudio) && !((_this21$audio2 = _this21.audio) !== null && _this21$audio2 !== void 0 && _this21$audio2.isMuted()),
|
|
3945
|
+
sendVideo: ((_this21$mediaProperti2 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti2 === void 0 ? void 0 : _this21$mediaProperti2.sendVideo) && !((_this21$video = _this21.video) !== null && _this21$video !== void 0 && _this21$video.isMuted()),
|
|
3946
|
+
sendShare: (_this21$mediaProperti3 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti3 === void 0 ? void 0 : _this21$mediaProperti3.sendShare,
|
|
3947
|
+
receiveAudio: (_this21$mediaProperti4 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti4 === void 0 ? void 0 : _this21$mediaProperti4.receiveAudio,
|
|
3948
|
+
receiveVideo: (_this21$mediaProperti5 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti5 === void 0 ? void 0 : _this21$mediaProperti5.receiveVideo,
|
|
3949
|
+
receiveShare: (_this21$mediaProperti6 = _this21.mediaProperties.mediaDirection) === null || _this21$mediaProperti6 === void 0 ? void 0 : _this21$mediaProperti6.receiveShare
|
|
3882
3950
|
}
|
|
3883
3951
|
});
|
|
3952
|
+
} else {
|
|
3953
|
+
_loggerProxy.default.logger.warn('Meeting:index#setUpLocusInfoSelfListener --> MEDIA_STATUS_CHANGE, statsAnalyzer is not available.');
|
|
3884
3954
|
}
|
|
3885
3955
|
});
|
|
3886
3956
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_CANNOT_VIEW_PARTICIPANT_LIST_CHANGE, function (payload) {
|
|
3887
|
-
_triggerProxy.default.trigger(
|
|
3957
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3888
3958
|
file: 'meeting/index',
|
|
3889
3959
|
function: 'setUpLocusInfoSelfListener'
|
|
3890
3960
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_CANNOT_VIEW_PARTICIPANT_LIST, {
|
|
@@ -3892,26 +3962,26 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3892
3962
|
});
|
|
3893
3963
|
});
|
|
3894
3964
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_BREAKOUTS_CHANGED, function (payload) {
|
|
3895
|
-
|
|
3896
|
-
_triggerProxy.default.trigger(
|
|
3965
|
+
_this21.breakouts.updateBreakoutSessions(payload);
|
|
3966
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3897
3967
|
file: 'meeting/index',
|
|
3898
3968
|
function: 'setUpLocusInfoSelfListener'
|
|
3899
3969
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
|
|
3900
3970
|
});
|
|
3901
3971
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_INTERPRETATION_CHANGED, function (payload) {
|
|
3902
|
-
var targetChanged =
|
|
3903
|
-
_triggerProxy.default.trigger(
|
|
3972
|
+
var targetChanged = _this21.simultaneousInterpretation.updateSelfInterpretation(payload);
|
|
3973
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3904
3974
|
file: 'meeting/index',
|
|
3905
3975
|
function: 'setUpLocusInfoSelfListener'
|
|
3906
3976
|
}, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE);
|
|
3907
|
-
if (targetChanged &&
|
|
3908
|
-
|
|
3977
|
+
if (targetChanged && _this21.mediaProperties.audioStream) {
|
|
3978
|
+
_this21.setSendNamedMediaGroup(_internalMediaCore.MediaType.AudioMain);
|
|
3909
3979
|
}
|
|
3910
3980
|
});
|
|
3911
3981
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_MEETING_BRB_CHANGED, function (payload) {
|
|
3912
|
-
var
|
|
3913
|
-
(
|
|
3914
|
-
_triggerProxy.default.trigger(
|
|
3982
|
+
var _this21$brbState, _payload$brb;
|
|
3983
|
+
(_this21$brbState = _this21.brbState) === null || _this21$brbState === void 0 ? void 0 : _this21$brbState.handleServerBrbUpdate(payload === null || payload === void 0 ? void 0 : (_payload$brb = payload.brb) === null || _payload$brb === void 0 ? void 0 : _payload$brb.enabled);
|
|
3984
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3915
3985
|
file: 'meeting/index',
|
|
3916
3986
|
function: 'setUpLocusInfoSelfListener'
|
|
3917
3987
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_BRB_UPDATE, {
|
|
@@ -3921,10 +3991,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3921
3991
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_ROLES_CHANGED, function (payload) {
|
|
3922
3992
|
var _payload$newRoles, _payload$newRoles2, _payload$newRoles3;
|
|
3923
3993
|
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));
|
|
3924
|
-
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
_triggerProxy.default.trigger(
|
|
3994
|
+
_this21.breakouts.updateCanManageBreakouts(isModeratorOrCohost);
|
|
3995
|
+
_this21.simultaneousInterpretation.updateCanManageInterpreters((_payload$newRoles3 = payload.newRoles) === null || _payload$newRoles3 === void 0 ? void 0 : _payload$newRoles3.includes(_constants.SELF_ROLES.MODERATOR));
|
|
3996
|
+
_this21.webinar.updateRoleChanged(payload);
|
|
3997
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3928
3998
|
file: 'meeting/index',
|
|
3929
3999
|
function: 'setUpLocusInfoSelfListener'
|
|
3930
4000
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_ROLES_CHANGED, {
|
|
@@ -3932,7 +4002,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3932
4002
|
});
|
|
3933
4003
|
});
|
|
3934
4004
|
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.SELF_IS_SHARING_BLOCKED_CHANGE, function (payload) {
|
|
3935
|
-
_triggerProxy.default.trigger(
|
|
4005
|
+
_triggerProxy.default.trigger(_this21, {
|
|
3936
4006
|
file: 'meeting/index',
|
|
3937
4007
|
function: 'setUpLocusInfoSelfListener'
|
|
3938
4008
|
}, _constants.EVENT_TRIGGERS.MEETING_SELF_IS_SHARING_BLOCKED, {
|
|
@@ -3950,17 +4020,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3950
4020
|
}, {
|
|
3951
4021
|
key: "setUpLocusInfoMeetingListener",
|
|
3952
4022
|
value: function setUpLocusInfoMeetingListener() {
|
|
3953
|
-
var
|
|
4023
|
+
var _this22 = this;
|
|
3954
4024
|
this.locusInfo.on(_constants.EVENTS.REMOTE_RESPONSE, function (payload) {
|
|
3955
|
-
|
|
4025
|
+
_this22.meetingFiniteStateMachine.remote(payload);
|
|
3956
4026
|
if (payload.remoteDeclined) {
|
|
3957
|
-
|
|
4027
|
+
_this22.leave({
|
|
3958
4028
|
reason: payload.reason
|
|
3959
4029
|
}).then(function () {
|
|
3960
4030
|
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Attempting to leave meeting.');
|
|
3961
4031
|
}).catch(function (error) {
|
|
3962
4032
|
// @ts-ignore
|
|
3963
|
-
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Issue with leave for meeting, meeting still in collection: ".concat(
|
|
4033
|
+
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> REMOTE_RESPONSE. Issue with leave for meeting, meeting still in collection: ".concat(_this22, ", error: ").concat(error));
|
|
3964
4034
|
});
|
|
3965
4035
|
}
|
|
3966
4036
|
});
|
|
@@ -3969,23 +4039,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3969
4039
|
return _regenerator.default.wrap(function _callee10$(_context10) {
|
|
3970
4040
|
while (1) switch (_context10.prev = _context10.next) {
|
|
3971
4041
|
case 0:
|
|
3972
|
-
if (!
|
|
4042
|
+
if (!_this22.wirelessShare) {
|
|
3973
4043
|
_context10.next = 7;
|
|
3974
4044
|
break;
|
|
3975
4045
|
}
|
|
3976
|
-
if (!
|
|
4046
|
+
if (!_this22.mediaProperties.shareVideoStream) {
|
|
3977
4047
|
_context10.next = 4;
|
|
3978
4048
|
break;
|
|
3979
4049
|
}
|
|
3980
4050
|
_context10.next = 4;
|
|
3981
|
-
return
|
|
4051
|
+
return _this22.setLocalShareVideoStream(undefined);
|
|
3982
4052
|
case 4:
|
|
3983
|
-
if (!
|
|
4053
|
+
if (!_this22.mediaProperties.shareAudioStream) {
|
|
3984
4054
|
_context10.next = 7;
|
|
3985
4055
|
break;
|
|
3986
4056
|
}
|
|
3987
4057
|
_context10.next = 7;
|
|
3988
|
-
return
|
|
4058
|
+
return _this22.setLocalShareAudioStream(undefined);
|
|
3989
4059
|
case 7:
|
|
3990
4060
|
if (!payload.shouldLeave) {
|
|
3991
4061
|
_context10.next = 19;
|
|
@@ -3993,7 +4063,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3993
4063
|
}
|
|
3994
4064
|
_context10.prev = 8;
|
|
3995
4065
|
_context10.next = 11;
|
|
3996
|
-
return
|
|
4066
|
+
return _this22.leave({
|
|
3997
4067
|
reason: payload.reason
|
|
3998
4068
|
});
|
|
3999
4069
|
case 11:
|
|
@@ -4004,19 +4074,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4004
4074
|
_context10.prev = 14;
|
|
4005
4075
|
_context10.t0 = _context10["catch"](8);
|
|
4006
4076
|
// @ts-ignore
|
|
4007
|
-
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(
|
|
4077
|
+
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this22, ", error: ").concat(_context10.t0));
|
|
4008
4078
|
case 17:
|
|
4009
4079
|
_context10.next = 22;
|
|
4010
4080
|
break;
|
|
4011
4081
|
case 19:
|
|
4012
4082
|
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> MEETING_REMOVED_REASON', payload.reason);
|
|
4013
|
-
_util2.default.cleanUp(
|
|
4014
|
-
_triggerProxy.default.trigger(
|
|
4083
|
+
_util2.default.cleanUp(_this22);
|
|
4084
|
+
_triggerProxy.default.trigger(_this22, {
|
|
4015
4085
|
file: 'meeting/index',
|
|
4016
4086
|
function: 'setUpLocusInfoMeetingListener'
|
|
4017
4087
|
}, _constants.EVENTS.DESTROY_MEETING, {
|
|
4018
4088
|
reason: payload.reason,
|
|
4019
|
-
meetingId:
|
|
4089
|
+
meetingId: _this22.id
|
|
4020
4090
|
});
|
|
4021
4091
|
case 22:
|
|
4022
4092
|
case "end":
|
|
@@ -4041,13 +4111,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4041
4111
|
}, {
|
|
4042
4112
|
key: "updateMeetingObject",
|
|
4043
4113
|
value: function updateMeetingObject(object) {
|
|
4044
|
-
var
|
|
4114
|
+
var _this23 = this;
|
|
4045
4115
|
// Validate if these are valid meeting object property
|
|
4046
4116
|
// TODO: add a check to make sure the value passed in the constructor
|
|
4047
4117
|
// is not changed by any delta event
|
|
4048
4118
|
if (object && (0, _keys.default)(object).length) {
|
|
4049
4119
|
(0, _keys.default)(object).forEach(function (key) {
|
|
4050
|
-
|
|
4120
|
+
_this23[key] = object[key];
|
|
4051
4121
|
});
|
|
4052
4122
|
}
|
|
4053
4123
|
}
|
|
@@ -4644,7 +4714,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4644
4714
|
}, {
|
|
4645
4715
|
key: "setLogUploadTimer",
|
|
4646
4716
|
value: function setLogUploadTimer() {
|
|
4647
|
-
var
|
|
4717
|
+
var _this24 = this;
|
|
4648
4718
|
// 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
|
|
4649
4719
|
var LOG_UPLOAD_INTERVALS = [0.1, 15, 30, 60]; // in minutes
|
|
4650
4720
|
|
|
@@ -4655,15 +4725,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4655
4725
|
this.logUploadIntervalIndex += 1;
|
|
4656
4726
|
}
|
|
4657
4727
|
this.uploadLogsTimer = (0, _commonTimers.safeSetTimeout)(function () {
|
|
4658
|
-
|
|
4659
|
-
|
|
4728
|
+
_this24.uploadLogsTimer = undefined;
|
|
4729
|
+
_this24.uploadLogs();
|
|
4660
4730
|
|
|
4661
4731
|
// just as an extra precaution, to avoid uploading logs forever in case something goes wrong
|
|
4662
4732
|
// and the page remains opened, we stop it if there is no media connection
|
|
4663
|
-
if (!
|
|
4733
|
+
if (!_this24.mediaProperties.webrtcMediaConnection) {
|
|
4664
4734
|
return;
|
|
4665
4735
|
}
|
|
4666
|
-
|
|
4736
|
+
_this24.setLogUploadTimer();
|
|
4667
4737
|
}, delay);
|
|
4668
4738
|
}
|
|
4669
4739
|
|
|
@@ -4730,7 +4800,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4730
4800
|
}, {
|
|
4731
4801
|
key: "closeRemoteStreams",
|
|
4732
4802
|
value: function closeRemoteStreams() {
|
|
4733
|
-
var
|
|
4803
|
+
var _this25 = this;
|
|
4734
4804
|
var _this$mediaProperties6 = this.mediaProperties,
|
|
4735
4805
|
remoteAudioStream = _this$mediaProperties6.remoteAudioStream,
|
|
4736
4806
|
remoteVideoStream = _this$mediaProperties6.remoteVideoStream,
|
|
@@ -4744,7 +4814,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4744
4814
|
*/
|
|
4745
4815
|
// eslint-disable-next-line @typescript-eslint/no-shadow
|
|
4746
4816
|
var triggerMediaStoppedEvent = function triggerMediaStoppedEvent(mediaType) {
|
|
4747
|
-
_triggerProxy.default.trigger(
|
|
4817
|
+
_triggerProxy.default.trigger(_this25, {
|
|
4748
4818
|
file: 'meeting/index',
|
|
4749
4819
|
function: 'closeRemoteStreams'
|
|
4750
4820
|
}, _constants.EVENT_TRIGGERS.MEDIA_STOPPED, {
|
|
@@ -5052,7 +5122,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5052
5122
|
}, {
|
|
5053
5123
|
key: "setMercuryListener",
|
|
5054
5124
|
value: function setMercuryListener() {
|
|
5055
|
-
var
|
|
5125
|
+
var _this26 = this;
|
|
5056
5126
|
// Client will have a socket manager and handle reconnecting to mercury, when we reconnect to mercury
|
|
5057
5127
|
// if the meeting has active peer connections, it should try to reconnect.
|
|
5058
5128
|
// @ts-ignore
|
|
@@ -5060,33 +5130,33 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5060
5130
|
_loggerProxy.default.logger.info('Meeting:index#setMercuryListener --> Web socket online');
|
|
5061
5131
|
|
|
5062
5132
|
// Only send restore event when it was disconnected before and for connected later
|
|
5063
|
-
if (!
|
|
5133
|
+
if (!_this26.hasWebsocketConnected) {
|
|
5064
5134
|
// @ts-ignore
|
|
5065
|
-
|
|
5135
|
+
_this26.webex.internal.newMetrics.submitClientEvent({
|
|
5066
5136
|
name: 'client.mercury.connection.restored',
|
|
5067
5137
|
options: {
|
|
5068
|
-
meetingId:
|
|
5138
|
+
meetingId: _this26.id
|
|
5069
5139
|
}
|
|
5070
5140
|
});
|
|
5071
5141
|
_metrics.default.sendBehavioralMetric(_constants2.default.MERCURY_CONNECTION_RESTORED, {
|
|
5072
|
-
correlation_id:
|
|
5142
|
+
correlation_id: _this26.correlationId
|
|
5073
5143
|
});
|
|
5074
5144
|
}
|
|
5075
|
-
|
|
5145
|
+
_this26.hasWebsocketConnected = true;
|
|
5076
5146
|
});
|
|
5077
5147
|
|
|
5078
5148
|
// @ts-ignore
|
|
5079
5149
|
this.webex.internal.mercury.on(_constants.OFFLINE, function () {
|
|
5080
5150
|
_loggerProxy.default.logger.error('Meeting:index#setMercuryListener --> Web socket offline');
|
|
5081
5151
|
// @ts-ignore
|
|
5082
|
-
|
|
5152
|
+
_this26.webex.internal.newMetrics.submitClientEvent({
|
|
5083
5153
|
name: 'client.mercury.connection.lost',
|
|
5084
5154
|
options: {
|
|
5085
|
-
meetingId:
|
|
5155
|
+
meetingId: _this26.id
|
|
5086
5156
|
}
|
|
5087
5157
|
});
|
|
5088
5158
|
_metrics.default.sendBehavioralMetric(_constants2.default.MERCURY_CONNECTION_FAILURE, {
|
|
5089
|
-
correlation_id:
|
|
5159
|
+
correlation_id: _this26.correlationId
|
|
5090
5160
|
});
|
|
5091
5161
|
});
|
|
5092
5162
|
}
|
|
@@ -5193,7 +5263,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5193
5263
|
}, {
|
|
5194
5264
|
key: "muteAudio",
|
|
5195
5265
|
value: function muteAudio() {
|
|
5196
|
-
var
|
|
5266
|
+
var _this27 = this;
|
|
5197
5267
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
5198
5268
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
5199
5269
|
}
|
|
@@ -5209,22 +5279,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5209
5279
|
|
|
5210
5280
|
// First, stop sending the local audio media
|
|
5211
5281
|
return logRequest(this.audio.handleClientRequest(this, true).then(function () {
|
|
5212
|
-
_util2.default.handleAudioLogging(
|
|
5282
|
+
_util2.default.handleAudioLogging(_this27.mediaProperties.audioStream);
|
|
5213
5283
|
// @ts-ignore
|
|
5214
|
-
|
|
5284
|
+
_this27.webex.internal.newMetrics.submitClientEvent({
|
|
5215
5285
|
name: 'client.muted',
|
|
5216
5286
|
payload: {
|
|
5217
5287
|
trigger: 'user-interaction',
|
|
5218
5288
|
mediaType: 'audio'
|
|
5219
5289
|
},
|
|
5220
5290
|
options: {
|
|
5221
|
-
meetingId:
|
|
5291
|
+
meetingId: _this27.id
|
|
5222
5292
|
}
|
|
5223
5293
|
});
|
|
5224
5294
|
}).catch(function (error) {
|
|
5225
5295
|
_metrics.default.sendBehavioralMetric(_constants2.default.MUTE_AUDIO_FAILURE, {
|
|
5226
|
-
correlation_id:
|
|
5227
|
-
locus_id:
|
|
5296
|
+
correlation_id: _this27.correlationId,
|
|
5297
|
+
locus_id: _this27.locusUrl.split('/').pop(),
|
|
5228
5298
|
reason: error.message,
|
|
5229
5299
|
stack: error.stack
|
|
5230
5300
|
});
|
|
@@ -5243,7 +5313,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5243
5313
|
}, {
|
|
5244
5314
|
key: "unmuteAudio",
|
|
5245
5315
|
value: function unmuteAudio() {
|
|
5246
|
-
var
|
|
5316
|
+
var _this28 = this;
|
|
5247
5317
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
5248
5318
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
5249
5319
|
}
|
|
@@ -5259,22 +5329,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5259
5329
|
|
|
5260
5330
|
// First, send the control to unmute the participant on the server
|
|
5261
5331
|
return logRequest(this.audio.handleClientRequest(this, false).then(function () {
|
|
5262
|
-
_util2.default.handleAudioLogging(
|
|
5332
|
+
_util2.default.handleAudioLogging(_this28.mediaProperties.audioStream);
|
|
5263
5333
|
// @ts-ignore
|
|
5264
|
-
|
|
5334
|
+
_this28.webex.internal.newMetrics.submitClientEvent({
|
|
5265
5335
|
name: 'client.unmuted',
|
|
5266
5336
|
payload: {
|
|
5267
5337
|
trigger: 'user-interaction',
|
|
5268
5338
|
mediaType: 'audio'
|
|
5269
5339
|
},
|
|
5270
5340
|
options: {
|
|
5271
|
-
meetingId:
|
|
5341
|
+
meetingId: _this28.id
|
|
5272
5342
|
}
|
|
5273
5343
|
});
|
|
5274
5344
|
}).catch(function (error) {
|
|
5275
5345
|
_metrics.default.sendBehavioralMetric(_constants2.default.UNMUTE_AUDIO_FAILURE, {
|
|
5276
|
-
correlation_id:
|
|
5277
|
-
locus_id:
|
|
5346
|
+
correlation_id: _this28.correlationId,
|
|
5347
|
+
locus_id: _this28.locusUrl.split('/').pop(),
|
|
5278
5348
|
reason: error.message,
|
|
5279
5349
|
stack: error.stack
|
|
5280
5350
|
});
|
|
@@ -5293,7 +5363,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5293
5363
|
}, {
|
|
5294
5364
|
key: "muteVideo",
|
|
5295
5365
|
value: function muteVideo() {
|
|
5296
|
-
var
|
|
5366
|
+
var _this29 = this;
|
|
5297
5367
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
5298
5368
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
5299
5369
|
}
|
|
@@ -5307,22 +5377,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5307
5377
|
return _promise.default.reject(new _parameter.default('no video control associated to the meeting'));
|
|
5308
5378
|
}
|
|
5309
5379
|
return logRequest(this.video.handleClientRequest(this, true).then(function () {
|
|
5310
|
-
_util2.default.handleVideoLogging(
|
|
5380
|
+
_util2.default.handleVideoLogging(_this29.mediaProperties.videoStream);
|
|
5311
5381
|
// @ts-ignore
|
|
5312
|
-
|
|
5382
|
+
_this29.webex.internal.newMetrics.submitClientEvent({
|
|
5313
5383
|
name: 'client.muted',
|
|
5314
5384
|
payload: {
|
|
5315
5385
|
trigger: 'user-interaction',
|
|
5316
5386
|
mediaType: 'video'
|
|
5317
5387
|
},
|
|
5318
5388
|
options: {
|
|
5319
|
-
meetingId:
|
|
5389
|
+
meetingId: _this29.id
|
|
5320
5390
|
}
|
|
5321
5391
|
});
|
|
5322
5392
|
}).catch(function (error) {
|
|
5323
5393
|
_metrics.default.sendBehavioralMetric(_constants2.default.MUTE_VIDEO_FAILURE, {
|
|
5324
|
-
correlation_id:
|
|
5325
|
-
locus_id:
|
|
5394
|
+
correlation_id: _this29.correlationId,
|
|
5395
|
+
locus_id: _this29.locusUrl.split('/').pop(),
|
|
5326
5396
|
reason: error.message,
|
|
5327
5397
|
stack: error.stack
|
|
5328
5398
|
});
|
|
@@ -5341,7 +5411,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5341
5411
|
}, {
|
|
5342
5412
|
key: "unmuteVideo",
|
|
5343
5413
|
value: function unmuteVideo() {
|
|
5344
|
-
var
|
|
5414
|
+
var _this30 = this;
|
|
5345
5415
|
if (!_util2.default.isUserInJoinedState(this.locusInfo)) {
|
|
5346
5416
|
return _promise.default.reject(new _webexErrors.UserNotJoinedError());
|
|
5347
5417
|
}
|
|
@@ -5355,22 +5425,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5355
5425
|
return _promise.default.reject(new _parameter.default('no audio control associated to the meeting'));
|
|
5356
5426
|
}
|
|
5357
5427
|
return logRequest(this.video.handleClientRequest(this, false).then(function () {
|
|
5358
|
-
_util2.default.handleVideoLogging(
|
|
5428
|
+
_util2.default.handleVideoLogging(_this30.mediaProperties.videoStream);
|
|
5359
5429
|
// @ts-ignore
|
|
5360
|
-
|
|
5430
|
+
_this30.webex.internal.newMetrics.submitClientEvent({
|
|
5361
5431
|
name: 'client.unmuted',
|
|
5362
5432
|
payload: {
|
|
5363
5433
|
trigger: 'user-interaction',
|
|
5364
5434
|
mediaType: 'video'
|
|
5365
5435
|
},
|
|
5366
5436
|
options: {
|
|
5367
|
-
meetingId:
|
|
5437
|
+
meetingId: _this30.id
|
|
5368
5438
|
}
|
|
5369
5439
|
});
|
|
5370
5440
|
}).catch(function (error) {
|
|
5371
5441
|
_metrics.default.sendBehavioralMetric(_constants2.default.UNMUTE_VIDEO_FAILURE, {
|
|
5372
|
-
correlation_id:
|
|
5373
|
-
locus_id:
|
|
5442
|
+
correlation_id: _this30.correlationId,
|
|
5443
|
+
locus_id: _this30.locusUrl.split('/').pop(),
|
|
5374
5444
|
reason: error.message,
|
|
5375
5445
|
stack: error.stack
|
|
5376
5446
|
});
|
|
@@ -5400,7 +5470,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5400
5470
|
key: "joinWithMedia",
|
|
5401
5471
|
value: (function () {
|
|
5402
5472
|
var _joinWithMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
|
|
5403
|
-
var
|
|
5473
|
+
var _this31 = this;
|
|
5404
5474
|
var options,
|
|
5405
5475
|
mediaOptions,
|
|
5406
5476
|
_options$joinOptions,
|
|
@@ -5483,7 +5553,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5483
5553
|
case 35:
|
|
5484
5554
|
_context16.next = 37;
|
|
5485
5555
|
return this.addMediaInternal(function () {
|
|
5486
|
-
return
|
|
5556
|
+
return _this31.joinWithMediaRetryInfo.isRetry ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
|
|
5487
5557
|
}, turnServerInfo, forceTurnDiscovery, mediaOptions);
|
|
5488
5558
|
case 37:
|
|
5489
5559
|
mediaResponse = _context16.sent;
|
|
@@ -5578,7 +5648,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5578
5648
|
}, {
|
|
5579
5649
|
key: "reconnect",
|
|
5580
5650
|
value: function reconnect(options) {
|
|
5581
|
-
var
|
|
5651
|
+
var _this32 = this;
|
|
5582
5652
|
_loggerProxy.default.logger.log("Meeting:index#reconnect --> attempting to reconnect meeting ".concat(this.id));
|
|
5583
5653
|
if (!this.reconnectionManager || !this.reconnectionManager.reconnect) {
|
|
5584
5654
|
return _promise.default.reject(new _parameter.default('Cannot reconnect, ReconnectionManager must first be defined.'));
|
|
@@ -5594,10 +5664,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5594
5664
|
while (1) switch (_context17.prev = _context17.next) {
|
|
5595
5665
|
case 0:
|
|
5596
5666
|
_context17.next = 2;
|
|
5597
|
-
return
|
|
5667
|
+
return _this32.waitForRemoteSDPAnswer();
|
|
5598
5668
|
case 2:
|
|
5599
5669
|
_context17.next = 4;
|
|
5600
|
-
return
|
|
5670
|
+
return _this32.waitForMediaConnectionConnected();
|
|
5601
5671
|
case 4:
|
|
5602
5672
|
case "end":
|
|
5603
5673
|
return _context17.stop();
|
|
@@ -5611,7 +5681,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5611
5681
|
return _promise.default.resolve();
|
|
5612
5682
|
}
|
|
5613
5683
|
_loggerProxy.default.logger.error('Meeting:index#reconnect --> Meeting reconnect failed', error);
|
|
5614
|
-
|
|
5684
|
+
_this32.uploadLogs({
|
|
5615
5685
|
file: 'meeting/index',
|
|
5616
5686
|
function: 'reconnect'
|
|
5617
5687
|
});
|
|
@@ -5658,19 +5728,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5658
5728
|
}, {
|
|
5659
5729
|
key: "setCaptionLanguage",
|
|
5660
5730
|
value: function setCaptionLanguage(language) {
|
|
5661
|
-
var
|
|
5731
|
+
var _this33 = this;
|
|
5662
5732
|
return new _promise.default(function (resolve, reject) {
|
|
5663
|
-
if (!
|
|
5733
|
+
if (!_this33.isTranscriptionSupported()) {
|
|
5664
5734
|
_loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
|
|
5665
5735
|
reject(new Error('Webex Assistant is not enabled/supported'));
|
|
5666
5736
|
}
|
|
5667
5737
|
try {
|
|
5668
5738
|
var voiceaListenerCaptionUpdate = function voiceaListenerCaptionUpdate(payload) {
|
|
5669
5739
|
// @ts-ignore
|
|
5670
|
-
|
|
5740
|
+
_this33.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
|
|
5671
5741
|
var statusCode = payload.statusCode;
|
|
5672
5742
|
if (statusCode === 200) {
|
|
5673
|
-
|
|
5743
|
+
_this33.transcription.languageOptions = _objectSpread(_objectSpread({}, _this33.transcription.languageOptions), {}, {
|
|
5674
5744
|
currentCaptionLanguage: language
|
|
5675
5745
|
});
|
|
5676
5746
|
resolve(language);
|
|
@@ -5679,9 +5749,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5679
5749
|
}
|
|
5680
5750
|
};
|
|
5681
5751
|
// @ts-ignore
|
|
5682
|
-
|
|
5752
|
+
_this33.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
|
|
5683
5753
|
// @ts-ignore
|
|
5684
|
-
|
|
5754
|
+
_this33.webex.internal.voicea.requestLanguage(language);
|
|
5685
5755
|
} catch (error) {
|
|
5686
5756
|
_loggerProxy.default.logger.error("Meeting:index#setCaptionLanguage --> ".concat(error));
|
|
5687
5757
|
reject(error);
|
|
@@ -5697,23 +5767,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5697
5767
|
}, {
|
|
5698
5768
|
key: "setSpokenLanguage",
|
|
5699
5769
|
value: function setSpokenLanguage(language) {
|
|
5700
|
-
var
|
|
5770
|
+
var _this34 = this;
|
|
5701
5771
|
return new _promise.default(function (resolve, reject) {
|
|
5702
|
-
if (!
|
|
5772
|
+
if (!_this34.isTranscriptionSupported()) {
|
|
5703
5773
|
_loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
|
|
5704
5774
|
reject(new Error('Webex Assistant is not enabled/supported'));
|
|
5705
5775
|
}
|
|
5706
|
-
if (
|
|
5776
|
+
if (_this34.getCurUserType() !== 'host') {
|
|
5707
5777
|
_loggerProxy.default.logger.error('Meeting:index#setSpokenLanguage --> Only host can set spoken language');
|
|
5708
5778
|
reject(new Error('Only host can set spoken language'));
|
|
5709
5779
|
}
|
|
5710
5780
|
try {
|
|
5711
5781
|
var voiceaListenerLanguageUpdate = function voiceaListenerLanguageUpdate(payload) {
|
|
5712
5782
|
// @ts-ignore
|
|
5713
|
-
|
|
5783
|
+
_this34.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
|
|
5714
5784
|
var languageCode = payload.languageCode;
|
|
5715
5785
|
if (languageCode) {
|
|
5716
|
-
|
|
5786
|
+
_this34.transcription.languageOptions = _objectSpread(_objectSpread({}, _this34.transcription.languageOptions), {}, {
|
|
5717
5787
|
currentSpokenLanguage: languageCode
|
|
5718
5788
|
});
|
|
5719
5789
|
resolve(languageCode);
|
|
@@ -5723,10 +5793,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5723
5793
|
};
|
|
5724
5794
|
|
|
5725
5795
|
// @ts-ignore
|
|
5726
|
-
|
|
5796
|
+
_this34.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
|
|
5727
5797
|
|
|
5728
5798
|
// @ts-ignore
|
|
5729
|
-
|
|
5799
|
+
_this34.webex.internal.voicea.setSpokenLanguage(language);
|
|
5730
5800
|
} catch (error) {
|
|
5731
5801
|
_loggerProxy.default.logger.error("Meeting:index#setSpokenLanguage --> ".concat(error));
|
|
5732
5802
|
reject(error);
|
|
@@ -5849,7 +5919,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5849
5919
|
*/
|
|
5850
5920
|
function () {
|
|
5851
5921
|
var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
|
|
5852
|
-
var
|
|
5922
|
+
var _this35 = this;
|
|
5853
5923
|
var options,
|
|
5854
5924
|
errorMessage,
|
|
5855
5925
|
error,
|
|
@@ -5998,62 +6068,62 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5998
6068
|
return _context19.abrupt("return", _promise.default.reject(_context19.t0));
|
|
5999
6069
|
case 51:
|
|
6000
6070
|
return _context19.abrupt("return", _util2.default.joinMeetingOptions(this, options).then(function (join) {
|
|
6001
|
-
|
|
6002
|
-
|
|
6071
|
+
_this35.meetingFiniteStateMachine.join();
|
|
6072
|
+
_this35.setupLocusMediaRequest();
|
|
6003
6073
|
|
|
6004
6074
|
// @ts-ignore
|
|
6005
|
-
|
|
6006
|
-
(0, _classPrivateFieldSet2.default)(
|
|
6075
|
+
_this35.webex.internal.device.meetingStarted();
|
|
6076
|
+
(0, _classPrivateFieldSet2.default)(_this35, _isoLocalClientMeetingJoinTime, new Date().toISOString());
|
|
6007
6077
|
_loggerProxy.default.logger.log('Meeting:index#join --> Success');
|
|
6008
6078
|
_metrics.default.sendBehavioralMetric(_constants2.default.JOIN_SUCCESS, {
|
|
6009
|
-
correlation_id:
|
|
6079
|
+
correlation_id: _this35.correlationId
|
|
6010
6080
|
});
|
|
6011
6081
|
joinSuccess(join);
|
|
6012
|
-
|
|
6082
|
+
_this35.deferJoin = undefined;
|
|
6013
6083
|
return join;
|
|
6014
6084
|
}).catch(function (error) {
|
|
6015
|
-
var
|
|
6016
|
-
|
|
6085
|
+
var _this35$meetingInfo, _error$error;
|
|
6086
|
+
_this35.meetingFiniteStateMachine.fail(error);
|
|
6017
6087
|
_loggerProxy.default.logger.error('Meeting:index#join --> Failed', error);
|
|
6018
6088
|
|
|
6019
6089
|
// @ts-ignore
|
|
6020
|
-
|
|
6090
|
+
_this35.webex.internal.newMetrics.submitClientEvent({
|
|
6021
6091
|
name: 'client.locus.join.response',
|
|
6022
6092
|
payload: {
|
|
6023
6093
|
identifiers: {
|
|
6024
|
-
meetingLookupUrl: (
|
|
6094
|
+
meetingLookupUrl: (_this35$meetingInfo = _this35.meetingInfo) === null || _this35$meetingInfo === void 0 ? void 0 : _this35$meetingInfo.meetingLookupUrl
|
|
6025
6095
|
}
|
|
6026
6096
|
},
|
|
6027
6097
|
options: {
|
|
6028
|
-
meetingId:
|
|
6098
|
+
meetingId: _this35.id,
|
|
6029
6099
|
rawError: error
|
|
6030
6100
|
}
|
|
6031
6101
|
});
|
|
6032
6102
|
|
|
6033
6103
|
// TODO: change this to error codes and pre defined dictionary
|
|
6034
6104
|
_metrics.default.sendBehavioralMetric(_constants2.default.JOIN_FAILURE, {
|
|
6035
|
-
correlation_id:
|
|
6105
|
+
correlation_id: _this35.correlationId,
|
|
6036
6106
|
reason: (_error$error = error.error) === null || _error$error === void 0 ? void 0 : _error$error.message,
|
|
6037
6107
|
stack: error.stack
|
|
6038
6108
|
});
|
|
6039
6109
|
|
|
6040
6110
|
// Upload logs on join Failure
|
|
6041
|
-
_triggerProxy.default.trigger(
|
|
6111
|
+
_triggerProxy.default.trigger(_this35, {
|
|
6042
6112
|
file: 'meeting/index',
|
|
6043
6113
|
function: 'join'
|
|
6044
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
6114
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this35);
|
|
6045
6115
|
joinFailed(error);
|
|
6046
|
-
|
|
6116
|
+
_this35.deferJoin = undefined;
|
|
6047
6117
|
return _promise.default.reject(error);
|
|
6048
6118
|
}).then(function (join) {
|
|
6049
6119
|
// @ts-ignore - config coming from registerPlugin
|
|
6050
|
-
if (
|
|
6120
|
+
if (_this35.config.enableAutomaticLLM) {
|
|
6051
6121
|
// @ts-ignore
|
|
6052
|
-
|
|
6053
|
-
|
|
6122
|
+
_this35.webex.internal.llm.on('online', _this35.handleLLMOnline);
|
|
6123
|
+
_this35.updateLLMConnection().catch(function (error) {
|
|
6054
6124
|
_loggerProxy.default.logger.error('Meeting:index#join --> Transcription Socket Connection Failed', error);
|
|
6055
6125
|
_metrics.default.sendBehavioralMetric(_constants2.default.LLM_CONNECTION_AFTER_JOIN_FAILURE, {
|
|
6056
|
-
correlation_id:
|
|
6126
|
+
correlation_id: _this35.correlationId,
|
|
6057
6127
|
reason: error === null || error === void 0 ? void 0 : error.message,
|
|
6058
6128
|
stack: error.stack
|
|
6059
6129
|
});
|
|
@@ -6085,7 +6155,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6085
6155
|
key: "updateLLMConnection",
|
|
6086
6156
|
value: (function () {
|
|
6087
6157
|
var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
|
|
6088
|
-
var
|
|
6158
|
+
var _this36 = this;
|
|
6089
6159
|
var _this$locusInfo6, url, _this$locusInfo6$info, _this$locusInfo6$info2, datachannelUrl, practiceSessionDatachannelUrl, isJoined, dataChannelUrl;
|
|
6090
6160
|
return _regenerator.default.wrap(function _callee20$(_context20) {
|
|
6091
6161
|
while (1) switch (_context20.prev = _context20.next) {
|
|
@@ -6122,9 +6192,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6122
6192
|
case 11:
|
|
6123
6193
|
return _context20.abrupt("return", this.webex.internal.llm.registerAndConnect(url, dataChannelUrl).then(function (registerAndConnectResult) {
|
|
6124
6194
|
// @ts-ignore - Fix type
|
|
6125
|
-
|
|
6195
|
+
_this36.webex.internal.llm.off('event:relay.event', _this36.processRelayEvent);
|
|
6126
6196
|
// @ts-ignore - Fix type
|
|
6127
|
-
|
|
6197
|
+
_this36.webex.internal.llm.on('event:relay.event', _this36.processRelayEvent);
|
|
6128
6198
|
_loggerProxy.default.logger.info('Meeting:index#updateLLMConnection --> enabled to receive relay events!');
|
|
6129
6199
|
return _promise.default.resolve(registerAndConnectResult);
|
|
6130
6200
|
}));
|
|
@@ -6178,7 +6248,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6178
6248
|
}, {
|
|
6179
6249
|
key: "dialInPstn",
|
|
6180
6250
|
value: function dialInPstn() {
|
|
6181
|
-
var
|
|
6251
|
+
var _this37 = this;
|
|
6182
6252
|
if (this.isPhoneProvisioned(this.dialInDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial in devices from being provisioned
|
|
6183
6253
|
|
|
6184
6254
|
var correlationId = this.correlationId,
|
|
@@ -6194,10 +6264,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6194
6264
|
}).catch(function (error) {
|
|
6195
6265
|
var _error$error2;
|
|
6196
6266
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_IN_FAILURE, {
|
|
6197
|
-
correlation_id:
|
|
6198
|
-
dial_in_url:
|
|
6267
|
+
correlation_id: _this37.correlationId,
|
|
6268
|
+
dial_in_url: _this37.dialInUrl,
|
|
6199
6269
|
locus_id: locusUrl.split('/').pop(),
|
|
6200
|
-
client_url:
|
|
6270
|
+
client_url: _this37.deviceUrl,
|
|
6201
6271
|
reason: (_error$error2 = error.error) === null || _error$error2 === void 0 ? void 0 : _error$error2.message,
|
|
6202
6272
|
stack: error.stack
|
|
6203
6273
|
});
|
|
@@ -6215,7 +6285,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6215
6285
|
}, {
|
|
6216
6286
|
key: "dialOutPstn",
|
|
6217
6287
|
value: function dialOutPstn(phoneNumber) {
|
|
6218
|
-
var
|
|
6288
|
+
var _this38 = this;
|
|
6219
6289
|
if (this.isPhoneProvisioned(this.dialOutDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial out devices from being provisioned
|
|
6220
6290
|
|
|
6221
6291
|
var correlationId = this.correlationId,
|
|
@@ -6232,10 +6302,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6232
6302
|
}).catch(function (error) {
|
|
6233
6303
|
var _error$error3;
|
|
6234
6304
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_OUT_FAILURE, {
|
|
6235
|
-
correlation_id:
|
|
6236
|
-
dial_out_url:
|
|
6305
|
+
correlation_id: _this38.correlationId,
|
|
6306
|
+
dial_out_url: _this38.dialOutUrl,
|
|
6237
6307
|
locus_id: locusUrl.split('/').pop(),
|
|
6238
|
-
client_url:
|
|
6308
|
+
client_url: _this38.deviceUrl,
|
|
6239
6309
|
reason: (_error$error3 = error.error) === null || _error$error3 === void 0 ? void 0 : _error$error3.message,
|
|
6240
6310
|
stack: error.stack
|
|
6241
6311
|
});
|
|
@@ -6266,7 +6336,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6266
6336
|
}, {
|
|
6267
6337
|
key: "moveTo",
|
|
6268
6338
|
value: function moveTo(resourceId) {
|
|
6269
|
-
var
|
|
6339
|
+
var _this39 = this;
|
|
6270
6340
|
if (!resourceId) {
|
|
6271
6341
|
throw new _parameter.default('Cannot move call without a resourceId.');
|
|
6272
6342
|
}
|
|
@@ -6310,12 +6380,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6310
6380
|
while (1) switch (_context21.prev = _context21.next) {
|
|
6311
6381
|
case 0:
|
|
6312
6382
|
_context21.prev = 0;
|
|
6313
|
-
if (!(
|
|
6383
|
+
if (!(_this39.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
|
|
6314
6384
|
_context21.next = 4;
|
|
6315
6385
|
break;
|
|
6316
6386
|
}
|
|
6317
6387
|
_context21.next = 4;
|
|
6318
|
-
return
|
|
6388
|
+
return _this39.releaseScreenShareFloor();
|
|
6319
6389
|
case 4:
|
|
6320
6390
|
mediaSettings = {
|
|
6321
6391
|
mediaDirection: {
|
|
@@ -6327,37 +6397,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6327
6397
|
receiveShare: true
|
|
6328
6398
|
}
|
|
6329
6399
|
};
|
|
6330
|
-
|
|
6331
|
-
|
|
6400
|
+
_this39.mediaProperties.setMediaDirection(mediaSettings.mediaDirection);
|
|
6401
|
+
_this39.mediaProperties.unsetRemoteMedia();
|
|
6332
6402
|
|
|
6333
6403
|
// 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
|
|
6334
6404
|
// once the device answers we close the old connection and create new media server connection with only share enabled
|
|
6335
|
-
if (!
|
|
6405
|
+
if (!_this39.statsAnalyzer) {
|
|
6336
6406
|
_context21.next = 10;
|
|
6337
6407
|
break;
|
|
6338
6408
|
}
|
|
6339
6409
|
_context21.next = 10;
|
|
6340
|
-
return
|
|
6410
|
+
return _this39.statsAnalyzer.stopAnalyzer();
|
|
6341
6411
|
case 10:
|
|
6342
6412
|
_context21.next = 12;
|
|
6343
|
-
return
|
|
6413
|
+
return _this39.closeRemoteStreams();
|
|
6344
6414
|
case 12:
|
|
6345
6415
|
_context21.next = 14;
|
|
6346
|
-
return
|
|
6416
|
+
return _this39.closePeerConnections();
|
|
6347
6417
|
case 14:
|
|
6348
|
-
|
|
6349
|
-
|
|
6350
|
-
|
|
6351
|
-
|
|
6418
|
+
_this39.cleanupLocalStreams();
|
|
6419
|
+
_this39.unsetRemoteStreams();
|
|
6420
|
+
_this39.unsetPeerConnections();
|
|
6421
|
+
_this39.reconnectionManager.cleanUp();
|
|
6352
6422
|
_context21.next = 20;
|
|
6353
|
-
return
|
|
6423
|
+
return _this39.addMedia({
|
|
6354
6424
|
audioEnabled: false,
|
|
6355
6425
|
videoEnabled: false,
|
|
6356
6426
|
shareVideoEnabled: true
|
|
6357
6427
|
});
|
|
6358
6428
|
case 20:
|
|
6359
6429
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
|
|
6360
|
-
|
|
6430
|
+
_this39.isMoveToInProgress = false;
|
|
6361
6431
|
_context21.next = 29;
|
|
6362
6432
|
break;
|
|
6363
6433
|
case 24:
|
|
@@ -6365,12 +6435,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6365
6435
|
_context21.t0 = _context21["catch"](0);
|
|
6366
6436
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context21.t0);
|
|
6367
6437
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
6368
|
-
correlation_id:
|
|
6369
|
-
locus_id:
|
|
6438
|
+
correlation_id: _this39.correlationId,
|
|
6439
|
+
locus_id: _this39.locusUrl.split('/').pop(),
|
|
6370
6440
|
reason: _context21.t0.message,
|
|
6371
6441
|
stack: _context21.t0.stack
|
|
6372
6442
|
});
|
|
6373
|
-
|
|
6443
|
+
_this39.isMoveToInProgress = false;
|
|
6374
6444
|
case 29:
|
|
6375
6445
|
case "end":
|
|
6376
6446
|
return _context21.stop();
|
|
@@ -6386,17 +6456,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6386
6456
|
resourceId: resourceId,
|
|
6387
6457
|
moveToResource: true
|
|
6388
6458
|
}).then(function () {
|
|
6389
|
-
|
|
6459
|
+
_this39.meetingFiniteStateMachine.join();
|
|
6390
6460
|
}).catch(function (error) {
|
|
6391
|
-
|
|
6461
|
+
_this39.meetingFiniteStateMachine.fail(error);
|
|
6392
6462
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
6393
|
-
correlation_id:
|
|
6394
|
-
locus_id:
|
|
6463
|
+
correlation_id: _this39.correlationId,
|
|
6464
|
+
locus_id: _this39.locusUrl.split('/').pop(),
|
|
6395
6465
|
reason: error.message,
|
|
6396
6466
|
stack: error.stack
|
|
6397
6467
|
});
|
|
6398
6468
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', error);
|
|
6399
|
-
|
|
6469
|
+
_this39.isMoveToInProgress = false;
|
|
6400
6470
|
return _promise.default.reject(error);
|
|
6401
6471
|
});
|
|
6402
6472
|
}
|
|
@@ -6411,7 +6481,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6411
6481
|
}, {
|
|
6412
6482
|
key: "moveFrom",
|
|
6413
6483
|
value: function moveFrom(resourceId) {
|
|
6414
|
-
var
|
|
6484
|
+
var _this40 = this;
|
|
6415
6485
|
// On moveFrom ask the developer to re capture it moveFrom then updateMedia
|
|
6416
6486
|
if (!resourceId) {
|
|
6417
6487
|
throw new _parameter.default('Cannot move call without a resourceId.');
|
|
@@ -6426,19 +6496,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6426
6496
|
}
|
|
6427
6497
|
});
|
|
6428
6498
|
return _util2.default.joinMeetingOptions(this).then(function () {
|
|
6429
|
-
return _util2.default.leaveMeeting(
|
|
6499
|
+
return _util2.default.leaveMeeting(_this40, {
|
|
6430
6500
|
resourceId: resourceId,
|
|
6431
6501
|
correlationId: oldCorrelationId,
|
|
6432
6502
|
moveMeeting: true
|
|
6433
6503
|
}).then(function () {
|
|
6434
|
-
|
|
6504
|
+
_this40.resourceId = '';
|
|
6435
6505
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_SUCCESS);
|
|
6436
6506
|
});
|
|
6437
6507
|
}).catch(function (error) {
|
|
6438
|
-
|
|
6508
|
+
_this40.meetingFiniteStateMachine.fail(error);
|
|
6439
6509
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_FAILURE, {
|
|
6440
|
-
correlation_id:
|
|
6441
|
-
locus_id:
|
|
6510
|
+
correlation_id: _this40.correlationId,
|
|
6511
|
+
locus_id: _this40.locusUrl.split('/').pop(),
|
|
6442
6512
|
reason: error.message,
|
|
6443
6513
|
stack: error.stack
|
|
6444
6514
|
});
|
|
@@ -6554,9 +6624,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6554
6624
|
}, {
|
|
6555
6625
|
key: "forwardEvent",
|
|
6556
6626
|
value: function forwardEvent(eventEmitter, eventTypeToForward, meetingEventType) {
|
|
6557
|
-
var
|
|
6627
|
+
var _this41 = this;
|
|
6558
6628
|
eventEmitter.on(eventTypeToForward, function (data) {
|
|
6559
|
-
return _triggerProxy.default.trigger(
|
|
6629
|
+
return _triggerProxy.default.trigger(_this41, {
|
|
6560
6630
|
file: 'meetings',
|
|
6561
6631
|
function: 'addMedia'
|
|
6562
6632
|
}, meetingEventType, data);
|
|
@@ -6733,7 +6803,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6733
6803
|
key: "waitForRemoteSDPAnswer",
|
|
6734
6804
|
value: (function () {
|
|
6735
6805
|
var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25() {
|
|
6736
|
-
var
|
|
6806
|
+
var _this42 = this;
|
|
6737
6807
|
var LOG_HEADER, deferSDPAnswer;
|
|
6738
6808
|
return _regenerator.default.wrap(function _callee25$(_context25) {
|
|
6739
6809
|
while (1) switch (_context25.prev = _context25.next) {
|
|
@@ -6750,18 +6820,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6750
6820
|
this.sdpResponseTimer = setTimeout(function () {
|
|
6751
6821
|
_loggerProxy.default.logger.warn("".concat(LOG_HEADER, " timeout! no REMOTE SDP ANSWER received within ").concat(_constants.ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT / 1000, " seconds"));
|
|
6752
6822
|
// @ts-ignore
|
|
6753
|
-
|
|
6823
|
+
_this42.webex.internal.newMetrics.submitClientEvent({
|
|
6754
6824
|
name: 'client.media-engine.remote-sdp-received',
|
|
6755
6825
|
payload: {
|
|
6756
6826
|
canProceed: false,
|
|
6757
6827
|
errors: [
|
|
6758
6828
|
// @ts-ignore
|
|
6759
|
-
|
|
6829
|
+
_this42.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
|
|
6760
6830
|
clientErrorCode: _internalPluginMetrics.CALL_DIAGNOSTIC_CONFIG.MISSING_ROAP_ANSWER_CLIENT_CODE
|
|
6761
6831
|
})]
|
|
6762
6832
|
},
|
|
6763
6833
|
options: {
|
|
6764
|
-
meetingId:
|
|
6834
|
+
meetingId: _this42.id,
|
|
6765
6835
|
rawError: new Error('Timeout waiting for SDP answer')
|
|
6766
6836
|
}
|
|
6767
6837
|
});
|
|
@@ -7268,10 +7338,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7268
7338
|
}, {
|
|
7269
7339
|
key: "addMedia",
|
|
7270
7340
|
value: function addMedia() {
|
|
7271
|
-
var
|
|
7341
|
+
var _this43 = this;
|
|
7272
7342
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7273
7343
|
return this.addMediaInternal(function () {
|
|
7274
|
-
return
|
|
7344
|
+
return _this43.turnServerUsed ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
|
|
7275
7345
|
}, undefined, false, options);
|
|
7276
7346
|
}
|
|
7277
7347
|
|
|
@@ -7440,23 +7510,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7440
7510
|
case 39:
|
|
7441
7511
|
throw _context35.t0;
|
|
7442
7512
|
case 40:
|
|
7513
|
+
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " media connected, finalizing..."));
|
|
7443
7514
|
if (!this.mediaProperties.hasLocalShareStream()) {
|
|
7444
|
-
_context35.next =
|
|
7515
|
+
_context35.next = 44;
|
|
7445
7516
|
break;
|
|
7446
7517
|
}
|
|
7447
|
-
_context35.next =
|
|
7518
|
+
_context35.next = 44;
|
|
7448
7519
|
return this.enqueueScreenShareFloorRequest();
|
|
7449
|
-
case
|
|
7450
|
-
_context35.next =
|
|
7520
|
+
case 44:
|
|
7521
|
+
_context35.next = 46;
|
|
7451
7522
|
return this.mediaProperties.getCurrentConnectionInfo();
|
|
7452
|
-
case
|
|
7523
|
+
case 46:
|
|
7453
7524
|
_yield$this$mediaProp = _context35.sent;
|
|
7454
7525
|
connectionType = _yield$this$mediaProp.connectionType;
|
|
7455
7526
|
selectedCandidatePairChanges = _yield$this$mediaProp.selectedCandidatePairChanges;
|
|
7456
7527
|
numTransports = _yield$this$mediaProp.numTransports;
|
|
7457
|
-
_context35.next =
|
|
7528
|
+
_context35.next = 52;
|
|
7458
7529
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
7459
|
-
case
|
|
7530
|
+
case 52:
|
|
7460
7531
|
reachabilityStats = _context35.sent;
|
|
7461
7532
|
iceCandidateErrors = Object.fromEntries(this.iceCandidateErrors);
|
|
7462
7533
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_SUCCESS, _objectSpread(_objectSpread(_objectSpread({
|
|
@@ -7483,21 +7554,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7483
7554
|
// We can log ReceiveSlot SSRCs only after the SDP exchange, so doing it here:
|
|
7484
7555
|
(_this$remoteMediaMana = this.remoteMediaManager) === null || _this$remoteMediaMana === void 0 ? void 0 : _this$remoteMediaMana.logAllReceiveSlots();
|
|
7485
7556
|
this.startPeriodicLogUpload();
|
|
7486
|
-
_context35.next =
|
|
7557
|
+
_context35.next = 79;
|
|
7487
7558
|
break;
|
|
7488
|
-
case
|
|
7489
|
-
_context35.prev =
|
|
7559
|
+
case 61:
|
|
7560
|
+
_context35.prev = 61;
|
|
7490
7561
|
_context35.t1 = _context35["catch"](19);
|
|
7491
7562
|
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _context35.t1);
|
|
7492
7563
|
|
|
7493
7564
|
// @ts-ignore
|
|
7494
|
-
_context35.next =
|
|
7565
|
+
_context35.next = 66;
|
|
7495
7566
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
7496
|
-
case
|
|
7567
|
+
case 66:
|
|
7497
7568
|
reachabilityMetrics = _context35.sent;
|
|
7498
|
-
_context35.next =
|
|
7569
|
+
_context35.next = 69;
|
|
7499
7570
|
return this.mediaProperties.getCurrentConnectionInfo();
|
|
7500
|
-
case
|
|
7571
|
+
case 69:
|
|
7501
7572
|
_yield$this$mediaProp2 = _context35.sent;
|
|
7502
7573
|
_selectedCandidatePairChanges = _yield$this$mediaProp2.selectedCandidatePairChanges;
|
|
7503
7574
|
_numTransports = _yield$this$mediaProp2.numTransports;
|
|
@@ -7521,9 +7592,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7521
7592
|
}, reachabilityMetrics), _iceCandidateErrors), {}, {
|
|
7522
7593
|
iceCandidatesCount: this.iceCandidatesCount
|
|
7523
7594
|
}));
|
|
7524
|
-
_context35.next =
|
|
7595
|
+
_context35.next = 76;
|
|
7525
7596
|
return this.cleanUpOnAddMediaFailure();
|
|
7526
|
-
case
|
|
7597
|
+
case 76:
|
|
7527
7598
|
// Upload logs on error while adding media
|
|
7528
7599
|
_triggerProxy.default.trigger(this, {
|
|
7529
7600
|
file: 'meeting/index',
|
|
@@ -7535,15 +7606,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7535
7606
|
});
|
|
7536
7607
|
}
|
|
7537
7608
|
throw _context35.t1;
|
|
7538
|
-
case
|
|
7539
|
-
_context35.prev =
|
|
7609
|
+
case 79:
|
|
7610
|
+
_context35.prev = 79;
|
|
7540
7611
|
this.addMediaData.icePhaseCallback = DEFAULT_ICE_PHASE_CALLBACK;
|
|
7541
|
-
return _context35.finish(
|
|
7542
|
-
case
|
|
7612
|
+
return _context35.finish(79);
|
|
7613
|
+
case 82:
|
|
7543
7614
|
case "end":
|
|
7544
7615
|
return _context35.stop();
|
|
7545
7616
|
}
|
|
7546
|
-
}, _callee35, this, [[19,
|
|
7617
|
+
}, _callee35, this, [[19, 61, 79, 82], [24, 29]]);
|
|
7547
7618
|
}));
|
|
7548
7619
|
function addMediaInternal(_x33, _x34, _x35) {
|
|
7549
7620
|
return _addMediaInternal.apply(this, arguments);
|
|
@@ -7575,7 +7646,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7575
7646
|
* @memberof Meeting
|
|
7576
7647
|
*/
|
|
7577
7648
|
function enqueueMediaUpdate(mediaUpdateType) {
|
|
7578
|
-
var
|
|
7649
|
+
var _this44 = this;
|
|
7579
7650
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
7580
7651
|
var canUpdateMediaNow = this.canUpdateMedia();
|
|
7581
7652
|
return new _promise.default(function (resolve, reject) {
|
|
@@ -7586,9 +7657,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7586
7657
|
options: options
|
|
7587
7658
|
};
|
|
7588
7659
|
_loggerProxy.default.logger.log("Meeting:index#enqueueMediaUpdate --> enqueuing media update type=".concat(mediaUpdateType));
|
|
7589
|
-
|
|
7660
|
+
_this44.queuedMediaUpdates.push(queueItem);
|
|
7590
7661
|
if (canUpdateMediaNow) {
|
|
7591
|
-
|
|
7662
|
+
_this44.processNextQueuedMediaUpdate();
|
|
7592
7663
|
}
|
|
7593
7664
|
});
|
|
7594
7665
|
}
|
|
@@ -7693,7 +7764,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7693
7764
|
}, {
|
|
7694
7765
|
key: "acknowledge",
|
|
7695
7766
|
value: function acknowledge(type) {
|
|
7696
|
-
var
|
|
7767
|
+
var _this45 = this;
|
|
7697
7768
|
if (!type) {
|
|
7698
7769
|
return _promise.default.reject(new _parameter.default('Type must be set to acknowledge the meeting.'));
|
|
7699
7770
|
}
|
|
@@ -7705,12 +7776,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7705
7776
|
}).then(function (response) {
|
|
7706
7777
|
return _promise.default.resolve(response);
|
|
7707
7778
|
}).then(function (response) {
|
|
7708
|
-
|
|
7779
|
+
_this45.meetingFiniteStateMachine.ring(type);
|
|
7709
7780
|
// @ts-ignore
|
|
7710
|
-
|
|
7781
|
+
_this45.webex.internal.newMetrics.submitClientEvent({
|
|
7711
7782
|
name: 'client.alert.displayed',
|
|
7712
7783
|
options: {
|
|
7713
|
-
meetingId:
|
|
7784
|
+
meetingId: _this45.id
|
|
7714
7785
|
}
|
|
7715
7786
|
});
|
|
7716
7787
|
return _promise.default.resolve({
|
|
@@ -7735,12 +7806,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7735
7806
|
}, {
|
|
7736
7807
|
key: "decline",
|
|
7737
7808
|
value: function decline(reason) {
|
|
7738
|
-
var
|
|
7809
|
+
var _this46 = this;
|
|
7739
7810
|
return _util2.default.declineMeeting(this, reason).then(function (decline) {
|
|
7740
|
-
|
|
7811
|
+
_this46.meetingFiniteStateMachine.decline();
|
|
7741
7812
|
return _promise.default.resolve(decline);
|
|
7742
7813
|
}).catch(function (error) {
|
|
7743
|
-
|
|
7814
|
+
_this46.meetingFiniteStateMachine.fail(error);
|
|
7744
7815
|
return _promise.default.reject(error);
|
|
7745
7816
|
});
|
|
7746
7817
|
}
|
|
@@ -7791,7 +7862,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7791
7862
|
}, {
|
|
7792
7863
|
key: "leave",
|
|
7793
7864
|
value: function leave() {
|
|
7794
|
-
var
|
|
7865
|
+
var _this47 = this;
|
|
7795
7866
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7796
7867
|
var leaveReason = options.reason || _constants.MEETING_REMOVED_REASON.CLIENT_LEAVE_REQUEST;
|
|
7797
7868
|
|
|
@@ -7803,7 +7874,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7803
7874
|
var payload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7804
7875
|
return (
|
|
7805
7876
|
// @ts-ignore
|
|
7806
|
-
|
|
7877
|
+
_this47.webex.internal.newMetrics.submitClientEvent({
|
|
7807
7878
|
name: 'client.call.leave',
|
|
7808
7879
|
payload: _objectSpread({
|
|
7809
7880
|
trigger: 'user-interaction',
|
|
@@ -7811,7 +7882,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7811
7882
|
leaveReason: options.clientEventLeaveReason
|
|
7812
7883
|
}, payload),
|
|
7813
7884
|
options: {
|
|
7814
|
-
meetingId:
|
|
7885
|
+
meetingId: _this47.id
|
|
7815
7886
|
}
|
|
7816
7887
|
})
|
|
7817
7888
|
);
|
|
@@ -7820,24 +7891,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7820
7891
|
return _util2.default.leaveMeeting(this, options).then(function (leave) {
|
|
7821
7892
|
// CA team recommends submitting this *after* locus /leave
|
|
7822
7893
|
submitLeaveMetric();
|
|
7823
|
-
|
|
7824
|
-
|
|
7894
|
+
_this47.meetingFiniteStateMachine.leave();
|
|
7895
|
+
_this47.clearMeetingData();
|
|
7825
7896
|
|
|
7826
7897
|
// upload logs on leave irrespective of meeting delete
|
|
7827
|
-
_triggerProxy.default.trigger(
|
|
7898
|
+
_triggerProxy.default.trigger(_this47, {
|
|
7828
7899
|
file: 'meeting/index',
|
|
7829
7900
|
function: 'leave'
|
|
7830
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7901
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this47);
|
|
7831
7902
|
|
|
7832
7903
|
// TODO: more testing before we remove this code, we are not sure the scenarios for destroy here
|
|
7833
|
-
if (
|
|
7904
|
+
if (_this47.wirelessShare || _this47.guest) {
|
|
7834
7905
|
// If screen sharing clean the meeting object
|
|
7835
|
-
_triggerProxy.default.trigger(
|
|
7906
|
+
_triggerProxy.default.trigger(_this47, {
|
|
7836
7907
|
file: 'meeting/index',
|
|
7837
7908
|
function: 'leave'
|
|
7838
7909
|
}, _constants.EVENTS.DESTROY_MEETING, {
|
|
7839
7910
|
reason: options.reason,
|
|
7840
|
-
meetingId:
|
|
7911
|
+
meetingId: _this47.id
|
|
7841
7912
|
});
|
|
7842
7913
|
}
|
|
7843
7914
|
_loggerProxy.default.logger.log('Meeting:index#leave --> LEAVE REASON ', leaveReason);
|
|
@@ -7854,16 +7925,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7854
7925
|
shownToUser: false
|
|
7855
7926
|
}]
|
|
7856
7927
|
});
|
|
7857
|
-
|
|
7928
|
+
_this47.meetingFiniteStateMachine.fail(error);
|
|
7858
7929
|
_loggerProxy.default.logger.error('Meeting:index#leave --> Failed to leave ', error);
|
|
7859
7930
|
// upload logs on leave irrespective of meeting delete
|
|
7860
|
-
_triggerProxy.default.trigger(
|
|
7931
|
+
_triggerProxy.default.trigger(_this47, {
|
|
7861
7932
|
file: 'meeting/index',
|
|
7862
7933
|
function: 'leave'
|
|
7863
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7934
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this47);
|
|
7864
7935
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_LEAVE_FAILURE, {
|
|
7865
|
-
correlation_id:
|
|
7866
|
-
locus_id:
|
|
7936
|
+
correlation_id: _this47.correlationId,
|
|
7937
|
+
locus_id: _this47.locusUrl.split('/').pop(),
|
|
7867
7938
|
reason: error.message,
|
|
7868
7939
|
stack: error.stack,
|
|
7869
7940
|
code: error.code
|
|
@@ -7883,7 +7954,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7883
7954
|
}, {
|
|
7884
7955
|
key: "startWhiteboardShare",
|
|
7885
7956
|
value: function startWhiteboardShare(channelUrl, resourceToken) {
|
|
7886
|
-
var
|
|
7957
|
+
var _this48 = this;
|
|
7887
7958
|
var whiteboard = this.locusInfo.mediaShares.find(function (element) {
|
|
7888
7959
|
return element.name === 'whiteboard';
|
|
7889
7960
|
});
|
|
@@ -7912,13 +7983,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7912
7983
|
body.resourceToken = resourceToken;
|
|
7913
7984
|
}
|
|
7914
7985
|
return this.meetingRequest.changeMeetingFloor(body).then(function () {
|
|
7915
|
-
|
|
7986
|
+
_this48.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
7916
7987
|
return _promise.default.resolve();
|
|
7917
7988
|
}).catch(function (error) {
|
|
7918
7989
|
_loggerProxy.default.logger.error('Meeting:index#startWhiteboardShare --> Error ', error);
|
|
7919
7990
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_START_WHITEBOARD_SHARE_FAILURE, {
|
|
7920
|
-
correlation_id:
|
|
7921
|
-
locus_id:
|
|
7991
|
+
correlation_id: _this48.correlationId,
|
|
7992
|
+
locus_id: _this48.locusUrl.split('/').pop(),
|
|
7922
7993
|
reason: error.message,
|
|
7923
7994
|
stack: error.stack,
|
|
7924
7995
|
board: {
|
|
@@ -7941,7 +8012,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7941
8012
|
}, {
|
|
7942
8013
|
key: "stopWhiteboardShare",
|
|
7943
8014
|
value: function stopWhiteboardShare(channelUrl) {
|
|
7944
|
-
var
|
|
8015
|
+
var _this49 = this;
|
|
7945
8016
|
var whiteboard = this.locusInfo.mediaShares.find(function (element) {
|
|
7946
8017
|
return element.name === 'whiteboard';
|
|
7947
8018
|
});
|
|
@@ -7964,8 +8035,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7964
8035
|
}).catch(function (error) {
|
|
7965
8036
|
_loggerProxy.default.logger.error('Meeting:index#stopWhiteboardShare --> Error ', error);
|
|
7966
8037
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_STOP_WHITEBOARD_SHARE_FAILURE, {
|
|
7967
|
-
correlation_id:
|
|
7968
|
-
locus_id:
|
|
8038
|
+
correlation_id: _this49.correlationId,
|
|
8039
|
+
locus_id: _this49.locusUrl.split('/').pop(),
|
|
7969
8040
|
reason: error.message,
|
|
7970
8041
|
stack: error.stack,
|
|
7971
8042
|
board: {
|
|
@@ -7987,7 +8058,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7987
8058
|
}, {
|
|
7988
8059
|
key: "requestScreenShareFloor",
|
|
7989
8060
|
value: function requestScreenShareFloor() {
|
|
7990
|
-
var
|
|
8061
|
+
var _this50 = this;
|
|
7991
8062
|
if (!this.mediaProperties.hasLocalShareStream() || !this.mediaProperties.mediaDirection.sendShare) {
|
|
7992
8063
|
_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, ")"));
|
|
7993
8064
|
this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
@@ -8018,34 +8089,34 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8018
8089
|
resourceUrl: this.resourceUrl,
|
|
8019
8090
|
shareInstanceId: this.localShareInstanceId
|
|
8020
8091
|
}).then(function () {
|
|
8021
|
-
|
|
8092
|
+
_this50.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
|
|
8022
8093
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_SUCCESS, {
|
|
8023
|
-
correlation_id:
|
|
8024
|
-
locus_id:
|
|
8094
|
+
correlation_id: _this50.correlationId,
|
|
8095
|
+
locus_id: _this50.locusUrl.split('/').pop()
|
|
8025
8096
|
});
|
|
8026
8097
|
return _promise.default.resolve();
|
|
8027
8098
|
}).catch(function (error) {
|
|
8028
8099
|
_loggerProxy.default.logger.error('Meeting:index#share --> Error ', error);
|
|
8029
8100
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_FAILURE, {
|
|
8030
|
-
correlation_id:
|
|
8031
|
-
locus_id:
|
|
8101
|
+
correlation_id: _this50.correlationId,
|
|
8102
|
+
locus_id: _this50.locusUrl.split('/').pop(),
|
|
8032
8103
|
reason: error.message,
|
|
8033
8104
|
stack: error.stack
|
|
8034
8105
|
});
|
|
8035
8106
|
|
|
8036
8107
|
// @ts-ignore
|
|
8037
|
-
|
|
8108
|
+
_this50.webex.internal.newMetrics.submitClientEvent({
|
|
8038
8109
|
name: 'client.share.floor-granted.local',
|
|
8039
8110
|
payload: {
|
|
8040
8111
|
mediaType: 'share',
|
|
8041
8112
|
errors: _util2.default.getChangeMeetingFloorErrorPayload(error.message),
|
|
8042
|
-
shareInstanceId:
|
|
8113
|
+
shareInstanceId: _this50.localShareInstanceId
|
|
8043
8114
|
},
|
|
8044
8115
|
options: {
|
|
8045
|
-
meetingId:
|
|
8116
|
+
meetingId: _this50.id
|
|
8046
8117
|
}
|
|
8047
8118
|
});
|
|
8048
|
-
|
|
8119
|
+
_this50.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
8049
8120
|
return _promise.default.reject(error);
|
|
8050
8121
|
});
|
|
8051
8122
|
}
|
|
@@ -8068,10 +8139,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8068
8139
|
}, {
|
|
8069
8140
|
key: "requestScreenShareFloorIfPending",
|
|
8070
8141
|
value: function requestScreenShareFloorIfPending() {
|
|
8071
|
-
var
|
|
8142
|
+
var _this51 = this;
|
|
8072
8143
|
if (this.floorGrantPending && this.state === _constants.MEETING_STATE.STATES.JOINED) {
|
|
8073
8144
|
this.requestScreenShareFloor().then(function () {
|
|
8074
|
-
|
|
8145
|
+
_this51.floorGrantPending = false;
|
|
8075
8146
|
});
|
|
8076
8147
|
}
|
|
8077
8148
|
}
|
|
@@ -8085,7 +8156,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8085
8156
|
}, {
|
|
8086
8157
|
key: "releaseScreenShareFloor",
|
|
8087
8158
|
value: function releaseScreenShareFloor() {
|
|
8088
|
-
var
|
|
8159
|
+
var _this52 = this;
|
|
8089
8160
|
var content = this.locusInfo.mediaShares.find(function (element) {
|
|
8090
8161
|
return element.name === _constants.CONTENT;
|
|
8091
8162
|
});
|
|
@@ -8120,8 +8191,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8120
8191
|
}).catch(function (error) {
|
|
8121
8192
|
_loggerProxy.default.logger.error('Meeting:index#releaseScreenShareFloor --> Error ', error);
|
|
8122
8193
|
_metrics.default.sendBehavioralMetric(_constants2.default.STOP_FLOOR_REQUEST_FAILURE, {
|
|
8123
|
-
correlation_id:
|
|
8124
|
-
locus_id:
|
|
8194
|
+
correlation_id: _this52.correlationId,
|
|
8195
|
+
locus_id: _this52.locusUrl.split('/').pop(),
|
|
8125
8196
|
reason: error.message,
|
|
8126
8197
|
stack: error.stack
|
|
8127
8198
|
});
|
|
@@ -8301,7 +8372,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8301
8372
|
}, {
|
|
8302
8373
|
key: "changeVideoLayout",
|
|
8303
8374
|
value: function changeVideoLayout(layoutType) {
|
|
8304
|
-
var
|
|
8375
|
+
var _this53 = this;
|
|
8305
8376
|
var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
8306
8377
|
var main = renderInfo.main,
|
|
8307
8378
|
content = renderInfo.content;
|
|
@@ -8355,7 +8426,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8355
8426
|
}
|
|
8356
8427
|
this.lastVideoLayoutInfo = (0, _lodash.cloneDeep)(layoutInfo);
|
|
8357
8428
|
this.locusInfo.once(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_LAYOUT_UPDATED, function (envelope) {
|
|
8358
|
-
_triggerProxy.default.trigger(
|
|
8429
|
+
_triggerProxy.default.trigger(_this53, {
|
|
8359
8430
|
file: 'meeting/index',
|
|
8360
8431
|
function: 'changeVideoLayout'
|
|
8361
8432
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_LAYOUT_UPDATE, {
|
|
@@ -8471,7 +8542,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8471
8542
|
}, {
|
|
8472
8543
|
key: "endMeetingForAll",
|
|
8473
8544
|
value: function endMeetingForAll() {
|
|
8474
|
-
var
|
|
8545
|
+
var _this54 = this;
|
|
8475
8546
|
// @ts-ignore
|
|
8476
8547
|
this.webex.internal.newMetrics.submitClientEvent({
|
|
8477
8548
|
name: 'client.call.leave',
|
|
@@ -8489,25 +8560,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8489
8560
|
locus_id: this.locusId
|
|
8490
8561
|
});
|
|
8491
8562
|
return _util2.default.endMeetingForAll(this).then(function (end) {
|
|
8492
|
-
|
|
8493
|
-
|
|
8563
|
+
_this54.meetingFiniteStateMachine.end();
|
|
8564
|
+
_this54.clearMeetingData();
|
|
8494
8565
|
// upload logs on leave irrespective of meeting delete
|
|
8495
|
-
_triggerProxy.default.trigger(
|
|
8566
|
+
_triggerProxy.default.trigger(_this54, {
|
|
8496
8567
|
file: 'meeting/index',
|
|
8497
8568
|
function: 'endMeetingForAll'
|
|
8498
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
8569
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this54);
|
|
8499
8570
|
return end;
|
|
8500
8571
|
}).catch(function (error) {
|
|
8501
|
-
|
|
8572
|
+
_this54.meetingFiniteStateMachine.fail(error);
|
|
8502
8573
|
_loggerProxy.default.logger.error('Meeting:index#endMeetingForAll --> Failed to end meeting ', error);
|
|
8503
8574
|
// upload logs on leave irrespective of meeting delete
|
|
8504
|
-
_triggerProxy.default.trigger(
|
|
8575
|
+
_triggerProxy.default.trigger(_this54, {
|
|
8505
8576
|
file: 'meeting/index',
|
|
8506
8577
|
function: 'endMeetingForAll'
|
|
8507
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
8578
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this54);
|
|
8508
8579
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_END_ALL_FAILURE, {
|
|
8509
|
-
correlation_id:
|
|
8510
|
-
locus_id:
|
|
8580
|
+
correlation_id: _this54.correlationId,
|
|
8581
|
+
locus_id: _this54.locusUrl.split('/').pop(),
|
|
8511
8582
|
reason: error.message,
|
|
8512
8583
|
stack: error.stack,
|
|
8513
8584
|
code: error.code
|
|
@@ -8649,7 +8720,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8649
8720
|
_this$mediaProperties43,
|
|
8650
8721
|
_this$mediaProperties44,
|
|
8651
8722
|
_this$mediaProperties45,
|
|
8652
|
-
|
|
8723
|
+
_this55 = this;
|
|
8653
8724
|
var LOG_HEADER = 'Meeting:index#updateTranscodedMediaConnection -->';
|
|
8654
8725
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " starting"));
|
|
8655
8726
|
if (!this.canUpdateMedia()) {
|
|
@@ -8674,8 +8745,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8674
8745
|
}).catch(function (error) {
|
|
8675
8746
|
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " Error: "), error);
|
|
8676
8747
|
_metrics.default.sendBehavioralMetric(_constants2.default.UPDATE_MEDIA_FAILURE, {
|
|
8677
|
-
correlation_id:
|
|
8678
|
-
locus_id:
|
|
8748
|
+
correlation_id: _this55.correlationId,
|
|
8749
|
+
locus_id: _this55.locusUrl.split('/').pop(),
|
|
8679
8750
|
reason: error.message,
|
|
8680
8751
|
stack: error.stack
|
|
8681
8752
|
});
|