@wazo/sdk 0.37.40 → 0.37.43

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 (109) hide show
  1. package/dist/wazo-sdk.js +3 -3
  2. package/esm/__tests__/api-client.test.js +45 -22
  3. package/esm/__tests__/web-rtc-client.test.js +49 -24
  4. package/esm/api/agentd.js +12 -7
  5. package/esm/api/amid.js +12 -7
  6. package/esm/api/application.js +12 -7
  7. package/esm/api/auth.js +16 -8
  8. package/esm/api/call-logd.js +12 -7
  9. package/esm/api/calld.js +12 -7
  10. package/esm/api/chatd.js +12 -7
  11. package/esm/api/confd.js +12 -7
  12. package/esm/api/ctid-ng.js +14 -7
  13. package/esm/api/dird.js +12 -7
  14. package/esm/api/webhookd.js +12 -7
  15. package/esm/api-client.js +45 -22
  16. package/esm/checker/Checker.js +50 -25
  17. package/esm/checker/checks/aor.js +45 -22
  18. package/esm/checker/checks/api.js +45 -22
  19. package/esm/checker/checks/index.js +50 -25
  20. package/esm/checker/checks/wazo-websocket.js +13 -8
  21. package/esm/checker/checks/webrtc-transport.js +49 -24
  22. package/esm/checker/checks/webrtc.js +49 -24
  23. package/esm/domain/AdHocAPIConference.js +54 -23
  24. package/esm/domain/Features.js +54 -23
  25. package/esm/domain/Phone/CTIPhone.js +54 -23
  26. package/esm/domain/Phone/WebRTCPhone.js +18 -11
  27. package/esm/index.js +89 -29
  28. package/esm/lib/WazoSessionDescriptionHandler.js +12 -7
  29. package/esm/service/CallApi.js +54 -23
  30. package/esm/service/IssueReporter.js +12 -7
  31. package/esm/service/__tests__/IssueReporter.test.js +18 -7
  32. package/esm/service/getApiClient.js +63 -24
  33. package/esm/simple/Auth.js +89 -29
  34. package/esm/simple/Configuration.js +89 -29
  35. package/esm/simple/Directory.js +54 -23
  36. package/esm/simple/Phone.js +89 -29
  37. package/esm/simple/Websocket.js +13 -8
  38. package/esm/simple/index.js +89 -29
  39. package/esm/simple/room/LocalParticipant.js +89 -29
  40. package/esm/simple/room/Participant.js +89 -29
  41. package/esm/simple/room/RemoteParticipant.js +89 -29
  42. package/esm/simple/room/Room.js +89 -29
  43. package/esm/simple/room/SipRoom.js +89 -29
  44. package/esm/simple/room/Stream.js +89 -29
  45. package/esm/simple/room/__tests__/RemoteParticipant.test.js +89 -29
  46. package/esm/simple/utils.js +89 -29
  47. package/esm/utils/__tests__/api-requester.test.js +12 -7
  48. package/esm/utils/api-requester.js +12 -7
  49. package/esm/web-rtc-client.js +49 -24
  50. package/esm/websocket-client.js +13 -8
  51. package/lib/__tests__/api-client.test.js +45 -22
  52. package/lib/__tests__/web-rtc-client.test.js +49 -24
  53. package/lib/api/agentd.js +12 -7
  54. package/lib/api/amid.js +12 -7
  55. package/lib/api/application.js +12 -7
  56. package/lib/api/auth.js +16 -8
  57. package/lib/api/call-logd.js +12 -7
  58. package/lib/api/calld.js +12 -7
  59. package/lib/api/chatd.js +12 -7
  60. package/lib/api/confd.js +12 -7
  61. package/lib/api/ctid-ng.js +14 -7
  62. package/lib/api/dird.js +12 -7
  63. package/lib/api/webhookd.js +12 -7
  64. package/lib/api-client.js +45 -22
  65. package/lib/checker/Checker.js +50 -25
  66. package/lib/checker/checks/aor.js +45 -22
  67. package/lib/checker/checks/api.js +45 -22
  68. package/lib/checker/checks/index.js +50 -25
  69. package/lib/checker/checks/wazo-websocket.js +13 -8
  70. package/lib/checker/checks/webrtc-transport.js +49 -24
  71. package/lib/checker/checks/webrtc.js +49 -24
  72. package/lib/domain/AdHocAPIConference.js +54 -23
  73. package/lib/domain/Features.js +54 -23
  74. package/lib/domain/Phone/CTIPhone.js +54 -23
  75. package/lib/domain/Phone/WebRTCPhone.js +18 -11
  76. package/lib/index.js +89 -29
  77. package/lib/lib/WazoSessionDescriptionHandler.js +12 -7
  78. package/lib/service/CallApi.js +54 -23
  79. package/lib/service/IssueReporter.js +12 -7
  80. package/lib/service/__tests__/IssueReporter.test.js +18 -7
  81. package/lib/service/getApiClient.js +64 -23
  82. package/lib/simple/Auth.js +89 -29
  83. package/lib/simple/Configuration.js +89 -29
  84. package/lib/simple/Directory.js +54 -23
  85. package/lib/simple/Phone.js +89 -29
  86. package/lib/simple/Websocket.js +13 -8
  87. package/lib/simple/index.js +89 -29
  88. package/lib/simple/room/LocalParticipant.js +89 -29
  89. package/lib/simple/room/Participant.js +89 -29
  90. package/lib/simple/room/RemoteParticipant.js +89 -29
  91. package/lib/simple/room/Room.js +89 -29
  92. package/lib/simple/room/SipRoom.js +89 -29
  93. package/lib/simple/room/Stream.js +89 -29
  94. package/lib/simple/room/__tests__/RemoteParticipant.test.js +89 -29
  95. package/lib/simple/utils.js +89 -29
  96. package/lib/utils/__tests__/api-requester.test.js +12 -7
  97. package/lib/utils/api-requester.js +12 -7
  98. package/lib/web-rtc-client.js +49 -24
  99. package/lib/websocket-client.js +13 -8
  100. package/package.json +1 -1
  101. package/src/api/auth.js +4 -1
  102. package/src/api-client.js +26 -13
  103. package/src/domain/Phone/WebRTCPhone.js +4 -4
  104. package/src/service/IssueReporter.js +12 -7
  105. package/src/service/__tests__/IssueReporter.test.js +6 -0
  106. package/src/service/getApiClient.js +19 -1
  107. package/src/simple/Auth.js +21 -0
  108. package/src/web-rtc-client.js +4 -2
  109. package/src/websocket-client.js +1 -1
