@webex/plugin-meetings 3.8.0-next.46 → 3.8.0-next.47

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.
@@ -209,7 +209,7 @@ var Breakout = _webexCore.WebexPlugin.extend({
209
209
  sessionId: this.sessionId
210
210
  });
211
211
  },
212
- version: "3.8.0-next.46"
212
+ version: "3.8.0-next.47"
213
213
  });
214
214
  var _default = exports.default = Breakout;
215
215
  //# sourceMappingURL=breakout.js.map
@@ -1046,7 +1046,7 @@ var Breakouts = _webexCore.WebexPlugin.extend({
1046
1046
  this.trigger(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN);
1047
1047
  }
1048
1048
  },
1049
- version: "3.8.0-next.46"
1049
+ version: "3.8.0-next.47"
1050
1050
  });
1051
1051
  var _default = exports.default = Breakouts;
1052
1052
  //# sourceMappingURL=index.js.map
@@ -373,7 +373,7 @@ var SimultaneousInterpretation = _webexCore.WebexPlugin.extend({
373
373
  throw error;
374
374
  });
375
375
  },
376
- version: "3.8.0-next.46"
376
+ version: "3.8.0-next.47"
377
377
  });
378
378
  var _default = exports.default = SimultaneousInterpretation;
379
379
  //# sourceMappingURL=index.js.map
@@ -18,7 +18,7 @@ var SILanguage = _webexCore.WebexPlugin.extend({
18
18
  languageCode: 'number',
19
19
  languageName: 'string'
20
20
  },
21
- version: "3.8.0-next.46"
21
+ version: "3.8.0-next.47"
22
22
  });
23
23
  var _default = exports.default = SILanguage;
24
24
  //# sourceMappingURL=siLanguage.js.map
@@ -23,7 +23,6 @@ var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/pr
23
23
  var _map = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/map"));
24
24
  var _isNan = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/number/is-nan"));
25
25
  var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
26
- var _get = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/reflect/get"));
27
26
  var _weakMap = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/weak-map"));
28
27
  var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/typeof"));
29
28
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
@@ -617,10 +616,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
617
616
  /**
618
617
  * Handles ROAP_FAILURE event from the webrtc media connection
619
618
  *
620
- * @param {Error} error
619
+ * @param {Error} roapError
621
620
  * @returns {void}
622
621
  */
623
- (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleRoapFailure", function (error) {
622
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleRoapFailure", function (roapError) {
624
623
  // eslint-disable-next-line @typescript-eslint/no-shadow
625
624
  var sendBehavioralMetric = function sendBehavioralMetric(metricName, error, correlationId) {
626
625
  var _error$cause;
@@ -635,6 +634,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
635
634
  };
636
635
  _metrics.default.sendBehavioralMetric(metricName, data, metadata);
637
636
  };
637
+ var error = _util2.default.markErrorAsHandledBySdk(roapError);
638
638
  if (error instanceof _internalMediaCore.Errors.SdpOfferCreationError) {
639
639
  sendBehavioralMetric(_constants2.default.PEERCONNECTION_FAILURE, error, _this.correlationId);
640
640
 
@@ -680,7 +680,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
680
680
  if (_this.deferSDPAnswer) {
681
681
  clearTimeout(_this.sdpResponseTimer);
682
682
  _this.sdpResponseTimer = undefined;
683
- _this.deferSDPAnswer.reject();
683
+ _this.deferSDPAnswer.reject(error);
684
684
  }
685
685
  } else if (error instanceof _internalMediaCore.Errors.SdpError) {
686
686
  // this covers also the case of Errors.IceGatheringError which extends Errors.SdpError
@@ -803,7 +803,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
803
803
  }
804
804
  }), {
805
805
  logText: "".concat(LOG_HEADER, " Roap Offer")
806
- }).catch(function (error) {
806
+ }).catch(function (originalError) {
807
+ var error = _util2.default.markErrorAsHandledBySdk(originalError);
807
808
  var multistreamNotSupported = error instanceof _multistreamNotSupportedError.default;
808
809
 
809
810
  // @ts-ignore
@@ -6273,15 +6274,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6273
6274
  file: 'meeting/index',
6274
6275
  function: 'join'
6275
6276
  }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this36);
6276
- var proxyError = new Proxy(error, {
6277
- // eslint-disable-next-line require-jsdoc
6278
- get: function get(target, prop) {
6279
- if (prop === 'handledBySdk') {
6280
- return true;
6281
- }
6282
- return (0, _get.default)(target, prop);
6283
- }
6284
- });
6277
+ var proxyError = _util2.default.markErrorAsHandledBySdk(error);
6285
6278
  joinFailed(proxyError);
6286
6279
  _this36.deferJoin = undefined;
6287
6280
  return _promise.default.reject(proxyError);
@@ -6869,7 +6862,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6869
6862
  key: "waitForMediaConnectionConnected",
