@webex/plugin-meetings 3.8.0-next.6 → 3.8.0-next.61

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 (156) hide show
  1. package/dist/breakouts/breakout.js +1 -1
  2. package/dist/breakouts/index.js +1 -1
  3. package/dist/common/errors/webex-errors.js +12 -2
  4. package/dist/common/errors/webex-errors.js.map +1 -1
  5. package/dist/config.js +1 -0
  6. package/dist/config.js.map +1 -1
  7. package/dist/constants.js +17 -121
  8. package/dist/constants.js.map +1 -1
  9. package/dist/controls-options-manager/enums.js +2 -0
  10. package/dist/controls-options-manager/enums.js.map +1 -1
  11. package/dist/controls-options-manager/types.js.map +1 -1
  12. package/dist/controls-options-manager/util.js +52 -0
  13. package/dist/controls-options-manager/util.js.map +1 -1
  14. package/dist/interpretation/index.js +1 -1
  15. package/dist/interpretation/siLanguage.js +1 -1
  16. package/dist/locus-info/controlsUtils.js +28 -10
  17. package/dist/locus-info/controlsUtils.js.map +1 -1
  18. package/dist/locus-info/index.js +20 -1
  19. package/dist/locus-info/index.js.map +1 -1
  20. package/dist/locus-info/selfUtils.js +405 -418
  21. package/dist/locus-info/selfUtils.js.map +1 -1
  22. package/dist/media/index.js +8 -16
  23. package/dist/media/index.js.map +1 -1
  24. package/dist/meeting/in-meeting-actions.js +17 -1
  25. package/dist/meeting/in-meeting-actions.js.map +1 -1
  26. package/dist/meeting/index.js +556 -288
  27. package/dist/meeting/index.js.map +1 -1
  28. package/dist/meeting/locusMediaRequest.js +0 -17
  29. package/dist/meeting/locusMediaRequest.js.map +1 -1
  30. package/dist/meeting/muteState.js +0 -2
  31. package/dist/meeting/muteState.js.map +1 -1
  32. package/dist/meeting/request.js +30 -0
  33. package/dist/meeting/request.js.map +1 -1
  34. package/dist/meeting/request.type.js.map +1 -1
  35. package/dist/meeting/util.js +13 -2
  36. package/dist/meeting/util.js.map +1 -1
  37. package/dist/meeting-info/meeting-info-v2.js +359 -60
  38. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  39. package/dist/meetings/index.js +91 -1
  40. package/dist/meetings/index.js.map +1 -1
  41. package/dist/meetings/util.js +14 -0
  42. package/dist/meetings/util.js.map +1 -1
  43. package/dist/member/index.js +10 -0
  44. package/dist/member/index.js.map +1 -1
  45. package/dist/member/util.js +3 -0
  46. package/dist/member/util.js.map +1 -1
  47. package/dist/members/index.js +23 -0
  48. package/dist/members/index.js.map +1 -1
  49. package/dist/members/request.js +21 -0
  50. package/dist/members/request.js.map +1 -1
  51. package/dist/members/util.js +15 -0
  52. package/dist/members/util.js.map +1 -1
  53. package/dist/metrics/constants.js +9 -0
  54. package/dist/metrics/constants.js.map +1 -1
  55. package/dist/reachability/clusterReachability.js +63 -27
  56. package/dist/reachability/clusterReachability.js.map +1 -1
  57. package/dist/reachability/index.js +112 -47
  58. package/dist/reachability/index.js.map +1 -1
  59. package/dist/reachability/reachability.types.js +14 -0
  60. package/dist/reachability/reachability.types.js.map +1 -1
  61. package/dist/reachability/request.js +19 -3
  62. package/dist/reachability/request.js.map +1 -1
  63. package/dist/reconnection-manager/index.js +2 -2
  64. package/dist/reconnection-manager/index.js.map +1 -1
  65. package/dist/recording-controller/util.js +5 -5
  66. package/dist/recording-controller/util.js.map +1 -1
  67. package/dist/roap/index.js.map +1 -1
  68. package/dist/roap/turnDiscovery.js +45 -27
  69. package/dist/roap/turnDiscovery.js.map +1 -1
  70. package/dist/roap/types.js +17 -0
  71. package/dist/roap/types.js.map +1 -0
  72. package/dist/types/common/errors/webex-errors.d.ts +7 -1
  73. package/dist/types/config.d.ts +1 -0
  74. package/dist/types/constants.d.ts +12 -85
  75. package/dist/types/controls-options-manager/enums.d.ts +3 -1
  76. package/dist/types/controls-options-manager/types.d.ts +7 -1
  77. package/dist/types/locus-info/index.d.ts +1 -0
  78. package/dist/types/locus-info/selfUtils.d.ts +247 -1
  79. package/dist/types/meeting/in-meeting-actions.d.ts +16 -0
  80. package/dist/types/meeting/index.d.ts +54 -1
  81. package/dist/types/meeting/muteState.d.ts +0 -1
  82. package/dist/types/meeting/request.d.ts +12 -1
  83. package/dist/types/meeting/request.type.d.ts +6 -0
  84. package/dist/types/meeting/util.d.ts +3 -1
  85. package/dist/types/meeting-info/meeting-info-v2.d.ts +80 -0
  86. package/dist/types/meetings/index.d.ts +38 -0
  87. package/dist/types/member/index.d.ts +1 -0
  88. package/dist/types/members/index.d.ts +8 -0
  89. package/dist/types/members/request.d.ts +19 -0
  90. package/dist/types/members/util.d.ts +13 -0
  91. package/dist/types/metrics/constants.d.ts +9 -0
  92. package/dist/types/reachability/clusterReachability.d.ts +15 -7
  93. package/dist/types/reachability/index.d.ts +10 -1
  94. package/dist/types/reachability/reachability.types.d.ts +5 -0
  95. package/dist/types/roap/index.d.ts +3 -2
  96. package/dist/types/roap/turnDiscovery.d.ts +5 -17
  97. package/dist/types/roap/types.d.ts +16 -0
  98. package/dist/webinar/index.js +1 -1
  99. package/package.json +23 -23
  100. package/src/common/errors/webex-errors.ts +8 -1
  101. package/src/config.ts +1 -0
  102. package/src/constants.ts +19 -90
  103. package/src/controls-options-manager/enums.ts +2 -0
  104. package/src/controls-options-manager/types.ts +11 -1
  105. package/src/controls-options-manager/util.ts +62 -0
  106. package/src/locus-info/controlsUtils.ts +44 -14
  107. package/src/locus-info/index.ts +23 -1
  108. package/src/locus-info/selfUtils.ts +451 -447
  109. package/src/media/index.ts +11 -21
  110. package/src/meeting/in-meeting-actions.ts +32 -0
  111. package/src/meeting/index.ts +372 -92
  112. package/src/meeting/locusMediaRequest.ts +0 -18
  113. package/src/meeting/muteState.ts +0 -2
  114. package/src/meeting/request.ts +36 -1
  115. package/src/meeting/request.type.ts +7 -0
  116. package/src/meeting/util.ts +11 -2
  117. package/src/meeting-info/meeting-info-v2.ts +247 -6
  118. package/src/meetings/index.ts +107 -1
  119. package/src/meetings/util.ts +18 -0
  120. package/src/member/index.ts +11 -0
  121. package/src/member/util.ts +3 -0
  122. package/src/members/index.ts +25 -0
  123. package/src/members/request.ts +26 -0
  124. package/src/members/util.ts +16 -0
  125. package/src/metrics/constants.ts +9 -0
  126. package/src/reachability/clusterReachability.ts +73 -26
  127. package/src/reachability/index.ts +70 -1
  128. package/src/reachability/reachability.types.ts +6 -0
  129. package/src/reachability/request.ts +7 -0
  130. package/src/reconnection-manager/index.ts +2 -2
  131. package/src/recording-controller/util.ts +17 -13
  132. package/src/roap/index.ts +3 -7
  133. package/src/roap/turnDiscovery.ts +34 -39
  134. package/src/roap/types.ts +23 -0
  135. package/test/unit/spec/controls-options-manager/util.js +120 -0
  136. package/test/unit/spec/locus-info/controlsUtils.js +103 -9
  137. package/test/unit/spec/locus-info/index.js +28 -0
  138. package/test/unit/spec/media/index.ts +36 -16
  139. package/test/unit/spec/meeting/in-meeting-actions.ts +19 -4
  140. package/test/unit/spec/meeting/index.js +528 -34
  141. package/test/unit/spec/meeting/locusMediaRequest.ts +0 -30
  142. package/test/unit/spec/meeting/muteState.js +0 -2
  143. package/test/unit/spec/meeting/request.js +32 -1
  144. package/test/unit/spec/meeting/utils.js +119 -18
  145. package/test/unit/spec/meeting-info/meetinginfov2.js +443 -114
  146. package/test/unit/spec/meetings/index.js +120 -2
  147. package/test/unit/spec/member/index.js +7 -0
  148. package/test/unit/spec/member/util.js +24 -0
  149. package/test/unit/spec/members/index.js +103 -26
  150. package/test/unit/spec/members/request.js +45 -22
  151. package/test/unit/spec/members/utils.js +33 -0
  152. package/test/unit/spec/reachability/clusterReachability.ts +88 -56
  153. package/test/unit/spec/reachability/index.ts +101 -0
  154. package/test/unit/spec/reachability/request.js +47 -2
  155. package/test/unit/spec/reconnection-manager/index.js +4 -4
  156. package/test/unit/spec/roap/turnDiscovery.ts +110 -28
