@webex/plugin-meetings 3.9.0-next.19 → 3.9.0-next.20

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.
@@ -476,6 +476,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
476
476
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "shareStatus", void 0);
477
477
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "screenShareFloorState", void 0);
478
478
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "statsAnalyzer", void 0);
479
+ (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "statsMonitor", void 0);
479
480
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "transcription", void 0);
480
481
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "updateMediaConnections", void 0);
481
482
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "userDisplayHints", void 0);
@@ -1970,6 +1971,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
1970
1971
  * @memberof Meeting
1971
1972
  */
1972
1973
  _this.networkQualityMonitor = null;
1974
+ /**
1975
+ * @instance
1976
+ * @type {StatsMonitor}
1977
+ * @private
1978
+ * @memberof Meeting
1979
+ */
1980
+ _this.statsMonitor = null;
1973
1981
  /**
1974
1982
  * Indicates network status of the webrtc media connection
1975
1983
  * @instance
@@ -7092,14 +7100,17 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7092
7100
  }, {
7093
7101
  key: "createStatsAnalyzer",
7094
7102
  value: function createStatsAnalyzer() {
7103
+ var _this44 = this;
7095
7104
  // @ts-ignore - config coming from registerPlugin
7096
7105
  if (this.config.stats.enableStatsAnalyzer) {
7097
7106
  // @ts-ignore - config coming from registerPlugin
7098
7107
  this.networkQualityMonitor = new _internalMediaCore.NetworkQualityMonitor(this.config.stats);
7108
+ this.statsMonitor = new _internalMediaCore.StatsMonitor();
7099
7109
  this.statsAnalyzer = new _internalMediaCore.StatsAnalyzer({
7100
7110
  // @ts-ignore - config coming from registerPlugin
7101
7111
  config: this.config.stats,
7102
7112
  networkQualityMonitor: this.networkQualityMonitor,
7113
+ statsMonitor: this.statsMonitor,
7103
7114
  isMultistream: this.isMultistream
7104
7115
  });
7105
7116
  this.shareCAEventSentStatus = {
@@ -7110,6 +7121,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7110
7121
  };
7111
7122
  this.setupStatsAnalyzerEventHandlers();
7112
7123
  this.networkQualityMonitor.on(_internalMediaCore.NetworkQualityEventNames.NETWORK_QUALITY, this.sendNetworkQualityEvent.bind(this));
7124
+ this.statsMonitor.on(_internalMediaCore.StatsMonitorEventNames.INBOUND_AUDIO_ISSUE, function (data) {
7125
+ // Before forwarding any inbound audio issues to the app, make sure that we have at least one other
7126
+ // participant in the meeting with unmuted audio.
7127
+ // We don't check this.mediaProperties.mediaDirection here, because that's already handled in statsAnalyzer,
7128
+ // so we won't get this event if we are not setup to receive any audio
7129
+ var atLeastOneUnmutedOtherMember = (0, _values.default)(_this44.members.membersCollection.getAll()).find(function (member) {
7130
+ return !member.isSelf && !member.isPairedWithSelf && !member.isAudioMuted;
7131
+ });
7132
+ if (atLeastOneUnmutedOtherMember) {
7133
+ _this44.mediaProperties.sendMediaIssueMetric('inbound_audio', data.issueSubType, _this44.correlationId);
7134
+ _triggerProxy.default.trigger(_this44, {
7135
+ file: 'meeting/index',
7136
+ function: 'createStatsAnalyzer'
7137
+ }, _constants.EVENT_TRIGGERS.MEDIA_INBOUND_AUDIO_ISSUE_DETECTED, data);
7138
+ }
7139
+ });
7113
7140
  }
7114
7141
  }
7115
7142
 
@@ -7124,7 +7151,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7124
7151
  key: "waitForRemoteSDPAnswer",
7125
7152
  value: (function () {
7126
7153
  var _waitForRemoteSDPAnswer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25() {
7127
- var _this44 = this;
7154
+ var _this45 = this;
7128
7155
  var LOG_HEADER, deferSDPAnswer;
7129
7156
  return _regenerator.default.wrap(function _callee25$(_context25) {
7130
7157
  while (1) switch (_context25.prev = _context25.next) {
@@ -7143,18 +7170,18 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7143
7170
  var error = new Error('Timed out waiting for REMOTE SDP ANSWER');
7144
7171
 
7145
7172
  // @ts-ignore
7146
- _this44.webex.internal.newMetrics.submitClientEvent({
7173
+ _this45.webex.internal.newMetrics.submitClientEvent({
7147
7174
  name: 'client.media-engine.remote-sdp-received',
7148
7175
  payload: {
7149
7176
  canProceed: false,
7150
7177
  errors: [
7151
7178
  // @ts-ignore
7152
- _this44.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
7179
+ _this45.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
7153
7180
  clientErrorCode: _internalPluginMetrics.CALL_DIAGNOSTIC_CONFIG.MISSING_ROAP_ANSWER_CLIENT_CODE
7154
7181
  })]
7155
7182
  },
7156
7183
  options: {
7157
- meetingId: _this44.id,
7184
+ meetingId: _this45.id,
7158
7185
  rawError: error
7159
7186
  }
7160
7187
  });
@@ -7463,6 +7490,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7463
7490
  key: "cleanUpOnAddMediaFailure",
7464
7491
  value: (function () {
7465
7492
  var _cleanUpOnAddMediaFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee31() {
7493
+ var _this$networkQualityM, _this$statsMonitor;
7466
7494
  return _regenerator.default.wrap(function _callee31$(_context31) {
7467
7495
  while (1) switch (_context31.prev = _context31.next) {
7468
7496
  case 0:
@@ -7474,19 +7502,23 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7474
7502
  return this.statsAnalyzer.stopAnalyzer();
7475
7503
  case 3:
7476
7504
  this.statsAnalyzer = null;
7505
+ (_this$networkQualityM = this.networkQualityMonitor) === null || _this$networkQualityM === void 0 ? void 0 : _this$networkQualityM.removeAllListeners();
7506
+ this.networkQualityMonitor = null;
7507
+ (_this$statsMonitor = this.statsMonitor) === null || _this$statsMonitor === void 0 ? void 0 : _this$statsMonitor.removeAllListeners();
7508
+ this.statsMonitor = null;
7477
7509
 
7478
7510
  // when media fails, we want to upload a webrtc dump to see whats going on
7479
7511
  // this function is async, but returns once the stats have been gathered
7480
- _context31.next = 6;
7512
+ _context31.next = 10;
7481
7513
  return this.forceSendStatsReport({
7482
7514
  callFrom: 'addMedia'
7483
7515
  });
7484
- case 6:
7516
+ case 10:
7485
7517
  if (this.mediaProperties.webrtcMediaConnection) {
7486
7518
  this.closePeerConnections();
7487
7519
  this.unsetPeerConnections();
7488
7520
  }
7489
- case 7:
7521
+ case 11:
7490
7522
  case "end":
7491
7523
  return _context31.stop();
7492
7524
  }
@@ -7509,7 +7541,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7509
7541
  key: "downgradeFromMultistreamToTranscoded",
7510
7542
  value: (function () {
7511
7543
  var _downgradeFromMultistreamToTranscoded = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32() {
7512
- var _this$locusMediaReque2;
7544
+ var _this$networkQualityM2, _this$statsMonitor2, _this$locusMediaReque2;
7513
7545
  return _regenerator.default.wrap(function _callee32$(_context32) {
7514
7546
  while (1) switch (_context32.prev = _context32.next) {
7515
7547
  case 0:
@@ -7521,6 +7553,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7521
7553
  return this.statsAnalyzer.stopAnalyzer();
7522
7554
  case 3:
7523
7555
  this.statsAnalyzer = null;
7556
+ (_this$networkQualityM2 = this.networkQualityMonitor) === null || _this$networkQualityM2 === void 0 ? void 0 : _this$networkQualityM2.removeAllListeners();
7557
+ this.networkQualityMonitor = null;
7558
+ (_this$statsMonitor2 = this.statsMonitor) === null || _this$statsMonitor2 === void 0 ? void 0 : _this$statsMonitor2.removeAllListeners();
7559
+ this.statsMonitor = null;
7524
7560
  this.isMultistream = false;
7525
7561
  if (this.mediaProperties.webrtcMediaConnection) {
7526
7562
  // close peer connection, but don't reset mute state information, because we will want to use it on the retry
@@ -7529,7 +7565,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7529
7565
  }
7530
7566
  (_this$locusMediaReque2 = this.locusMediaRequest) === null || _this$locusMediaReque2 === void 0 ? void 0 : _this$locusMediaReque2.downgradeFromMultistreamToTranscoded();
7531
7567
  this.createStatsAnalyzer();
7532
- case 8:
7568
+ case 12:
7533
7569
  case "end":
7534
7570
  return _context32.stop();
7535
7571
  }
@@ -7661,10 +7697,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7661
7697
  }, {
7662
7698
  key: "addMedia",
7663
7699
  value: function addMedia() {
7664
- var _this45 = this;
7700
+ var _this46 = this;
7665
7701
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7666
7702
  return this.addMediaInternal(function () {
7667
- return _this45.turnServerUsed ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
7703
+ return _this46.turnServerUsed ? 'JOIN_MEETING_FINAL' : 'JOIN_MEETING_RETRY';
7668
7704
  }, undefined, false, options);
7669
7705
  }
7670
7706
 
@@ -7995,7 +8031,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
7995
8031
  * @memberof Meeting
7996
8032
  */