@@ -10,7 +10,9 @@ global.wazoClients = global.wazoClients || {};
10
10
  global.wazoClientId = global.wazoClientId || {};
11
11
  global.wazoClientToken = global.wazoClientToken || {};
12
12
  global.wazoRefreshToken = global.wazoRefreshToken || {};
13
+ global.wazoRefreshTenantId = global.wazoRefreshTenantId || {};
13
14
  global.wazoOnRefreshToken = global.wazoOnRefreshToken || {};
15
+ global.wazoOnRefreshTokenError = global.wazoOnRefreshTokenError || {};
14
16
  global.wazoRefreshExpiration = global.wazoRefreshExpiration || {};
15
17
  global.wazoRefreshBackend = global.wazoRefreshBackend || {};
16
18
  global.wazoIsMobile = global.wazoIsMobile || {};
@@ -32,10 +34,18 @@ export const setRefreshToken = (newRefreshToken: ?string, forServer: ?string = n
32
34
  global.wazoRefreshToken[forServer] = newRefreshToken;
33
35
  };
34
36
 
37
+ export const setRefreshTenantId = (refreshTenantId: ?string, forServer: ?string = null) => {
38
+ global.wazoRefreshTenantId[forServer] = refreshTenantId;
39
+ };
40
+
35
41
  export const setOnRefreshToken = (onRefreshToken: Function, forServer: ?string = null) => {
36
42
  global.wazoOnRefreshToken[forServer] = onRefreshToken;
37
43
  };
38
44
 
45
+ export const setOnRefreshTokenError = (callback: Function, forServer: ?string = null) => {
46
+ global.wazoOnRefreshTokenError[forServer] = callback;
47
+ };
48
+
39
49
  export const setRefreshExpiration = (refreshExpiration: number, forServer: ?string = null) => {
40
50
  global.wazoRefreshExpiration[forServer] = refreshExpiration;
41
51
  };
