@webex/plugin-meetings 3.10.0-next.9 → 3.10.0-set-bitrate.2

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.
Files changed (73) hide show
  1. package/dist/breakouts/breakout.js +1 -1
  2. package/dist/breakouts/index.js +1 -1
  3. package/dist/constants.js +11 -3
  4. package/dist/constants.js.map +1 -1
  5. package/dist/hashTree/constants.js +20 -0
  6. package/dist/hashTree/constants.js.map +1 -0
  7. package/dist/hashTree/hashTree.js +515 -0
  8. package/dist/hashTree/hashTree.js.map +1 -0
  9. package/dist/hashTree/hashTreeParser.js +1266 -0
  10. package/dist/hashTree/hashTreeParser.js.map +1 -0
  11. package/dist/hashTree/types.js +22 -0
  12. package/dist/hashTree/types.js.map +1 -0
  13. package/dist/hashTree/utils.js +48 -0
  14. package/dist/hashTree/utils.js.map +1 -0
  15. package/dist/interpretation/index.js +1 -1
  16. package/dist/interpretation/siLanguage.js +1 -1
  17. package/dist/locus-info/index.js +550 -130
  18. package/dist/locus-info/index.js.map +1 -1
  19. package/dist/locus-info/types.js +7 -0
  20. package/dist/locus-info/types.js.map +1 -0
  21. package/dist/meeting/index.js +100 -50
  22. package/dist/meeting/index.js.map +1 -1
  23. package/dist/meeting/util.js +1 -0
  24. package/dist/meeting/util.js.map +1 -1
  25. package/dist/meetings/index.js +112 -70
  26. package/dist/meetings/index.js.map +1 -1
  27. package/dist/metrics/constants.js +3 -1
  28. package/dist/metrics/constants.js.map +1 -1
  29. package/dist/reachability/clusterReachability.js +44 -358
  30. package/dist/reachability/clusterReachability.js.map +1 -1
  31. package/dist/reachability/reachability.types.js +14 -1
  32. package/dist/reachability/reachability.types.js.map +1 -1
  33. package/dist/reachability/reachabilityPeerConnection.js +445 -0
  34. package/dist/reachability/reachabilityPeerConnection.js.map +1 -0
  35. package/dist/types/constants.d.ts +26 -21
  36. package/dist/types/hashTree/constants.d.ts +8 -0
  37. package/dist/types/hashTree/hashTree.d.ts +129 -0
  38. package/dist/types/hashTree/hashTreeParser.d.ts +260 -0
  39. package/dist/types/hashTree/types.d.ts +27 -0
  40. package/dist/types/hashTree/utils.d.ts +9 -0
  41. package/dist/types/locus-info/index.d.ts +97 -80
  42. package/dist/types/locus-info/types.d.ts +54 -0
  43. package/dist/types/meeting/index.d.ts +23 -9
  44. package/dist/types/meetings/index.d.ts +9 -2
  45. package/dist/types/metrics/constants.d.ts +2 -0
  46. package/dist/types/reachability/clusterReachability.d.ts +10 -88
  47. package/dist/types/reachability/reachability.types.d.ts +12 -1
  48. package/dist/types/reachability/reachabilityPeerConnection.d.ts +111 -0
  49. package/dist/webinar/index.js +1 -1
  50. package/package.json +23 -22
  51. package/src/constants.ts +13 -1
  52. package/src/hashTree/constants.ts +9 -0
  53. package/src/hashTree/hashTree.ts +463 -0
  54. package/src/hashTree/hashTreeParser.ts +1161 -0
  55. package/src/hashTree/types.ts +32 -0
  56. package/src/hashTree/utils.ts +42 -0
  57. package/src/locus-info/index.ts +597 -154
  58. package/src/locus-info/types.ts +53 -0
  59. package/src/meeting/index.ts +88 -28
  60. package/src/meeting/util.ts +1 -0
  61. package/src/meetings/index.ts +104 -51
  62. package/src/metrics/constants.ts +2 -0
  63. package/src/reachability/clusterReachability.ts +50 -347
  64. package/src/reachability/reachability.types.ts +15 -1
  65. package/src/reachability/reachabilityPeerConnection.ts +416 -0
  66. package/test/unit/spec/hashTree/hashTree.ts +655 -0
  67. package/test/unit/spec/hashTree/hashTreeParser.ts +1532 -0
  68. package/test/unit/spec/hashTree/utils.ts +103 -0
  69. package/test/unit/spec/locus-info/index.js +795 -16
  70. package/test/unit/spec/meeting/index.js +120 -20
  71. package/test/unit/spec/meeting/utils.js +77 -0
  72. package/test/unit/spec/meetings/index.js +71 -26
  73. package/test/unit/spec/reachability/clusterReachability.ts +281 -138
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import {HtMeta} from '../hashTree/types';\n\nexport type LocusFullState = {\n active: boolean;\n count: number;\n lastActive: string;\n locked: boolean;\n sessionId: string;\n seessionIds: string[];\n startTime: number;\n state: string;\n type: string;\n};\n\nexport type Links = {\n services: Record<'breakout' | 'record', {url: string}>; // there exist also other services, but these are the ones we currently use\n resources: Record<'webcastInstance' | 'visibleDataSets', {url: string}>; // there exist also other resources, but these are the ones we currently use\n};\n\nexport type LocusDTO = {\n controls?: any;\n fullState?: LocusFullState;\n host?: {\n id: string;\n incomingCallProtocols: any[];\n isExternal: boolean;\n name: string;\n orgId: string;\n };\n htMeta?: HtMeta;\n info?: any;\n jsSdkMeta?: {\n removedParticipantIds: string[]; // list of ids of participants that are removed in the last update\n };\n links?: Links;\n mediaShares?: any[];\n meetings?: any[];\n participants: any[];\n replaces?: any[];\n self?: any;\n sequence?: {\n dirtyParticipants: number;\n entries: number[];\n rangeEnd: number;\n rangeStart: number;\n sequenceHash: number;\n sessionToken: string;\n since: string;\n totalParticipants: number;\n };\n syncUrl?: string;\n url?: string;\n};\n"],"mappings":"","ignoreList":[]}
@@ -498,6 +498,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
498
498
  (0, _defineProperty3.default)(_this, "localAudioStreamMuteStateHandler", void 0);
499
499
  (0, _defineProperty3.default)(_this, "localVideoStreamMuteStateHandler", void 0);
500
500
  (0, _defineProperty3.default)(_this, "localOutputTrackChangeHandler", void 0);
501
+ (0, _defineProperty3.default)(_this, "localConstraintsChangeHandler", void 0);
501
502
  (0, _defineProperty3.default)(_this, "roles", void 0);
502
503
  (0, _defineProperty3.default)(_this, "environment", void 0);
503
504
  (0, _defineProperty3.default)(_this, "namespace", _constants.MEETINGS);
@@ -560,6 +561,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
560
561
  (0, _defineProperty3.default)(_this, "uploadLogsTimer", void 0);
561
562
  (0, _defineProperty3.default)(_this, "logUploadIntervalIndex", void 0);
562
563
  (0, _defineProperty3.default)(_this, "mediaServerIp", void 0);
564
+ /** Handles Locus LLM events
565
+ *
566
+ * @param {LocusLLMEvent} event - The Locus LLM event to process
567
+ * @returns {void}
568
+ */
569
+ (0, _defineProperty3.default)(_this, "processLocusLLMEvent", function (event) {
570
+ if (event.data.eventType === _constants.LOCUSEVENT.HASH_TREE_DATA_UPDATED) {
571
+ _this.locusInfo.parse(_this, event.data);
572
+ } else {
573
+ _loggerProxy.default.logger.warn("Meeting:index#processLocusLLMEvent --> Unknown event type: ".concat(event.data.eventType));
574
+ }
575
+ });
563
576
  /**
564
577
  * Callback called when a relay event is received from meeting LLM Connection
565
578
  * @param {RelayEvent} e Event object coming from LLM Connection
@@ -1425,6 +1438,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
1425
1438
 
1426
1439
  // @ts-ignore - fix types
1427
1440
  _this.webex.internal.llm.off('event:relay.event', _this.processRelayEvent);
1441
+ // @ts-ignore - Fix type
1442
+ _this.webex.internal.llm.off(_constants.LOCUS_LLM_EVENT, _this.processLocusLLMEvent);
1428
1443
  });
1429
1444
  /**
1430
1445
  * starts keepAlives being sent
@@ -2210,6 +2225,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
2210
2225
  _this.updateTranscodedMediaConnection();
2211
2226
  }
2212
2227
  };
2228
+ _this.localConstraintsChangeHandler = function () {
2229
+ if (!_this.isMultistream) {
2230
+ var _this$mediaProperties6;
2231
+ (_this$mediaProperties6 = _this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties6 === void 0 ? void 0 : _this$mediaProperties6.updatePreferredBitrateKbps();
2232
+ }
2233
+ };
2213
2234
 
2214
2235
  /**
2215
2236
  * Promise that exists if SDP offer has been generated, and resolves once sdp answer is received.
@@ -5000,13 +5021,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5000
5021
  }
5001
5022
 
5002
5023
  /**
5003
- * Set the locus info the class instance
5004
- * @param {Object} locus
5005
- * @param {Array} locus.mediaConnections
5006
- * @param {String} locus.locusUrl
5007
- * @param {String} locus.locusId
5008
- * @param {String} locus.mediaId
5009
- * @param {Object} locus.host
5024
+ * Set the locus info the class instance. Should be called with the parsed locus
5025
+ * we got in the join response.
5026
+ *
5027
+ * @param {Object} data
5028
+ * @param {Array} data.mediaConnections
5029
+ * @param {String} data.locusUrl
5030
+ * @param {String} data.locusId
5031
+ * @param {String} data.mediaId
5032
+ * @param {Object} data.host
5010
5033
  * @todo change name to genertic parser
5011
5034
  * @returns {undefined}
5012
5035
  * @private
@@ -5014,18 +5037,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5014
5037
  */
5015
5038
  }, {
5016
5039
  key: "setLocus",
5017
- value: function setLocus(locus) {
5018
- var mtgLocus = locus.locus || locus;
5040
+ value: function setLocus(data) {
5041
+ var mtgLocus = data.locus;
5019
5042
 
5020
5043
  // LocusInfo object saves the locus object
5021
5044
  // this.locus = mtgLocus;
5022
- this.mediaConnections = locus.mediaConnections;
5023
- this.locusUrl = locus.locusUrl || locus.url;
5024
- this.locusId = locus.locusId;
5025
- this.selfId = locus.selfId;
5026
- this.mediaId = locus.mediaId;
5045
+ this.mediaConnections = data.mediaConnections;
5046
+ this.locusUrl = data.locusUrl;
5047
+ this.locusId = data.locusId;
5048
+ this.selfId = data.selfId;
5049
+ this.mediaId = data.mediaId;
5027
5050
  this.hostId = mtgLocus.host ? mtgLocus.host.id : this.hostId;
5028
- this.locusInfo.initialSetup(mtgLocus);
5051
+ this.locusInfo.initialSetup({
5052
+ trigger: 'join-response',
5053
+ locus: mtgLocus,
5054
+ dataSets: data.dataSets
5055
+ });
5029
5056
  }
5030
5057
 
5031
5058
  /**
@@ -5139,10 +5166,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5139
5166
  key: "closeRemoteStreams",
5140
5167
  value: function closeRemoteStreams() {
5141
5168
  var _this24 = this;
5142
- var _this$mediaProperties6 = this.mediaProperties,
5143
- remoteAudioStream = _this$mediaProperties6.remoteAudioStream,
5144
- remoteVideoStream = _this$mediaProperties6.remoteVideoStream,
5145
- remoteShareStream = _this$mediaProperties6.remoteShareStream;
5169
+ var _this$mediaProperties7 = this.mediaProperties,
5170
+ remoteAudioStream = _this$mediaProperties7.remoteAudioStream,
5171
+ remoteVideoStream = _this$mediaProperties7.remoteVideoStream,
5172
+ remoteShareStream = _this$mediaProperties7.remoteShareStream;
5146
5173
 
5147
5174
  /**
5148
5175
  * Triggers an event to the developer
@@ -5244,13 +5271,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5244
5271
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localVideoStreamMuteStateHandler);
5245
5272
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.localVideoStreamMuteStateHandler);
5246
5273
  oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5247
-
5274
+ oldStream === null || oldStream === void 0 ? void 0 : oldStream.off(_mediaHelpers.LocalStreamEventNames.ConstraintsChange, this.localConstraintsChangeHandler);
5248
5275
  // we don't update this.mediaProperties.mediaDirection.sendVideo, because we always keep it as true to avoid extra SDP exchanges
5249
5276
  this.mediaProperties.setLocalVideoStream(localStream);
5250
5277
  (_this$video2 = this.video) === null || _this$video2 === void 0 ? void 0 : _this$video2.handleLocalStreamChange(this);
5251
5278
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localVideoStreamMuteStateHandler);
5252
5279
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.localVideoStreamMuteStateHandler);
5253
5280
  localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5281
+ localStream === null || localStream === void 0 ? void 0 : localStream.on(_mediaHelpers.LocalStreamEventNames.ConstraintsChange, this.localConstraintsChangeHandler);
5254
5282
  if (!(!this.isMultistream || !localStream)) {
5255
5283
  _context11.next = 1;
5256
5284
  break;
@@ -5394,17 +5422,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5394
5422
  }, {
5395
5423
  key: "cleanupLocalStreams",
5396
5424
  value: function cleanupLocalStreams() {
5397
- var _this$mediaProperties7 = this.mediaProperties,
5398
- audioStream = _this$mediaProperties7.audioStream,
5399
- videoStream = _this$mediaProperties7.videoStream,
5400
- shareAudioStream = _this$mediaProperties7.shareAudioStream,
5401
- shareVideoStream = _this$mediaProperties7.shareVideoStream;
5425
+ var _this$mediaProperties8 = this.mediaProperties,
5426
+ audioStream = _this$mediaProperties8.audioStream,
5427
+ videoStream = _this$mediaProperties8.videoStream,
5428
+ shareAudioStream = _this$mediaProperties8.shareAudioStream,
5429
+ shareVideoStream = _this$mediaProperties8.shareVideoStream;
5402
5430
  audioStream === null || audioStream === void 0 ? void 0 : audioStream.off(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localAudioStreamMuteStateHandler);
5403
5431
  audioStream === null || audioStream === void 0 ? void 0 : audioStream.off(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.localAudioStreamMuteStateHandler);
5404
5432
  audioStream === null || audioStream === void 0 ? void 0 : audioStream.off(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5405
5433
  videoStream === null || videoStream === void 0 ? void 0 : videoStream.off(_mediaHelpers.LocalStreamEventNames.UserMuteStateChange, this.localVideoStreamMuteStateHandler);
5406
5434
  videoStream === null || videoStream === void 0 ? void 0 : videoStream.off(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.localVideoStreamMuteStateHandler);
5407
5435
  videoStream === null || videoStream === void 0 ? void 0 : videoStream.off(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5436
+ videoStream === null || videoStream === void 0 ? void 0 : videoStream.off(_mediaHelpers.LocalStreamEventNames.ConstraintsChange, this.localConstraintsChangeHandler);
5408
5437
  shareAudioStream === null || shareAudioStream === void 0 ? void 0 : shareAudioStream.off(_mediaHelpers.StreamEventNames.Ended, this.handleShareAudioStreamEnded);
5409
5438
  shareAudioStream === null || shareAudioStream === void 0 ? void 0 : shareAudioStream.off(_mediaHelpers.LocalStreamEventNames.OutputTrackChange, this.localOutputTrackChangeHandler);
5410
5439
  shareVideoStream === null || shareVideoStream === void 0 ? void 0 : shareVideoStream.off(_mediaHelpers.LocalStreamEventNames.SystemMuteStateChange, this.handleShareVideoStreamMuteStateChange);
@@ -5814,6 +5843,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5814
5843
  _leaveError,
5815
5844
  leaveError,
5816
5845
  shouldRetry,
5846
+ _error2,
5847
+ _error3,
5817
5848
  _args14 = arguments,
5818
5849
  _t9,
5819
5850
  _t0;
@@ -5905,6 +5936,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
5905
5936
  // so there is no point doing a retry
5906
5937
  shouldRetry = false;
5907
5938
  }
5939
+ if (_internalPluginMetrics.CallDiagnosticUtils.isBrowserMediaError(_t9)) {
5940
+ shouldRetry = false;
5941
+ // eslint-disable-next-line no-ex-assign
5942
+ _t9 = (0, _lodash.merge)({
5943
+ error: {
5944
+ body: {
5945
+ errorCode: _internalPluginMetrics.CallDiagnosticUtils.getBrowserMediaErrorCode(_t9),
5946
+ message: (_error2 = _t9) === null || _error2 === void 0 ? void 0 : _error2.message,
5947
+ name: (_error3 = _t9) === null || _error3 === void 0 ? void 0 : _error3.name
5948
+ }
5949
+ }
5950
+ });
5951
+ }
5908
5952
 
5909
5953
  // we only want to call leave if join was successful and this was a retry or we won't be doing any more retries
5910
5954
  if (!(joined && (isRetry || !shouldRetry))) {
@@ -6253,9 +6297,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6253
6297
  joinFailed,
6254
6298
  joinSuccess,
6255
6299
  _errorMessage2,
6256
- _error2,
6300
+ _error4,
6257
6301
  _errorMessage3,
6258
- _error3,
6302
+ _error5,
6259
6303
  _args17 = arguments,
6260
6304
  _t10;
6261
6305
  return _regenerator.default.wrap(function (_context17) {
@@ -6339,11 +6383,11 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6339
6383
  break;
6340
6384
  }
6341
6385
  _errorMessage2 = "Meeting:index#join --> ".concat(options.meetingQuality, " not defined");
6342
- _error2 = new Error(_errorMessage2);
6386
+ _error4 = new Error(_errorMessage2);
6343
6387
  _loggerProxy.default.logger.error(_errorMessage2);
6344
- joinFailed(_error2);
6388
+ joinFailed(_error4);
6345
6389
  this.deferJoin = undefined;
6346
- return _context17.abrupt("return", _promise.default.reject(_error2));
6390
+ return _context17.abrupt("return", _promise.default.reject(_error4));
6347
6391
  case 3:
6348
6392
  this.mediaProperties.setRemoteQualityLevel(options.meetingQuality);
6349
6393
  case 4:
@@ -6357,8 +6401,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6357
6401
  }
6358
6402
  _errorMessage3 = "Meeting:index#join --> ".concat(options.meetingQuality.remote, " not defined");
6359
6403
  _loggerProxy.default.logger.error(_errorMessage3);
6360
- _error3 = new Error(_errorMessage3);
6361
- joinFailed(_error3);
6404
+ _error5 = new Error(_errorMessage3);
6405
+ joinFailed(_error5);
6362
6406
  this.deferJoin = undefined;
6363
6407
  return _context17.abrupt("return", _promise.default.reject(new Error(_errorMessage3)));
6364
6408
  case 5:
@@ -6499,6 +6543,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6499
6543
  case 2:
6500
6544
  // @ts-ignore - Fix type
6501
6545
  this.webex.internal.llm.off('event:relay.event', this.processRelayEvent);
6546
+ // @ts-ignore - Fix type
6547
+ this.webex.internal.llm.off(_constants.LOCUS_LLM_EVENT, this.processLocusLLMEvent);
6502
6548
  case 3:
6503
6549
  if (isJoined) {
6504
6550
  _context18.next = 4;
@@ -6511,6 +6557,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6511
6557
  _this35.webex.internal.llm.off('event:relay.event', _this35.processRelayEvent);
6512
6558
  // @ts-ignore - Fix type
6513
6559
  _this35.webex.internal.llm.on('event:relay.event', _this35.processRelayEvent);
6560
+ // @ts-ignore - Fix type
6561
+ _this35.webex.internal.llm.off(_constants.LOCUS_LLM_EVENT, _this35.processLocusLLMEvent);
6562
+ // @ts-ignore - Fix type
6563
+ _this35.webex.internal.llm.on(_constants.LOCUS_LLM_EVENT, _this35.processLocusLLMEvent);
6514
6564
  _loggerProxy.default.logger.info('Meeting:index#updateLLMConnection --> enabled to receive relay events!');
6515
6565
  return _promise.default.resolve(registerAndConnectResult);
6516
6566
  }));
@@ -7033,7 +7083,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7033
7083
  key: "waitForMediaConnectionConnected",
7034
7084
  value: (function () {
7035
7085
  var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee22() {
7036
- var iceConnected, _this$mediaProperties8, _this$mediaProperties9, _this$mediaProperties0, _this$mediaProperties1, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12, timedOutError, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
7086
+ var iceConnected, _this$mediaProperties9, _this$mediaProperties0, _this$mediaProperties1, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12, _this$mediaProperties13, timedOutError, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
7037
7087
  return _regenerator.default.wrap(function (_context22) {
7038
7088
  while (1) switch (_context22.prev = _context22.next) {
7039
7089
  case 0:
@@ -7056,7 +7106,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7056
7106
  _t16 = this.addMediaData.icePhaseCallback();
7057
7107
  _t17 = this.webex.internal.newMetrics.callDiagnosticMetrics;
7058
7108
  _t18 = _internalPluginMetrics.CallDiagnosticUtils;
7059
- _t19 = ((_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$mediaProperties0 = _this$mediaProperties9.pc) === null || _this$mediaProperties0 === void 0 ? void 0 : (_this$mediaProperties1 = _this$mediaProperties0.pc) === null || _this$mediaProperties1 === void 0 ? void 0 : _this$mediaProperties1.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';
7109
+ _t19 = ((_this$mediaProperties9 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties9 === void 0 ? void 0 : (_this$mediaProperties0 = _this$mediaProperties9.multistreamConnection) === null || _this$mediaProperties0 === void 0 ? void 0 : (_this$mediaProperties1 = _this$mediaProperties0.pc) === null || _this$mediaProperties1 === void 0 ? void 0 : (_this$mediaProperties10 = _this$mediaProperties1.pc) === null || _this$mediaProperties10 === void 0 ? void 0 : _this$mediaProperties10.signalingState) || ((_this$mediaProperties11 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties11 === void 0 ? void 0 : (_this$mediaProperties12 = _this$mediaProperties11.mediaConnection) === null || _this$mediaProperties12 === void 0 ? void 0 : (_this$mediaProperties13 = _this$mediaProperties12.pc) === null || _this$mediaProperties13 === void 0 ? void 0 : _this$mediaProperties13.signalingState) || 'unknown';
7060
7110
  _t20 = iceConnected;
7061
7111
  _t21 = this.turnServerUsed;
7062
7112
  _context22.next = 3;
@@ -7767,7 +7817,6 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7767
7817
  numTransports,
7768
7818
  iceCandidateErrors,
7769
7819
  reachabilityMetrics,
7770
- _this$mediaProperties13,
7771
7820
  _this$mediaProperties14,
7772
7821
  _this$mediaProperties15,
7773
7822
  _this$mediaProperties16,
@@ -7788,6 +7837,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7788
7837
  _this$mediaProperties31,
7789
7838
  _this$mediaProperties32,
7790
7839
  _this$mediaProperties33,
7840
+ _this$mediaProperties34,
7791
7841
  _reachabilityMetrics,
7792
7842
  _yield$this$mediaProp2,
7793
7843
  _selectedCandidatePairChanges,
@@ -7987,9 +8037,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7987
8037
  retriedWithTurnServer: this.addMediaData.retriedWithTurnServer,
7988
8038
  isMultistream: this.isMultistream,
7989
8039
  isJoinWithMediaRetry: this.joinWithMediaRetryInfo.isRetry,
7990
- 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',
7991
- 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',
7992
- 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'
8040
+ signalingState: ((_this$mediaProperties14 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties14 === void 0 ? void 0 : (_this$mediaProperties15 = _this$mediaProperties14.multistreamConnection) === null || _this$mediaProperties15 === void 0 ? void 0 : (_this$mediaProperties16 = _this$mediaProperties15.pc) === null || _this$mediaProperties16 === void 0 ? void 0 : (_this$mediaProperties17 = _this$mediaProperties16.pc) === null || _this$mediaProperties17 === void 0 ? void 0 : _this$mediaProperties17.signalingState) || ((_this$mediaProperties18 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties18 === void 0 ? void 0 : (_this$mediaProperties19 = _this$mediaProperties18.mediaConnection) === null || _this$mediaProperties19 === void 0 ? void 0 : (_this$mediaProperties20 = _this$mediaProperties19.pc) === null || _this$mediaProperties20 === void 0 ? void 0 : _this$mediaProperties20.signalingState) || 'unknown',
8041
+ connectionState: ((_this$mediaProperties21 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties21 === void 0 ? void 0 : (_this$mediaProperties22 = _this$mediaProperties21.multistreamConnection) === null || _this$mediaProperties22 === void 0 ? void 0 : (_this$mediaProperties23 = _this$mediaProperties22.pc) === null || _this$mediaProperties23 === void 0 ? void 0 : (_this$mediaProperties24 = _this$mediaProperties23.pc) === null || _this$mediaProperties24 === void 0 ? void 0 : _this$mediaProperties24.connectionState) || ((_this$mediaProperties25 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties25 === void 0 ? void 0 : (_this$mediaProperties26 = _this$mediaProperties25.mediaConnection) === null || _this$mediaProperties26 === void 0 ? void 0 : (_this$mediaProperties27 = _this$mediaProperties26.pc) === null || _this$mediaProperties27 === void 0 ? void 0 : _this$mediaProperties27.connectionState) || 'unknown',
8042
+ iceConnectionState: ((_this$mediaProperties28 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties28 === void 0 ? void 0 : (_this$mediaProperties29 = _this$mediaProperties28.multistreamConnection) === null || _this$mediaProperties29 === void 0 ? void 0 : (_this$mediaProperties30 = _this$mediaProperties29.pc) === null || _this$mediaProperties30 === void 0 ? void 0 : (_this$mediaProperties31 = _this$mediaProperties30.pc) === null || _this$mediaProperties31 === void 0 ? void 0 : _this$mediaProperties31.iceConnectionState) || ((_this$mediaProperties32 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties32 === void 0 ? void 0 : (_this$mediaProperties33 = _this$mediaProperties32.mediaConnection) === null || _this$mediaProperties33 === void 0 ? void 0 : (_this$mediaProperties34 = _this$mediaProperties33.pc) === null || _this$mediaProperties34 === void 0 ? void 0 : _this$mediaProperties34.iceConnectionState) || 'unknown'
7993
8043
  }, _reachabilityMetrics), _iceCandidateErrors), {}, {
7994
8044
  iceCandidatesCount: this.iceCandidatesCount,
7995
8045
  ipver: ipver
@@ -8794,10 +8844,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8794
8844
  var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8795
8845
  var main = renderInfo.main,
8796
8846
  content = renderInfo.content;
8797
- var _this$mediaProperties34 = this.mediaProperties,
8798
- mediaDirection = _this$mediaProperties34.mediaDirection,
8799
- remoteShareStream = _this$mediaProperties34.remoteShareStream,
8800
- remoteVideoStream = _this$mediaProperties34.remoteVideoStream;
8847
+ var _this$mediaProperties35 = this.mediaProperties,
8848
+ mediaDirection = _this$mediaProperties35.mediaDirection,
8849
+ remoteShareStream = _this$mediaProperties35.remoteShareStream,
8850
+ remoteVideoStream = _this$mediaProperties35.remoteVideoStream;
8801
8851
  var layoutInfo = (0, _lodash.cloneDeep)(this.lastVideoLayoutInfo);
8802
8852
 
8803
8853
  // TODO: We need a real time value for Audio, Video and Share send indicator
@@ -9118,8 +9168,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9118
9168
  }, {
9119
9169
  key: "checkMediaConnection",
9120
9170
  value: function checkMediaConnection() {
9121
- var _this$mediaProperties35;
9122
- if ((_this$mediaProperties35 = this.mediaProperties) !== null && _this$mediaProperties35 !== void 0 && _this$mediaProperties35.webrtcMediaConnection) {
9171
+ var _this$mediaProperties36;
9172
+ if ((_this$mediaProperties36 = this.mediaProperties) !== null && _this$mediaProperties36 !== void 0 && _this$mediaProperties36.webrtcMediaConnection) {
9123
9173
  return;
9124
9174
  }
9125
9175
  throw new _webexErrors.NoMediaEstablishedYetError();
@@ -9179,14 +9229,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9179
9229
  }, {
9180
9230
  key: "updateTranscodedMediaConnection",
9181
9231
  value: function updateTranscodedMediaConnection() {
9182
- var _this$mediaProperties36,
9183
- _this$mediaProperties37,
9232
+ var _this$mediaProperties37,
9184
9233
  _this$mediaProperties38,
9185
9234
  _this$mediaProperties39,
9186
9235
  _this$mediaProperties40,
9187
9236
  _this$mediaProperties41,
9188
9237
  _this$mediaProperties42,
9189
9238
  _this$mediaProperties43,
9239
+ _this$mediaProperties44,
9190
9240
  _this56 = this;
9191
9241
  var LOG_HEADER = 'Meeting:index#updateTranscodedMediaConnection -->';
9192
9242
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " starting"));
@@ -9196,10 +9246,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9196
9246
  return this.mediaProperties.webrtcMediaConnection.update({
9197
9247
  // TODO: RoapMediaConnection is not ready to use stream classes yet, so we pass the raw MediaStreamTrack for now
9198
9248
  localTracks: {
9199
- audio: ((_this$mediaProperties36 = this.mediaProperties.audioStream) === null || _this$mediaProperties36 === void 0 ? void 0 : (_this$mediaProperties37 = _this$mediaProperties36.outputStream) === null || _this$mediaProperties37 === void 0 ? void 0 : _this$mediaProperties37.getTracks()[0]) || null,
9200
- video: ((_this$mediaProperties38 = this.mediaProperties.videoStream) === null || _this$mediaProperties38 === void 0 ? void 0 : (_this$mediaProperties39 = _this$mediaProperties38.outputStream) === null || _this$mediaProperties39 === void 0 ? void 0 : _this$mediaProperties39.getTracks()[0]) || null,
9201
- screenShareVideo: ((_this$mediaProperties40 = this.mediaProperties.shareVideoStream) === null || _this$mediaProperties40 === void 0 ? void 0 : (_this$mediaProperties41 = _this$mediaProperties40.outputStream) === null || _this$mediaProperties41 === void 0 ? void 0 : _this$mediaProperties41.getTracks()[0]) || null,
9202
- screenShareAudio: ((_this$mediaProperties42 = this.mediaProperties.shareAudioStream) === null || _this$mediaProperties42 === void 0 ? void 0 : (_this$mediaProperties43 = _this$mediaProperties42.outputStream) === null || _this$mediaProperties43 === void 0 ? void 0 : _this$mediaProperties43.getTracks()[0]) || null
9249
+ audio: ((_this$mediaProperties37 = this.mediaProperties.audioStream) === null || _this$mediaProperties37 === void 0 ? void 0 : (_this$mediaProperties38 = _this$mediaProperties37.outputStream) === null || _this$mediaProperties38 === void 0 ? void 0 : _this$mediaProperties38.getTracks()[0]) || null,
9250
+ video: ((_this$mediaProperties39 = this.mediaProperties.videoStream) === null || _this$mediaProperties39 === void 0 ? void 0 : (_this$mediaProperties40 = _this$mediaProperties39.outputStream) === null || _this$mediaProperties40 === void 0 ? void 0 : _this$mediaProperties40.getTracks()[0]) || null,
9251
+ screenShareVideo: ((_this$mediaProperties41 = this.mediaProperties.shareVideoStream) === null || _this$mediaProperties41 === void 0 ? void 0 : (_this$mediaProperties42 = _this$mediaProperties41.outputStream) === null || _this$mediaProperties42 === void 0 ? void 0 : _this$mediaProperties42.getTracks()[0]) || null,
9252
+ screenShareAudio: ((_this$mediaProperties43 = this.mediaProperties.shareAudioStream) === null || _this$mediaProperties43 === void 0 ? void 0 : (_this$mediaProperties44 = _this$mediaProperties43.outputStream) === null || _this$mediaProperties44 === void 0 ? void 0 : _this$mediaProperties44.getTracks()[0]) || null
9203
9253
  },
9204
9254
  direction: {
9205
9255
  audio: _media.default.getDirection(true, this.mediaProperties.mediaDirection.receiveAudio, this.mediaProperties.mediaDirection.sendAudio),