7997
8033
  function enqueueMediaUpdate(mediaUpdateType) {
7998
- var _this46 = this;
8034
+ var _this47 = this;
7999
8035
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8000
8036
  var canUpdateMediaNow = this.canUpdateMedia();
8001
8037
  return new _promise.default(function (resolve, reject) {
@@ -8006,9 +8042,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8006
8042
  options: options
8007
8043
  };
8008
8044
  _loggerProxy.default.logger.log("Meeting:index#enqueueMediaUpdate --> enqueuing media update type=".concat(mediaUpdateType));
8009
- _this46.queuedMediaUpdates.push(queueItem);
8045
+ _this47.queuedMediaUpdates.push(queueItem);
8010
8046
  if (canUpdateMediaNow) {
8011
- _this46.processNextQueuedMediaUpdate();
8047
+ _this47.processNextQueuedMediaUpdate();
8012
8048
  }
8013
8049
  });
8014
8050
  }
@@ -8113,7 +8149,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8113
8149
  }, {
8114
8150
  key: "acknowledge",
8115
8151
  value: function acknowledge(type) {
8116
- var _this47 = this;
8152
+ var _this48 = this;
8117
8153
  if (!type) {
8118
8154
  return _promise.default.reject(new _parameter.default('Type must be set to acknowledge the meeting.'));
8119
8155
  }
@@ -8125,12 +8161,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8125
8161
  }).then(function (response) {
8126
8162
  return _promise.default.resolve(response);
8127
8163
  }).then(function (response) {
8128
- _this47.meetingFiniteStateMachine.ring(type);
8164
+ _this48.meetingFiniteStateMachine.ring(type);
8129
8165
  // @ts-ignore
8130
- _this47.webex.internal.newMetrics.submitClientEvent({
8166
+ _this48.webex.internal.newMetrics.submitClientEvent({
8131
8167
  name: 'client.alert.displayed',
8132
8168
  options: {
8133
- meetingId: _this47.id
8169
+ meetingId: _this48.id
8134
8170
  }
8135
8171
  });
8136
8172
  return _promise.default.resolve({
@@ -8155,12 +8191,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8155
8191
  }, {
8156
8192
  key: "decline",
8157
8193
  value: function decline(reason) {
8158
- var _this48 = this;
8194
+ var _this49 = this;
8159
8195
  return _util2.default.declineMeeting(this, reason).then(function (decline) {
8160
- _this48.meetingFiniteStateMachine.decline();
8196
+ _this49.meetingFiniteStateMachine.decline();
8161
8197
  return _promise.default.resolve(decline);
8162
8198
  }).catch(function (error) {
8163
- _this48.meetingFiniteStateMachine.fail(error);
8199
+ _this49.meetingFiniteStateMachine.fail(error);
8164
8200
  return _promise.default.reject(error);
8165
8201
  });
8166
8202
  }
@@ -8211,7 +8247,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8211
8247
  }, {
8212
8248
  key: "leave",
8213
8249
  value: function leave() {
8214
- var _this49 = this;
8250
+ var _this50 = this;
8215
8251
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8216
8252
  var leaveReason = options.reason || _constants.MEETING_REMOVED_REASON.CLIENT_LEAVE_REQUEST;
8217
8253
 
@@ -8223,7 +8259,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8223
8259
  var payload = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8224
8260
  return (
8225
8261
  // @ts-ignore
8226
- _this49.webex.internal.newMetrics.submitClientEvent({
8262
+ _this50.webex.internal.newMetrics.submitClientEvent({
8227
8263
  name: 'client.call.leave',
8228
8264
  payload: _objectSpread({
8229
8265
  trigger: 'user-interaction',
@@ -8231,7 +8267,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8231
8267
  leaveReason: options.clientEventLeaveReason
8232
8268
  }, payload),
8233
8269
  options: {
8234
- meetingId: _this49.id
8270
+ meetingId: _this50.id
8235
8271
  }
8236
8272
  })
8237
8273
  );
@@ -8240,24 +8276,24 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8240
8276
  return _util2.default.leaveMeeting(this, options).then(function (leave) {
8241
8277
  // CA team recommends submitting this *after* locus /leave
8242
8278
  submitLeaveMetric();
8243
- _this49.meetingFiniteStateMachine.leave();
8244
- _this49.clearMeetingData();
8279
+ _this50.meetingFiniteStateMachine.leave();
8280
+ _this50.clearMeetingData();
8245
8281
 
8246
8282
  // upload logs on leave irrespective of meeting delete
8247
- _triggerProxy.default.trigger(_this49, {
8283
+ _triggerProxy.default.trigger(_this50, {
8248
8284
  file: 'meeting/index',
8249
8285
  function: 'leave'
8250
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this49);
8286
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this50);
8251
8287
 
8252
8288
  // TODO: more testing before we remove this code, we are not sure the scenarios for destroy here
8253
- if (_this49.wirelessShare || _this49.guest) {
8289
+ if (_this50.wirelessShare || _this50.guest) {
8254
8290
  // If screen sharing clean the meeting object
8255
- _triggerProxy.default.trigger(_this49, {
8291
+ _triggerProxy.default.trigger(_this50, {
8256
8292
  file: 'meeting/index',
8257
8293
  function: 'leave'
8258
8294
  }, _constants.EVENTS.DESTROY_MEETING, {
8259
8295
  reason: options.reason,
8260
- meetingId: _this49.id
8296
+ meetingId: _this50.id
8261
8297
  });
8262
8298
  }
8263
8299
  _loggerProxy.default.logger.log('Meeting:index#leave --> LEAVE REASON ', leaveReason);
@@ -8274,16 +8310,16 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8274
8310
  shownToUser: false
8275
8311
  }]
8276
8312
  });
8277
- _this49.meetingFiniteStateMachine.fail(error);
8313
+ _this50.meetingFiniteStateMachine.fail(error);
8278
8314
  _loggerProxy.default.logger.error('Meeting:index#leave --> Failed to leave ', error);
8279
8315
  // upload logs on leave irrespective of meeting delete
8280
- _triggerProxy.default.trigger(_this49, {
8316
+ _triggerProxy.default.trigger(_this50, {
8281
8317
  file: 'meeting/index',
8282
8318
  function: 'leave'
8283
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this49);
8319
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this50);
8284
8320
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_LEAVE_FAILURE, {
8285
- correlation_id: _this49.correlationId,
8286
- locus_id: _this49.locusUrl.split('/').pop(),
8321
+ correlation_id: _this50.correlationId,
8322
+ locus_id: _this50.locusUrl.split('/').pop(),
8287
8323
  reason: error.message,
8288
8324
  stack: error.stack,
8289
8325
  code: error.code
@@ -8303,7 +8339,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8303
8339
  }, {
8304
8340
  key: "startWhiteboardShare",
8305
8341
  value: function startWhiteboardShare(channelUrl, resourceToken) {
8306
- var _this50 = this;
8342
+ var _this51 = this;
8307
8343
  var whiteboard = this.locusInfo.mediaShares.find(function (element) {
8308
8344
  return element.name === 'whiteboard';
8309
8345
  });
@@ -8336,13 +8372,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8336
8372
  body.resourceToken = resourceToken;
8337
8373
  }
8338
8374
  return this.meetingRequest.changeMeetingFloor(body).then(function () {
8339
- _this50.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
8375
+ _this51.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
8340
8376
  return _promise.default.resolve();
8341
8377
  }).catch(function (error) {
8342
8378
  _loggerProxy.default.logger.error('Meeting:index#startWhiteboardShare --> Error ', error);
8343
8379
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_START_WHITEBOARD_SHARE_FAILURE, {
8344
- correlation_id: _this50.correlationId,
8345
- locus_id: _this50.locusUrl.split('/').pop(),
8380
+ correlation_id: _this51.correlationId,
8381
+ locus_id: _this51.locusUrl.split('/').pop(),
8346
8382
  reason: error.message,
8347
8383
  stack: error.stack,
8348
8384
  board: {
@@ -8365,7 +8401,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8365
8401
  }, {
8366
8402
  key: "stopWhiteboardShare",
8367
8403
  value: function stopWhiteboardShare(channelUrl) {
8368
- var _this51 = this;
8404
+ var _this52 = this;
8369
8405
  var whiteboard = this.locusInfo.mediaShares.find(function (element) {
8370
8406
  return element.name === 'whiteboard';
8371
8407
  });
@@ -8394,8 +8430,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8394
8430
  }).catch(function (error) {
8395
8431
  _loggerProxy.default.logger.error('Meeting:index#stopWhiteboardShare --> Error ', error);
8396
8432
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_STOP_WHITEBOARD_SHARE_FAILURE, {
8397
- correlation_id: _this51.correlationId,
8398
- locus_id: _this51.locusUrl.split('/').pop(),
8433
+ correlation_id: _this52.correlationId,
8434
+ locus_id: _this52.locusUrl.split('/').pop(),
8399
8435
  reason: error.message,
8400
8436
  stack: error.stack,
8401
8437
  board: {
@@ -8417,7 +8453,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8417
8453
  }, {
8418
8454
  key: "requestScreenShareFloor",
8419
8455
  value: function requestScreenShareFloor() {
8420
- var _this52 = this;
8456
+ var _this53 = this;
8421
8457
  if (!this.mediaProperties.hasLocalShareStream() || !this.mediaProperties.mediaDirection.sendShare) {
8422
8458
  _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, ")"));
8423
8459
  this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
@@ -8448,34 +8484,34 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8448
8484
  resourceUrl: this.resourceUrl,
8449
8485
  shareInstanceId: this.localShareInstanceId
8450
8486
  }).then(function () {
8451
- _this52.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
8487
+ _this53.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
8452
8488
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_SUCCESS, {
8453
- correlation_id: _this52.correlationId,
8454
- locus_id: _this52.locusUrl.split('/').pop()
8489
+ correlation_id: _this53.correlationId,
8490
+ locus_id: _this53.locusUrl.split('/').pop()
8455
8491
  });
8456
8492
  return _promise.default.resolve();
8457
8493
  }).catch(function (error) {
8458
8494
  _loggerProxy.default.logger.error('Meeting:index#share --> Error ', error);
8459
8495
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_SHARE_FAILURE, {
8460
- correlation_id: _this52.correlationId,
8461
- locus_id: _this52.locusUrl.split('/').pop(),
8496
+ correlation_id: _this53.correlationId,
8497
+ locus_id: _this53.locusUrl.split('/').pop(),
8462
8498
  reason: error.message,
8463
8499
  stack: error.stack
8464
8500
  });
8465
8501
 
8466
8502
  // @ts-ignore
8467
- _this52.webex.internal.newMetrics.submitClientEvent({
8503
+ _this53.webex.internal.newMetrics.submitClientEvent({
8468
8504
  name: 'client.share.floor-granted.local',
8469
8505
  payload: {
8470
8506
  mediaType: 'share',
8471
8507
  errors: _util2.default.getChangeMeetingFloorErrorPayload(error.message),
8472
- shareInstanceId: _this52.localShareInstanceId
8508
+ shareInstanceId: _this53.localShareInstanceId
8473
8509
  },
8474
8510
  options: {
8475
- meetingId: _this52.id
8511
+ meetingId: _this53.id
8476
8512
  }
8477
8513
  });
8478
- _this52.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
8514
+ _this53.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
8479
8515
  return _promise.default.reject(error);
8480
8516
  });
8481
8517
  }
@@ -8498,10 +8534,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8498
8534
  }, {
8499
8535
  key: "requestScreenShareFloorIfPending",
8500
8536
  value: function requestScreenShareFloorIfPending() {
8501
- var _this53 = this;
8537
+ var _this54 = this;
8502
8538
  if (this.floorGrantPending && this.state === _constants.MEETING_STATE.STATES.JOINED) {
8503
8539
  this.requestScreenShareFloor().then(function () {
8504
- _this53.floorGrantPending = false;
8540
+ _this54.floorGrantPending = false;
8505
8541
  });
8506
8542
  }
8507
8543
  }
@@ -8515,7 +8551,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8515
8551
  }, {
8516
8552
  key: "releaseScreenShareFloor",
8517
8553
  value: function releaseScreenShareFloor() {
8518
- var _this54 = this;
8554
+ var _this55 = this;
8519
8555
  var content = this.locusInfo.mediaShares.find(function (element) {
8520
8556
  return element.name === _constants.CONTENT;
8521
8557
  });
@@ -8556,8 +8592,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8556
8592
  }).catch(function (error) {
8557
8593
  _loggerProxy.default.logger.error('Meeting:index#releaseScreenShareFloor --> Error ', error);
8558
8594
  _metrics.default.sendBehavioralMetric(_constants2.default.STOP_FLOOR_REQUEST_FAILURE, {
8559
- correlation_id: _this54.correlationId,
8560
- locus_id: _this54.locusUrl.split('/').pop(),
8595
+ correlation_id: _this55.correlationId,
8596
+ locus_id: _this55.locusUrl.split('/').pop(),
8561
8597
  reason: error.message,
8562
8598
  stack: error.stack
8563
8599
  });
@@ -8737,7 +8773,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8737
8773
  }, {
8738
8774
  key: "changeVideoLayout",
8739
8775
  value: function changeVideoLayout(layoutType) {
8740
- var _this55 = this;
8776
+ var _this56 = this;
8741
8777
  var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8742
8778
  var main = renderInfo.main,
8743
8779
  content = renderInfo.content;
@@ -8791,7 +8827,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8791
8827
  }
8792
8828
  this.lastVideoLayoutInfo = (0, _lodash.cloneDeep)(layoutInfo);
8793
8829
  this.locusInfo.once(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_LAYOUT_UPDATED, function (envelope) {
8794
- _triggerProxy.default.trigger(_this55, {
8830
+ _triggerProxy.default.trigger(_this56, {
8795
8831
  file: 'meeting/index',
8796
8832
  function: 'changeVideoLayout'
8797
8833
  }, _constants.EVENT_TRIGGERS.MEETING_CONTROLS_LAYOUT_UPDATE, {
@@ -8907,7 +8943,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8907
8943
  }, {
8908
8944
  key: "endMeetingForAll",
8909
8945
  value: function endMeetingForAll() {
8910
- var _this56 = this;
8946
+ var _this57 = this;
8911
8947
  // @ts-ignore
8912
8948
  this.webex.internal.newMetrics.submitClientEvent({
8913
8949
  name: 'client.call.leave',
@@ -8925,25 +8961,25 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
8925
8961
  locus_id: this.locusId
8926
8962
  });
8927
8963
  return _util2.default.endMeetingForAll(this).then(function (end) {
8928
- _this56.meetingFiniteStateMachine.end();
8929
- _this56.clearMeetingData();
8964
+ _this57.meetingFiniteStateMachine.end();
8965
+ _this57.clearMeetingData();
8930
8966
  // upload logs on leave irrespective of meeting delete
8931
- _triggerProxy.default.trigger(_this56, {
8967
+ _triggerProxy.default.trigger(_this57, {
8932
8968
  file: 'meeting/index',
8933
8969
  function: 'endMeetingForAll'
8934
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this56);
8970
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this57);
8935
8971
  return end;
8936
8972
  }).catch(function (error) {
8937
- _this56.meetingFiniteStateMachine.fail(error);
8973
+ _this57.meetingFiniteStateMachine.fail(error);
8938
8974
  _loggerProxy.default.logger.error('Meeting:index#endMeetingForAll --> Failed to end meeting ', error);
8939
8975
  // upload logs on leave irrespective of meeting delete
8940
- _triggerProxy.default.trigger(_this56, {
8976
+ _triggerProxy.default.trigger(_this57, {
8941
8977
  file: 'meeting/index',
8942
8978
  function: 'endMeetingForAll'
8943
- }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this56);
8979
+ }, _constants.EVENTS.REQUEST_UPLOAD_LOGS, _this57);
8944
8980
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_END_ALL_FAILURE, {
8945
- correlation_id: _this56.correlationId,
8946
- locus_id: _this56.locusUrl.split('/').pop(),
8981
+ correlation_id: _this57.correlationId,
8982
+ locus_id: _this57.locusUrl.split('/').pop(),
8947
8983
  reason: error.message,
8948
8984
  stack: error.stack,
8949
8985
  code: error.code
@@ -9104,7 +9140,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9104
9140
  _this$mediaProperties43,
9105
9141
  _this$mediaProperties44,
9106
9142
  _this$mediaProperties45,
9107
- _this57 = this;
9143
+ _this58 = this;
9108
9144
  var LOG_HEADER = 'Meeting:index#updateTranscodedMediaConnection -->';
9109
9145
  _loggerProxy.default.logger.info("".concat(LOG_HEADER, " starting"));
9110
9146
  if (!this.canUpdateMedia()) {
@@ -9129,8 +9165,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
9129
9165
  }).catch(function (error) {
9130
9166
  _loggerProxy.default.logger.error("".concat(LOG_HEADER, " Error: "), error);
9131
9167
  _metrics.default.sendBehavioralMetric(_constants2.default.UPDATE_MEDIA_FAILURE, {
9132
- correlation_id: _this57.correlationId,
9133
- locus_id: _this57.locusUrl.split('/').pop(),
9168
+ correlation_id: _this58.correlationId,
9169
+ locus_id: _this58.locusUrl.split('/').pop(),
9134
9170
  reason: error.message,
9135
9171
  stack: error.stack
9136
9172
  });