@@ -62,12 +72,20 @@ const fillClient = (apiClient: WazoApiClient) => {
62
72
 
63
73
  apiClient.setRefreshToken(global.wazoRefreshToken[server] || global.wazoRefreshToken[null] || apiClient.refreshToken);
64
74
 
75
+ apiClient.setRefreshTenantId(
76
+ global.wazoRefreshTenantId[server] || global.wazoRefreshTenantId[null] || apiClient.refreshTenantId,
77
+ );
78
+
65
79
  apiClient.setFetchOptions(global.wazoFetchOptions[server] || global.wazoFetchOptions[null] || apiClient.fetchOptions);
66
80
 
67
81
  apiClient.setOnRefreshToken(
68
82
  global.wazoOnRefreshToken[server] || global.wazoOnRefreshToken[null] || apiClient.onRefreshToken,
69
83
  );
70
84
 
85
+ apiClient.setOnRefreshTokenError(
86
+ global.wazoOnRefreshTokenError[server] || global.wazoOnRefreshTokenError[null] || apiClient.onRefreshTokenError,
87
+ );
88
+
71
89
  apiClient.setRefreshExpiration(
72
90
  global.wazoRefreshExpiration[server] || global.wazoRefreshExpiration[null] || apiClient.refreshExpiration,
73
91
  );
@@ -81,7 +99,7 @@ const fillClient = (apiClient: WazoApiClient) => {
81
99
  return apiClient;
82
100
  };
83
101
 
84
- export default (forServer: ?string): WazoApiClient => {
102
+ export default (forServer: ?string = null): WazoApiClient => {
85
103
  const server: string = forServer || global.wazoCurrentServer || '';
86
104
  if (server in global.wazoClients) {
87
105
  return fillClient(global.wazoClients[server]);
@@ -10,6 +10,8 @@ import getApiClient, {
10
10
  setRefreshExpiration,
11
11
  setOnRefreshToken,
12
12
  setFetchOptions,
13
+ setRefreshTenantId,
14
+ setOnRefreshTokenError,
13
15
  } from '../service/getApiClient';
14
16
  import IssueReporter from '../service/IssueReporter';
15
17
 
@@ -29,6 +31,7 @@ class Auth {
29
31
  host: ?string;
30
32
  session: ?Session;
31
33
  onRefreshTokenCallback: ?Function;
34
+ onRefreshTokenCallbackError: ?Function;
32
35
  authenticated: boolean;
33
36
  mobile: boolean;
34
37
  BACKEND_WAZO: string;
@@ -66,6 +69,14 @@ class Auth {
66
69
  this.onRefreshTokenCallback(token, session);
67
70
  }
68
71
  });
72
+
73
+ setOnRefreshTokenError(error => {
74
+ logger.error('on refresh token error', error);
75
+
76
+ if (this.onRefreshTokenCallbackError) {
77
+ this.onRefreshTokenCallbackError(error);
78
+ }
79
+ });
69
80
  }
70
81
 
71
82
  setFetchOptions(options: Object) {
@@ -154,6 +165,10 @@ class Auth {
154
165
  this.onRefreshTokenCallback = callback;
155
166
  }
156
167
 
168
+ setOnRefreshTokenError(callback: Function) {
169
+ this.onRefreshTokenCallbackError = callback;
170
+ }
171
+
157
172
  checkAuthorizations(session: Session, authorizationName: ?string) {
158
173
  if (!authorizationName) {
159
174
  return;
@@ -186,6 +201,12 @@ class Auth {
186
201
  setRefreshToken(refreshToken);
187
202
  }
188
203
 
204
+ setRefreshTenantId(refreshTenantId: string) {
205
+ setRefreshTenantId(refreshTenantId);
206
+
207
+ getApiClient().setRefreshTenantId(refreshTenantId);
208
+ }
209
+
189
210
  forceRefreshToken() {
190
211
  getApiClient().forceRefreshToken();
191
212
  }
@@ -771,8 +771,10 @@ export default class WebRTCClient extends Emitter {
771
771
  conference: isConference,
772
772
  };
773
773
 
774
- // Avoid sdh to created a new stream
775
- session.sessionDescriptionHandler.localMediaStreamConstraints = options.constraints;
774
+ // Avoid sdh to create a new stream
775
+ if (session.sessionDescriptionHandler) {
776
+ session.sessionDescriptionHandler.localMediaStreamConstraints = options.constraints;
777
+ }
776
778
 
777
779
  // Send re-INVITE
778
780
  return session.invite(options);
@@ -356,7 +356,7 @@ class WebSocketClient extends Emitter {
356
356
  this.close();
357
357
  }
358
358
  const url = `wss://${this.host || ''}/api/websocketd/?token=${this.token || ''}&version=${this.version}`;
359
- logger.log('Wazo WS url computed to reconnect', { url });
359
+ logger.info('Wazo WS url computed to reconnect', { url });
360
360
 
361
361
  return url;
362
362
  }