@wazo/sdk 0.37.23 → 0.37.24

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 (103) hide show
  1. package/dist/wazo-sdk.js +6 -6
  2. package/esm/__tests__/api-client.test.js +22 -17
  3. package/esm/__tests__/web-rtc-client.test.js +105 -100
  4. package/esm/api/amid.js +1 -1
  5. package/esm/api/call-logd.js +2 -2
  6. package/esm/api/confd.js +10 -5
  7. package/esm/api/ctid-ng.js +3 -3
  8. package/esm/api/dird.js +1 -1
  9. package/esm/api/webhookd.js +1 -1
  10. package/esm/api-client.js +22 -17
  11. package/esm/checker/Checker.js +130 -125
  12. package/esm/checker/checks/aor.js +22 -17
  13. package/esm/checker/checks/api.js +22 -17
  14. package/esm/checker/checks/index.js +120 -115
  15. package/esm/checker/checks/wazo-websocket.js +15 -15
  16. package/esm/checker/checks/webrtc-transport.js +105 -100
  17. package/esm/checker/checks/webrtc.js +105 -100
  18. package/esm/domain/AdHocAPIConference.js +22 -17
  19. package/esm/domain/CallLog.js +1 -1
  20. package/esm/domain/Contact.js +1 -1
  21. package/esm/domain/Features.js +22 -17
  22. package/esm/domain/Meeting.js +12 -5
  23. package/esm/domain/Phone/CTIPhone.js +36 -31
  24. package/esm/domain/Phone/WebRTCPhone.js +110 -87
  25. package/esm/domain/__tests__/CallLog.test.js +1 -1
  26. package/esm/domain/__tests__/Contact.test.js +1 -1
  27. package/esm/domain/__tests__/Meeting.test.js +144 -0
  28. package/esm/index.js +365 -337
  29. package/esm/lib/WazoSessionDescriptionHandler.js +1 -1
  30. package/esm/service/CallApi.js +22 -17
  31. package/esm/service/IssueReporter.js +1 -1
  32. package/esm/service/__tests__/IssueReporter.test.js +1 -1
  33. package/esm/service/getApiClient.js +22 -17
  34. package/esm/simple/Auth.js +355 -327
  35. package/esm/simple/Configuration.js +355 -327
  36. package/esm/simple/Directory.js +22 -17
  37. package/esm/simple/Phone.js +355 -327
  38. package/esm/simple/Websocket.js +17 -17
  39. package/esm/simple/index.js +359 -331
  40. package/esm/simple/room/LocalParticipant.js +359 -331
  41. package/esm/simple/room/Participant.js +359 -331
  42. package/esm/simple/room/RemoteParticipant.js +359 -331
  43. package/esm/simple/room/Room.js +360 -332
  44. package/esm/simple/room/SipRoom.js +359 -331
  45. package/esm/simple/room/Stream.js +359 -331
  46. package/esm/simple/room/__tests__/RemoteParticipant.test.js +359 -331
  47. package/esm/simple/utils.js +359 -331
  48. package/esm/types/WebSocketMessage.js +1 -1
  49. package/esm/web-rtc-client.js +105 -100
  50. package/esm/websocket-client.js +15 -15
  51. package/lib/__tests__/api-client.test.js +22 -17
  52. package/lib/__tests__/web-rtc-client.test.js +105 -100
  53. package/lib/api/amid.js +1 -1
  54. package/lib/api/call-logd.js +2 -2
  55. package/lib/api/confd.js +10 -5
  56. package/lib/api/ctid-ng.js +3 -3
  57. package/lib/api/dird.js +1 -1
  58. package/lib/api/webhookd.js +1 -1
  59. package/lib/api-client.js +22 -17
  60. package/lib/checker/Checker.js +130 -125
  61. package/lib/checker/checks/aor.js +22 -17
  62. package/lib/checker/checks/api.js +22 -17
  63. package/lib/checker/checks/index.js +120 -115
  64. package/lib/checker/checks/wazo-websocket.js +15 -15
  65. package/lib/checker/checks/webrtc-transport.js +105 -100
  66. package/lib/checker/checks/webrtc.js +105 -100
  67. package/lib/domain/AdHocAPIConference.js +22 -17
  68. package/lib/domain/CallLog.js +1 -1
  69. package/lib/domain/Contact.js +1 -1
  70. package/lib/domain/Features.js +22 -17
  71. package/lib/domain/Meeting.js +16 -5
  72. package/lib/domain/Phone/CTIPhone.js +36 -31
  73. package/lib/domain/Phone/WebRTCPhone.js +110 -87
  74. package/lib/domain/__tests__/CallLog.test.js +1 -1
  75. package/lib/domain/__tests__/Contact.test.js +1 -1
  76. package/lib/domain/__tests__/Meeting.test.js +150 -0
  77. package/lib/index.js +365 -337
  78. package/lib/lib/WazoSessionDescriptionHandler.js +1 -1
  79. package/lib/service/CallApi.js +22 -17
  80. package/lib/service/IssueReporter.js +1 -1
  81. package/lib/service/__tests__/IssueReporter.test.js +1 -1
  82. package/lib/service/getApiClient.js +22 -17
  83. package/lib/simple/Auth.js +355 -327
  84. package/lib/simple/Configuration.js +355 -327
  85. package/lib/simple/Directory.js +22 -17
  86. package/lib/simple/Phone.js +355 -327
  87. package/lib/simple/Websocket.js +17 -17
  88. package/lib/simple/index.js +359 -331
  89. package/lib/simple/room/LocalParticipant.js +359 -331
  90. package/lib/simple/room/Participant.js +359 -331
  91. package/lib/simple/room/RemoteParticipant.js +359 -331
  92. package/lib/simple/room/Room.js +360 -332
  93. package/lib/simple/room/SipRoom.js +359 -331
  94. package/lib/simple/room/Stream.js +359 -331
  95. package/lib/simple/room/__tests__/RemoteParticipant.test.js +359 -331
  96. package/lib/simple/utils.js +359 -331
  97. package/lib/types/WebSocketMessage.js +2 -0
  98. package/lib/web-rtc-client.js +105 -100
  99. package/lib/websocket-client.js +15 -15
  100. package/package.json +1 -1
  101. package/src/domain/Meeting.js +12 -5
  102. package/src/domain/Phone/WebRTCPhone.js +24 -1
  103. package/src/domain/__tests__/Meeting.test.js +50 -0
@@ -468,7 +468,7 @@ var IssueReporter$1 = new IssueReporter();
468
468
 
469
469
  const methods = ['head', 'get', 'post', 'put', 'delete'];
470
470
 
471
- const logger$4 = IssueReporter$1 ? IssueReporter$1.loggerFor('api') : console;
471
+ const logger = IssueReporter$1 ? IssueReporter$1.loggerFor('api') : console;
472
472
 
473
473
  // Use a function here to be able to mock it in tests