6870
6863
  value: (function () {
6871
6864
  var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24() {
6872
- var iceConnected, _this$mediaProperties8, _this$mediaProperties9, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12, _this$mediaProperties13, _this$mediaProperties14;
6865
+ var iceConnected, handledBySdk, _this$mediaProperties8, _this$mediaProperties9, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12, _this$mediaProperties13, _this$mediaProperties14, caError, timedOutError;
6873
6866
  return _regenerator.default.wrap(function _callee24$(_context24) {
6874
6867
  while (1) switch (_context24.prev = _context24.next) {
6875
6868
  case 0:
@@ -6877,59 +6870,61 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6877
6870
  _context24.next = 3;
6878
6871
  return this.mediaProperties.waitForMediaConnectionConnected();
6879
6872
  case 3:
6880
- _context24.next = 30;
6873
+ _context24.next = 27;
6881
6874
  break;
6882
6875
  case 5:
6883
6876
  _context24.prev = 5;
6884
6877
  _context24.t0 = _context24["catch"](0);
6885
6878
  iceConnected = _context24.t0.iceConnected;
6879
+ handledBySdk = false;
6886
6880
  if (this.hasMediaConnectionConnectedAtLeastOnce) {
6887
- _context24.next = 29;
6881
+ _context24.next = 24;
6888
6882
  break;
6889
6883
  }
6890
- _context24.t1 = this.webex.internal.newMetrics;
6891
- _context24.t2 = !this.turnServerUsed;
6892
- _context24.t3 = this.addMediaData.icePhaseCallback();
6893
- _context24.t4 = this.webex.internal.newMetrics.callDiagnosticMetrics;
6894
- _context24.t5 = _internalPluginMetrics.CallDiagnosticUtils;
6895
- _context24.t6 = ((_this$mediaProperties8 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties8 === void 0 ? void 0 : (_this$mediaProperties9 = _this$mediaProperties8.multistreamConnection) === null || _this$mediaProperties9 === void 0 ? void 0 : (_this$mediaProperties10 = _this$mediaProperties9.pc) === null || _this$mediaProperties10 === void 0 ? void 0 : (_this$mediaProperties11 = _this$mediaProperties10.pc) === null || _this$mediaProperties11 === void 0 ? void 0 : _this$mediaProperties11.signalingState) || ((_this$mediaProperties12 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties12 === void 0 ? void 0 : (_this$mediaProperties13 = _this$mediaProperties12.mediaConnection) === null || _this$mediaProperties13 === void 0 ? void 0 : (_this$mediaProperties14 = _this$mediaProperties13.pc) === null || _this$mediaProperties14 === void 0 ? void 0 : _this$mediaProperties14.signalingState) || 'unknown';
6896
- _context24.t7 = iceConnected;
6897
- _context24.t8 = this.turnServerUsed;
6898
- _context24.next = 19;
6884
+ _context24.t1 = this.webex.internal.newMetrics.callDiagnosticMetrics;
6885
+ _context24.t2 = _internalPluginMetrics.CallDiagnosticUtils;
6886
+ _context24.t3 = ((_this$mediaProperties8 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties8 === void 0 ? void 0 : (_this$mediaProperties9 = _this$mediaProperties8.multistreamConnection) === null || _this$mediaProperties9 === void 0 ? void 0 : (_this$mediaProperties10 = _this$mediaProperties9.pc) === null || _this$mediaProperties10 === void 0 ? void 0 : (_this$mediaProperties11 = _this$mediaProperties10.pc) === null || _this$mediaProperties11 === void 0 ? void 0 : _this$mediaProperties11.signalingState) || ((_this$mediaProperties12 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties12 === void 0 ? void 0 : (_this$mediaProperties13 = _this$mediaProperties12.mediaConnection) === null || _this$mediaProperties13 === void 0 ? void 0 : (_this$mediaProperties14 = _this$mediaProperties13.pc) === null || _this$mediaProperties14 === void 0 ? void 0 : _this$mediaProperties14.signalingState) || 'unknown';
6887
+ _context24.t4 = iceConnected;
6888
+ _context24.t5 = this.turnServerUsed;
6889
+ _context24.next = 17;
6899
6890
  return this.webex.meetings.reachability.isWebexMediaBackendUnreachable().catch(function () {
6900
6891
  return false;
6901
6892
  });
6902
- case 19:
6903
- _context24.t9 = _context24.sent;
6904
- _context24.t10 = {
6905
- signalingState: _context24.t6,
6906
- iceConnected: _context24.t7,
6907
- turnServerUsed: _context24.t8,
6908
- unreachable: _context24.t9
6909
- };
6910
- _context24.t11 = _context24.t5.generateClientErrorCodeForIceFailure.call(_context24.t5, _context24.t10);
6911
- _context24.t12 = {
6912
- clientErrorCode: _context24.t11
6913
- };
6914
- _context24.t13 = _context24.t4.getErrorPayloadForClientErrorCode.call(_context24.t4, _context24.t12);
6915
- _context24.t14 = [_context24.t13];
6916
- _context24.t15 = {
6917
- canProceed: _context24.t2,
6918
- icePhase: _context24.t3,
6919
- errors: _context24.t14
6893
+ case 17:
6894
+ _context24.t6 = _context24.sent;
6895
+ _context24.t7 = {
6896
+ signalingState: _context24.t3,
6897
+ iceConnected: _context24.t4,
6898
+ turnServerUsed: _context24.t5,
6899
+ unreachable: _context24.t6
6920
6900
  };
6921
- _context24.t16 = {
6922
- meetingId: this.id
6901
+ _context24.t8 = _context24.t2.generateClientErrorCodeForIceFailure.call(_context24.t2, _context24.t7);
6902
+ _context24.t9 = {
6903
+ clientErrorCode: _context24.t8
6923
6904
  };
6924
- _context24.t17 = {
6905
+ caError = _context24.t1.getErrorPayloadForClientErrorCode.call(_context24.t1, _context24.t9);
6906
+ // Only send CA event for join flow if we haven't successfully connected media yet
6907
+ // @ts-ignore
6908
+ this.webex.internal.newMetrics.submitClientEvent({
6925
6909
  name: 'client.ice.end',
6926
- payload: _context24.t15,
6927
- options: _context24.t16
6928
- };
6929
- _context24.t1.submitClientEvent.call(_context24.t1, _context24.t17);
6930
- case 29:
6931
- throw new Error("Timed out waiting for media connection to be connected, correlationId=".concat(this.correlationId));
6932
- case 30:
6910
+ payload: {
6911
+ canProceed: !this.turnServerUsed,
6912
+ // If we haven't done turn tls retry yet we will proceed with join attempt
6913
+ icePhase: this.addMediaData.icePhaseCallback(),
6914
+ errors: [caError]
6915
+ },
6916
+ options: {
6917
+ meetingId: this.id
6918
+ }
6919
+ });
6920
+ handledBySdk = true;
6921
+ case 24:
6922
+ timedOutError = new Error("Timed out waiting for media connection to be connected, correlationId=".concat(this.correlationId));
6923
+ if (handledBySdk) {
6924
+ timedOutError = _util2.default.markErrorAsHandledBySdk(timedOutError);
6925
+ }
6926
+ throw timedOutError;
6927
+ case 27:
6933
6928
  case "end":
6934
6929
  return _context24.stop();
6935
6930
  }
@@ -6998,6 +6993,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6998
6993
  deferSDPAnswer = this.deferSDPAnswer;
6999
6994
  this.sdpResponseTimer = setTimeout(function () {
7000
6995
  _loggerProxy.default.logger.warn("".concat(LOG_HEADER, " timeout! no REMOTE SDP ANSWER received within ").concat(_constants.ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT / 1000, " seconds"));
6996
+ var timeoutError = new Error('Timeout waiting for SDP answer');
6997
+ var timeoutErrorProxy = _util2.default.markErrorAsHandledBySdk(timeoutError);
6998
+
7001
6999
  // @ts-ignore
7002
7000
  _this43.webex.internal.newMetrics.submitClientEvent({
7003
7001
  name: 'client.media-engine.remote-sdp-received',
@@ -7011,7 +7009,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7011
7009
  },
7012
7010
  options: {
7013
7011
  meetingId: _this43.id,
7014
- rawError: new Error('Timeout waiting for SDP answer')
7012
+ rawError: timeoutErrorProxy
7015
7013
  }
7016
7014
  });
7017
7015
  deferSDPAnswer.reject(new Error('Timed out waiting for REMOTE SDP ANSWER'));
@@ -7137,7 +7135,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7137
7135
  key: "handleWaitForMediaConnectionConnectedError",
7138
7136
  value: (function () {
7139
7137
  var _handleWaitForMediaConnectionConnectedError = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28(error, remoteMediaManagerConfig, bundlePolicy) {
7140
- var LOG_HEADER;
7138
+ var LOG_HEADER, addMediaFailedError;
7141
7139
  return _regenerator.default.wrap(function _callee28$(_context28) {
7142
7140
  while (1) switch (_context28.prev = _context28.next) {
7143
7141
  case 0:
@@ -7150,12 +7148,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7150
7148
  _context28.next = 5;
7151
7149
  return this.retryWithForcedTurnDiscovery(remoteMediaManagerConfig, bundlePolicy);
7152
7150
  case 5:
7153
- _context28.next = 9;
7151
+ _context28.next = 11;
7154
7152
  break;
7155
7153
  case 7:
7156
7154
  _loggerProxy.default.logger.error("".concat(LOG_HEADER, " error waiting for media to connect using UDP, TCP and TURN-TLS"), error);
7157
- throw new _webexErrors.AddMediaFailed();
7158
- case 9:
7155
+ addMediaFailedError = new _webexErrors.AddMediaFailed(); // @ts-ignore - handledBySdk is added by a proxy
7156
+ if (error.handledBySdk) {
7157
+ addMediaFailedError = _util2.default.markErrorAsHandledBySdk(addMediaFailedError);
7158
+ }
7159
+ throw addMediaFailedError;
7160
+ case 11:
7159
7161
  case "end":
7160
7162
  return _context28.stop();
7161
7163
  }