@webex/plugin-meetings 3.3.1-next.34 → 3.3.1-next.36
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/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/meeting/index.js +242 -209
- package/dist/meeting/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +3 -3
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/types/meeting/index.d.ts +14 -4
- package/dist/webinar/index.js +1 -1
- package/package.json +3 -3
- package/src/meeting/index.ts +60 -17
- package/src/statsAnalyzer/mqaUtil.ts +3 -3
- package/test/unit/spec/meeting/index.js +163 -36
- package/test/unit/spec/stats-analyzer/index.js +3 -3
package/dist/meeting/index.js
CHANGED
|
@@ -93,6 +93,10 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
93
93
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
94
94
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } // @ts-ignore - Fix this
|
|
95
95
|
// @ts-ignore - Types not available for @webex/common
|
|
96
|
+
// default callback so we don't call an undefined function, but in practice it should never be used
|
|
97
|
+
var DEFAULT_ICE_PHASE_CALLBACK = function DEFAULT_ICE_PHASE_CALLBACK() {
|
|
98
|
+
return 'JOIN_MEETING_FINAL';
|
|
99
|
+
};
|
|
96
100
|
var logRequest = function logRequest(request, _ref) {
|
|
97
101
|
var _ref$logText = _ref.logText,
|
|
98
102
|
logText = _ref$logText === void 0 ? '' : _ref$logText;
|
|
@@ -528,7 +532,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
528
532
|
interimCaptions: _this.transcription.interimCaptions
|
|
529
533
|
});
|
|
530
534
|
}));
|
|
531
|
-
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "
|
|
535
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "addMediaData", void 0);
|
|
532
536
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "sendSlotManager", new _sendSlotManager.default(_loggerProxy.default));
|
|
533
537
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "deferSDPAnswer", void 0);
|
|
534
538
|
// used for waiting for a response
|
|
@@ -2085,13 +2089,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2085
2089
|
_this.turnServerUsed = false;
|
|
2086
2090
|
|
|
2087
2091
|
/**
|
|
2088
|
-
*
|
|
2092
|
+
* Contains information used during the addMedia() operation:
|
|
2093
|
+
* retriedWithTurnServer - whether retry was done using TURN Discovery
|
|
2094
|
+
* icePhaseCallback - callback for determining the value for icePhase when sending failure event to CA
|
|
2095
|
+
*
|
|
2089
2096
|
* @instance
|
|
2090
|
-
* @type {
|
|
2097
|
+
* @type {Object}
|
|
2091
2098
|
* @private
|
|
2092
2099
|
* @memberof Meeting
|
|
2093
2100
|
*/
|
|
2094
|
-
_this.
|
|
2101
|
+
_this.addMediaData = {
|
|
2102
|
+
retriedWithTurnServer: false,
|
|
2103
|
+
icePhaseCallback: DEFAULT_ICE_PHASE_CALLBACK
|
|
2104
|
+
};
|
|
2095
2105
|
|
|
2096
2106
|
/**
|
|
2097
2107
|
* Whether or not the media connection has ever successfully connected.
|
|
@@ -4987,6 +4997,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4987
4997
|
key: "joinWithMedia",
|
|
4988
4998
|
value: (function () {
|
|
4989
4999
|
var _joinWithMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
|
|
5000
|
+
var _this28 = this;
|
|
4990
5001
|
var options,
|
|
4991
5002
|
mediaOptions,
|
|
4992
5003
|
_options$joinOptions,
|
|
@@ -5072,7 +5083,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5072
5083
|
joined = true;
|
|
5073
5084
|
case 38:
|
|
5074
5085
|
_context15.next = 40;
|
|
5075
|
-
return this.
|
|
5086
|
+
return this.addMediaInternal(function () {
|
|
5087
|
+
return _this28.joinWithMediaRetryInfo.isRetry ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
|
|
5088
|
+
}, turnServerInfo, forceTurnDiscovery, mediaOptions);
|
|
5076
5089
|
case 40:
|
|
5077
5090
|
mediaResponse = _context15.sent;
|
|
5078
5091
|
this.joinWithMediaRetryInfo = {
|
|
@@ -5163,7 +5176,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5163
5176
|
}, {
|
|
5164
5177
|
key: "reconnect",
|
|
5165
5178
|
value: function reconnect(options) {
|
|
5166
|
-
var
|
|
5179
|
+
var _this29 = this;
|
|
5167
5180
|
_loggerProxy.default.logger.log("Meeting:index#reconnect --> attempting to reconnect meeting ".concat(this.id));
|
|
5168
5181
|
if (!this.reconnectionManager || !this.reconnectionManager.reconnect) {
|
|
5169
5182
|
return _promise.default.reject(new _parameter.default('Cannot reconnect, ReconnectionManager must first be defined.'));
|
|
@@ -5178,10 +5191,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5178
5191
|
while (1) switch (_context16.prev = _context16.next) {
|
|
5179
5192
|
case 0:
|
|
5180
5193
|
_context16.next = 2;
|
|
5181
|
-
return
|
|
5194
|
+
return _this29.waitForRemoteSDPAnswer();
|
|
5182
5195
|
case 2:
|
|
5183
5196
|
_context16.next = 4;
|
|
5184
|
-
return
|
|
5197
|
+
return _this29.waitForMediaConnectionConnected();
|
|
5185
5198
|
case 4:
|
|
5186
5199
|
case "end":
|
|
5187
5200
|
return _context16.stop();
|
|
@@ -5195,7 +5208,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5195
5208
|
return _promise.default.resolve();
|
|
5196
5209
|
}
|
|
5197
5210
|
_loggerProxy.default.logger.error('Meeting:index#reconnect --> Meeting reconnect failed', error);
|
|
5198
|
-
|
|
5211
|
+
_this29.uploadLogs({
|
|
5199
5212
|
file: 'meeting/index',
|
|
5200
5213
|
function: 'reconnect'
|
|
5201
5214
|
});
|
|
@@ -5242,19 +5255,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5242
5255
|
}, {
|
|
5243
5256
|
key: "setCaptionLanguage",
|
|
5244
5257
|
value: function setCaptionLanguage(language) {
|
|
5245
|
-
var
|
|
5258
|
+
var _this30 = this;
|
|
5246
5259
|
return new _promise.default(function (resolve, reject) {
|
|
5247
|
-
if (!
|
|
5260
|
+
if (!_this30.isTranscriptionSupported()) {
|
|
5248
5261
|
_loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
|
|
5249
5262
|
reject(new Error('Webex Assistant is not enabled/supported'));
|
|
5250
5263
|
}
|
|
5251
5264
|
try {
|
|
5252
5265
|
var voiceaListenerCaptionUpdate = function voiceaListenerCaptionUpdate(payload) {
|
|
5253
5266
|
// @ts-ignore
|
|
5254
|
-
|
|
5267
|
+
_this30.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
|
|
5255
5268
|
var statusCode = payload.statusCode;
|
|
5256
5269
|
if (statusCode === 200) {
|
|
5257
|
-
|
|
5270
|
+
_this30.transcription.languageOptions = _objectSpread(_objectSpread({}, _this30.transcription.languageOptions), {}, {
|
|
5258
5271
|
currentCaptionLanguage: language
|
|
5259
5272
|
});
|
|
5260
5273
|
resolve(language);
|
|
@@ -5263,9 +5276,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5263
5276
|
}
|
|
5264
5277
|
};
|
|
5265
5278
|
// @ts-ignore
|
|
5266
|
-
|
|
5279
|
+
_this30.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.CAPTION_LANGUAGE_UPDATE, voiceaListenerCaptionUpdate);
|
|
5267
5280
|
// @ts-ignore
|
|
5268
|
-
|
|
5281
|
+
_this30.webex.internal.voicea.requestLanguage(language);
|
|
5269
5282
|
} catch (error) {
|
|
5270
5283
|
_loggerProxy.default.logger.error("Meeting:index#setCaptionLanguage --> ".concat(error));
|
|
5271
5284
|
reject(error);
|
|
@@ -5281,23 +5294,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5281
5294
|
}, {
|
|
5282
5295
|
key: "setSpokenLanguage",
|
|
5283
5296
|
value: function setSpokenLanguage(language) {
|
|
5284
|
-
var
|
|
5297
|
+
var _this31 = this;
|
|
5285
5298
|
return new _promise.default(function (resolve, reject) {
|
|
5286
|
-
if (!
|
|
5299
|
+
if (!_this31.isTranscriptionSupported()) {
|
|
5287
5300
|
_loggerProxy.default.logger.error('Meeting:index#setCaptionLanguage --> Webex Assistant is not enabled/supported');
|
|
5288
5301
|
reject(new Error('Webex Assistant is not enabled/supported'));
|
|
5289
5302
|
}
|
|
5290
|
-
if (
|
|
5303
|
+
if (_this31.getCurUserType() !== 'host') {
|
|
5291
5304
|
_loggerProxy.default.logger.error('Meeting:index#setSpokenLanguage --> Only host can set spoken language');
|
|
5292
5305
|
reject(new Error('Only host can set spoken language'));
|
|
5293
5306
|
}
|
|
5294
5307
|
try {
|
|
5295
5308
|
var voiceaListenerLanguageUpdate = function voiceaListenerLanguageUpdate(payload) {
|
|
5296
5309
|
// @ts-ignore
|
|
5297
|
-
|
|
5310
|
+
_this31.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
|
|
5298
5311
|
var languageCode = payload.languageCode;
|
|
5299
5312
|
if (languageCode) {
|
|
5300
|
-
|
|
5313
|
+
_this31.transcription.languageOptions = _objectSpread(_objectSpread({}, _this31.transcription.languageOptions), {}, {
|
|
5301
5314
|
currentSpokenLanguage: languageCode
|
|
5302
5315
|
});
|
|
5303
5316
|
resolve(languageCode);
|
|
@@ -5307,10 +5320,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5307
5320
|
};
|
|
5308
5321
|
|
|
5309
5322
|
// @ts-ignore
|
|
5310
|
-
|
|
5323
|
+
_this31.webex.internal.voicea.on(_internalPluginVoicea.EVENT_TRIGGERS.SPOKEN_LANGUAGE_UPDATE, voiceaListenerLanguageUpdate);
|
|
5311
5324
|
|
|
5312
5325
|
// @ts-ignore
|
|
5313
|
-
|
|
5326
|
+
_this31.webex.internal.voicea.setSpokenLanguage(language);
|
|
5314
5327
|
} catch (error) {
|
|
5315
5328
|
_loggerProxy.default.logger.error("Meeting:index#setSpokenLanguage --> ".concat(error));
|
|
5316
5329
|
reject(error);
|
|
@@ -5430,7 +5443,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5430
5443
|
*/
|
|
5431
5444
|
function () {
|
|
5432
5445
|
var _join = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
|
|
5433
|
-
var
|
|
5446
|
+
var _this32 = this;
|
|
5434
5447
|
var options,
|
|
5435
5448
|
errorMessage,
|
|
5436
5449
|
error,
|
|
@@ -5576,58 +5589,58 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5576
5589
|
return _context18.abrupt("return", _promise.default.reject(_context18.t0));
|
|
5577
5590
|
case 51:
|
|
5578
5591
|
return _context18.abrupt("return", _util2.default.joinMeetingOptions(this, options).then(function (join) {
|
|
5579
|
-
|
|
5580
|
-
|
|
5592
|
+
_this32.meetingFiniteStateMachine.join();
|
|
5593
|
+
_this32.setupLocusMediaRequest();
|
|
5581
5594
|
_loggerProxy.default.logger.log('Meeting:index#join --> Success');
|
|
5582
5595
|
_metrics.default.sendBehavioralMetric(_constants2.default.JOIN_SUCCESS, {
|
|
5583
|
-
correlation_id:
|
|
5596
|
+
correlation_id: _this32.correlationId
|
|
5584
5597
|
});
|
|
5585
5598
|
joinSuccess(join);
|
|
5586
|
-
|
|
5599
|
+
_this32.deferJoin = undefined;
|
|
5587
5600
|
return join;
|
|
5588
5601
|
}).catch(function (error) {
|
|
5589
|
-
var
|
|
5590
|
-
|
|
5602
|
+
var _this32$meetingInfo, _error$error;
|
|
5603
|
+
_this32.meetingFiniteStateMachine.fail(error);
|
|
5591
5604
|
_loggerProxy.default.logger.error('Meeting:index#join --> Failed', error);
|
|
5592
5605
|
|
|
5593
5606
|
// @ts-ignore
|
|
5594
|
-
|
|
5607
|
+
_this32.webex.internal.newMetrics.submitClientEvent({
|
|
5595
5608
|
name: 'client.locus.join.response',
|
|
5596
5609
|
payload: {
|
|
5597
5610
|
identifiers: {
|
|
5598
|
-
meetingLookupUrl: (
|
|
5611
|
+
meetingLookupUrl: (_this32$meetingInfo = _this32.meetingInfo) === null || _this32$meetingInfo === void 0 ? void 0 : _this32$meetingInfo.meetingLookupUrl
|
|
5599
5612
|
}
|
|
5600
5613
|
},
|
|
5601
5614
|
options: {
|
|
5602
|
-
meetingId:
|
|
5615
|
+
meetingId: _this32.id,
|
|
5603
5616
|
rawError: error
|
|
5604
5617
|
}
|
|
5605
5618
|
});
|
|
5606
5619
|
|
|
5607
5620
|
// TODO: change this to error codes and pre defined dictionary
|
|
5608
5621
|
_metrics.default.sendBehavioralMetric(_constants2.default.JOIN_FAILURE, {
|
|
5609
|
-
correlation_id:
|
|
5622
|
+
correlation_id: _this32.correlationId,
|
|
5610
5623
|
reason: (_error$error = error.error) === null || _error$error === void 0 ? void 0 : _error$error.message,
|
|
5611
5624
|
stack: error.stack
|
|
5612
5625
|
});
|
|
5613
5626
|
|
|
5614
5627
|
// Upload logs on join Failure
|
|
5615
|
-
_triggerProxy.default.trigger(
|
|
5628
|
+
_triggerProxy.default.trigger(_this32, {
|
|
5616
5629
|
file: 'meeting/index',
|
|
5617
5630
|
function: 'join'
|
|
5618
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
5631
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this32);
|
|
5619
5632
|
joinFailed(error);
|
|
5620
|
-
|
|
5633
|
+
_this32.deferJoin = undefined;
|
|
5621
5634
|
return _promise.default.reject(error);
|
|
5622
5635
|
}).then(function (join) {
|
|
5623
5636
|
// @ts-ignore - config coming from registerPlugin
|
|
5624
|
-
if (
|
|
5637
|
+
if (_this32.config.enableAutomaticLLM) {
|
|
5625
5638
|
// @ts-ignore
|
|
5626
|
-
|
|
5627
|
-
|
|
5639
|
+
_this32.webex.internal.llm.on('online', _this32.handleLLMOnline);
|
|
5640
|
+
_this32.updateLLMConnection().catch(function (error) {
|
|
5628
5641
|
_loggerProxy.default.logger.error('Meeting:index#join --> Transcription Socket Connection Failed', error);
|
|
5629
5642
|
_metrics.default.sendBehavioralMetric(_constants2.default.LLM_CONNECTION_AFTER_JOIN_FAILURE, {
|
|
5630
|
-
correlation_id:
|
|
5643
|
+
correlation_id: _this32.correlationId,
|
|
5631
5644
|
reason: error === null || error === void 0 ? void 0 : error.message,
|
|
5632
5645
|
stack: error.stack
|
|
5633
5646
|
});
|
|
@@ -5659,7 +5672,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5659
5672
|
key: "updateLLMConnection",
|
|
5660
5673
|
value: (function () {
|
|
5661
5674
|
var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
|
|
5662
|
-
var
|
|
5675
|
+
var _this33 = this;
|
|
5663
5676
|
var _this$locusInfo6, url, _this$locusInfo6$info, _this$locusInfo6$info2, datachannelUrl, isJoined;
|
|
5664
5677
|
return _regenerator.default.wrap(function _callee19$(_context19) {
|
|
5665
5678
|
while (1) switch (_context19.prev = _context19.next) {
|
|
@@ -5695,9 +5708,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5695
5708
|
case 10:
|
|
5696
5709
|
return _context19.abrupt("return", this.webex.internal.llm.registerAndConnect(url, datachannelUrl).then(function (registerAndConnectResult) {
|
|
5697
5710
|
// @ts-ignore - Fix type
|
|
5698
|
-
|
|
5711
|
+
_this33.webex.internal.llm.off('event:relay.event', _this33.processRelayEvent);
|
|
5699
5712
|
// @ts-ignore - Fix type
|
|
5700
|
-
|
|
5713
|
+
_this33.webex.internal.llm.on('event:relay.event', _this33.processRelayEvent);
|
|
5701
5714
|
_loggerProxy.default.logger.info('Meeting:index#updateLLMConnection --> enabled to receive relay events!');
|
|
5702
5715
|
return _promise.default.resolve(registerAndConnectResult);
|
|
5703
5716
|
}));
|
|
@@ -5751,7 +5764,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5751
5764
|
}, {
|
|
5752
5765
|
key: "dialInPstn",
|
|
5753
5766
|
value: function dialInPstn() {
|
|
5754
|
-
var
|
|
5767
|
+
var _this34 = this;
|
|
5755
5768
|
if (this.isPhoneProvisioned(this.dialInDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial in devices from being provisioned
|
|
5756
5769
|
|
|
5757
5770
|
var correlationId = this.correlationId,
|
|
@@ -5767,10 +5780,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5767
5780
|
}).catch(function (error) {
|
|
5768
5781
|
var _error$error2;
|
|
5769
5782
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_IN_FAILURE, {
|
|
5770
|
-
correlation_id:
|
|
5771
|
-
dial_in_url:
|
|
5783
|
+
correlation_id: _this34.correlationId,
|
|
5784
|
+
dial_in_url: _this34.dialInUrl,
|
|
5772
5785
|
locus_id: locusUrl.split('/').pop(),
|
|
5773
|
-
client_url:
|
|
5786
|
+
client_url: _this34.deviceUrl,
|
|
5774
5787
|
reason: (_error$error2 = error.error) === null || _error$error2 === void 0 ? void 0 : _error$error2.message,
|
|
5775
5788
|
stack: error.stack
|
|
5776
5789
|
});
|
|
@@ -5788,7 +5801,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5788
5801
|
}, {
|
|
5789
5802
|
key: "dialOutPstn",
|
|
5790
5803
|
value: function dialOutPstn(phoneNumber) {
|
|
5791
|
-
var
|
|
5804
|
+
var _this35 = this;
|
|
5792
5805
|
if (this.isPhoneProvisioned(this.dialOutDeviceStatus)) return _promise.default.resolve(); // prevent multiple dial out devices from being provisioned
|
|
5793
5806
|
|
|
5794
5807
|
var correlationId = this.correlationId,
|
|
@@ -5805,10 +5818,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5805
5818
|
}).catch(function (error) {
|
|
5806
5819
|
var _error$error3;
|
|
5807
5820
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_DIAL_OUT_FAILURE, {
|
|
5808
|
-
correlation_id:
|
|
5809
|
-
dial_out_url:
|
|
5821
|
+
correlation_id: _this35.correlationId,
|
|
5822
|
+
dial_out_url: _this35.dialOutUrl,
|
|
5810
5823
|
locus_id: locusUrl.split('/').pop(),
|
|
5811
|
-
client_url:
|
|
5824
|
+
client_url: _this35.deviceUrl,
|
|
5812
5825
|
reason: (_error$error3 = error.error) === null || _error$error3 === void 0 ? void 0 : _error$error3.message,
|
|
5813
5826
|
stack: error.stack
|
|
5814
5827
|
});
|
|
@@ -5839,7 +5852,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5839
5852
|
}, {
|
|
5840
5853
|
key: "moveTo",
|
|
5841
5854
|
value: function moveTo(resourceId) {
|
|
5842
|
-
var
|
|
5855
|
+
var _this36 = this;
|
|
5843
5856
|
if (!resourceId) {
|
|
5844
5857
|
throw new _parameter.default('Cannot move call without a resourceId.');
|
|
5845
5858
|
}
|
|
@@ -5883,12 +5896,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5883
5896
|
while (1) switch (_context20.prev = _context20.next) {
|
|
5884
5897
|
case 0:
|
|
5885
5898
|
_context20.prev = 0;
|
|
5886
|
-
if (!(
|
|
5899
|
+
if (!(_this36.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
|
|
5887
5900
|
_context20.next = 4;
|
|
5888
5901
|
break;
|
|
5889
5902
|
}
|
|
5890
5903
|
_context20.next = 4;
|
|
5891
|
-
return
|
|
5904
|
+
return _this36.releaseScreenShareFloor();
|
|
5892
5905
|
case 4:
|
|
5893
5906
|
mediaSettings = {
|
|
5894
5907
|
mediaDirection: {
|
|
@@ -5900,37 +5913,37 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5900
5913
|
receiveShare: true
|
|
5901
5914
|
}
|
|
5902
5915
|
};
|
|
5903
|
-
|
|
5904
|
-
|
|
5916
|
+
_this36.mediaProperties.setMediaDirection(mediaSettings.mediaDirection);
|
|
5917
|
+
_this36.mediaProperties.unsetRemoteMedia();
|
|
5905
5918
|
|
|
5906
5919
|
// 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
|
|
5907
5920
|
// once the device answers we close the old connection and create new media server connection with only share enabled
|
|
5908
|
-
if (!
|
|
5921
|
+
if (!_this36.statsAnalyzer) {
|
|
5909
5922
|
_context20.next = 10;
|
|
5910
5923
|
break;
|
|
5911
5924
|
}
|
|
5912
5925
|
_context20.next = 10;
|
|
5913
|
-
return
|
|
5926
|
+
return _this36.statsAnalyzer.stopAnalyzer();
|
|
5914
5927
|
case 10:
|
|
5915
5928
|
_context20.next = 12;
|
|
5916
|
-
return
|
|
5929
|
+
return _this36.closeRemoteStreams();
|
|
5917
5930
|
case 12:
|
|
5918
5931
|
_context20.next = 14;
|
|
5919
|
-
return
|
|
5932
|
+
return _this36.closePeerConnections();
|
|
5920
5933
|
case 14:
|
|
5921
|
-
|
|
5922
|
-
|
|
5923
|
-
|
|
5924
|
-
|
|
5934
|
+
_this36.cleanupLocalStreams();
|
|
5935
|
+
_this36.unsetRemoteStreams();
|
|
5936
|
+
_this36.unsetPeerConnections();
|
|
5937
|
+
_this36.reconnectionManager.cleanUp();
|
|
5925
5938
|
_context20.next = 20;
|
|
5926
|
-
return
|
|
5939
|
+
return _this36.addMedia({
|
|
5927
5940
|
audioEnabled: false,
|
|
5928
5941
|
videoEnabled: false,
|
|
5929
5942
|
shareVideoEnabled: true
|
|
5930
5943
|
});
|
|
5931
5944
|
case 20:
|
|
5932
5945
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
|
|
5933
|
-
|
|
5946
|
+
_this36.isMoveToInProgress = false;
|
|
5934
5947
|
_context20.next = 29;
|
|
5935
5948
|
break;
|
|
5936
5949
|
case 24:
|
|
@@ -5938,12 +5951,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5938
5951
|
_context20.t0 = _context20["catch"](0);
|
|
5939
5952
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context20.t0);
|
|
5940
5953
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
5941
|
-
correlation_id:
|
|
5942
|
-
locus_id:
|
|
5954
|
+
correlation_id: _this36.correlationId,
|
|
5955
|
+
locus_id: _this36.locusUrl.split('/').pop(),
|
|
5943
5956
|
reason: _context20.t0.message,
|
|
5944
5957
|
stack: _context20.t0.stack
|
|
5945
5958
|
});
|
|
5946
|
-
|
|
5959
|
+
_this36.isMoveToInProgress = false;
|
|
5947
5960
|
case 29:
|
|
5948
5961
|
case "end":
|
|
5949
5962
|
return _context20.stop();
|
|
@@ -5959,17 +5972,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5959
5972
|
resourceId: resourceId,
|
|
5960
5973
|
moveToResource: true
|
|
5961
5974
|
}).then(function () {
|
|
5962
|
-
|
|
5975
|
+
_this36.meetingFiniteStateMachine.join();
|
|
5963
5976
|
}).catch(function (error) {
|
|
5964
|
-
|
|
5977
|
+
_this36.meetingFiniteStateMachine.fail(error);
|
|
5965
5978
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
5966
|
-
correlation_id:
|
|
5967
|
-
locus_id:
|
|
5979
|
+
correlation_id: _this36.correlationId,
|
|
5980
|
+
locus_id: _this36.locusUrl.split('/').pop(),
|
|
5968
5981
|
reason: error.message,
|
|
5969
5982
|
stack: error.stack
|
|
5970
5983
|
});
|
|
5971
5984
|
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', error);
|
|
5972
|
-
|
|
5985
|
+
_this36.isMoveToInProgress = false;
|
|
5973
5986
|
return _promise.default.reject(error);
|
|
5974
5987
|
});
|
|
5975
5988
|
}
|
|
@@ -5984,7 +5997,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5984
5997
|
}, {
|
|
5985
5998
|
key: "moveFrom",
|
|
5986
5999
|
value: function moveFrom(resourceId) {
|
|
5987
|
-
var
|
|
6000
|
+
var _this37 = this;
|
|
5988
6001
|
// On moveFrom ask the developer to re capture it moveFrom then updateMedia
|
|
5989
6002
|
if (!resourceId) {
|
|
5990
6003
|
throw new _parameter.default('Cannot move call without a resourceId.');
|
|
@@ -5999,19 +6012,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5999
6012
|
}
|
|
6000
6013
|
});
|
|
6001
6014
|
return _util2.default.joinMeetingOptions(this).then(function () {
|
|
6002
|
-
return _util2.default.leaveMeeting(
|
|
6015
|
+
return _util2.default.leaveMeeting(_this37, {
|
|
6003
6016
|
resourceId: resourceId,
|
|
6004
6017
|
correlationId: oldCorrelationId,
|
|
6005
6018
|
moveMeeting: true
|
|
6006
6019
|
}).then(function () {
|
|
6007
|
-
|
|
6020
|
+
_this37.resourceId = '';
|
|
6008
6021
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_SUCCESS);
|
|
6009
6022
|
});
|
|
6010
6023
|
}).catch(function (error) {
|
|
6011
|
-
|
|
6024
|
+
_this37.meetingFiniteStateMachine.fail(error);
|
|
6012
6025
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_FROM_FAILURE, {
|
|
6013
|
-
correlation_id:
|
|
6014
|
-
locus_id:
|
|
6026
|
+
correlation_id: _this37.correlationId,
|
|
6027
|
+
locus_id: _this37.locusUrl.split('/').pop(),
|
|
6015
6028
|
reason: error.message,
|
|
6016
6029
|
stack: error.stack
|
|
6017
6030
|
});
|
|
@@ -6118,9 +6131,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6118
6131
|
}, {
|
|
6119
6132
|
key: "forwardEvent",
|
|
6120
6133
|
value: function forwardEvent(eventEmitter, eventTypeToForward, meetingEventType) {
|
|
6121
|
-
var
|
|
6134
|
+
var _this38 = this;
|
|
6122
6135
|
eventEmitter.on(eventTypeToForward, function (data) {
|
|
6123
|
-
return _triggerProxy.default.trigger(
|
|
6136
|
+
return _triggerProxy.default.trigger(_this38, {
|
|
6124
6137
|
file: 'meetings',
|
|
6125
6138
|
function: 'addMedia'
|
|
6126
6139
|
}, meetingEventType, data);
|
|
@@ -6210,7 +6223,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6210
6223
|
}
|
|
6211
6224
|
_context23.t1 = this.webex.internal.newMetrics;
|
|
6212
6225
|
_context23.t2 = !this.turnServerUsed;
|
|
6213
|
-
_context23.t3 = this.
|
|
6226
|
+
_context23.t3 = this.addMediaData.icePhaseCallback();
|
|
6214
6227
|
_context23.t4 = this.webex.internal.newMetrics.callDiagnosticMetrics;
|
|
6215
6228
|
_context23.t5 = _internalPluginMetrics.CallDiagnosticUtils;
|
|
6216
6229
|
_context23.t6 = ((_this$mediaProperties6 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties6 === void 0 ? void 0 : (_this$mediaProperties7 = _this$mediaProperties6.multistreamConnection) === null || _this$mediaProperties7 === void 0 ? void 0 : (_this$mediaProperties8 = _this$mediaProperties7.pc) === null || _this$mediaProperties8 === void 0 ? void 0 : (_this$mediaProperties9 = _this$mediaProperties8.pc) === null || _this$mediaProperties9 === void 0 ? void 0 : _this$mediaProperties9.signalingState) || ((_this$mediaProperties10 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties10 === void 0 ? void 0 : (_this$mediaProperties11 = _this$mediaProperties10.mediaConnection) === null || _this$mediaProperties11 === void 0 ? void 0 : (_this$mediaProperties12 = _this$mediaProperties11.pc) === null || _this$mediaProperties12 === void 0 ? void 0 : _this$mediaProperties12.signalingState) || 'unknown';
|
|
@@ -6271,7 +6284,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6271
6284
|
}, {
|
|
6272
6285
|
key: "createStatsAnalyzer",
|
|
6273
6286
|
value: function createStatsAnalyzer() {
|
|
6274
|
-
var
|
|
6287
|
+
var _this39 = this;
|
|
6275
6288
|
// @ts-ignore - config coming from registerPlugin
|
|
6276
6289
|
if (this.config.stats.enableStatsAnalyzer) {
|
|
6277
6290
|
// @ts-ignore - config coming from registerPlugin
|
|
@@ -6280,7 +6293,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6280
6293
|
// @ts-ignore - config coming from registerPlugin
|
|
6281
6294
|
config: this.config.stats,
|
|
6282
6295
|
receiveSlotCallback: function receiveSlotCallback(ssrc) {
|
|
6283
|
-
return
|
|
6296
|
+
return _this39.receiveSlotManager.findReceiveSlotBySsrc(ssrc);
|
|
6284
6297
|
},
|
|
6285
6298
|
networkQualityMonitor: this.networkQualityMonitor,
|
|
6286
6299
|
isMultistream: this.isMultistream
|
|
@@ -6309,7 +6322,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6309
6322
|
*/
|
|
6310
6323
|
function () {
|
|
6311
6324
|
var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24() {
|
|
6312
|
-
var
|
|
6325
|
+
var _this40 = this;
|
|
6313
6326
|
var LOG_HEADER, deferSDPAnswer;
|
|
6314
6327
|
return _regenerator.default.wrap(function _callee24$(_context24) {
|
|
6315
6328
|
while (1) switch (_context24.prev = _context24.next) {
|
|
@@ -6326,18 +6339,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6326
6339
|
this.sdpResponseTimer = setTimeout(function () {
|
|
6327
6340
|
_loggerProxy.default.logger.warn("".concat(LOG_HEADER, " timeout! no REMOTE SDP ANSWER received within ").concat(_constants.ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT / 1000, " seconds"));
|
|
6328
6341
|
// @ts-ignore
|
|
6329
|
-
|
|
6342
|
+
_this40.webex.internal.newMetrics.submitClientEvent({
|
|
6330
6343
|
name: 'client.media-engine.remote-sdp-received',
|
|
6331
6344
|
payload: {
|
|
6332
6345
|
canProceed: false,
|
|
6333
6346
|
errors: [
|
|
6334
6347
|
// @ts-ignore
|
|
6335
|
-
|
|
6348
|
+
_this40.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
|
|
6336
6349
|
clientErrorCode: _internalPluginMetrics.CALL_DIAGNOSTIC_CONFIG.MISSING_ROAP_ANSWER_CLIENT_CODE
|
|
6337
6350
|
})]
|
|
6338
6351
|
},
|
|
6339
6352
|
options: {
|
|
6340
|
-
meetingId:
|
|
6353
|
+
meetingId: _this40.id,
|
|
6341
6354
|
rawError: new Error('Timeout waiting for SDP answer')
|
|
6342
6355
|
}
|
|
6343
6356
|
});
|
|
@@ -6414,7 +6427,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6414
6427
|
return _regenerator.default.wrap(function _callee26$(_context26) {
|
|
6415
6428
|
while (1) switch (_context26.prev = _context26.next) {
|
|
6416
6429
|
case 0:
|
|
6417
|
-
this.retriedWithTurnServer = true;
|
|
6430
|
+
this.addMediaData.retriedWithTurnServer = true;
|
|
6418
6431
|
LOG_HEADER = 'Meeting:index#addMedia():retryWithForcedTurnDiscovery -->';
|
|
6419
6432
|
_context26.next = 4;
|
|
6420
6433
|
return this.cleanUpBeforeRetryWithTurnServer();
|
|
@@ -6530,7 +6543,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6530
6543
|
correlation_id: this.correlationId,
|
|
6531
6544
|
latency: cdl.getTurnDiscoveryTime(),
|
|
6532
6545
|
turnServerUsed: this.turnServerUsed,
|
|
6533
|
-
retriedWithTurnServer: this.retriedWithTurnServer
|
|
6546
|
+
retriedWithTurnServer: this.addMediaData.retriedWithTurnServer
|
|
6534
6547
|
});
|
|
6535
6548
|
}
|
|
6536
6549
|
return _context28.abrupt("return", turnDiscoveryResult);
|
|
@@ -6758,19 +6771,36 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6758
6771
|
* Creates a media connection to the server. Media connection is required for sending or receiving any audio/video.
|
|
6759
6772
|
*
|
|
6760
6773
|
* @param {AddMediaOptions} options
|
|
6761
|
-
* @param {TurnServerInfo} turnServerInfo - TURN server information (used only internally by the SDK)
|
|
6762
|
-
* @param {boolean} forceTurnDiscovery - if true, TURN discovery will be done (used only internally by the SDK)
|
|
6763
6774
|
* @returns {Promise<void>}
|
|
6764
6775
|
* @public
|
|
6765
6776
|
* @memberof Meeting
|
|
6766
6777
|
*/
|
|
6767
6778
|
}, {
|
|
6768
6779
|
key: "addMedia",
|
|
6780
|
+
value: function addMedia() {
|
|
6781
|
+
var _this41 = this;
|
|
6782
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
6783
|
+
return this.addMediaInternal(function () {
|
|
6784
|
+
return _this41.turnServerUsed ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
|
|
6785
|
+
}, undefined, false, options);
|
|
6786
|
+
}
|
|
6787
|
+
|
|
6788
|
+
/**
|
|
6789
|
+
* Internal version of addMedia() with some more arguments for finer control of its behavior
|
|
6790
|
+
*
|
|
6791
|
+
* @param {Function} icePhaseCallback - callback to determine the icePhase for CA "client.ice.end" failure events
|
|
6792
|
+
* @param {TurnServerInfo} turnServerInfo - TURN server information
|
|
6793
|
+
* @param {boolean} forceTurnDiscovery - if true, TURN discovery will be done
|
|
6794
|
+
* @param {AddMediaOptions} options - same as options of the public addMedia() method
|
|
6795
|
+
* @returns {Promise<void>}
|
|
6796
|
+
* @protected
|
|
6797
|
+
* @memberof Meeting
|
|
6798
|
+
*/
|
|
6799
|
+
}, {
|
|
6800
|
+
key: "addMediaInternal",
|
|
6769
6801
|
value: (function () {
|
|
6770
|
-
var
|
|
6802
|
+
var _addMediaInternal = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32(icePhaseCallback, turnServerInfo, forceTurnDiscovery) {
|
|
6771
6803
|
var options,
|
|
6772
|
-
turnServerInfo,
|
|
6773
|
-
forceTurnDiscovery,
|
|
6774
6804
|
LOG_HEADER,
|
|
6775
6805
|
localStreams,
|
|
6776
6806
|
_options$audioEnabled,
|
|
@@ -6819,36 +6849,35 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6819
6849
|
return _regenerator.default.wrap(function _callee32$(_context32) {
|
|
6820
6850
|
while (1) switch (_context32.prev = _context32.next) {
|
|
6821
6851
|
case 0:
|
|
6822
|
-
options = _args32.length >
|
|
6823
|
-
|
|
6824
|
-
|
|
6825
|
-
this.retriedWithTurnServer = false;
|
|
6852
|
+
options = _args32.length > 3 && _args32[3] !== undefined ? _args32[3] : {};
|
|
6853
|
+
this.addMediaData.retriedWithTurnServer = false;
|
|
6854
|
+
this.addMediaData.icePhaseCallback = icePhaseCallback;
|
|
6826
6855
|
this.hasMediaConnectionConnectedAtLeastOnce = false;
|
|
6827
6856
|
LOG_HEADER = 'Meeting:index#addMedia -->';
|
|
6828
6857
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " called with: options=").concat((0, _stringify.default)(options), ", turnServerInfo=").concat((0, _stringify.default)(turnServerInfo), ", forceTurnDiscovery=").concat(forceTurnDiscovery));
|
|
6829
6858
|
if (!(options.allowMediaInLobby !== true && this.meetingState !== _constants.FULL_STATE.ACTIVE)) {
|
|
6830
|
-
_context32.next =
|
|
6859
|
+
_context32.next = 8;
|
|
6831
6860
|
break;
|
|
6832
6861
|
}
|
|
6833
6862
|
throw new _webexErrors.MeetingNotActiveError();
|
|
6834
|
-
case
|
|
6863
|
+
case 8:
|
|
6835
6864
|
if (!_util2.default.isUserInLeftState(this.locusInfo)) {
|
|
6836
|
-
_context32.next =
|
|
6865
|
+
_context32.next = 10;
|
|
6837
6866
|
break;
|
|
6838
6867
|
}
|
|
6839
6868
|
throw new _webexErrors.UserNotJoinedError();
|
|
6840
|
-
case
|
|
6869
|
+
case 10:
|
|
6841
6870
|
localStreams = options.localStreams, _options$audioEnabled = options.audioEnabled, audioEnabled = _options$audioEnabled === void 0 ? true : _options$audioEnabled, _options$videoEnabled = options.videoEnabled, videoEnabled = _options$videoEnabled === void 0 ? true : _options$videoEnabled, _options$shareAudioEn = options.shareAudioEnabled, shareAudioEnabled = _options$shareAudioEn === void 0 ? true : _options$shareAudioEn, _options$shareVideoEn = options.shareVideoEnabled, shareVideoEnabled = _options$shareVideoEn === void 0 ? true : _options$shareVideoEn, remoteMediaManagerConfig = options.remoteMediaManagerConfig, bundlePolicy = options.bundlePolicy;
|
|
6842
6871
|
this.allowMediaInLobby = options === null || options === void 0 ? void 0 : options.allowMediaInLobby;
|
|
6843
6872
|
|
|
6844
6873
|
// If the user is unjoined or guest waiting in lobby dont allow the user to addMedia
|
|
6845
6874
|
// @ts-ignore - isUserUnadmitted coming from SelfUtil
|
|
6846
6875
|
if (!(this.isUserUnadmitted && !this.wirelessShare && !this.allowMediaInLobby)) {
|
|
6847
|
-
_context32.next =
|
|
6876
|
+
_context32.next = 14;
|
|
6848
6877
|
break;
|
|
6849
6878
|
}
|
|
6850
6879
|
throw new _webexErrors.UserInLobbyError();
|
|
6851
|
-
case
|
|
6880
|
+
case 14:
|
|
6852
6881
|
// @ts-ignore
|
|
6853
6882
|
this.webex.internal.newMetrics.submitClientEvent({
|
|
6854
6883
|
name: 'client.media.capabilities',
|
|
@@ -6887,44 +6916,44 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6887
6916
|
});
|
|
6888
6917
|
this.audio = (0, _muteState.createMuteState)(_constants.AUDIO, this, audioEnabled);
|
|
6889
6918
|
this.video = (0, _muteState.createMuteState)(_constants.VIDEO, this, videoEnabled);
|
|
6890
|
-
_context32.prev =
|
|
6891
|
-
_context32.next =
|
|
6919
|
+
_context32.prev = 18;
|
|
6920
|
+
_context32.next = 21;
|
|
6892
6921
|
return this.setUpLocalStreamReferences(localStreams);
|
|
6893
|
-
case
|
|
6922
|
+
case 21:
|
|
6894
6923
|
this.setMercuryListener();
|
|
6895
6924
|
this.createStatsAnalyzer();
|
|
6896
|
-
_context32.next =
|
|
6925
|
+
_context32.next = 25;
|
|
6897
6926
|
return this.establishMediaConnection(remoteMediaManagerConfig, bundlePolicy, forceTurnDiscovery, turnServerInfo);
|
|
6898
|
-
case
|
|
6927
|
+
case 25:
|
|
6899
6928
|
if (!(audioEnabled || videoEnabled)) {
|
|
6900
|
-
_context32.next =
|
|
6929
|
+
_context32.next = 30;
|
|
6901
6930
|
break;
|
|
6902
6931
|
}
|
|
6903
|
-
_context32.next =
|
|
6932
|
+
_context32.next = 28;
|
|
6904
6933
|
return Meeting.handleDeviceLogging();
|
|
6905
|
-
case
|
|
6906
|
-
_context32.next =
|
|
6934
|
+
case 28:
|
|
6935
|
+
_context32.next = 31;
|
|
6907
6936
|
break;
|
|
6908
|
-
case
|
|
6937
|
+
case 30:
|
|
6909
6938
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " device logging not required"));
|
|
6910
|
-
case
|
|
6939
|
+
case 31:
|
|
6911
6940
|
if (!this.mediaProperties.hasLocalShareStream()) {
|
|
6912
|
-
_context32.next =
|
|
6941
|
+
_context32.next = 34;
|
|
6913
6942
|
break;
|
|
6914
6943
|
}
|
|
6915
|
-
_context32.next =
|
|
6944
|
+
_context32.next = 34;
|
|
6916
6945
|
return this.enqueueScreenShareFloorRequest();
|
|
6917
|
-
case
|
|
6918
|
-
_context32.next =
|
|
6946
|
+
case 34:
|
|
6947
|
+
_context32.next = 36;
|
|
6919
6948
|
return this.mediaProperties.getCurrentConnectionInfo();
|
|
6920
|
-
case
|
|
6949
|
+
case 36:
|
|
6921
6950
|
_yield$this$mediaProp = _context32.sent;
|
|
6922
6951
|
connectionType = _yield$this$mediaProp.connectionType;
|
|
6923
6952
|
selectedCandidatePairChanges = _yield$this$mediaProp.selectedCandidatePairChanges;
|
|
6924
6953
|
numTransports = _yield$this$mediaProp.numTransports;
|
|
6925
|
-
_context32.next =
|
|
6954
|
+
_context32.next = 42;
|
|
6926
6955
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
6927
|
-
case
|
|
6956
|
+
case 42:
|
|
6928
6957
|
reachabilityStats = _context32.sent;
|
|
6929
6958
|
_metrics.default.sendBehavioralMetric(_constants2.default.ADD_MEDIA_SUCCESS, _objectSpread({
|
|
6930
6959
|
correlation_id: this.correlationId,
|
|
@@ -6933,7 +6962,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6933
6962
|
selectedCandidatePairChanges: selectedCandidatePairChanges,
|
|
6934
6963
|
numTransports: numTransports,
|
|
6935
6964
|
isMultistream: this.isMultistream,
|
|
6936
|
-
retriedWithTurnServer: this.retriedWithTurnServer,
|
|
6965
|
+
retriedWithTurnServer: this.addMediaData.retriedWithTurnServer,
|
|
6937
6966
|
isJoinWithMediaRetry: this.joinWithMediaRetryInfo.isRetry
|
|
6938
6967
|
}, reachabilityStats));
|
|
6939
6968
|
// @ts-ignore
|
|
@@ -6947,21 +6976,21 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6947
6976
|
|
|
6948
6977
|
// We can log ReceiveSlot SSRCs only after the SDP exchange, so doing it here:
|
|
6949
6978
|
(_this$remoteMediaMana = this.remoteMediaManager) === null || _this$remoteMediaMana === void 0 ? void 0 : _this$remoteMediaMana.logAllReceiveSlots();
|
|
6950
|
-
_context32.next =
|
|
6979
|
+
_context32.next = 67;
|
|
6951
6980
|
break;
|
|
6952
|
-
case
|
|
6953
|
-
_context32.prev =
|
|
6954
|
-
_context32.t0 = _context32["catch"](
|
|
6981
|
+
case 49:
|
|
6982
|
+
_context32.prev = 49;
|
|
6983
|
+
_context32.t0 = _context32["catch"](18);
|
|
6955
6984
|
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " failed to establish media connection: "), _context32.t0);
|
|
6956
6985
|
|
|
6957
6986
|
// @ts-ignore
|
|
6958
|
-
_context32.next =
|
|
6987
|
+
_context32.next = 54;
|
|
6959
6988
|
return this.webex.meetings.reachability.getReachabilityMetrics();
|
|
6960
|
-
case
|
|
6989
|
+
case 54:
|
|
6961
6990
|
reachabilityMetrics = _context32.sent;
|
|
6962
|
-
_context32.next =
|
|
6991
|
+
_context32.next = 57;
|
|
6963
6992
|
return this.mediaProperties.getCurrentConnectionInfo();
|
|
6964
|
-
case
|
|
6993
|
+
case 57:
|
|
6965
6994
|
_yield$this$mediaProp2 = _context32.sent;
|
|
6966
6995
|
_selectedCandidatePairChanges = _yield$this$mediaProp2.selectedCandidatePairChanges;
|
|
6967
6996
|
_numTransports = _yield$this$mediaProp2.numTransports;
|
|
@@ -6976,16 +7005,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6976
7005
|
numTransports: _numTransports,
|
|
6977
7006
|
turnDiscoverySkippedReason: this.turnDiscoverySkippedReason,
|
|
6978
7007
|
turnServerUsed: this.turnServerUsed,
|
|
6979
|
-
retriedWithTurnServer: this.retriedWithTurnServer,
|
|
7008
|
+
retriedWithTurnServer: this.addMediaData.retriedWithTurnServer,
|
|
6980
7009
|
isMultistream: this.isMultistream,
|
|
6981
7010
|
isJoinWithMediaRetry: this.joinWithMediaRetryInfo.isRetry,
|
|
6982
7011
|
signalingState: ((_this$mediaProperties13 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties13 === void 0 ? void 0 : (_this$mediaProperties14 = _this$mediaProperties13.multistreamConnection) === null || _this$mediaProperties14 === void 0 ? void 0 : (_this$mediaProperties15 = _this$mediaProperties14.pc) === null || _this$mediaProperties15 === void 0 ? void 0 : (_this$mediaProperties16 = _this$mediaProperties15.pc) === null || _this$mediaProperties16 === void 0 ? void 0 : _this$mediaProperties16.signalingState) || ((_this$mediaProperties17 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties17 === void 0 ? void 0 : (_this$mediaProperties18 = _this$mediaProperties17.mediaConnection) === null || _this$mediaProperties18 === void 0 ? void 0 : (_this$mediaProperties19 = _this$mediaProperties18.pc) === null || _this$mediaProperties19 === void 0 ? void 0 : _this$mediaProperties19.signalingState) || 'unknown',
|
|
6983
7012
|
connectionState: ((_this$mediaProperties20 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties20 === void 0 ? void 0 : (_this$mediaProperties21 = _this$mediaProperties20.multistreamConnection) === null || _this$mediaProperties21 === void 0 ? void 0 : (_this$mediaProperties22 = _this$mediaProperties21.pc) === null || _this$mediaProperties22 === void 0 ? void 0 : (_this$mediaProperties23 = _this$mediaProperties22.pc) === null || _this$mediaProperties23 === void 0 ? void 0 : _this$mediaProperties23.connectionState) || ((_this$mediaProperties24 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties24 === void 0 ? void 0 : (_this$mediaProperties25 = _this$mediaProperties24.mediaConnection) === null || _this$mediaProperties25 === void 0 ? void 0 : (_this$mediaProperties26 = _this$mediaProperties25.pc) === null || _this$mediaProperties26 === void 0 ? void 0 : _this$mediaProperties26.connectionState) || 'unknown',
|
|
6984
7013
|
iceConnectionState: ((_this$mediaProperties27 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties27 === void 0 ? void 0 : (_this$mediaProperties28 = _this$mediaProperties27.multistreamConnection) === null || _this$mediaProperties28 === void 0 ? void 0 : (_this$mediaProperties29 = _this$mediaProperties28.pc) === null || _this$mediaProperties29 === void 0 ? void 0 : (_this$mediaProperties30 = _this$mediaProperties29.pc) === null || _this$mediaProperties30 === void 0 ? void 0 : _this$mediaProperties30.iceConnectionState) || ((_this$mediaProperties31 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties31 === void 0 ? void 0 : (_this$mediaProperties32 = _this$mediaProperties31.mediaConnection) === null || _this$mediaProperties32 === void 0 ? void 0 : (_this$mediaProperties33 = _this$mediaProperties32.pc) === null || _this$mediaProperties33 === void 0 ? void 0 : _this$mediaProperties33.iceConnectionState) || 'unknown'
|
|
6985
7014
|
}, reachabilityMetrics), iceCandidateErrors));
|
|
6986
|
-
_context32.next =
|
|
7015
|
+
_context32.next = 64;
|
|
6987
7016
|
return this.cleanUpOnAddMediaFailure();
|
|
6988
|
-
case
|
|
7017
|
+
case 64:
|
|
6989
7018
|
// Upload logs on error while adding media
|
|
6990
7019
|
_triggerProxy.default.trigger(this, {
|
|
6991
7020
|
file: 'meeting/index',
|
|
@@ -6997,16 +7026,20 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6997
7026
|
});
|
|
6998
7027
|
}
|
|
6999
7028
|
throw _context32.t0;
|
|
7000
|
-
case
|
|
7029
|
+
case 67:
|
|
7030
|
+
_context32.prev = 67;
|
|
7031
|
+
this.addMediaData.icePhaseCallback = DEFAULT_ICE_PHASE_CALLBACK;
|
|
7032
|
+
return _context32.finish(67);
|
|
7033
|
+
case 70:
|
|
7001
7034
|
case "end":
|
|
7002
7035
|
return _context32.stop();
|
|
7003
7036
|
}
|
|
7004
|
-
}, _callee32, this, [[
|
|
7037
|
+
}, _callee32, this, [[18, 49, 67, 70]]);
|
|
7005
7038
|
}));
|
|
7006
|
-
function
|
|
7007
|
-
return
|
|
7039
|
+
function addMediaInternal(_x32, _x33, _x34) {
|
|
7040
|
+
return _addMediaInternal.apply(this, arguments);
|
|
7008
7041
|
}
|
|
7009
|
-
return
|
|
7042
|
+
return addMediaInternal;
|
|
7010
7043
|
}()
|
|
7011
7044
|
/**
|
|
7012
7045
|
* Informs if the peer connection is in a state that can be updated with updateMedia (audio/video/share)
|
|
@@ -7033,7 +7066,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7033
7066
|
* @memberof Meeting
|
|
7034
7067
|
*/
|
|
7035
7068
|
function enqueueMediaUpdate(mediaUpdateType) {
|
|
7036
|
-
var
|
|
7069
|
+
var _this42 = this;
|
|
7037
7070
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
7038
7071
|
var canUpdateMediaNow = this.canUpdateMedia();
|
|
7039
7072
|
return new _promise.default(function (resolve, reject) {
|
|
@@ -7044,9 +7077,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7044
7077
|
options: options
|
|
7045
7078
|
};
|
|
7046
7079
|
_loggerProxy.default.logger.log("Meeting:index#enqueueMediaUpdate --> enqueuing media update type=".concat(mediaUpdateType));
|
|
7047
|
-
|
|
7080
|
+
_this42.queuedMediaUpdates.push(queueItem);
|
|
7048
7081
|
if (canUpdateMediaNow) {
|
|
7049
|
-
|
|
7082
|
+
_this42.processNextQueuedMediaUpdate();
|
|
7050
7083
|
}
|
|
7051
7084
|
});
|
|
7052
7085
|
}
|
|
@@ -7135,7 +7168,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7135
7168
|
}
|
|
7136
7169
|
}, _callee33, this);
|
|
7137
7170
|
}));
|
|
7138
|
-
function updateMedia(
|
|
7171
|
+
function updateMedia(_x35) {
|
|
7139
7172
|
return _updateMedia.apply(this, arguments);
|
|
7140
7173
|
}
|
|
7141
7174
|
return updateMedia;
|
|
@@ -7151,7 +7184,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7151
7184
|
}, {
|
|
7152
7185
|
key: "acknowledge",
|
|
7153
7186
|
value: function acknowledge(type) {
|
|
7154
|
-
var
|
|
7187
|
+
var _this43 = this;
|
|
7155
7188
|
if (!type) {
|
|
7156
7189
|
return _promise.default.reject(new _parameter.default('Type must be set to acknowledge the meeting.'));
|
|
7157
7190
|
}
|
|
@@ -7163,12 +7196,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7163
7196
|
}).then(function (response) {
|
|
7164
7197
|
return _promise.default.resolve(response);
|
|
7165
7198
|
}).then(function (response) {
|
|
7166
|
-
|
|
7199
|
+
_this43.meetingFiniteStateMachine.ring(type);
|
|
7167
7200
|
// @ts-ignore
|
|
7168
|
-
|
|
7201
|
+
_this43.webex.internal.newMetrics.submitClientEvent({
|
|
7169
7202
|
name: 'client.alert.displayed',
|
|
7170
7203
|
options: {
|
|
7171
|
-
meetingId:
|
|
7204
|
+
meetingId: _this43.id
|
|
7172
7205
|
}
|
|
7173
7206
|
});
|
|
7174
7207
|
return _promise.default.resolve({
|
|
@@ -7193,12 +7226,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7193
7226
|
}, {
|
|
7194
7227
|
key: "decline",
|
|
7195
7228
|
value: function decline(reason) {
|
|
7196
|
-
var
|
|
7229
|
+
var _this44 = this;
|
|
7197
7230
|
return _util2.default.declineMeeting(this, reason).then(function (decline) {
|
|
7198
|
-
|
|
7231
|
+
_this44.meetingFiniteStateMachine.decline();
|
|
7199
7232
|
return _promise.default.resolve(decline);
|
|
7200
7233
|
}).catch(function (error) {
|
|
7201
|
-
|
|
7234
|
+
_this44.meetingFiniteStateMachine.fail(error);
|
|
7202
7235
|
return _promise.default.reject(error);
|
|
7203
7236
|
});
|
|
7204
7237
|
}
|
|
@@ -7249,7 +7282,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7249
7282
|
}, {
|
|
7250
7283
|
key: "leave",
|
|
7251
7284
|
value: function leave() {
|
|
7252
|
-
var
|
|
7285
|
+
var _this45 = this;
|
|
7253
7286
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7254
7287
|
var leaveReason = options.reason || _constants.MEETING_REMOVED_REASON.CLIENT_LEAVE_REQUEST;
|
|
7255
7288
|
|
|
@@ -7261,7 +7294,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7261
7294
|
var payload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7262
7295
|
return (
|
|
7263
7296
|
// @ts-ignore
|
|
7264
|
-
|
|
7297
|
+
_this45.webex.internal.newMetrics.submitClientEvent({
|
|
7265
7298
|
name: 'client.call.leave',
|
|
7266
7299
|
payload: _objectSpread({
|
|
7267
7300
|
trigger: 'user-interaction',
|
|
@@ -7269,7 +7302,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7269
7302
|
leaveReason: options.clientEventLeaveReason
|
|
7270
7303
|
}, payload),
|
|
7271
7304
|
options: {
|
|
7272
|
-
meetingId:
|
|
7305
|
+
meetingId: _this45.id
|
|
7273
7306
|
}
|
|
7274
7307
|
})
|
|
7275
7308
|
);
|
|
@@ -7278,24 +7311,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7278
7311
|
return _util2.default.leaveMeeting(this, options).then(function (leave) {
|
|
7279
7312
|
// CA team recommends submitting this *after* locus /leave
|
|
7280
7313
|
submitLeaveMetric();
|
|
7281
|
-
|
|
7282
|
-
|
|
7314
|
+
_this45.meetingFiniteStateMachine.leave();
|
|
7315
|
+
_this45.clearMeetingData();
|
|
7283
7316
|
|
|
7284
7317
|
// upload logs on leave irrespective of meeting delete
|
|
7285
|
-
_triggerProxy.default.trigger(
|
|
7318
|
+
_triggerProxy.default.trigger(_this45, {
|
|
7286
7319
|
file: 'meeting/index',
|
|
7287
7320
|
function: 'leave'
|
|
7288
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7321
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this45);
|
|
7289
7322
|
|
|
7290
7323
|
// TODO: more testing before we remove this code, we are not sure the scenarios for destroy here
|
|
7291
|
-
if (
|
|
7324
|
+
if (_this45.wirelessShare || _this45.guest) {
|
|
7292
7325
|
// If screen sharing clean the meeting object
|
|
7293
|
-
_triggerProxy.default.trigger(
|
|
7326
|
+
_triggerProxy.default.trigger(_this45, {
|
|
7294
7327
|
file: 'meeting/index',
|
|
7295
7328
|
function: 'leave'
|
|
7296
7329
|
}, _constants.EVENTS.DESTROY_MEETING, {
|
|
7297
7330
|
reason: options.reason,
|
|
7298
|
-
meetingId:
|
|
7331
|
+
meetingId: _this45.id
|
|
7299
7332
|
});
|
|
7300
7333
|
}
|
|
7301
7334
|
_loggerProxy.default.logger.log('Meeting:index#leave --> LEAVE REASON ', leaveReason);
|
|
@@ -7312,16 +7345,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7312
7345
|
shownToUser: false
|
|
7313
7346
|
}]
|
|
7314
7347
|
});
|
|
7315
|
-
|
|
7348
|
+
_this45.meetingFiniteStateMachine.fail(error);
|
|
7316
7349
|
_loggerProxy.default.logger.error('Meeting:index#leave --> Failed to leave ', error);
|
|
7317
7350
|
// upload logs on leave irrespective of meeting delete
|
|
7318
|
-
_triggerProxy.default.trigger(
|
|
7351
|
+
_triggerProxy.default.trigger(_this45, {
|
|
7319
7352
|
file: 'meeting/index',
|
|
7320
7353
|
function: 'leave'
|
|
7321
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7354
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this45);
|
|
7322
7355
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_LEAVE_FAILURE, {
|
|
7323
|
-
correlation_id:
|
|
7324
|
-
locus_id:
|
|
7356
|
+
correlation_id: _this45.correlationId,
|
|
7357
|
+
locus_id: _this45.locusUrl.split('/').pop(),
|
|
7325
7358
|
reason: error.message,
|
|
7326
7359
|
stack: error.stack,
|
|
7327
7360
|
code: error.code
|
|
@@ -7341,7 +7374,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7341
7374
|
}, {
|
|
7342
7375
|
key: "startWhiteboardShare",
|
|
7343
7376
|
value: function startWhiteboardShare(channelUrl, resourceToken) {
|
|
7344
|
-
var
|
|
7377
|
+
var _this46 = this;
|
|
7345
7378
|
var whiteboard = this.locusInfo.mediaShares.find(function (element) {
|
|
7346
7379
|
return element.name === 'whiteboard';
|
|
7347
7380
|
});
|
|
@@ -7370,13 +7403,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7370
7403
|
body.resourceToken = resourceToken;
|
|
7371
7404
|
}
|
|
7372
7405
|
return this.meetingRequest.changeMeetingFloor(body).then(function () {
|
|
7373
|
-
|
|
7406
|
+
_this46.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
7374
7407
|
return _promise.default.resolve();
|
|
7375
7408
|
}).catch(function (error) {
|
|
7376
7409
|
_loggerProxy.default.logger.error('Meeting:index#startWhiteboardShare --> Error ', error);
|
|
7377
7410
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_START_WHITEBOARD_SHARE_FAILURE, {
|
|
7378
|
-
correlation_id:
|
|
7379
|
-
locus_id:
|
|
7411
|
+
correlation_id: _this46.correlationId,
|
|
7412
|
+
locus_id: _this46.locusUrl.split('/').pop(),
|
|
7380
7413
|
reason: error.message,
|
|
7381
7414
|
stack: error.stack,
|
|
7382
7415
|
board: {
|
|
@@ -7399,7 +7432,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7399
7432
|
}, {
|
|
7400
7433
|
key: "stopWhiteboardShare",
|
|
7401
7434
|
value: function stopWhiteboardShare(channelUrl) {
|
|
7402
|
-
var
|
|
7435
|
+
var _this47 = this;
|
|
7403
7436
|
var whiteboard = this.locusInfo.mediaShares.find(function (element) {
|
|
7404
7437
|
return element.name === 'whiteboard';
|
|
7405
7438
|
});
|
|
@@ -7422,8 +7455,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7422
7455
|
}).catch(function (error) {
|
|
7423
7456
|
_loggerProxy.default.logger.error('Meeting:index#stopWhiteboardShare --> Error ', error);
|
|
7424
7457
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_STOP_WHITEBOARD_SHARE_FAILURE, {
|
|
7425
|
-
correlation_id:
|
|
7426
|
-
locus_id:
|
|
7458
|
+
correlation_id: _this47.correlationId,
|
|
7459
|
+
locus_id: _this47.locusUrl.split('/').pop(),
|
|
7427
7460
|
reason: error.message,
|
|
7428
7461
|
stack: error.stack,
|
|
7429
7462
|
board: {
|
|
@@ -7445,7 +7478,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7445
7478
|
}, {
|
|
7446
7479
|
key: "requestScreenShareFloor",
|
|
7447
7480
|
value: function requestScreenShareFloor() {
|
|
7448
|
-
var
|
|
7481
|
+
var _this48 = this;
|
|
7449
7482
|
if (!this.mediaProperties.hasLocalShareStream() || !this.mediaProperties.mediaDirection.sendShare) {
|
|
7450
7483
|
_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, ")"));
|
|
7451
7484
|
this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
@@ -7476,34 +7509,34 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7476
7509
|
resourceUrl: this.resourceUrl,
|
|
7477
7510
|
shareInstanceId: this.localShareInstanceId
|
|
7478
7511
|
}).then(function () {
|
|
7479
|
-
|
|
7512
|
+
_this48.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
|
|
7480
7513
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_SUCCESS, {
|
|
7481
|
-
correlation_id:
|
|
7482
|
-
locus_id:
|
|
7514
|
+
correlation_id: _this48.correlationId,
|
|
7515
|
+
locus_id: _this48.locusUrl.split('/').pop()
|
|
7483
7516
|
});
|
|
7484
7517
|
return _promise.default.resolve();
|
|
7485
7518
|
}).catch(function (error) {
|
|
7486
7519
|
_loggerProxy.default.logger.error('Meeting:index#share --> Error ', error);
|
|
7487
7520
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_FAILURE, {
|
|
7488
|
-
correlation_id:
|
|
7489
|
-
locus_id:
|
|
7521
|
+
correlation_id: _this48.correlationId,
|
|
7522
|
+
locus_id: _this48.locusUrl.split('/').pop(),
|
|
7490
7523
|
reason: error.message,
|
|
7491
7524
|
stack: error.stack
|
|
7492
7525
|
});
|
|
7493
7526
|
|
|
7494
7527
|
// @ts-ignore
|
|
7495
|
-
|
|
7528
|
+
_this48.webex.internal.newMetrics.submitClientEvent({
|
|
7496
7529
|
name: 'client.share.floor-granted.local',
|
|
7497
7530
|
payload: {
|
|
7498
7531
|
mediaType: 'share',
|
|
7499
7532
|
errors: _util2.default.getChangeMeetingFloorErrorPayload(error.message),
|
|
7500
|
-
shareInstanceId:
|
|
7533
|
+
shareInstanceId: _this48.localShareInstanceId
|
|
7501
7534
|
},
|
|
7502
7535
|
options: {
|
|
7503
|
-
meetingId:
|
|
7536
|
+
meetingId: _this48.id
|
|
7504
7537
|
}
|
|
7505
7538
|
});
|
|
7506
|
-
|
|
7539
|
+
_this48.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
7507
7540
|
return _promise.default.reject(error);
|
|
7508
7541
|
});
|
|
7509
7542
|
}
|
|
@@ -7526,10 +7559,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7526
7559
|
}, {
|
|
7527
7560
|
key: "requestScreenShareFloorIfPending",
|
|
7528
7561
|
value: function requestScreenShareFloorIfPending() {
|
|
7529
|
-
var
|
|
7562
|
+
var _this49 = this;
|
|
7530
7563
|
if (this.floorGrantPending && this.state === _constants.MEETING_STATE.STATES.JOINED) {
|
|
7531
7564
|
this.requestScreenShareFloor().then(function () {
|
|
7532
|
-
|
|
7565
|
+
_this49.floorGrantPending = false;
|
|
7533
7566
|
});
|
|
7534
7567
|
}
|
|
7535
7568
|
}
|
|
@@ -7543,7 +7576,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7543
7576
|
}, {
|
|
7544
7577
|
key: "releaseScreenShareFloor",
|
|
7545
7578
|
value: function releaseScreenShareFloor() {
|
|
7546
|
-
var
|
|
7579
|
+
var _this50 = this;
|
|
7547
7580
|
var content = this.locusInfo.mediaShares.find(function (element) {
|
|
7548
7581
|
return element.name === _constants.CONTENT;
|
|
7549
7582
|
});
|
|
@@ -7578,8 +7611,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7578
7611
|
}).catch(function (error) {
|
|
7579
7612
|
_loggerProxy.default.logger.error('Meeting:index#releaseScreenShareFloor --> Error ', error);
|
|
7580
7613
|
_metrics.default.sendBehavioralMetric(_constants2.default.STOP_FLOOR_REQUEST_FAILURE, {
|
|
7581
|
-
correlation_id:
|
|
7582
|
-
locus_id:
|
|
7614
|
+
correlation_id: _this50.correlationId,
|
|
7615
|
+
locus_id: _this50.locusUrl.split('/').pop(),
|
|
7583
7616
|
reason: error.message,
|
|
7584
7617
|
stack: error.stack
|
|
7585
7618
|
});
|
|
@@ -7758,7 +7791,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7758
7791
|
}, {
|
|
7759
7792
|
key: "changeVideoLayout",
|
|
7760
7793
|
value: function changeVideoLayout(layoutType) {
|
|
7761
|
-
var
|
|
7794
|
+
var _this51 = this;
|
|
7762
7795
|
var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
7763
7796
|
var main = renderInfo.main,
|
|
7764
7797
|
content = renderInfo.content;
|
|
@@ -7812,7 +7845,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7812
7845
|
}
|
|
7813
7846
|
this.lastVideoLayoutInfo = (0, _lodash.cloneDeep)(layoutInfo);
|
|
7814
7847
|
this.locusInfo.once(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_LAYOUT_UPDATED, function (envelope) {
|
|
7815
|
-
_triggerProxy.default.trigger(
|
|
7848
|
+
_triggerProxy.default.trigger(_this51, {
|
|
7816
7849
|
file: 'meeting/index',
|
|
7817
7850
|
function: 'changeVideoLayout'
|
|
7818
7851
|
}, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_LAYOUT_UPDATE, {
|
|
@@ -7928,7 +7961,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7928
7961
|
}, {
|
|
7929
7962
|
key: "endMeetingForAll",
|
|
7930
7963
|
value: function endMeetingForAll() {
|
|
7931
|
-
var
|
|
7964
|
+
var _this52 = this;
|
|
7932
7965
|
// @ts-ignore
|
|
7933
7966
|
this.webex.internal.newMetrics.submitClientEvent({
|
|
7934
7967
|
name: 'client.call.leave',
|
|
@@ -7946,25 +7979,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7946
7979
|
locus_id: this.locusId
|
|
7947
7980
|
});
|
|
7948
7981
|
return _util2.default.endMeetingForAll(this).then(function (end) {
|
|
7949
|
-
|
|
7950
|
-
|
|
7982
|
+
_this52.meetingFiniteStateMachine.end();
|
|
7983
|
+
_this52.clearMeetingData();
|
|
7951
7984
|
// upload logs on leave irrespective of meeting delete
|
|
7952
|
-
_triggerProxy.default.trigger(
|
|
7985
|
+
_triggerProxy.default.trigger(_this52, {
|
|
7953
7986
|
file: 'meeting/index',
|
|
7954
7987
|
function: 'endMeetingForAll'
|
|
7955
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7988
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this52);
|
|
7956
7989
|
return end;
|
|
7957
7990
|
}).catch(function (error) {
|
|
7958
|
-
|
|
7991
|
+
_this52.meetingFiniteStateMachine.fail(error);
|
|
7959
7992
|
_loggerProxy.default.logger.error('Meeting:index#endMeetingForAll --> Failed to end meeting ', error);
|
|
7960
7993
|
// upload logs on leave irrespective of meeting delete
|
|
7961
|
-
_triggerProxy.default.trigger(
|
|
7994
|
+
_triggerProxy.default.trigger(_this52, {
|
|
7962
7995
|
file: 'meeting/index',
|
|
7963
7996
|
function: 'endMeetingForAll'
|
|
7964
|
-
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS,
|
|
7997
|
+
}, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this52);
|
|
7965
7998
|
_metrics.default.sendBehavioralMetric(_constants2.default.MEETING_END_ALL_FAILURE, {
|
|
7966
|
-
correlation_id:
|
|
7967
|
-
locus_id:
|
|
7999
|
+
correlation_id: _this52.correlationId,
|
|
8000
|
+
locus_id: _this52.locusUrl.split('/').pop(),
|
|
7968
8001
|
reason: error.message,
|
|
7969
8002
|
stack: error.stack,
|
|
7970
8003
|
code: error.code
|
|
@@ -8085,7 +8118,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8085
8118
|
}
|
|
8086
8119
|
}, _callee34, this);
|
|
8087
8120
|
}));
|
|
8088
|
-
function enableMusicMode(
|
|
8121
|
+
function enableMusicMode(_x36) {
|
|
8089
8122
|
return _enableMusicMode.apply(this, arguments);
|
|
8090
8123
|
}
|
|
8091
8124
|
return enableMusicMode;
|
|
@@ -8106,7 +8139,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8106
8139
|
_this$mediaProperties41,
|
|
8107
8140
|
_this$mediaProperties42,
|
|
8108
8141
|
_this$mediaProperties43,
|
|
8109
|
-
|
|
8142
|
+
_this53 = this;
|
|
8110
8143
|
var LOG_HEADER = 'Meeting:index#updateTranscodedMediaConnection -->';
|
|
8111
8144
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " starting"));
|
|
8112
8145
|
if (!this.canUpdateMedia()) {
|
|
@@ -8131,8 +8164,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8131
8164
|
}).catch(function (error) {
|
|
8132
8165
|
_loggerProxy.default.logger.error("".concat(LOG_HEADER, " Error: "), error);
|
|
8133
8166
|
_metrics.default.sendBehavioralMetric(_constants2.default.UPDATE_MEDIA_FAILURE, {
|
|
8134
|
-
correlation_id:
|
|
8135
|
-
locus_id:
|
|
8167
|
+
correlation_id: _this53.correlationId,
|
|
8168
|
+
locus_id: _this53.locusUrl.split('/').pop(),
|
|
8136
8169
|
reason: error.message,
|
|
8137
8170
|
stack: error.stack
|
|
8138
8171
|
});
|
|
@@ -8209,7 +8242,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8209
8242
|
}
|
|
8210
8243
|
}, _callee35, this);
|
|
8211
8244
|
}));
|
|
8212
|
-
function publishStream(
|
|
8245
|
+
function publishStream(_x37, _x38) {
|
|
8213
8246
|
return _publishStream.apply(this, arguments);
|
|
8214
8247
|
}
|
|
8215
8248
|
return publishStream;
|
|
@@ -8254,7 +8287,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8254
8287
|
}
|
|
8255
8288
|
}, _callee36, this);
|
|
8256
8289
|
}));
|
|
8257
|
-
function unpublishStream(
|
|
8290
|
+
function unpublishStream(_x39, _x40) {
|
|
8258
8291
|
return _unpublishStream.apply(this, arguments);
|
|
8259
8292
|
}
|
|
8260
8293
|
return unpublishStream;
|
|
@@ -8361,7 +8394,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8361
8394
|
}
|
|
8362
8395
|
}, _callee37, this);
|
|
8363
8396
|
}));
|
|
8364
|
-
function publishStreams(
|
|
8397
|
+
function publishStreams(_x41) {
|
|
8365
8398
|
return _publishStreams.apply(this, arguments);
|
|
8366
8399
|
}
|
|
8367
8400
|
return publishStreams;
|
|
@@ -8435,7 +8468,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
8435
8468
|
}
|
|
8436
8469
|
}, _callee38, this);
|
|
8437
8470
|
}));
|
|
8438
|
-
function unpublishStreams(
|
|
8471
|
+
function unpublishStreams(_x42) {
|
|
8439
8472
|
return _unpublishStreams.apply(this, arguments);
|
|
8440
8473
|
}
|
|
8441
8474
|
return unpublishStreams;
|