474
474
  const realFetch = () => {
@@ -607,7 +607,7 @@ class ApiRequester {
607
607
  };
608
608
 
609
609
  if (this.refreshTokenPromise) {
610
- logger$4.info('A token is already refreshing, waiting ...', { url });
610
+ logger.info('A token is already refreshing, waiting ...', { url });
611
611
  await this.refreshTokenPromise;
612
612
  }
613
613
 
@@ -627,7 +627,7 @@ class ApiRequester {
627
627
  return promise.then(async (err ) => {
628
628
  // Check if the token is still valid
629
629
  if (firstCall && this._checkTokenExpired(response, err)) {
630
- logger$4.warn('token expired', { error: err.reason });
630
+ logger.warn('token expired', { error: err.reason });
631
631
  // Replay the call after refreshing the token
632
632
  return this._replayWithNewToken(err, path, method, body, headers, parse);
633
633
  }
@@ -637,7 +637,7 @@ class ApiRequester {
637
637
  : exceptionClass.fromResponse(err, response.status);
638
638
 
639
639
  if (this.shouldLogErrors) {
640
- logger$4.error('API error', error);
640
+ logger.error('API error', error);
641
641
  }
642
642
 
643
643
  throw error;
@@ -647,7 +647,7 @@ class ApiRequester {
647
647
  return newParse(response, isJson);
648
648
  }).catch(error => {
649
649
  if (this.shouldLogErrors) {
650
- logger$4.error('Fetch failed', { url, options, message: error.message, stack: error.stack });
650
+ logger.error('Fetch failed', { url, options, message: error.message, stack: error.stack });
651
651
  }
652
652
 
653
653
  throw error;
@@ -675,13 +675,13 @@ class ApiRequester {
675
675
  ) {
676
676
  const isTokenNotFound = this._isTokenNotFound(err);
677
677
  let newPath = path;
678
- logger$4.info('refreshing token', { inProgress: !!this.refreshTokenPromise });
678
+ logger.info('refreshing token', { inProgress: !!this.refreshTokenPromise });
679
679
 
680
680
  this.refreshTokenPromise = this.refreshTokenPromise || this.refreshTokenCallback();
681
681
 
682
682
  return this.refreshTokenPromise.then(() => {
683
683
  this.refreshTokenPromise = null;
684
- logger$4.info('token refreshed', { isTokenNotFound });
684
+ logger.info('token refreshed', { isTokenNotFound });
685
685
  if (isTokenNotFound) {
686
686
  const pathParts = path.split('/');
687
687
  pathParts.pop();
@@ -2639,8 +2639,9 @@ class ExternalApp {
2639
2639
 
2640
2640
 
2641
2641
 
2642
-
2642
+
2643
2643
 
2644
+
2644
2645
 
2645
2646
 
2646
2647
  class Meeting {
@@ -2651,9 +2652,10 @@ class Meeting {
2651
2652
 
2652
2653
 
2653
2654
 
2654
-
2655
+
2655
2656
 
2656
2657
 
2658
+
2657
2659
 
2658
2660
  static parse(plain ) {
2659
2661
  return new Meeting({
@@ -2663,8 +2665,9 @@ class Meeting {
2663
2665
  ownerUuids: plain.owner_uuids,
2664
2666
  port: plain.port,
2665
2667
  uuid: plain.uuid,
2666
- number: plain.number,
2668
+ extension: plain.exten,
2667
2669
  persistent: plain.persistent,
2670
+ creationTime: moment__default['default'](plain.creation_time).toDate(),
2668
2671
  });
2669
2672
  }
2670
2673
 
@@ -2686,8 +2689,9 @@ class Meeting {
2686
2689
  ownerUuids,
2687
2690
  port,
2688
2691
  uri,
2689
- number,
2692
+ extension,
2690
2693
  persistent,
2694
+ creationTime,
2691
2695
  } = {}) {
2692
2696
  this.guestSipAuthorization = guestSipAuthorization;
2693
2697
  this.uri = uri;
@@ -2695,8 +2699,9 @@ class Meeting {
2695
2699
  this.ownerUuids = ownerUuids;
2696
2700
  this.port = port;
2697
2701
  this.uuid = uuid;
2698
- this.number = number;
2702
+ this.extension = extension;
2699
2703
  this.persistent = persistent;
2704
+ this.creationTime = creationTime;
2700
2705
 
2701
2706
  // Useful to compare instead of instanceof with minified code
2702
2707
  this.type = 'Meeting';
@@ -3644,7 +3649,7 @@ const TRANSFER_FLOW_BLIND = 'blind';
3644
3649
 
3645
3650
  // const MINIMUM_WAZO_ENGINE_VERSION_FOR_CTI_HOLD = '20.11';
3646
3651
 
3647
- IssueReporter$1 ? IssueReporter$1.loggerFor('cti-phone') : console;
3652
+ const logger$1 = IssueReporter$1 ? IssueReporter$1.loggerFor('cti-phone') : console;
3648
3653
 
3649
3654
  /* */
3650
3655
 
@@ -4563,7 +4568,7 @@ const AGENTD_VERSION = '1.0';
4563
4568
  const WEBHOOKD_VERSION = '1.0';
4564
4569
  const AMID_VERSION = '1.0';
4565
4570
 
4566
- const logger$3 = IssueReporter$1 ? IssueReporter$1.loggerFor('api') : console;
4571
+ const logger$2 = IssueReporter$1 ? IssueReporter$1.loggerFor('api') : console;
4567
4572
 
4568
4573
  class ApiClient {
4569
4574
 
@@ -4615,12 +4620,12 @@ class ApiClient {
4615
4620
  }
4616
4621
 
4617
4622
  async forceRefreshToken() {
4618
- logger$3.info('forcing refresh token, calling callback');
4623
+ logger$2.info('forcing refresh token, calling callback');
4619
4624
  return this.refreshTokenCallback();
4620
4625
  }
4621
4626
 
4622
4627
  async refreshTokenCallback() {
4623
- logger$3.info('refresh token callback called', {
4628
+ logger$2.info('refresh token callback called', {
4624
4629
  refreshToken: this.refreshToken,
4625
4630
  refreshBackend: this.refreshBackend,
4626
4631
  refreshExpiration: this.refreshExpiration,
@@ -4638,7 +4643,7 @@ class ApiClient {
4638
4643
  this.isMobile,
4639
4644
  );
4640
4645
 
4641
- logger$3.info('token refreshed', { token: session.token });
4646
+ logger$2.info('token refreshed', { token: session.token });
4642
4647
 
4643
4648
  if (this.onRefreshToken) {
4644
4649
  this.onRefreshToken(session.token, session);
@@ -4988,7 +4993,7 @@ const BLACKLIST_EVENTS = [
4988
4993
  ];
4989
4994
 
4990
4995
  const HEARTBEAT_ENGINE_VERSION = '20.09';
4991
- const logger$2 = IssueReporter$1.loggerFor('wazo-ws');
4996
+ const logger$3 = IssueReporter$1.loggerFor('wazo-ws');
4992
4997
  const messageLogger = IssueReporter$1.loggerFor('wazo-ws-message');
4993
4998
 
4994
4999
  class WebSocketClient extends Emitter {
@@ -5037,19 +5042,19 @@ class WebSocketClient extends Emitter {
5037
5042
  }
5038
5043
 
5039
5044
  connect() {
5040
- logger$2.info('connect method started', { host: this.host, token: this.token });
5045
+ logger$3.info('connect method started', { host: this.host, token: this.token });
5041
5046
  this.socket = new ReconnectingWebSocket__default['default'](this._getUrl.bind(this), [], this.options);
5042
5047
  if (this.options.binaryType) {
5043
5048
  this.socket.binaryType = this.options.binaryType;
5044
5049
  }
5045
5050
 
5046
5051
  this.socket.onopen = () => {
5047
- logger$2.info('on Wazo WS open', { method: 'connect', host: this.host });
5052
+ logger$3.info('on Wazo WS open', { method: 'connect', host: this.host });
5048
5053
  this.eventEmitter.emit(SOCKET_EVENTS.ON_OPEN);
5049
5054
  };
5050
5055
 
5051
5056
  this.socket.onerror = event => {
5052
- logger$2.error('on Wazo WS error', event.target);
5057
+ logger$3.error('on Wazo WS error', event.target);
5053
5058
  this.eventEmitter.emit(SOCKET_EVENTS.ON_ERROR, event);
5054
5059
  };
5055
5060
 
@@ -5079,7 +5084,7 @@ class WebSocketClient extends Emitter {
5079
5084
 
5080
5085
  this.socket.onclose = event => {
5081
5086
  // Can't be converted to JSON (circular structure)
5082
- logger$2.info('on Wazo WS close', {
5087
+ logger$3.info('on Wazo WS close', {
5083
5088
  reason: event.reason,
5084
5089
  code: event.code,
5085
5090
  readyState: event.target.readyState,
@@ -5097,12 +5102,12 @@ class WebSocketClient extends Emitter {
5097
5102
  };
5098
5103
 
5099
5104
  this.socket.onerror = event => {
5100
- logger$2.info('Wazo WS error', { message: event.message, code: event.code, readyState: event.target.readyState });
5105
+ logger$3.info('Wazo WS error', { message: event.message, code: event.code, readyState: event.target.readyState });
5101
5106
  };
5102
5107
  }
5103
5108
 
5104
5109
  close(force = false) {
5105
- logger$2.info('Wazo WS close', { socket: !!this.socket, host: this.host, token: this.token });
5110
+ logger$3.info('Wazo WS close', { socket: !!this.socket, host: this.host, token: this.token });
5106
5111
 
5107
5112
  if (!this.socket) {
5108
5113
  return;
@@ -5120,7 +5125,7 @@ class WebSocketClient extends Emitter {
5120
5125
 
5121
5126
  updateToken(token ) {
5122
5127
  this.token = token;
5123
- logger$2.info('Wazo WS updating token', { url: this._getUrl(), token, socket: !!this.socket });
5128
+ logger$3.info('Wazo WS updating token', { url: this._getUrl(), token, socket: !!this.socket });
5124
5129
 
5125
5130
  if (this.socket) {
5126
5131
  // If still connected, send the token to the WS
@@ -5138,7 +5143,7 @@ class WebSocketClient extends Emitter {
5138
5143
  }
5139
5144
 
5140
5145
  startHeartbeat() {
5141
- logger$2.info('Wazo WS start heartbeat', { host: this.host, token: this.token });
5146
+ logger$3.info('Wazo WS start heartbeat', { host: this.host, token: this.token });
5142
5147
 
5143
5148
  if (!this.socket) {
5144
5149
  this.heartbeat.stop();
@@ -5152,7 +5157,7 @@ class WebSocketClient extends Emitter {
5152
5157
  }
5153
5158
 
5154
5159
  stopHeartbeat() {
5155
- logger$2.info('Wazo WS stop heartbeat', { host: this.host, token: this.token });
5160
+ logger$3.info('Wazo WS stop heartbeat', { host: this.host, token: this.token });
5156
5161
 
5157
5162
  this.heartbeat.stop();
5158
5163
  }
@@ -5182,7 +5187,7 @@ class WebSocketClient extends Emitter {
5182
5187
  }
5183
5188
 
5184
5189
  reconnect(reason ) {
5185
- logger$2.info('Wazo WS reconnect', { reason, socket: !!this.socket, host: this.host, token: this.token });
5190
+ logger$3.info('Wazo WS reconnect', { reason, socket: !!this.socket, host: this.host, token: this.token });
5186
5191
  if (!this.socket) {
5187
5192
  return;
5188
5193
  }
@@ -5238,7 +5243,7 @@ class WebSocketClient extends Emitter {
5238
5243
  this.close();
5239
5244
  }
5240
5245
  const url = `wss://${this.host || ''}/api/websocketd/?token=${this.token || ''}&version=${this.version}`;
5241
- logger$2.log('Wazo WS url computed to reconnect', { url });
5246
+ logger$3.log('Wazo WS url computed to reconnect', { url });
5242
5247
 
5243
5248
  return url;
5244
5249
  }
@@ -5246,12 +5251,12 @@ class WebSocketClient extends Emitter {
5246
5251
  _onHeartbeat(message ) {
5247
5252
  if (message.payload === 'pong') {
5248
5253
  this.heartbeat.onHeartbeat();
5249
- logger$2.log('on heartbeat received from Wazo WS');
5254
+ logger$3.log('on heartbeat received from Wazo WS');
5250
5255
  }
5251
5256
  }
5252
5257
 
5253
5258
  async _onHeartbeatTimeout() {
5254
- logger$2.log('heartbeat timed out', { host: this.host, token: this.token });
5259
+ logger$3.log('heartbeat timed out', { host: this.host, token: this.token });
5255
5260
 
5256
5261
  this.close();
5257
5262
  this.eventEmitter.emit(SOCKET_EVENTS.ON_CLOSE, new Error('Websocket ping failure.'));
@@ -5372,7 +5377,7 @@ var wazoWebsocket = {
5372
5377
 
5373
5378
  /* */
5374
5379
 
5375
- const parseCandidate$1 = (candidate ) => {
5380
+ const parseCandidate = (candidate ) => {
5376
5381
  if (!candidate) {
5377
5382
  return null;
5378
5383
  }
@@ -5526,7 +5531,7 @@ class WazoSessionDescriptionHandler extends sessionDescriptionHandler.SessionDes
5526
5531
  this.peerConnectionDelegate.onicecandidate = event => {
5527
5532
  wazoLogger.trace('onicecandidate', event.candidate ? event.candidate.candidate : { done: true });
5528
5533
  if (event.candidate) {
5529
- this.gatheredCandidates.push(parseCandidate$1(event.candidate.candidate));
5534
+ this.gatheredCandidates.push(parseCandidate(event.candidate.candidate));
5530
5535
  }
5531
5536
  };
5532
5537
 
@@ -5895,7 +5900,7 @@ const DEFAULT_ICE_TIMEOUT = 3000;
5895
5900
  const SEND_STATS_DELAY = 5000;
5896
5901
 
5897
5902
  const states = ['STATUS_NULL', 'STATUS_NEW', 'STATUS_CONNECTING', 'STATUS_CONNECTED', 'STATUS_COMPLETED'];
5898
- const logger$1 = IssueReporter$1 ? IssueReporter$1.loggerFor('webrtc-client') : console;
5903
+ const logger$4 = IssueReporter$1 ? IssueReporter$1.loggerFor('webrtc-client') : console;
5899
5904
  const statsLogger = IssueReporter$1 ? IssueReporter$1.loggerFor('webrtc-stats') : console;
5900
5905
 
5901
5906
  // events
@@ -6071,13 +6076,13 @@ class WebRTCClient extends Emitter {
6071
6076
 
6072
6077
  createUserAgent(configOverrides ) {
6073
6078
  const webRTCConfiguration = this._createWebRTCConfiguration(configOverrides);
6074
- logger$1.info('sdk webrtc, creating UA', { webRTCConfiguration });
6079
+ logger$4.info('sdk webrtc, creating UA', { webRTCConfiguration });
6075
6080
 
6076
6081
  webRTCConfiguration.delegate = {
6077
6082
  onConnect: this.onConnect.bind(this),
6078
6083
  onDisconnect: this.onDisconnect.bind(this),
6079
6084
  onInvite: (invitation ) => {
6080
- logger$1.info('sdk webrtc on invite', {
6085
+ logger$4.info('sdk webrtc on invite', {
6081
6086
  method: 'delegate.onInvite',
6082
6087
  id: invitation.id,
6083
6088
  remoteURI: invitation.remoteURI,
@@ -6120,7 +6125,7 @@ class WebRTCClient extends Emitter {
6120
6125
  }
6121
6126
 
6122
6127
  onConnect() {
6123
- logger$1.info('sdk webrtc connected', { method: 'delegate.onConnect' });
6128
+ logger$4.info('sdk webrtc connected', { method: 'delegate.onConnect' });
6124
6129
  this.eventEmitter.emit(CONNECTED);
6125
6130
  if (!this.isRegistered() && this.registerer && this.registerer.waiting) {
6126
6131
  this.registerer.waitingToggle(false);
@@ -6129,7 +6134,7 @@ class WebRTCClient extends Emitter {
6129
6134
  }
6130
6135
 
6131
6136
  async onDisconnect(error ) {
6132
- logger$1.info('sdk webrtc disconnected', { method: 'delegate.onConnect', error });
6137
+ logger$4.info('sdk webrtc disconnected', { method: 'delegate.onConnect', error });
6133
6138
  this.connectionPromise = null;
6134
6139
  // The UA will attempt to reconnect automatically when an error occurred
6135
6140
  this.eventEmitter.emit(DISCONNECTED, error);
@@ -6154,37 +6159,37 @@ class WebRTCClient extends Emitter {
6154
6159
  };
6155
6160
 
6156
6161
  if (this.skipRegister) {
6157
- logger$1.info('sdk webrtc skip register...', logInfo);
6162
+ logger$4.info('sdk webrtc skip register...', logInfo);
6158
6163
  return Promise.resolve();
6159
6164
  }
6160
6165
 
6161
- logger$1.info('sdk webrtc registering...', logInfo);
6166
+ logger$4.info('sdk webrtc registering...', logInfo);
6162
6167
 
6163
6168
  if (!this.userAgent) {
6164
- logger$1.info('sdk webrtc recreating User Agent');
6169
+ logger$4.info('sdk webrtc recreating User Agent');
6165
6170
  this.userAgent = this.createUserAgent(this.uaConfigOverrides);
6166
6171
  }
6167
6172
  if (!this.userAgent || this.isRegistered()) {
6168
- logger$1.info('sdk webrtc registering aborted, already registered or no UA can be created');
6173
+ logger$4.info('sdk webrtc registering aborted, already registered or no UA can be created');
6169
6174
  return Promise.resolve();
6170
6175
  }
6171
6176
 
6172
6177
  if (this.connectionPromise || (this.registerer && this.registerer.waiting)) {
6173
- logger$1.info('sdk webrtc registering aborted due to a registration in progress.');
6178
+ logger$4.info('sdk webrtc registering aborted due to a registration in progress.');
6174
6179
  return Promise.resolve();
6175
6180
  }
6176
6181
 
6177
6182
  const registerOptions = this._isWeb() ? {} : { extraContactHeaderParams: ['mobility=mobile'] };
6178
6183
 
6179
6184
  const onRegisterFailed = () => {
6180
- logger$1.info('sdk webrtc registering failed', { tries, registerer: !!this.registerer });
6185
+ logger$4.info('sdk webrtc registering failed', { tries, registerer: !!this.registerer });
6181
6186
  this.connectionPromise = null;
6182
6187
  if (this.registerer && this.registerer.waiting) {
6183
6188
  this.registerer.waitingToggle(false);
6184
6189
  }
6185
6190
 
6186
6191
  if (tries <= MAX_REGISTER_TRIES) {
6187
- logger$1.info('sdk webrtc registering, retrying...', { tries });
6192
+ logger$4.info('sdk webrtc registering, retrying...', { tries });
6188
6193
  setTimeout(() => this.register(tries + 1), 300);
6189
6194
  }
6190
6195
  };
@@ -6193,18 +6198,18 @@ class WebRTCClient extends Emitter {
6193
6198
  // Avoid race condition with the close method called just before register and setting userAgent to null
6194
6199
  // during the resolution of the primise.
6195
6200
  if (!this.userAgent) {
6196
- logger$1.info('sdk webrtc recreating User Agent after connection');
6201
+ logger$4.info('sdk webrtc recreating User Agent after connection');
6197
6202
  this.userAgent = this.createUserAgent(this.uaConfigOverrides);
6198
6203
  }
6199
6204
 
6200
- logger$1.info('sdk webrtc registering, transport connected', { registerOptions, ua: !!this.userAgent });
6205
+ logger$4.info('sdk webrtc registering, transport connected', { registerOptions, ua: !!this.userAgent });
6201
6206
  this.registerer = new registerer.Registerer(this.userAgent, registerOptions);
6202
6207
  this.connectionPromise = null;
6203
6208
  this._monkeyPatchRegisterer(this.registerer);
6204
6209
 
6205
6210
  // Bind registerer events
6206
6211
  this.registerer.stateChange.addListener(newState => {
6207
- logger$1.info('sdk webrtc registering, state changed', { newState });
6212
+ logger$4.info('sdk webrtc registering, state changed', { newState });
6208
6213
 
6209
6214
  if (newState === registererState.RegistererState.Registered && this.registerer
6210
6215
  && this.registerer.state === registererState.RegistererState.Registered) {
@@ -6217,7 +6222,7 @@ class WebRTCClient extends Emitter {
6217
6222
  const options = {
6218
6223
  requestDelegate: {
6219
6224
  onReject: response => {
6220
- logger$1.error('sdk webrtc registering, rejected', { response });
6225
+ logger$4.error('sdk webrtc registering, rejected', { response });
6221
6226
 
6222
6227
  onRegisterFailed();
6223
6228
  },
@@ -6225,13 +6230,13 @@ class WebRTCClient extends Emitter {
6225
6230
  };
6226
6231
 
6227
6232
  return this.registerer.register(options).catch((e) => {
6228
- logger$1.error('sdk webrtc registering, error', e);
6233
+ logger$4.error('sdk webrtc registering, error', e);
6229
6234
 
6230
6235
  this.eventEmitter.emit(REGISTRATION_FAILED);
6231
6236
  return e;
6232
6237
  });
6233
6238
  }).catch(error => {
6234
- logger$1.error('sdk webrtc registering, transport error', error);
6239
+ logger$4.error('sdk webrtc registering, transport error', error);
6235
6240
  onRegisterFailed();
6236
6241
  });
6237
6242
  }
@@ -6260,21 +6265,21 @@ class WebRTCClient extends Emitter {
6260
6265
  }
6261
6266
 
6262
6267
  unregister() {
6263
- logger$1.info('sdk webrtc unregistering..', { userAgent: !!this.userAgent, registerer: !!this.registerer });
6268
+ logger$4.info('sdk webrtc unregistering..', { userAgent: !!this.userAgent, registerer: !!this.registerer });
6264
6269
  if (!this.registerer) {
6265
6270
  return Promise.resolve();
6266
6271
  }
6267
6272
 
6268
6273
  try {
6269
6274
  return this.registerer.unregister().then(() => {
6270
- logger$1.info('sdk webrtc unregistered');
6275
+ logger$4.info('sdk webrtc unregistered');
6271
6276
  this._cleanupRegister();
6272
6277
  }).catch(e => {
6273
- logger$1.error('sdk webrtc unregistering, promise error', e);
6278
+ logger$4.error('sdk webrtc unregistering, promise error', e);
6274
6279
  this._cleanupRegister();
6275
6280
  });
6276
6281
  } catch (e) {
6277
- logger$1.error('sdk webrtc unregistering, error', e);
6282
+ logger$4.error('sdk webrtc unregistering, error', e);
6278
6283
  // Avoid issue with `undefined is not an object (evaluating 'new.target.prototype')` when triggering a new
6279
6284
  // error when the registerer is in a bad state
6280
6285
  this._cleanupRegister();
@@ -6282,7 +6287,7 @@ class WebRTCClient extends Emitter {
6282
6287
  }
6283
6288
 
6284
6289
  stop() {
6285
- logger$1.info('sdk webrtc stop', { userAgent: !!this.userAgent });
6290
+ logger$4.info('sdk webrtc stop', { userAgent: !!this.userAgent });
6286
6291
  if (!this.userAgent) {
6287
6292
  return Promise.resolve();
6288
6293
  }
@@ -6290,12 +6295,12 @@ class WebRTCClient extends Emitter {
6290
6295
  return this.userAgent.stop().then(() => {
6291
6296
  return this._cleanupRegister();
6292
6297
  }).catch(e => {
6293
- logger$1.warn('sdk webrtc stop, error', { message: e.message, stack: e.stack });
6298
+ logger$4.warn('sdk webrtc stop, error', { message: e.message, stack: e.stack });
6294
6299
  });
6295
6300
  }
6296
6301
 
6297
6302
  call(number , enableVideo , audioOnly = false, conference = false) {
6298
- logger$1.info('sdk webrtc creating call', { number, enableVideo, audioOnly });
6303
+ logger$4.info('sdk webrtc creating call', { number, enableVideo, audioOnly });
6299
6304
  const inviterOptions = {
6300
6305
  sessionDescriptionHandlerOptionsReInvite: {
6301
6306
  conference,
@@ -6326,7 +6331,7 @@ class WebRTCClient extends Emitter {
6326
6331
  this._onAccepted(session, response.session, true);
6327
6332
  },
6328
6333
  onReject: (response ) => {
6329
- logger$1.info('on call rejected', { id: session.id, fromTag: session.fromTag });
6334
+ logger$4.info('on call rejected', { id: session.id, fromTag: session.fromTag });
6330
6335
  this._stopSendingStats(session);
6331
6336
  this.stopNetworkMonitoring(session);
6332
6337
 
@@ -6349,11 +6354,11 @@ class WebRTCClient extends Emitter {
6349
6354
  }
6350
6355
 
6351
6356
  answer(session , enableVideo ) {
6352
- logger$1.info('sdk webrtc answer call', { id: session.id, enableVideo });
6357
+ logger$4.info('sdk webrtc answer call', { id: session.id, enableVideo });
6353
6358
 
6354
6359
  if (!session || !session.accept) {
6355
6360
  const error = 'No session to answer, or not an invitation';
6356
- logger$1.warn(error);
6361
+ logger$4.warn(error);
6357
6362
  return Promise.reject(new Error(error));
6358
6363
  }
6359
6364
  const options = {
@@ -6363,15 +6368,15 @@ class WebRTCClient extends Emitter {
6363
6368
  return session.accept(options).then(() => {
6364
6369
  if (session.isCanceled) {
6365
6370
  const message = 'accepted a canceled session (or was canceled during the accept phase).';
6366
- logger$1.error(message, { id: session.id });
6371
+ logger$4.error(message, { id: session.id });
6367
6372
  this.onCallEnded(session);
6368
6373
 
6369
6374
  throw new CanceledCallError(message);
6370
6375
  }
6371
- logger$1.info('sdk webrtc answer, accepted.');
6376
+ logger$4.info('sdk webrtc answer, accepted.');
6372
6377
  this._onAccepted(session);
6373
6378
  }).catch(e => {
6374
- logger$1.error(`answer call error for ${session ? session.id : 'n/a'}`, e);
6379
+ logger$4.error(`answer call error for ${session ? session.id : 'n/a'}`, e);
6375
6380
 
6376
6381
  throw e;
6377
6382
  });
@@ -6379,7 +6384,7 @@ class WebRTCClient extends Emitter {
6379
6384
 
6380
6385
  hangup(session ) {
6381
6386
  const { state, id } = session;
6382
- logger$1.info('sdk webrtc hangup call', { id, state });
6387
+ logger$4.info('sdk webrtc hangup call', { id, state });
6383
6388
 
6384
6389
  try {
6385
6390
  this._stopSendingStats(session);
@@ -6408,7 +6413,7 @@ class WebRTCClient extends Emitter {
6408
6413
 
6409
6414
  return bye();
6410
6415
  } catch (error) {
6411
- logger$1.warn('sdk webrtc hangup, error', error);
6416
+ logger$4.warn('sdk webrtc hangup, error', error);
6412
6417
  }
6413
6418
 
6414
6419
  return null;
@@ -6426,7 +6431,7 @@ class WebRTCClient extends Emitter {
6426
6431
  // Fetch and emit an event at `interval` with session network stats
6427
6432
  startNetworkMonitoring(session , interval = 1000) {
6428
6433
  const sessionId = this.getSipSessionId(session);
6429
- logger$1.info('starting network inspection', { id: sessionId });
6434
+ logger$4.info('starting network inspection', { id: sessionId });
6430
6435
 
6431
6436
  this.sessionNetworkStats[sessionId] = [];
6432
6437
 
@@ -6436,7 +6441,7 @@ class WebRTCClient extends Emitter {
6436
6441
  stopNetworkMonitoring(session ) {
6437
6442
  const sessionId = this.getSipSessionId(session);
6438
6443
  const exists = sessionId in this.networkMonitoringInterval;
6439
- logger$1.info('stopping network inspection', { id: sessionId, exists });
6444
+ logger$4.info('stopping network inspection', { id: sessionId, exists });
6440
6445
 
6441
6446
  if (exists) {
6442
6447
  clearInterval(this.networkMonitoringInterval[sessionId]);
@@ -6446,17 +6451,17 @@ class WebRTCClient extends Emitter {
6446
6451
  }
6447
6452
 
6448
6453
  reject(session ) {
6449
- logger$1.info('sdk webrtc reject call', { id: session.id });
6454
+ logger$4.info('sdk webrtc reject call', { id: session.id });
6450
6455
 
6451
6456
  try {
6452
6457
  return session.reject ? session.reject() : session.cancel();
6453
6458
  } catch (e) {
6454
- logger$1.warn('Error when rejecting call', e.message, e.stack);
6459
+ logger$4.warn('Error when rejecting call', e.message, e.stack);
6455
6460
  }
6456
6461
  }
6457
6462
 
6458
6463
  async close() {
6459
- logger$1.info('sdk webrtc closing client', { userAgent: !!this.userAgent });
6464
+ logger$4.info('sdk webrtc closing client', { userAgent: !!this.userAgent });
6460
6465
  this._cleanupMedia();
6461
6466
  this.connectionPromise = null;
6462
6467
 
@@ -6487,7 +6492,7 @@ class WebRTCClient extends Emitter {
6487
6492
  // eg: "INVITE not rejectable in state Completed"
6488
6493
  }
6489
6494
  this.userAgent = null;
6490
- logger$1.info('sdk webrtc client closed');
6495
+ logger$4.info('sdk webrtc client closed');
6491
6496
  }
6492
6497
 
6493
6498
  getNumber(session ) {
@@ -6500,13 +6505,13 @@ class WebRTCClient extends Emitter {
6500
6505
  }
6501
6506
 
6502
6507
  mute(session ) {
6503
- logger$1.info('sdk webrtc mute', { id: session.id });
6508
+ logger$4.info('sdk webrtc mute', { id: session.id });
6504
6509
 
6505
6510
  this._toggleAudio(session, true);
6506
6511
  }
6507
6512
 
6508
6513
  unmute(session ) {
6509
- logger$1.info('sdk webrtc unmute', { id: session.id });
6514
+ logger$4.info('sdk webrtc unmute', { id: session.id });
6510
6515
 
6511
6516
  this._toggleAudio(session, false);
6512
6517
  }
@@ -6546,13 +6551,13 @@ class WebRTCClient extends Emitter {
6546
6551
  }
6547
6552
 
6548
6553
  toggleCameraOn(session ) {
6549
- logger$1.info('sdk webrtc toggle camera on', { id: session.id });
6554
+ logger$4.info('sdk webrtc toggle camera on', { id: session.id });
6550
6555
 
6551
6556
  this._toggleVideo(session, false);
6552
6557
  }
6553
6558
 
6554
6559
  toggleCameraOff(session ) {
6555
- logger$1.info('sdk webrtc toggle camera off', { id: session.id });
6560
+ logger$4.info('sdk webrtc toggle camera off', { id: session.id });
6556
6561
 
6557
6562
  this._toggleVideo(session, true);
6558
6563
  }
@@ -6561,7 +6566,7 @@ class WebRTCClient extends Emitter {
6561
6566
  const sessionId = this.getSipSessionId(session);
6562
6567
  const hasVideo = hadVideo || this.hasLocalVideo(sessionId);
6563
6568
 
6564
- logger$1.info('sdk webrtc hold', {
6569
+ logger$4.info('sdk webrtc hold', {
6565
6570
  sessionId,
6566
6571
  keys: Object.keys(this.heldSessions),
6567
6572
  pendingReinvite: !!session.pendingReinvite,
@@ -6610,7 +6615,7 @@ class WebRTCClient extends Emitter {
6610
6615
  const sessionId = this.getSipSessionId(session);
6611
6616
  const hasVideo = sessionId in this.heldSessions && this.heldSessions[sessionId].hasVideo;
6612
6617
 
6613
- logger$1.info('sdk webrtc unhold', {
6618
+ logger$4.info('sdk webrtc unhold', {
6614
6619
  sessionId,
6615
6620
  keys: Object.keys(this.heldSessions),
6616
6621
  pendingReinvite: !!session.pendingReinvite,
@@ -6758,7 +6763,7 @@ class WebRTCClient extends Emitter {
6758
6763
  if (!session.sessionDescriptionHandler) {
6759
6764
  return;
6760
6765
  }
6761
- logger$1.info('Sending DTMF', {
6766
+ logger$4.info('Sending DTMF', {
6762
6767
  id: this.getSipSessionId(session),
6763
6768
  tone,
6764
6769
  });
@@ -6774,7 +6779,7 @@ class WebRTCClient extends Emitter {
6774
6779
  transfer(session , target ) {
6775
6780
  this.hold(session);
6776
6781
 
6777
- logger$1.info('Transfering a session', {
6782
+ logger$4.info('Transfering a session', {
6778
6783
  id: this.getSipSessionId(session),
6779
6784
  target,
6780
6785
  });
@@ -6796,17 +6801,17 @@ class WebRTCClient extends Emitter {
6796
6801
  atxfer(session ) {
6797
6802
  this.hold(session);
6798
6803
 
6799
- logger$1.info('webrtc transfer started', { id: this.getSipSessionId(session) });
6804
+ logger$4.info('webrtc transfer started', { id: this.getSipSessionId(session) });
6800
6805
 
6801
6806
  const result = {
6802
6807
  newSession: null,
6803
6808
  init: async (target ) => {
6804
- logger$1.info('webrtc transfer initialized', { id: this.getSipSessionId(session), target });
6809
+ logger$4.info('webrtc transfer initialized', { id: this.getSipSessionId(session), target });
6805
6810
 
6806
6811
  result.newSession = await this.call(target);
6807
6812
  },
6808
6813
  complete: () => {
6809
- logger$1.info('webrtc transfer completed', {
6814
+ logger$4.info('webrtc transfer completed', {
6810
6815
  id: this.getSipSessionId(session),
6811
6816
  referId: this.getSipSessionId(result.newSession),
6812
6817
  });
@@ -6827,7 +6832,7 @@ class WebRTCClient extends Emitter {
6827
6832
  return;
6828
6833
  }
6829
6834
 
6830
- logger$1.info('send WebRTC message', { sipId: sipSession.id, contentType });
6835
+ logger$4.info('send WebRTC message', { sipId: sipSession.id, contentType });
6831
6836
 
6832
6837
  try {
6833
6838
  sipSession.message({
@@ -6869,7 +6874,7 @@ class WebRTCClient extends Emitter {
6869
6874
  }
6870
6875
 
6871
6876
  changeAudioOutputVolume(volume ) {
6872
- logger$1.info('Changing audio output volume', { volume });
6877
+ logger$4.info('Changing audio output volume', { volume });
6873
6878
 
6874
6879
  Object.values(this.audioElements).forEach(audioElement => {
6875
6880
  if (audioElement instanceof HTMLAudioElement) {
@@ -6881,7 +6886,7 @@ class WebRTCClient extends Emitter {
6881
6886
  }
6882
6887
 
6883
6888
  changeAudioOutputDevice(id ) {
6884
- logger$1.info('Changing audio output device', { id });
6889
+ logger$4.info('Changing audio output device', { id });
6885
6890
 
6886
6891
  Object.values(this.audioElements).forEach(audioElement => {
6887
6892
  // `setSinkId` method is not included in any flow type definitions for HTMLAudioElements but is a valid method
@@ -6898,7 +6903,7 @@ class WebRTCClient extends Emitter {
6898
6903
 
6899
6904
  changeAudioInputDevice(id , session ) {
6900
6905
  const currentId = this.getAudioDeviceId();
6901
- logger$1.info('setting audio input device', { id, currentId, session: !!session });
6906
+ logger$4.info('setting audio input device', { id, currentId, session: !!session });
6902
6907
 
6903
6908
  if (id === currentId) {
6904
6909
  return null;
@@ -6944,7 +6949,7 @@ class WebRTCClient extends Emitter {
6944
6949
 
6945
6950
  setVideoInputDevice(id ) {
6946
6951
  const currentId = this.getVideoDeviceId();
6947
- logger$1.info('setting video input device', { id, currentId });
6952
+ logger$4.info('setting video input device', { id, currentId });
6948
6953
 
6949
6954
  if (id === currentId) {
6950
6955
  return null;
@@ -6969,7 +6974,7 @@ class WebRTCClient extends Emitter {
6969
6974
  const sessionId = this.getSipSessionId(session);
6970
6975
  const localStream = this.getLocalStream(sessionId);
6971
6976
 
6972
- logger$1.info('changing video input device', { id, sessionId });
6977
+ logger$4.info('changing video input device', { id, sessionId });
6973
6978
 
6974
6979
  // Release old video stream
6975
6980
  if (localStream) {
@@ -7037,7 +7042,7 @@ class WebRTCClient extends Emitter {
7037
7042
  const shouldDoScreenSharing = newConstraints && newConstraints.screen;
7038
7043
  const desktop = newConstraints && newConstraints.desktop;
7039
7044
 
7040
- logger$1.info('Sending reinvite', {
7045
+ logger$4.info('Sending reinvite', {
7041
7046
  id: this.getSipSessionId(sipSession),
7042
7047
  newConstraints,
7043
7048
  conference,
@@ -7075,7 +7080,7 @@ class WebRTCClient extends Emitter {
7075
7080
  sipSession.incomingInviteRequest.message.body = response.message.body;
7076
7081
  }
7077
7082
 
7078
- logger$1.info('on re-INVITE accepted', {
7083
+ logger$4.info('on re-INVITE accepted', {
7079
7084
  id: this.getSipSessionId(sipSession),
7080
7085
  wasMuted,
7081
7086
  shouldDoScreenSharing,
@@ -7250,7 +7255,7 @@ class WebRTCClient extends Emitter {
7250
7255
  }
7251
7256
 
7252
7257
  startHeartbeat() {
7253
- logger$1.info('sdk webrtc start heartbeat', { userAgent: !!this.userAgent });
7258
+ logger$4.info('sdk webrtc start heartbeat', { userAgent: !!this.userAgent });
7254
7259
  if (!this.userAgent) {
7255
7260
  this.heartbeat.stop();
7256
7261
  return;
@@ -7263,7 +7268,7 @@ class WebRTCClient extends Emitter {
7263
7268
  }
7264
7269
 
7265
7270
  stopHeartbeat() {
7266
- logger$1.info('sdk webrtc stop heartbeat');
7271
+ logger$4.info('sdk webrtc stop heartbeat');
7267
7272
  this.heartbeat.stop();
7268
7273
  }
7269
7274
 
@@ -7284,7 +7289,7 @@ class WebRTCClient extends Emitter {
7284
7289
  }
7285
7290
 
7286
7291
  attemptReconnection() {
7287
- logger$1.info('attempt reconnection', { userAgent: !!this.userAgent });
7292
+ logger$4.info('attempt reconnection', { userAgent: !!this.userAgent });
7288
7293
  if (!this.userAgent) {
7289
7294
  return;
7290
7295
  }
@@ -7309,7 +7314,7 @@ class WebRTCClient extends Emitter {
7309
7314
  return;
7310
7315
  }
7311
7316
 
7312
- logger$1.info('setting local media stream', {
7317
+ logger$4.info('setting local media stream', {
7313
7318
  sipSessionId,
7314
7319
  tracks: newStream ? newStream.getTracks() : null,
7315
7320
  });
@@ -7326,7 +7331,7 @@ class WebRTCClient extends Emitter {
7326
7331
 
7327
7332
  const oldStream = this.getLocalStream(sipSessionId);
7328
7333
 
7329
- logger$1.info('updating local stream', {
7334
+ logger$4.info('updating local stream', {
7330
7335
  sipSessionId,
7331
7336
  oldStream: !!oldStream,
7332
7337
  tracks: newStream.getTracks(),
@@ -7346,7 +7351,7 @@ class WebRTCClient extends Emitter {
7346
7351
  const remoteStream = this.getRemoteStream(sessionId);
7347
7352
  const pc = this.getPeerConnection(sessionId);
7348
7353
 
7349
- logger$1.info('Updating remote stream', {
7354
+ logger$4.info('Updating remote stream', {
7350
7355
  sessionId,
7351
7356
  tracks: remoteStream ? remoteStream.getTracks() : null,
7352
7357
  receiverTracks: pc && pc.getReceivers ? pc.getReceivers().map(receiver => receiver.track) : null,
@@ -7372,7 +7377,7 @@ class WebRTCClient extends Emitter {
7372
7377
  const isDesktop = constraints && 'desktop' in constraints ? constraints.desktop : false;
7373
7378
  const withAudio = constraints && 'audio' in constraints ? constraints.audio : true;
7374
7379
 
7375
- logger$1.info('Retrieving media a configuration', { enableVideo, screenSharing, isDesktop, withAudio, constraints });
7380
+ logger$4.info('Retrieving media a configuration', { enableVideo, screenSharing, isDesktop, withAudio, constraints });
7376
7381
 
7377
7382
  return {
7378
7383
  constraints: {
@@ -7421,7 +7426,7 @@ class WebRTCClient extends Emitter {
7421
7426
  }
7422
7427
 
7423
7428
  _onTransportError() {
7424
- logger$1.error('on transport error');
7429
+ logger$4.error('on transport error');
7425
7430
  this.eventEmitter.emit(TRANSPORT_ERROR);
7426
7431
  this.attemptReconnection();
7427
7432
  }
@@ -7430,7 +7435,7 @@ class WebRTCClient extends Emitter {
7430
7435
  const body = message && typeof message === 'object' ? message.data : message;
7431
7436
  if (body && body.indexOf('200 OK') !== -1) {
7432
7437
  if (this.hasHeartbeat()) {
7433
- logger$1.info('on heartbeat received from Asterisk', { hasHeartbeat: this.hasHeartbeat() });
7438
+ logger$4.info('on heartbeat received from Asterisk', { hasHeartbeat: this.hasHeartbeat() });
7434
7439
 
7435
7440
  this.heartbeat.onHeartbeat();
7436
7441
  if (this.heartbeatCb) {
@@ -7441,7 +7446,7 @@ class WebRTCClient extends Emitter {
7441
7446
  }
7442
7447
 
7443
7448
  async _onHeartbeatTimeout() {
7444
- logger$1.info('sdk webrtc heartbeat timed out', { userAgent: !!this.userAgent, cb: !!this.heartbeatTimeoutCb });
7449
+ logger$4.info('sdk webrtc heartbeat timed out', { userAgent: !!this.userAgent, cb: !!this.heartbeatTimeoutCb });
7445
7450
 
7446
7451
  if (this.heartbeatTimeoutCb) {
7447
7452
  this.heartbeatTimeoutCb();
@@ -7453,7 +7458,7 @@ class WebRTCClient extends Emitter {
7453
7458
  try {
7454
7459
  await this.userAgent.transport.disconnect();
7455
7460
  } catch (e) {
7456
- logger$1.error('Transport disconnection after heartbeat timeout, error', e);
7461
+ logger$4.error('Transport disconnection after heartbeat timeout, error', e);
7457
7462
  }
7458
7463
  }
7459
7464
 
@@ -7486,31 +7491,31 @@ class WebRTCClient extends Emitter {
7486
7491
  }
7487
7492
 
7488
7493
  _connectIfNeeded() {
7489
- logger$1.info('connect if needed, checking', { connected: this.isConnected() });
7494
+ logger$4.info('connect if needed, checking', { connected: this.isConnected() });
7490
7495
  if (!this.userAgent) {
7491
- logger$1.info('need to recreate User Agent');
7496
+ logger$4.info('need to recreate User Agent');
7492
7497
  this.userAgent = this.createUserAgent(this.uaConfigOverrides);
7493
7498
  }
7494
7499
 
7495
7500
  if (this.isConnected()) {
7496
- logger$1.info('webrtc sdk, already connected');
7501
+ logger$4.info('webrtc sdk, already connected');
7497
7502
  return Promise.resolve();
7498
7503
  }
7499
7504
 
7500
7505
  if (this.isConnecting()) {
7501
- logger$1.info('webrtc sdk, already connecting...');
7506
+ logger$4.info('webrtc sdk, already connecting...');
7502
7507
 
7503
7508
  this.connectionPromise = this.userAgent.transport.connectPromise;
7504
7509
  return this.connectionPromise;
7505
7510
  }
7506
7511
 
7507
7512
  if (this.connectionPromise) {
7508
- logger$1.info('webrtc sdk, connection promise connecting...');
7513
+ logger$4.info('webrtc sdk, connection promise connecting...');
7509
7514
  // $FlowFixMe
7510
7515
  return this.connectionPromise;
7511
7516
  }
7512
7517
 
7513
- logger$1.info('WebRTC UA needs to connect');
7518
+ logger$4.info('WebRTC UA needs to connect');
7514
7519
 
7515
7520
  // Force UA to reconnect
7516
7521
  if (this.userAgent && this.userAgent.state !== userAgentState.UserAgentState.Stopped) {
@@ -7635,7 +7640,7 @@ class WebRTCClient extends Emitter {
7635
7640
 
7636
7641
  sdh.peerConnectionDelegate = {
7637
7642
  onicecandidateerror: (error ) => {
7638
- logger$1.error('on icecandidate error', {
7643
+ logger$4.error('on icecandidate error', {
7639
7644
  address: error.address,
7640
7645
  port: error.port,
7641
7646
  errorCode: error.errorCode,
@@ -7664,7 +7669,7 @@ class WebRTCClient extends Emitter {
7664
7669
  updatedNumber = session.assertedIdentity.uri.normal.user;
7665
7670
  updatedCalleeName = session.assertedIdentity.displayName || updatedNumber;
7666
7671
  }
7667
- logger$1.info('re-invite received', { updatedCalleeName, updatedNumber, hadRemoteVideo });
7672
+ logger$4.info('re-invite received', { updatedCalleeName, updatedNumber, hadRemoteVideo });
7668
7673
 
7669
7674
  // Useful to know if it's a video upgrade or an unhold from a remote peer with a video stream
7670
7675
 
@@ -7685,7 +7690,7 @@ class WebRTCClient extends Emitter {
7685
7690
  }
7686
7691
 
7687
7692
  _onAccepted(session , sessionDialog , withEvent = true) {
7688
- logger$1.info('on call accepted', { id: session.id, remoteTag: session.remoteTag });
7693
+ logger$4.info('on call accepted', { id: session.id, remoteTag: session.remoteTag });
7689
7694
 
7690
7695
  this.storeSipSession(session);
7691
7696
 
@@ -7697,7 +7702,7 @@ class WebRTCClient extends Emitter {
7697
7702
  const onTrack = (event ) => {
7698
7703
  const isAudioOnly = this._isAudioOnly(session);
7699
7704
  const { kind, label, readyState, id, muted } = event.track;
7700
- logger$1.info('on track event', { isAudioOnly, kind, label, readyState, id, muted });
7705
+ logger$4.info('on track event', { isAudioOnly, kind, label, readyState, id, muted });
7701
7706
 
7702
7707
  // Stop video track in audio only mode
7703
7708
  if (isAudioOnly && kind === 'video') {
@@ -7714,7 +7719,7 @@ class WebRTCClient extends Emitter {
7714
7719
  session.sessionDescriptionHandler.remoteMediaStream.onaddtrack = onTrack;
7715
7720
 
7716
7721
  pc.oniceconnectionstatechange = () => {
7717
- logger$1.info('on ice connection state changed', { state: pc.iceConnectionState });
7722
+ logger$4.info('on ice connection state changed', { state: pc.iceConnectionState });
7718
7723
  if (pc.iceConnectionState === 'disconnected') {
7719
7724
  this.eventEmitter.emit(ON_DISCONNECTED);
7720
7725
  }
@@ -7887,10 +7892,10 @@ class WebRTCClient extends Emitter {
7887
7892
 
7888
7893
  _stopSendingStats(session ) {
7889
7894
  const sessionId = this.getSipSessionId(session);
7890
- logger$1.trace('Check for stopping stats', { sessionId, ids: Object.keys(this.statsIntervals) });
7895
+ logger$4.trace('Check for stopping stats', { sessionId, ids: Object.keys(this.statsIntervals) });
7891
7896
 
7892
7897
  if (sessionId in this.statsIntervals) {
7893
- logger$1.trace('Stop sending stats for call', { sessionId });
7898
+ logger$4.trace('Stop sending stats for call', { sessionId });
7894
7899
  this.statsIntervals[sessionId]();
7895
7900
  delete this.statsIntervals[sessionId];
7896
7901
  }
@@ -7906,7 +7911,7 @@ class WebRTCClient extends Emitter {
7906
7911
  try {
7907
7912
  await this.userAgent.transport.disconnect();
7908
7913
  } catch (e) {
7909
- logger$1.error('WebRTC transport disconnect, error', e);
7914
+ logger$4.error('WebRTC transport disconnect, error', e);
7910
7915
  }
7911
7916
  }
7912
7917
  }
@@ -8089,7 +8094,7 @@ var webrtc = {
8089
8094
  }),
8090
8095
  };
8091
8096
 
8092
- const parseCandidate = line => {
8097
+ const parseCandidate$1 = line => {
8093
8098
  let parts;
8094
8099
  // Parse both variants.
8095
8100
  if (line.indexOf('a=candidate:') === 0) {
@@ -8180,7 +8185,7 @@ var SymmetricNat = {
8180
8185
  }
8181
8186
 
8182
8187
  if (e.candidate && e.candidate.candidate.indexOf('srflx') !== -1) {
8183
- const cand = parseCandidate(e.candidate.candidate);
8188
+ const cand = parseCandidate$1(e.candidate.candidate);
8184
8189
  if (!candidates[cand.relatedPort]) candidates[cand.relatedPort] = [];
8185
8190
  candidates[cand.relatedPort].push(cand.port);
8186
8191
  } else if (!e.candidate) {
@@ -8248,7 +8253,7 @@ var iceIpv4 = {
8248
8253
  const rawCandidate = e.candidate.candidate;
8249
8254
  if (rawCandidate.indexOf('srflx') !== -1 || rawCandidate.indexOf('relay') !== -1) {
8250
8255
  hasSrflxOrRelay = true;
8251
- const candidate = parseCandidate(e.candidate.candidate);
8256
+ const candidate = parseCandidate$1(e.candidate.candidate);
8252
8257
  ips.push(candidate.ip);
8253
8258
  }
8254
8259
  } else if (!e.candidate) {
@@ -8285,7 +8290,7 @@ var checks = [
8285
8290
 
8286
8291
  //
8287
8292
 
8288
- const logger = IssueReporter$1.loggerFor('engine-check');
8293
+ const logger$5 = IssueReporter$1.loggerFor('engine-check');
8289
8294
 
8290
8295
  class Checker {
8291
8296
 
@@ -8303,28 +8308,28 @@ class Checker {
8303
8308
  async check(onCheckBegin = () => {}, onCheckResult = () => {}) {
8304
8309
  await this._addEngineVersion();
8305
8310
 
8306
- logger.info('Engine check starting');
8311
+ logger$5.info('Engine check starting');
8307
8312
 
8308
8313
  for (let i = 0; i < this.checks.length; i++) {
8309
8314
  const { name, check } = this.checks[i];
8310
8315
 
8311
- logger.info(`Checking ${name} ...`);
8316
+ logger$5.info(`Checking ${name} ...`);
8312
8317
 
8313
8318
  onCheckBegin(name);
8314
8319
  try {
8315
8320
  // eslint-disable-next-line no-await-in-loop
8316
8321
  const result = await check(this.server, this.session, this.externalAppConfig);
8317
- logger.info(`Checking ${name} success.`, { result });
8322
+ logger$5.info(`Checking ${name} success.`, { result });
8318
8323
 
8319
8324
  onCheckResult(name, result);
8320
8325
  } catch (e) {
8321
- logger.info(`Checking ${name} failure`, { message: e.message });
8326
+ logger$5.info(`Checking ${name} failure`, { message: e.message });
8322
8327
 
8323
8328
  onCheckResult(name, e);
8324
8329
  }
8325
8330
  }
8326
8331
 
8327
- logger.info('Engine check done.');
8332
+ logger$5.info('Engine check done.');
8328
8333
  }
8329
8334
 
8330
8335
  addCheck(check ) {