@@ -21,6 +21,7 @@ import {MEDIA_TRACK_CONSTRAINT} from '../constants';
21
21
  import Config from '../config';
22
22
  import StaticConfig from '../common/config';
23
23
  import BrowserDetection from '../common/browser-detection';
24
+ import {TurnServerInfo} from '../roap/types';
24
25
 
25
26
  const {isBrowser} = BrowserDetection();
26
27
 
@@ -138,13 +139,10 @@ Media.createMediaConnection = (
138
139
  remoteQualityLevel?: 'LOW' | 'MEDIUM' | 'HIGH';
139
140
  enableRtx?: boolean;
140
141
  enableExtmap?: boolean;
141
- turnServerInfo?: {
142
- url: string;
143
- username: string;
144
- password: string;
145
- };
142
+ turnServerInfo?: TurnServerInfo;
146
143
  bundlePolicy?: BundlePolicy;
147
144
  iceCandidatesTimeout?: number;
145
+ disableAudioMainDtx?: boolean;
148
146
  }
149
147
  ) => {
150
148
  const {
@@ -156,28 +154,16 @@ Media.createMediaConnection = (
156
154
  turnServerInfo,
157
155
  bundlePolicy,
158
156
  iceCandidatesTimeout,
157
+ disableAudioMainDtx,
159
158
  } = options;
160
159
 
161
160
  const iceServers = [];
162
161
 
163
- // we might not have any TURN server if TURN discovery failed or wasn't done or
164
- // we might get an empty TURN url if we land on a video mesh node
165
- if (turnServerInfo?.url) {
166
- if (!isBrowser('firefox')) {
167
- let bareTurnServer = turnServerInfo.url;
168
- bareTurnServer = bareTurnServer.replace('turns:', 'turn:');
169
- bareTurnServer = bareTurnServer.replace('443', '5004');
170
-
171
- iceServers.push({
172
- urls: bareTurnServer,
173
- username: turnServerInfo.username || '',
174
- credential: turnServerInfo.password || '',
175
- });
176
- }
177
-
162
+ // we might not have any TURN server if TURN discovery failed or wasn't done or we land on a video mesh node
163
+ if (turnServerInfo?.urls.length > 0) {
178
164
  // TURN-TLS server
179
165
  iceServers.push({
180
- urls: turnServerInfo.url,
166
+ urls: turnServerInfo.urls,
181
167
  username: turnServerInfo.username || '',
182
168
  credential: turnServerInfo.password || '',
183
169
  });
@@ -192,6 +178,10 @@ Media.createMediaConnection = (
192
178
  config.bundlePolicy = bundlePolicy;
193
179
  }
194
180
 
181
+ if (disableAudioMainDtx !== undefined) {
182
+ config.disableAudioMainDtx = disableAudioMainDtx;
183
+ }
184
+
195
185
  return new MultistreamRoapMediaConnection(
196
186
  config,
197
187
  meetingId,
@@ -81,6 +81,8 @@ interface IInMeetingActions {
81
81
  canShareDesktop?: boolean;
82
82
  canShareContent?: boolean;
83
83
  canTransferFile?: boolean;
84
+ canRealtimeCloseCaption?: boolean;
85
+ canRealtimeCloseCaptionManual?: boolean;
84
86
  canChat?: boolean;
85
87
  canDoVideo?: boolean;
86
88
  canAnnotate?: boolean;
@@ -99,6 +101,12 @@ interface IInMeetingActions {
99
101
  isPracticeSessionOff?: boolean;
100
102
  canStartPracticeSession?: boolean;
101
103
  canStopPracticeSession?: boolean;
104
+ requiresPostMeetingDataConsentPrompt?: boolean;
105
+ canEnableAnnotation?: boolean;
106
+ canDisableAnnotation?: boolean;
107
+ canEnableRemoteDesktopControl?: boolean;
108
+ canDisableRemoteDesktopControl?: boolean;
109
+ canMoveToLobby?: boolean;
102
110
  }
103
111
 
104
112
  /**
@@ -249,6 +257,10 @@ export default class InMeetingActions implements IInMeetingActions {
249
257
 
250
258
  canTransferFile = null;
251
259
 
260
+ canRealtimeCloseCaption = null;
261
+
262
+ canRealtimeCloseCaptionManual = null;
263
+
252
264
  canChat = null;
253
265
 
254
266
  canDoVideo = null;
@@ -285,6 +297,18 @@ export default class InMeetingActions implements IInMeetingActions {
285
297
 
286
298
  canStopPracticeSession = null;
287
299
 
300
+ requiresPostMeetingDataConsentPrompt = null;
301
+
302
+ canEnableAnnotation = null;
303
+
304
+ canDisableAnnotation = null;
305
+
306
+ canEnableRemoteDesktopControl = null;
307
+
308
+ canDisableRemoteDesktopControl = null;
309
+
310
+ canMoveToLobby = null;
311
+
288
312
  /**
289
313
  * Returns all meeting action options
290
314
  * @returns {Object}
@@ -361,6 +385,8 @@ export default class InMeetingActions implements IInMeetingActions {
361
385
  canShareDesktop: this.canShareDesktop,
362
386
  canShareContent: this.canShareContent,
363
387
  canTransferFile: this.canTransferFile,
388
+ canRealtimeCloseCaption: this.canRealtimeCloseCaption,
389
+ canRealtimeCloseCaptionManual: this.canRealtimeCloseCaptionManual,
364
390
  canChat: this.canChat,
365
391
  canDoVideo: this.canDoVideo,
366
392
  canAnnotate: this.canAnnotate,
@@ -379,6 +405,12 @@ export default class InMeetingActions implements IInMeetingActions {
379
405
  isPracticeSessionOff: this.isPracticeSessionOff,
380
406
  canStartPracticeSession: this.canStartPracticeSession,
381
407
  canStopPracticeSession: this.canStopPracticeSession,
408
+ requiresPostMeetingDataConsentPrompt: this.requiresPostMeetingDataConsentPrompt,
409
+ canEnableAnnotation: this.canEnableAnnotation,
410
+ canDisableAnnotation: this.canDisableAnnotation,
411
+ canEnableRemoteDesktopControl: this.canEnableRemoteDesktopControl,
412
+ canDisableRemoteDesktopControl: this.canDisableRemoteDesktopControl,
413
+ canMoveToLobby: this.canMoveToLobby,
382
414
  });
383
415
 
384
416
  /**