@wazo/sdk 0.38.7 → 0.38.10

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 (121) hide show
  1. package/dist/wazo-sdk.js +2 -2
  2. package/esm/__tests__/api-client.test.js +163 -2
  3. package/esm/__tests__/web-rtc-client.test.js +248 -27
  4. package/esm/api/auth.js +12 -0
  5. package/esm/api/calld.js +8 -0
  6. package/esm/api/confd.js +134 -2
  7. package/esm/api/ctid-ng.js +1 -0
  8. package/esm/api-client.js +163 -2
  9. package/esm/checker/Checker.js +204 -24
  10. package/esm/checker/checks/aor.js +163 -2
  11. package/esm/checker/checks/api.js +163 -2
  12. package/esm/checker/checks/index.js +204 -24
  13. package/esm/checker/checks/wazo-websocket.js +2 -0
  14. package/esm/checker/checks/webrtc-transport.js +202 -24
  15. package/esm/checker/checks/webrtc.js +202 -24
  16. package/esm/domain/AdHocAPIConference.js +170 -4
  17. package/esm/domain/Features.js +170 -4
  18. package/esm/domain/Meeting.js +18 -0
  19. package/esm/domain/MeetingAuthorization.js +70 -0
  20. package/esm/domain/Phone/CTIPhone.js +170 -4
  21. package/esm/domain/Phone/WebRTCPhone.js +2 -3
  22. package/esm/domain/__tests__/Meeting.test.js +87 -1
  23. package/esm/domain/__tests__/MeetingAuthorization.test.js +109 -0
  24. package/esm/index.js +300 -36
  25. package/esm/service/CallApi.js +170 -4
  26. package/esm/service/getApiClient.js +176 -5
  27. package/esm/simple/Auth.js +301 -37
  28. package/esm/simple/Configuration.js +300 -36
  29. package/esm/simple/Directory.js +170 -4
  30. package/esm/simple/Phone.js +300 -36
  31. package/esm/simple/Softphone.js +5 -0
  32. package/esm/simple/Websocket.js +3 -0
  33. package/esm/simple/index.js +300 -36
  34. package/esm/simple/room/LocalParticipant.js +300 -36
  35. package/esm/simple/room/Participant.js +300 -36
  36. package/esm/simple/room/RemoteParticipant.js +300 -36
  37. package/esm/simple/room/Room.js +300 -36
  38. package/esm/simple/room/SipRoom.js +300 -36
  39. package/esm/simple/room/Stream.js +300 -36
  40. package/esm/simple/room/__tests__/Participant.test.js +14812 -0
  41. package/esm/simple/room/__tests__/RemoteParticipant.test.js +300 -36
  42. package/esm/simple/utils.js +300 -36
  43. package/esm/utils/__tests__/object.test.js +57 -0
  44. package/esm/utils/__tests__/string.test.js +30 -0
  45. package/esm/utils/object.js +24 -0
  46. package/esm/utils/string.js +10 -0
  47. package/esm/web-rtc-client.js +202 -24
  48. package/esm/websocket-client.js +3 -1
  49. package/lib/__tests__/api-client.test.js +163 -2
  50. package/lib/__tests__/web-rtc-client.test.js +248 -27
  51. package/lib/api/auth.js +12 -0
  52. package/lib/api/calld.js +8 -0
  53. package/lib/api/confd.js +134 -2
  54. package/lib/api/ctid-ng.js +1 -0
  55. package/lib/api-client.js +163 -2
  56. package/lib/checker/Checker.js +204 -24
  57. package/lib/checker/checks/aor.js +163 -2
  58. package/lib/checker/checks/api.js +163 -2
  59. package/lib/checker/checks/index.js +204 -24
  60. package/lib/checker/checks/wazo-websocket.js +2 -0
  61. package/lib/checker/checks/webrtc-transport.js +202 -24
  62. package/lib/checker/checks/webrtc.js +202 -24
  63. package/lib/domain/AdHocAPIConference.js +170 -4
  64. package/lib/domain/Features.js +170 -4
  65. package/lib/domain/Meeting.js +18 -0
  66. package/lib/domain/MeetingAuthorization.js +79 -0
  67. package/lib/domain/Phone/CTIPhone.js +170 -4
  68. package/lib/domain/Phone/WebRTCPhone.js +2 -3
  69. package/lib/domain/__tests__/Meeting.test.js +87 -1
  70. package/lib/domain/__tests__/MeetingAuthorization.test.js +111 -0
  71. package/lib/index.js +300 -36
  72. package/lib/service/CallApi.js +170 -4
  73. package/lib/service/getApiClient.js +176 -4
  74. package/lib/simple/Auth.js +301 -36
  75. package/lib/simple/Configuration.js +300 -36
  76. package/lib/simple/Directory.js +170 -4
  77. package/lib/simple/Phone.js +300 -36
  78. package/lib/simple/Softphone.js +5 -0
  79. package/lib/simple/Websocket.js +3 -0
  80. package/lib/simple/index.js +300 -36
  81. package/lib/simple/room/LocalParticipant.js +300 -36
  82. package/lib/simple/room/Participant.js +300 -36
  83. package/lib/simple/room/RemoteParticipant.js +300 -36
  84. package/lib/simple/room/Room.js +300 -36
  85. package/lib/simple/room/SipRoom.js +300 -36
  86. package/lib/simple/room/Stream.js +300 -36
  87. package/lib/simple/room/__tests__/Participant.test.js +14822 -0
  88. package/lib/simple/room/__tests__/RemoteParticipant.test.js +300 -36
  89. package/lib/simple/utils.js +300 -36
  90. package/lib/utils/__tests__/object.test.js +59 -0
  91. package/lib/utils/__tests__/string.test.js +32 -0
  92. package/lib/utils/object.js +28 -0
  93. package/lib/utils/string.js +14 -0
  94. package/lib/web-rtc-client.js +202 -24
  95. package/lib/websocket-client.js +3 -0
  96. package/package.json +1 -1
  97. package/src/__tests__/web-rtc-client.test.js +46 -3
  98. package/src/api/auth.js +12 -0
  99. package/src/api/calld.js +8 -0
  100. package/src/api/confd.js +43 -2
  101. package/src/api-client.js +8 -0
  102. package/src/domain/Meeting.js +20 -0
  103. package/src/domain/MeetingAuthorization.js +67 -0
  104. package/src/domain/Phone/WebRTCPhone.js +1 -3
  105. package/src/domain/__tests__/Meeting.test.js +70 -1
  106. package/src/domain/__tests__/MeetingAuthorization.test.js +58 -0
  107. package/src/service/getApiClient.js +13 -2
  108. package/src/simple/Auth.js +35 -4
  109. package/src/simple/Softphone.js +5 -0
  110. package/src/simple/index.js +2 -1
  111. package/src/simple/room/Participant.js +40 -0
  112. package/src/simple/room/Room.js +2 -2
  113. package/src/simple/room/SipRoom.js +1 -1
  114. package/src/simple/room/__tests__/Participant.test.js +81 -0
  115. package/src/types/WebSocketMessage.js +7 -1
  116. package/src/utils/__tests__/object.test.js +35 -0
  117. package/src/utils/__tests__/string.test.js +23 -0
  118. package/src/utils/object.js +15 -0
  119. package/src/utils/string.js +8 -0
  120. package/src/web-rtc-client.js +39 -22
  121. package/src/websocket-client.js +2 -0
