@webex/plugin-meetings 1.160.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/constants.js +10 -2
- package/dist/constants.js.map +1 -1
- package/dist/locus-info/controlsUtils.js +10 -3
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +11 -0
- package/dist/locus-info/index.js.map +1 -1
- package/dist/meeting/index.js +190 -67
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/request.js +17 -0
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/state.js +5 -2
- package/dist/meeting/state.js.map +1 -1
- package/dist/meeting/util.js +23 -0
- package/dist/meeting/util.js.map +1 -1
- package/dist/meetings/index.js +66 -16
- package/dist/meetings/index.js.map +1 -1
- package/dist/metrics/constants.js +2 -0
- package/dist/metrics/constants.js.map +1 -1
- package/package.json +6 -6
- package/src/constants.js +6 -0
- package/src/locus-info/controlsUtils.js +11 -1
- package/src/locus-info/index.js +23 -1
- package/src/meeting/index.js +153 -26
- package/src/meeting/request.js +18 -0
- package/src/meeting/state.js +12 -1
- package/src/meeting/util.js +31 -1
- package/src/meetings/index.js +35 -8
- package/src/metrics/constants.js +2 -0
- package/test/unit/spec/locus-info/index.js +51 -1
- package/test/unit/spec/meeting/index.js +224 -7
- package/test/unit/spec/meeting/request.js +15 -0
- package/test/unit/spec/meetings/index.js +187 -19
package/dist/meeting/index.js
CHANGED
|
@@ -34,10 +34,10 @@ var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/
|
|
|
34
34
|
|
|
35
35
|
var _assign = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/assign"));
|
|
36
36
|
|
|
37
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/typeof"));
|
|
38
|
-
|
|
39
37
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/slicedToArray"));
|
|
40
38
|
|
|
39
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/typeof"));
|
|
40
|
+
|
|
41
41
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
|
|
42
42
|
|
|
43
43
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
|
|
@@ -622,6 +622,25 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
622
622
|
}
|
|
623
623
|
}
|
|
624
624
|
});
|
|
625
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "clearMeetingData", function () {
|
|
626
|
+
_this.audio = null;
|
|
627
|
+
_this.video = null;
|
|
628
|
+
_this.isSharing = false;
|
|
629
|
+
|
|
630
|
+
if (_this.shareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE) {
|
|
631
|
+
_this.shareStatus = _constants.SHARE_STATUS.NO_SHARE;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
_this.queuedMediaUpdates = [];
|
|
635
|
+
|
|
636
|
+
if (_this.transcription) {
|
|
637
|
+
_this.transcription.closeSocket();
|
|
638
|
+
|
|
639
|
+
_this.triggerStopReceivingTranscriptionEvent();
|
|
640
|
+
|
|
641
|
+
_this.transcription = undefined;
|
|
642
|
+
}
|
|
643
|
+
});
|
|
625
644
|
_this.attrs = attrs;
|
|
626
645
|
/**
|
|
627
646
|
* @instance
|
|
@@ -892,6 +911,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
892
911
|
*/
|
|
893
912
|
|
|
894
913
|
_this.mediaConnections = null;
|
|
914
|
+
/**
|
|
915
|
+
* Fetching meeting info can be done randomly 2-5 mins before meeting start
|
|
916
|
+
* In case it is done before the timer expires, this timeout id is reset to cancel the timer.
|
|
917
|
+
* @instance
|
|
918
|
+
* @type {Number}
|
|
919
|
+
* @readonly
|
|
920
|
+
* @private
|
|
921
|
+
* @memberof Meeting
|
|
922
|
+
*/
|
|
923
|
+
|
|
924
|
+
_this.fetchMeetingInfoTimeoutId = null;
|
|
895
925
|
/**
|
|
896
926
|
* Update the MediaConnections property with new information
|
|
897
927
|
* @param {array} mediaConnections
|
|
@@ -1182,9 +1212,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1182
1212
|
/**
|
|
1183
1213
|
* Fetches meeting information.
|
|
1184
1214
|
* @param {Object} options
|
|
1185
|
-
* @param {String} options.
|
|
1186
|
-
* @param {String} options.
|
|
1187
|
-
* @
|
|
1215
|
+
* @param {String} [options.password] optional
|
|
1216
|
+
* @param {String} [options.captchaCode] optional
|
|
1217
|
+
* @public
|
|
1188
1218
|
* @memberof Meeting
|
|
1189
1219
|
* @returns {Promise}
|
|
1190
1220
|
*/
|
|
@@ -1202,33 +1232,39 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1202
1232
|
case 0:
|
|
1203
1233
|
_ref4$password = _ref4.password, password = _ref4$password === void 0 ? null : _ref4$password, _ref4$captchaCode = _ref4.captchaCode, captchaCode = _ref4$captchaCode === void 0 ? null : _ref4$captchaCode;
|
|
1204
1234
|
|
|
1235
|
+
// when fetch meeting info is called directly by the client, we want to clear out the random timer for sdk to do it
|
|
1236
|
+
if (this.fetchMeetingInfoTimeoutId) {
|
|
1237
|
+
clearTimeout(this.fetchMeetingInfoTimeoutId);
|
|
1238
|
+
this.fetchMeetingInfoTimeoutId = undefined;
|
|
1239
|
+
}
|
|
1240
|
+
|
|
1205
1241
|
if (!(captchaCode && !this.requiredCaptcha)) {
|
|
1206
|
-
_context.next =
|
|
1242
|
+
_context.next = 4;
|
|
1207
1243
|
break;
|
|
1208
1244
|
}
|
|
1209
1245
|
|
|
1210
1246
|
return _context.abrupt("return", _promise.default.reject(new Error('fetchMeetingInfo() called with captchaCode when captcha was not required')));
|
|
1211
1247
|
|
|
1212
|
-
case
|
|
1248
|
+
case 4:
|
|
1213
1249
|
if (!(password && this.passwordStatus !== _constants.PASSWORD_STATUS.REQUIRED && this.passwordStatus !== _constants.PASSWORD_STATUS.UNKNOWN)) {
|
|
1214
|
-
_context.next =
|
|
1250
|
+
_context.next = 6;
|
|
1215
1251
|
break;
|
|
1216
1252
|
}
|
|
1217
1253
|
|
|
1218
1254
|
return _context.abrupt("return", _promise.default.reject(new Error('fetchMeetingInfo() called with password when password was not required')));
|
|
1219
1255
|
|
|
1220
|
-
case
|
|
1221
|
-
_context.prev =
|
|
1256
|
+
case 6:
|
|
1257
|
+
_context.prev = 6;
|
|
1222
1258
|
captchaInfo = captchaCode ? {
|
|
1223
1259
|
code: captchaCode,
|
|
1224
1260
|
id: this.requiredCaptcha.captchaId
|
|
1225
1261
|
} : null;
|
|
1226
|
-
_context.next =
|
|
1262
|
+
_context.next = 10;
|
|
1227
1263
|
return this.attrs.meetingInfoProvider.fetchMeetingInfo(this.destination, this.destinationType, password, captchaInfo);
|
|
1228
1264
|
|
|
1229
|
-
case
|
|
1265
|
+
case 10:
|
|
1230
1266
|
info = _context.sent;
|
|
1231
|
-
this.parseMeetingInfo(info);
|
|
1267
|
+
this.parseMeetingInfo(info, this.destination);
|
|
1232
1268
|
this.meetingInfo = info ? info.body : null;
|
|
1233
1269
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.NONE;
|
|
1234
1270
|
this.requiredCaptcha = null;
|
|
@@ -1239,14 +1275,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1239
1275
|
this.passwordStatus = _constants.PASSWORD_STATUS.NOT_REQUIRED;
|
|
1240
1276
|
}
|
|
1241
1277
|
|
|
1278
|
+
_triggerProxy.default.trigger(this, {
|
|
1279
|
+
file: 'meetings',
|
|
1280
|
+
function: 'fetchMeetingInfo'
|
|
1281
|
+
}, _constants.EVENT_TRIGGERS.MEETING_INFO_AVAILABLE);
|
|
1282
|
+
|
|
1242
1283
|
return _context.abrupt("return", _promise.default.resolve());
|
|
1243
1284
|
|
|
1244
|
-
case
|
|
1245
|
-
_context.prev =
|
|
1246
|
-
_context.t0 = _context["catch"](
|
|
1285
|
+
case 20:
|
|
1286
|
+
_context.prev = 20;
|
|
1287
|
+
_context.t0 = _context["catch"](6);
|
|
1247
1288
|
|
|
1248
1289
|
if (!(_context.t0 instanceof _meetingInfoV.MeetingInfoV2PasswordError)) {
|
|
1249
|
-
_context.next =
|
|
1290
|
+
_context.next = 33;
|
|
1250
1291
|
break;
|
|
1251
1292
|
}
|
|
1252
1293
|
|
|
@@ -1262,19 +1303,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1262
1303
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
|
|
1263
1304
|
|
|
1264
1305
|
if (!this.requiredCaptcha) {
|
|
1265
|
-
_context.next =
|
|
1306
|
+
_context.next = 30;
|
|
1266
1307
|
break;
|
|
1267
1308
|
}
|
|
1268
1309
|
|
|
1269
|
-
_context.next =
|
|
1310
|
+
_context.next = 30;
|
|
1270
1311
|
return this.refreshCaptcha();
|
|
1271
1312
|
|
|
1272
|
-
case
|
|
1313
|
+
case 30:
|
|
1273
1314
|
throw new _passwordError.default();
|
|
1274
1315
|
|
|
1275
|
-
case
|
|
1316
|
+
case 33:
|
|
1276
1317
|
if (!(_context.t0 instanceof _meetingInfoV.MeetingInfoV2CaptchaError)) {
|
|
1277
|
-
_context.next =
|
|
1318
|
+
_context.next = 41;
|
|
1278
1319
|
break;
|
|
1279
1320
|
}
|
|
1280
1321
|
|
|
@@ -1289,16 +1330,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1289
1330
|
this.requiredCaptcha = _context.t0.captchaInfo;
|
|
1290
1331
|
throw new _captchaError.default();
|
|
1291
1332
|
|
|
1292
|
-
case
|
|
1333
|
+
case 41:
|
|
1293
1334
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.OTHER;
|
|
1294
1335
|
throw _context.t0;
|
|
1295
1336
|
|
|
1296
|
-
case
|
|
1337
|
+
case 43:
|
|
1297
1338
|
case "end":
|
|
1298
1339
|
return _context.stop();
|
|
1299
1340
|
}
|
|
1300
1341
|
}
|
|
1301
|
-
}, _callee, this, [[
|
|
1342
|
+
}, _callee, this, [[6, 20]]);
|
|
1302
1343
|
}));
|
|
1303
1344
|
|
|
1304
1345
|
function fetchMeetingInfo(_x) {
|
|
@@ -1818,6 +1859,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1818
1859
|
* meeting:recording:stopped
|
|
1819
1860
|
* meeting:recording:paused
|
|
1820
1861
|
* meeting:recording:resumed
|
|
1862
|
+
*
|
|
1863
|
+
* Set up the locus info meeeting container listener
|
|
1864
|
+
* update meetingContainerUrl value for the meeting
|
|
1865
|
+
* notifies consumer with:
|
|
1866
|
+
* meeting:meetingContainer:update
|
|
1867
|
+
*
|
|
1821
1868
|
* @returns {undefined}
|
|
1822
1869
|
* @private
|
|
1823
1870
|
* @memberof Meeting
|
|
@@ -1868,6 +1915,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1868
1915
|
function: 'setupLocusControlsListener'
|
|
1869
1916
|
}, event, _this11.recording);
|
|
1870
1917
|
});
|
|
1918
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_CONTAINER_UPDATED, function (_ref6) {
|
|
1919
|
+
var meetingContainerUrl = _ref6.meetingContainerUrl;
|
|
1920
|
+
|
|
1921
|
+
_triggerProxy.default.trigger(_this11, {
|
|
1922
|
+
file: 'meeting/index',
|
|
1923
|
+
function: 'setupLocusControlsListener'
|
|
1924
|
+
}, _constants.EVENT_TRIGGERS.MEETING_MEETING_CONTAINER_UPDATE, {
|
|
1925
|
+
meetingContainerUrl: meetingContainerUrl
|
|
1926
|
+
});
|
|
1927
|
+
});
|
|
1871
1928
|
}
|
|
1872
1929
|
/**
|
|
1873
1930
|
* Set up the locus info media shares listener
|
|
@@ -2688,6 +2745,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2688
2745
|
* @param {String} meetingInfo.body.locusUrl
|
|
2689
2746
|
* @param {String} meetingInfo.body.sipUri
|
|
2690
2747
|
* @param {Object} meetingInfo.body.owner
|
|
2748
|
+
* @param {Object | String} destination locus object with meeting data or destination string (sip url, meeting link, etc)
|
|
2691
2749
|
* @returns {undefined}
|
|
2692
2750
|
* @private
|
|
2693
2751
|
* @memberof Meeting
|
|
@@ -2696,20 +2754,32 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2696
2754
|
}, {
|
|
2697
2755
|
key: "parseMeetingInfo",
|
|
2698
2756
|
value: function parseMeetingInfo(meetingInfo) {
|
|
2699
|
-
var
|
|
2757
|
+
var destination = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
2758
|
+
var webexMeetingInfo = meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.body; // We try to use as much info from Locus meeting object, stored in destination
|
|
2700
2759
|
|
|
2701
|
-
|
|
2702
|
-
|
|
2703
|
-
|
|
2704
|
-
|
|
2760
|
+
var locusMeetingObject;
|
|
2761
|
+
|
|
2762
|
+
if (destination) {
|
|
2763
|
+
locusMeetingObject = (0, _typeof2.default)(destination) === 'object' ? destination : undefined;
|
|
2764
|
+
} // MeetingInfo will be undefined for 1:1 calls
|
|
2765
|
+
|
|
2766
|
+
|
|
2767
|
+
if (locusMeetingObject || webexMeetingInfo && !(meetingInfo !== null && meetingInfo !== void 0 && meetingInfo.errors && (meetingInfo === null || meetingInfo === void 0 ? void 0 : meetingInfo.errors.length) > 0)) {
|
|
2768
|
+
var _locusMeetingObject, _locusMeetingObject2, _locusMeetingObject3, _locusMeetingObject4, _locusMeetingObject6;
|
|
2769
|
+
|
|
2770
|
+
this.conversationUrl = ((_locusMeetingObject = locusMeetingObject) === null || _locusMeetingObject === void 0 ? void 0 : _locusMeetingObject.conversationUrl) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.conversationUrl) || this.conversationUrl;
|
|
2771
|
+
this.locusUrl = ((_locusMeetingObject2 = locusMeetingObject) === null || _locusMeetingObject2 === void 0 ? void 0 : _locusMeetingObject2.url) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.locusUrl) || this.locusUrl;
|
|
2772
|
+
this.setSipUri(this.config.experimental.enableUnifiedMeetings ? ((_locusMeetingObject3 = locusMeetingObject) === null || _locusMeetingObject3 === void 0 ? void 0 : _locusMeetingObject3.info.sipUri) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.sipUrl) : ((_locusMeetingObject4 = locusMeetingObject) === null || _locusMeetingObject4 === void 0 ? void 0 : _locusMeetingObject4.info.sipUri) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.sipMeetingUri) || this.sipUri);
|
|
2705
2773
|
|
|
2706
2774
|
if (this.config.experimental.enableUnifiedMeetings) {
|
|
2707
|
-
|
|
2708
|
-
|
|
2775
|
+
var _locusMeetingObject5;
|
|
2776
|
+
|
|
2777
|
+
this.meetingNumber = ((_locusMeetingObject5 = locusMeetingObject) === null || _locusMeetingObject5 === void 0 ? void 0 : _locusMeetingObject5.info.webExMeetingId) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.meetingNumber);
|
|
2778
|
+
this.meetingJoinUrl = webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.meetingJoinUrl;
|
|
2709
2779
|
}
|
|
2710
2780
|
|
|
2711
|
-
this.owner = webexMeetingInfo.owner || webexMeetingInfo.hostId || this.owner;
|
|
2712
|
-
this.permissionToken = webexMeetingInfo.permissionToken;
|
|
2781
|
+
this.owner = ((_locusMeetingObject6 = locusMeetingObject) === null || _locusMeetingObject6 === void 0 ? void 0 : _locusMeetingObject6.info.owner) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.owner) || (webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.hostId) || this.owner;
|
|
2782
|
+
this.permissionToken = webexMeetingInfo === null || webexMeetingInfo === void 0 ? void 0 : webexMeetingInfo.permissionToken;
|
|
2713
2783
|
}
|
|
2714
2784
|
}
|
|
2715
2785
|
/**
|
|
@@ -3600,10 +3670,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3600
3670
|
joinOptions = options.joinOptions,
|
|
3601
3671
|
audioVideoOptions = options.audioVideoOptions;
|
|
3602
3672
|
return this.join(joinOptions).then(function (joinResponse) {
|
|
3603
|
-
return _this30.getMediaStreams(mediaSettings, audioVideoOptions).then(function (
|
|
3604
|
-
var
|
|
3605
|
-
localStream =
|
|
3606
|
-
localShare =
|
|
3673
|
+
return _this30.getMediaStreams(mediaSettings, audioVideoOptions).then(function (_ref7) {
|
|
3674
|
+
var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
|
|
3675
|
+
localStream = _ref8[0],
|
|
3676
|
+
localShare = _ref8[1];
|
|
3607
3677
|
|
|
3608
3678
|
return _this30.addMedia({
|
|
3609
3679
|
mediaSettings: mediaSettings,
|
|
@@ -3996,7 +4066,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3996
4066
|
|
|
3997
4067
|
return join;
|
|
3998
4068
|
}).then( /*#__PURE__*/function () {
|
|
3999
|
-
var
|
|
4069
|
+
var _ref9 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(join) {
|
|
4000
4070
|
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
4001
4071
|
while (1) {
|
|
4002
4072
|
switch (_context3.prev = _context3.next) {
|
|
@@ -4041,7 +4111,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4041
4111
|
}));
|
|
4042
4112
|
|
|
4043
4113
|
return function (_x2) {
|
|
4044
|
-
return
|
|
4114
|
+
return _ref9.apply(this, arguments);
|
|
4045
4115
|
};
|
|
4046
4116
|
}()).catch(function (error) {
|
|
4047
4117
|
var _error$error;
|
|
@@ -4323,10 +4393,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4323
4393
|
sendAudio: true,
|
|
4324
4394
|
sendVideo: true,
|
|
4325
4395
|
sendShare: false
|
|
4326
|
-
}).then(function (
|
|
4327
|
-
var
|
|
4328
|
-
localStream =
|
|
4329
|
-
localShare =
|
|
4396
|
+
}).then(function (_ref10) {
|
|
4397
|
+
var _ref11 = (0, _slicedToArray2.default)(_ref10, 2),
|
|
4398
|
+
localStream = _ref11[0],
|
|
4399
|
+
localShare = _ref11[1];
|
|
4330
4400
|
|
|
4331
4401
|
return _this38.updateMedia({
|
|
4332
4402
|
mediaSettings: {
|
|
@@ -5103,23 +5173,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5103
5173
|
return _util.default.leaveMeeting(this, options).then(function (leave) {
|
|
5104
5174
|
_this47.meetingFiniteStateMachine.leave();
|
|
5105
5175
|
|
|
5106
|
-
_this47.
|
|
5107
|
-
_this47.video = null;
|
|
5108
|
-
_this47.isSharing = false;
|
|
5109
|
-
|
|
5110
|
-
if (_this47.shareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE) {
|
|
5111
|
-
_this47.shareStatus = _constants.SHARE_STATUS.NO_SHARE;
|
|
5112
|
-
}
|
|
5113
|
-
|
|
5114
|
-
_this47.queuedMediaUpdates = [];
|
|
5115
|
-
|
|
5116
|
-
if (_this47.transcription) {
|
|
5117
|
-
_this47.transcription.closeSocket();
|
|
5118
|
-
|
|
5119
|
-
_this47.triggerStopReceivingTranscriptionEvent();
|
|
5120
|
-
|
|
5121
|
-
_this47.transcription = undefined;
|
|
5122
|
-
} // upload logs on leave irrespective of meeting delete
|
|
5176
|
+
_this47.clearMeetingData(); // upload logs on leave irrespective of meeting delete
|
|
5123
5177
|
|
|
5124
5178
|
|
|
5125
5179
|
_triggerProxy.default.trigger(_this47, {
|
|
@@ -5628,9 +5682,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5628
5682
|
sendVideo: this.mediaProperties.mediaDirection.sendVideo,
|
|
5629
5683
|
sendShare: this.mediaProperties.mediaDirection.sendShare
|
|
5630
5684
|
};
|
|
5631
|
-
return this.getMediaStreams(mediaDirection, _constants.VIDEO_RESOLUTIONS[level]).then(function (
|
|
5632
|
-
var
|
|
5633
|
-
localStream =
|
|
5685
|
+
return this.getMediaStreams(mediaDirection, _constants.VIDEO_RESOLUTIONS[level]).then(function (_ref12) {
|
|
5686
|
+
var _ref13 = (0, _slicedToArray2.default)(_ref12, 1),
|
|
5687
|
+
localStream = _ref13[0];
|
|
5634
5688
|
|
|
5635
5689
|
return _this53.updateVideo({
|
|
5636
5690
|
sendVideo: true,
|
|
@@ -5846,9 +5900,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5846
5900
|
|
|
5847
5901
|
}, {
|
|
5848
5902
|
key: "handleMediaLogging",
|
|
5849
|
-
value: function handleMediaLogging(
|
|
5850
|
-
var audioTrack =
|
|
5851
|
-
videoTrack =
|
|
5903
|
+
value: function handleMediaLogging(_ref14) {
|
|
5904
|
+
var audioTrack = _ref14.audioTrack,
|
|
5905
|
+
videoTrack = _ref14.videoTrack;
|
|
5852
5906
|
|
|
5853
5907
|
_util.default.handleVideoLogging(videoTrack);
|
|
5854
5908
|
|
|
@@ -6053,6 +6107,75 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6053
6107
|
var end = this.endJoinReqResp;
|
|
6054
6108
|
return start && end ? end - start : undefined;
|
|
6055
6109
|
}
|
|
6110
|
+
/**
|
|
6111
|
+
* End the current meeting for all
|
|
6112
|
+
* @returns {Promise}
|
|
6113
|
+
* @public
|
|
6114
|
+
* @memberof Meeting
|
|
6115
|
+
*/
|
|
6116
|
+
|
|
6117
|
+
}, {
|
|
6118
|
+
key: "endMeetingForAll",
|
|
6119
|
+
value: function endMeetingForAll() {
|
|
6120
|
+
var _this56 = this;
|
|
6121
|
+
|
|
6122
|
+
_metrics.default.postEvent({
|
|
6123
|
+
event: _config.eventType.LEAVE,
|
|
6124
|
+
meeting: this,
|
|
6125
|
+
data: {
|
|
6126
|
+
trigger: _config.trigger.USER_INTERACTION,
|
|
6127
|
+
canProceed: false
|
|
6128
|
+
}
|
|
6129
|
+
});
|
|
6130
|
+
|
|
6131
|
+
_loggerProxy.default.logger.log('Meeting:index#endMeetingForAll --> End meeting for All');
|
|
6132
|
+
|
|
6133
|
+
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_END_ALL_INITIATED, {
|
|
6134
|
+
correlation_id: this.correlationId,
|
|
6135
|
+
locus_id: this.locusId
|
|
6136
|
+
});
|
|
6137
|
+
|
|
6138
|
+
return _util.default.endMeetingForAll(this).then(function (end) {
|
|
6139
|
+
_this56.meetingFiniteStateMachine.end();
|
|
6140
|
+
|
|
6141
|
+
_this56.clearMeetingData(); // upload logs on leave irrespective of meeting delete
|
|
6142
|
+
|
|
6143
|
+
|
|
6144
|
+
_triggerProxy.default.trigger(_this56, {
|
|
6145
|
+
file: 'meeting/index',
|
|
6146
|
+
function: 'endMeetingForAll'
|
|
6147
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this56);
|
|
6148
|
+
|
|
6149
|
+
return end;
|
|
6150
|
+
}).catch(function (error) {
|
|
6151
|
+
_this56.meetingFiniteStateMachine.fail(error);
|
|
6152
|
+
|
|
6153
|
+
_loggerProxy.default.logger.error('Meeting:index#endMeetingForAll --> Failed to end meeting ', error); // upload logs on leave irrespective of meeting delete
|
|
6154
|
+
|
|
6155
|
+
|
|
6156
|
+
_triggerProxy.default.trigger(_this56, {
|
|
6157
|
+
file: 'meeting/index',
|
|
6158
|
+
function: 'endMeetingForAll'
|
|
6159
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this56);
|
|
6160
|
+
|
|
6161
|
+
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_END_ALL_FAILURE, {
|
|
6162
|
+
correlation_id: _this56.correlationId,
|
|
6163
|
+
locus_id: _this56.locusUrl.split('/').pop(),
|
|
6164
|
+
reason: error.message,
|
|
6165
|
+
stack: error.stack,
|
|
6166
|
+
code: error.code
|
|
6167
|
+
});
|
|
6168
|
+
|
|
6169
|
+
return _promise.default.reject(error);
|
|
6170
|
+
});
|
|
6171
|
+
}
|
|
6172
|
+
/**
|
|
6173
|
+
* clear the meeting data
|
|
6174
|
+
* @returns {undefined}
|
|
6175
|
+
* @public
|
|
6176
|
+
* @memberof Meeting
|
|
6177
|
+
*/
|
|
6178
|
+
|
|
6056
6179
|
}]);
|
|
6057
6180
|
return Meeting;
|
|
6058
6181
|
}(_webexCore.StatelessWebexPlugin);
|