@@ -0,0 +1,111 @@
1
+ 'use strict';
2
+
3
+ //
4
+
5
+ class MeetingAuthorization {
6
+
7
+
8
+
9
+
10
+
11
+
12
+ constructor({
13
+ meetingUuid,
14
+ uuid,
15
+ userUuid,
16
+ userName,
17
+ } = {}) {
18
+ this.meetingUuid = meetingUuid;
19
+ this.uuid = uuid;
20
+ this.userUuid = userUuid;
21
+ this.userName = userName;
22
+ }
23
+
24
+ setStatus(status ) {
25
+ this.status = status;
26
+ }
27
+
28
+ getStatus() {
29
+ return this.status;
30
+ }
31
+
32
+ static parse(plain ) {
33
+ const {
34
+ meeting_uuid: meetingUuid,
35
+ uuid,
36
+ guest_uuid: userUuid,
37
+ guest_name: userName,
38
+ } = plain;
39
+
40
+ return new MeetingAuthorization({
41
+ meetingUuid,
42
+ uuid,
43
+ userUuid,
44
+ userName,
45
+ });
46
+ }
47
+
48
+ static parseMany(items ) {
49
+ if (!items) {
50
+ return [];
51
+ }
52
+ return items.map(MeetingAuthorization.parse);
53
+ }
54
+ }
55
+
56
+ describe('MeetingAuthorization', () => {
57
+ describe('parse', () => {
58
+ it('should parse a raw input', () => {
59
+ const rawAuthorization = {
60
+ created_at: 'today',
61
+ meeting_uuid: 'meeting_uuid',
62
+ uuid: 'uuid',
63
+ guest_uuid: 'guest_uuid',
64
+ guest_name: 'guest_name',
65
+ };
66
+
67
+ const authorization = {
68
+ meetingUuid: rawAuthorization.meeting_uuid,
69
+ uuid: rawAuthorization.uuid,
70
+ userUuid: rawAuthorization.guest_uuid,
71
+ userName: rawAuthorization.guest_name,
72
+ status: undefined,
73
+ };
74
+
75
+ const response = MeetingAuthorization.parse(rawAuthorization);
76
+ expect(response).toEqual(authorization);
77
+ });
78
+ });
79
+
80
+ describe('parseMany', () => {
81
+ it('should parse multiple raw inputs', () => {
82
+ const rawAuthorizations = [
83
+ {
84
+ created_at: 'today1',
85
+ meeting_uuid: 'meeting_uuid1',
86
+ uuid: 'uuid1',
87
+ guest_uuid: 'guest_uuid1',
88
+ guest_name: 'guest_name1',
89
+ },
90
+ {
91
+ created_at: 'today2',
92
+ meeting_uuid: 'meeting_uuid2',
93
+ uuid: 'uuid2',
94
+ guest_uuid: 'guest_uuid2',
95
+ guest_name: 'guest_name2',
96
+ },
97
+ ];
98
+
99
+ const authorizations = rawAuthorizations.map(rawAuthorization => ({
100
+ meetingUuid: rawAuthorization.meeting_uuid,
101
+ uuid: rawAuthorization.uuid,
102
+ userUuid: rawAuthorization.guest_uuid,
103
+ userName: rawAuthorization.guest_name,
104
+ status: undefined,
105
+ }));
106
+
107
+ const response = MeetingAuthorization.parseMany(rawAuthorizations);
108
+ expect(response).toEqual(authorizations);
109
+ });
110
+ });
111
+ });