@webex/plugin-meetings 3.1.0-next.9 → 3.2.0

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 (181) hide show
  1. package/dist/annotation/annotation.types.d.ts +42 -0
  2. package/dist/annotation/constants.d.ts +31 -0
  3. package/dist/annotation/index.d.ts +117 -0
  4. package/dist/breakouts/breakout.d.ts +8 -0
  5. package/dist/breakouts/breakout.js +1 -1
  6. package/dist/breakouts/collection.d.ts +5 -0
  7. package/dist/breakouts/edit-lock-error.d.ts +15 -0
  8. package/dist/breakouts/events.d.ts +8 -0
  9. package/dist/breakouts/index.d.ts +5 -0
  10. package/dist/breakouts/index.js +1 -1
  11. package/dist/breakouts/request.d.ts +22 -0
  12. package/dist/breakouts/utils.d.ts +15 -0
  13. package/dist/common/browser-detection.d.ts +9 -0
  14. package/dist/common/collection.d.ts +48 -0
  15. package/dist/common/config.d.ts +2 -0
  16. package/dist/common/errors/captcha-error.d.ts +15 -0
  17. package/dist/common/errors/intent-to-join.d.ts +16 -0
  18. package/dist/common/errors/join-meeting.d.ts +17 -0
  19. package/dist/common/errors/media.d.ts +15 -0
  20. package/dist/common/errors/no-meeting-info.d.ts +14 -0
  21. package/dist/common/errors/parameter.d.ts +15 -0
  22. package/dist/common/errors/password-error.d.ts +15 -0
  23. package/dist/common/errors/permission.d.ts +14 -0
  24. package/dist/common/errors/reclaim-host-role-errors.d.ts +60 -0
  25. package/dist/common/errors/reconnection-in-progress.d.ts +9 -0
  26. package/dist/common/errors/reconnection-in-progress.js +34 -0
  27. package/dist/common/errors/reconnection-in-progress.js.map +1 -0
  28. package/dist/common/errors/reconnection.d.ts +15 -0
  29. package/dist/common/errors/stats.d.ts +15 -0
  30. package/dist/common/errors/webex-errors.d.ts +93 -0
  31. package/dist/common/errors/webex-meetings-error.d.ts +20 -0
  32. package/dist/common/events/events-scope.d.ts +17 -0
  33. package/dist/common/events/events.d.ts +12 -0
  34. package/dist/common/events/trigger-proxy.d.ts +2 -0
  35. package/dist/common/events/util.d.ts +2 -0
  36. package/dist/common/logs/logger-config.d.ts +2 -0
  37. package/dist/common/logs/logger-proxy.d.ts +2 -0
  38. package/dist/common/logs/request.d.ts +36 -0
  39. package/dist/common/queue.d.ts +34 -0
  40. package/dist/config.d.ts +73 -0
  41. package/dist/constants.d.ts +1088 -0
  42. package/dist/constants.js +6 -3
  43. package/dist/constants.js.map +1 -1
  44. package/dist/controls-options-manager/constants.d.ts +4 -0
  45. package/dist/controls-options-manager/enums.d.ts +15 -0
  46. package/dist/controls-options-manager/index.d.ts +136 -0
  47. package/dist/controls-options-manager/types.d.ts +43 -0
  48. package/dist/controls-options-manager/util.d.ts +1 -0
  49. package/dist/index.d.ts +7 -0
  50. package/dist/interceptors/index.d.ts +2 -0
  51. package/dist/interceptors/locusRetry.d.ts +27 -0
  52. package/dist/interpretation/collection.d.ts +5 -0
  53. package/dist/interpretation/index.d.ts +5 -0
  54. package/dist/interpretation/index.js +1 -1
  55. package/dist/interpretation/siLanguage.d.ts +5 -0
  56. package/dist/interpretation/siLanguage.js +1 -1
  57. package/dist/locus-info/controlsUtils.d.ts +2 -0
  58. package/dist/locus-info/embeddedAppsUtils.d.ts +2 -0
  59. package/dist/locus-info/fullState.d.ts +2 -0
  60. package/dist/locus-info/hostUtils.d.ts +2 -0
  61. package/dist/locus-info/index.d.ts +322 -0
  62. package/dist/locus-info/infoUtils.d.ts +2 -0
  63. package/dist/locus-info/mediaSharesUtils.d.ts +2 -0
  64. package/dist/locus-info/parser.d.ts +272 -0
  65. package/dist/locus-info/selfUtils.d.ts +2 -0
  66. package/dist/media/MediaConnectionAwaiter.d.ts +61 -0
  67. package/dist/media/index.d.ts +34 -0
  68. package/dist/media/properties.d.ts +93 -0
  69. package/dist/media/util.d.ts +2 -0
  70. package/dist/mediaQualityMetrics/config.d.ts +241 -0
  71. package/dist/mediaQualityMetrics/config.js +10 -10
  72. package/dist/mediaQualityMetrics/config.js.map +1 -1
  73. package/dist/meeting/in-meeting-actions.d.ts +167 -0
  74. package/dist/meeting/index.d.ts +1825 -0
  75. package/dist/meeting/index.js +112 -64
  76. package/dist/meeting/index.js.map +1 -1
  77. package/dist/meeting/locusMediaRequest.d.ts +74 -0
  78. package/dist/meeting/locusMediaRequest.js +27 -0
  79. package/dist/meeting/locusMediaRequest.js.map +1 -1
  80. package/dist/meeting/muteState.d.ts +178 -0
  81. package/dist/meeting/request.d.ts +295 -0
  82. package/dist/meeting/request.type.d.ts +11 -0
  83. package/dist/meeting/state.d.ts +9 -0
  84. package/dist/meeting/util.d.ts +119 -0
  85. package/dist/meeting/util.js +0 -16
  86. package/dist/meeting/util.js.map +1 -1
  87. package/dist/meeting/voicea-meeting.d.ts +16 -0
  88. package/dist/meeting/voicea-meeting.js +37 -49
  89. package/dist/meeting/voicea-meeting.js.map +1 -1
  90. package/dist/meeting-info/collection.d.ts +20 -0
  91. package/dist/meeting-info/index.d.ts +69 -0
  92. package/dist/meeting-info/meeting-info-v2.d.ts +123 -0
  93. package/dist/meeting-info/request.d.ts +22 -0
  94. package/dist/meeting-info/util.d.ts +2 -0
  95. package/dist/meeting-info/utilv2.d.ts +2 -0
  96. package/dist/meetings/collection.d.ts +40 -0
  97. package/dist/meetings/index.d.ts +398 -0
  98. package/dist/meetings/index.js +12 -28
  99. package/dist/meetings/index.js.map +1 -1
  100. package/dist/meetings/meetings.types.d.ts +4 -0
  101. package/dist/meetings/request.d.ts +27 -0
  102. package/dist/meetings/util.d.ts +18 -0
  103. package/dist/member/index.d.ts +160 -0
  104. package/dist/member/types.d.ts +32 -0
  105. package/dist/member/util.d.ts +2 -0
  106. package/dist/members/collection.d.ts +29 -0
  107. package/dist/members/index.d.ts +353 -0
  108. package/dist/members/request.d.ts +114 -0
  109. package/dist/members/types.d.ts +25 -0
  110. package/dist/members/util.d.ts +215 -0
  111. package/dist/metrics/constants.d.ts +70 -0
  112. package/dist/metrics/index.d.ts +45 -0
  113. package/dist/multistream/mediaRequestManager.d.ts +119 -0
  114. package/dist/multistream/receiveSlot.d.ts +68 -0
  115. package/dist/multistream/receiveSlotManager.d.ts +56 -0
  116. package/dist/multistream/remoteMedia.d.ts +72 -0
  117. package/dist/multistream/remoteMediaGroup.d.ts +49 -0
  118. package/dist/multistream/remoteMediaManager.d.ts +300 -0
  119. package/dist/multistream/sendSlotManager.d.ts +69 -0
  120. package/dist/networkQualityMonitor/index.d.ts +70 -0
  121. package/dist/personal-meeting-room/index.d.ts +47 -0
  122. package/dist/personal-meeting-room/request.d.ts +14 -0
  123. package/dist/personal-meeting-room/util.d.ts +2 -0
  124. package/dist/reachability/clusterReachability.d.ts +110 -0
  125. package/dist/reachability/index.d.ts +109 -0
  126. package/dist/reachability/index.js +88 -9
  127. package/dist/reachability/index.js.map +1 -1
  128. package/dist/reachability/request.d.ts +39 -0
  129. package/dist/reachability/util.d.ts +15 -0
  130. package/dist/reactions/constants.d.ts +3 -0
  131. package/dist/reactions/reactions.d.ts +4 -0
  132. package/dist/reactions/reactions.type.d.ts +52 -0
  133. package/dist/reconnection-manager/index.d.ts +136 -0
  134. package/dist/recording-controller/enums.d.ts +7 -0
  135. package/dist/recording-controller/index.d.ts +207 -0
  136. package/dist/recording-controller/util.d.ts +14 -0
  137. package/dist/roap/index.d.ts +86 -0
  138. package/dist/roap/request.d.ts +39 -0
  139. package/dist/roap/request.js +3 -27
  140. package/dist/roap/request.js.map +1 -1
  141. package/dist/roap/turnDiscovery.d.ts +155 -0
  142. package/dist/rtcMetrics/constants.d.ts +4 -0
  143. package/dist/rtcMetrics/index.d.ts +61 -0
  144. package/dist/statsAnalyzer/global.d.ts +36 -0
  145. package/dist/statsAnalyzer/index.d.ts +217 -0
  146. package/dist/statsAnalyzer/index.js +4 -2
  147. package/dist/statsAnalyzer/index.js.map +1 -1
  148. package/dist/statsAnalyzer/mqaUtil.d.ts +48 -0
  149. package/dist/statsAnalyzer/mqaUtil.js +14 -0
  150. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  151. package/dist/transcription/index.d.ts +64 -0
  152. package/dist/types/constants.d.ts +3 -1
  153. package/dist/types/mediaQualityMetrics/config.d.ts +8 -2
  154. package/dist/types/meeting/index.d.ts +10 -1
  155. package/dist/types/meeting/locusMediaRequest.d.ts +1 -0
  156. package/dist/types/meeting/voicea-meeting.d.ts +3 -2
  157. package/dist/types/meetings/index.d.ts +1 -16
  158. package/dist/types/reachability/index.d.ts +11 -0
  159. package/dist/webinar/collection.d.ts +16 -0
  160. package/dist/webinar/index.d.ts +5 -0
  161. package/dist/webinar/index.js +1 -1
  162. package/package.json +21 -21
  163. package/src/constants.ts +3 -2
  164. package/src/mediaQualityMetrics/config.ts +13 -7
  165. package/src/meeting/index.ts +73 -30
  166. package/src/meeting/locusMediaRequest.ts +31 -0
  167. package/src/meeting/util.ts +1 -16
  168. package/src/meeting/voicea-meeting.ts +44 -46
  169. package/src/meetings/index.ts +15 -27
  170. package/src/reachability/index.ts +60 -0
  171. package/src/roap/request.ts +1 -24
  172. package/src/statsAnalyzer/index.ts +6 -3
  173. package/src/statsAnalyzer/mqaUtil.ts +18 -0
  174. package/test/unit/spec/meeting/index.js +70 -33
  175. package/test/unit/spec/meeting/locusMediaRequest.ts +49 -0
  176. package/test/unit/spec/meeting/utils.js +0 -10
  177. package/test/unit/spec/meeting/voicea-meeting.ts +5 -14
  178. package/test/unit/spec/meetings/index.js +59 -17
  179. package/test/unit/spec/reachability/index.ts +266 -0
  180. package/test/unit/spec/roap/request.ts +0 -37
  181. package/test/unit/spec/stats-analyzer/index.js +89 -8
@@ -0,0 +1,295 @@
1
+ import { StatelessWebexPlugin } from '@webex/webex-core';
2
+ import { IP_VERSION } from '../constants';
3
+ import { SendReactionOptions, ToggleReactionsOptions } from './request.type';
4
+ import { AnnotationInfo } from '../annotation/annotation.types';
5
+ /**
6
+ * @class MeetingRequest
7
+ */
8
+ export default class MeetingRequest extends StatelessWebexPlugin {
9
+ changeVideoLayoutDebounced: any;
10
+ meetingRef: WeakRef<any>;
11
+ locusDeltaRequest: (options: object) => Promise<any>;
12
+ buildLocusDeltaRequestOptions: (options: object) => Promise<any>;
13
+ /**
14
+ * Constructor
15
+ * @param {Object} attrs
16
+ * @param {Object} options
17
+ */
18
+ constructor(attrs: any, options: any);
19
+ /**
20
+ * Returns joinCookie from boundedStorage if present.
21
+ * @returns {Object} joinCookie
22
+ */
23
+ private getJoinCookie;
24
+ /**
25
+ * Make a network request to join a meeting
26
+ * @param {Object} options
27
+ * @param {String} options.sipUri
28
+ * @param {String} options.deviceUrl
29
+ * @param {String} options.locusUrl
30
+ * @param {String} options.resourceId,
31
+ * @param {String} options.correlationId
32
+ * @param {boolean} options.ensureConversation
33
+ * @param {boolean} options.moderator
34
+ * @param {boolean} options.pin
35
+ * @param {boolean} options.moveToResource
36
+ * @param {Object} options.roapMessage
37
+ * @param {boolean} options.breakoutsSupported
38
+ * @param {String} options.locale,
39
+ * @param {Array} options.deviceCapabilities
40
+ * @param {boolean} options.liveAnnotationSupported
41
+ * @param {String} options.alias
42
+ * @returns {Promise}
43
+ */
44
+ joinMeeting(options: {
45
+ sipUri: string;
46
+ deviceUrl: string;
47
+ locusUrl: string;
48
+ locusClusterUrl: string;
49
+ resourceId: string;
50
+ correlationId: string;
51
+ ensureConversation: boolean;
52
+ moderator: boolean;
53
+ pin: boolean;
54
+ moveToResource: boolean;
55
+ roapMessage: any;
56
+ asResourceOccupant: any;
57
+ inviteeAddress: any;
58
+ meetingNumber: any;
59
+ permissionToken: any;
60
+ preferTranscoding: any;
61
+ reachability: any;
62
+ breakoutsSupported: boolean;
63
+ locale?: string;
64
+ deviceCapabilities?: Array<string>;
65
+ liveAnnotationSupported: boolean;
66
+ ipVersion?: IP_VERSION;
67
+ alias?: string;
68
+ }): Promise<any>;
69
+ /**
70
+ * Send a request to refresh the captcha
71
+ * @param {Object} options
72
+ * @param {String} options.captchaRefreshUrl
73
+ * @param {String} options.captchaId
74
+ * @returns {Promise}
75
+ * @private
76
+ */
77
+ private refreshCaptcha;
78
+ /**
79
+ * Make a network request to add a dial in device
80
+ * @param {Object} options
81
+ * @param {String} options.correlationId
82
+ * @param {String} options.locusUrl url for the meeting
83
+ * @param {String} options.dialInUrl identifier for the to-be provisioned device
84
+ * @param {String} options.clientUrl identifier for the web device
85
+ * @returns {Promise}
86
+ * @private
87
+ */
88
+ private dialIn;
89
+ /**
90
+ * Make a network request to add a dial out device
91
+ * @param {Object} options
92
+ * @param {String} options.correlationId
93
+ * @param {String} options.locusUrl url for the meeting
94
+ * @param {String} options.dialOutUrl identifier for the to-be provisioned device
95
+ * @param {String} options.phoneNumber phone number to dial out to
96
+ * @param {String} options.clientUrl identifier for the web device
97
+ * @returns {Promise}
98
+ * @private
99
+ */
100
+ private dialOut;
101
+ /**
102
+ * Sends a requests to get the latest locus DTO, it might be a full Locus or a delta, depending on the url provided
103
+ * @param {Object} options
104
+ * @param {String} options.locusUrl sync url to get ht elatest locus delta
105
+ * @returns {Promise}
106
+ */
107
+ getLocusDTO(options: {
108
+ url: string;
109
+ }): any;
110
+ /**
111
+ * Make a network request to make a provisioned phone leave the meeting
112
+ * @param {Object} options
113
+ * @param {String} options.locusUrl
114
+ * @param {String} options.phoneUrl
115
+ * @param {String} options.correlationId
116
+ * @param {String} options.selfId
117
+ * @returns {Promise}
118
+ * @private
119
+ */
120
+ private disconnectPhoneAudio;
121
+ /**
122
+ * Prepares request options to to leave a meeting
123
+ * @param {Object} options
124
+ * @param {Url} options.locusUrl
125
+ * @param {String} options.selfId
126
+ * @param {Url} options.deviceUrl
127
+ * @param {String} options.resourceId,
128
+ * @param {String} options.correlationId
129
+ * @returns {Object} request options
130
+ */
131
+ prepareLeaveMeetingRequestOptions({ locusUrl, selfId, deviceUrl: url, resourceId, correlationId, }: {
132
+ locusUrl: string;
133
+ selfId: string;
134
+ deviceUrl: string;
135
+ resourceId: string;
136
+ correlationId: string;
137
+ }): {
138
+ method: string;
139
+ uri: string;
140
+ body: {
141
+ device: {
142
+ deviceType: any;
143
+ url: string;
144
+ };
145
+ usingResource: string;
146
+ correlationId: string;
147
+ };
148
+ };
149
+ /**
150
+ * Make a network request to leave a meeting
151
+ * @param {Object} options
152
+ * @returns {Promise}
153
+ */
154
+ leaveMeeting({ locusUrl, selfId, deviceUrl: url, resourceId, correlationId, }: {
155
+ locusUrl: string;
156
+ selfId: string;
157
+ deviceUrl: string;
158
+ resourceId: string;
159
+ correlationId: string;
160
+ }): Promise<any>;
161
+ /**
162
+ * Builds request options to leave a meeting
163
+ * @param {Object} options
164
+ * @returns {Object} request options
165
+ */
166
+ buildLeaveMeetingRequestOptions(options: any): Promise<any>;
167
+ /**
168
+ * Make a network request to acknowledge a meeting
169
+ * @param {Object} options
170
+ * @param {String} options.locusUrl
171
+ * @param {String} options.deviceUrl
172
+ * @param {String} options.correlationId
173
+ * @returns {Promise}
174
+ */
175
+ acknowledgeMeeting(options: {
176
+ locusUrl: string;
177
+ deviceUrl: string;
178
+ correlationId: string;
179
+ }): Promise<any>;
180
+ /**
181
+ * Makes a network request to lock the meeting
182
+ * @param {Object} options
183
+ * @param {Boolean} options.lock Whether it is locked or not
184
+ * @returns {Promise}
185
+ */
186
+ lockMeeting(options: any): Promise<any>;
187
+ /**
188
+ * Make a network request to decline a meeting
189
+ * @param {Object} options
190
+ * @param {String} options.locusUrl
191
+ * @param {String} options.deviceUrl
192
+ * @param {String} options.reason
193
+ * @returns {Promise}
194
+ */
195
+ declineMeeting(options: {
196
+ locusUrl: string;
197
+ deviceUrl: string;
198
+ reason: string;
199
+ }): Promise<any>;
200
+ /**
201
+ * change the content floor grant
202
+ * @param {Object} options options for floor grant
203
+ * @param {String} options.disposition floor action (granted/released)
204
+ * @param {String} options.personUrl personUrl who is requesting floor
205
+ * @param {String} options.deviceUrl Url of a device
206
+ * @param {String} options.resourceId Populated if you are paired to a device
207
+ * @param {String} options.uri floor grant uri
208
+ * @param {String} options.shareInstanceId id for current share
209
+ * @returns {Promise}
210
+ */
211
+ changeMeetingFloor(options: {
212
+ disposition: string;
213
+ personUrl: string;
214
+ deviceUrl: string;
215
+ resourceId: string;
216
+ uri: string;
217
+ annotationInfo: AnnotationInfo;
218
+ shareInstanceId: string;
219
+ } | any): any;
220
+ /**
221
+ * Sends a request to the DTMF endpoint to send tones
222
+ * @param {Object} options
223
+ * @param {String} options.locusUrl
224
+ * @param {String} options.deviceUrl
225
+ * @param {String} options.tones a string of one or more DTMF tones to send
226
+ * @returns {Promise}
227
+ */
228
+ sendDTMF({ locusUrl, deviceUrl, tones }: {
229
+ locusUrl: string;
230
+ deviceUrl: string;
231
+ tones: string;
232
+ }): Promise<any>;
233
+ /**
234
+ * Sends a request to the controls endpoint to set the video layout
235
+ * @param {Object} options
236
+ * @param {String} options.locusUrl
237
+ * @param {String} options.deviceUrl
238
+ * @param {String} options.layoutType a layout type that should be available in meeting constants {@link #layout_types}
239
+ * @param {Object} options.main preferred dimensions for the remote main video stream
240
+ * @param {Number} options.main.width preferred width of main video stream
241
+ * @param {Number} options.main.height preferred height of main video stream
242
+ * @param {Object} options.content preferred dimensions for the remote content share stream
243
+ * @param {Number} options.content.width preferred width of content share stream
244
+ * @param {Number} options.content.height preferred height of content share stream
245
+ * @returns {Promise}
246
+ */
247
+ changeVideoLayout({ locusUrl, deviceUrl, layoutType, main, content, }: {
248
+ locusUrl: string;
249
+ deviceUrl: string;
250
+ layoutType: string;
251
+ main: {
252
+ width: number;
253
+ height: number;
254
+ };
255
+ content: {
256
+ width: number;
257
+ height: number;
258
+ };
259
+ }): Promise<any>;
260
+ /**
261
+ * Make a network request to end meeting for all
262
+ * @param {Object} options
263
+ * @param {Url} options.locusUrl
264
+ * @returns {Promise}
265
+ */
266
+ endMeetingForAll({ locusUrl }: {
267
+ locusUrl: string;
268
+ }): Promise<any>;
269
+ /**
270
+ * Send a locus keepAlive (used in lobby)
271
+ * @param {Object} options
272
+ * @param {Url} options.keepAliveUrl
273
+ * @returns {Promise}
274
+ */
275
+ keepAlive({ keepAliveUrl }: {
276
+ keepAliveUrl: string;
277
+ }): any;
278
+ /**
279
+ * Make a network request to send a reaction.
280
+ * @param {Object} options
281
+ * @param {Url} options.reactionChannelUrl
282
+ * @param {Reaction} options.reaction
283
+ * @param {string} options.senderID
284
+ * @returns {Promise}
285
+ */
286
+ sendReaction({ reactionChannelUrl, reaction, participantId }: SendReactionOptions): any;
287
+ /**
288
+ * Make a network request to enable or disable reactions.
289
+ * @param {boolean} options.enable - determines if we need to enable or disable.
290
+ * @param {locusUrl} options.locusUrl
291
+ * @returns {Promise}
292
+ */
293
+ toggleReactions({ enable, locusUrl, requestingParticipantId }: ToggleReactionsOptions): Promise<any>;
294
+ getLocusStatusByUrl(locusUrl: string): any;
295
+ }
@@ -0,0 +1,11 @@
1
+ import { Reaction } from '../reactions/reactions.type';
2
+ export type SendReactionOptions = {
3
+ reactionChannelUrl: string;
4
+ reaction: Reaction;
5
+ participantId: string;
6
+ };
7
+ export type ToggleReactionsOptions = {
8
+ enable: boolean;
9
+ locusUrl: string;
10
+ requestingParticipantId: string;
11
+ };
@@ -0,0 +1,9 @@
1
+ declare const MeetingStateMachine: {
2
+ /**
3
+ * Initializes the StateMachine for the meeting
4
+ * @param {Meeting} meetingRef A reference to a meeting instance
5
+ * @returns {StateMachine}
6
+ */
7
+ create(meetingRef: any): any;
8
+ };
9
+ export default MeetingStateMachine;
@@ -0,0 +1,119 @@
1
+ import { LocalCameraStream, LocalMicrophoneStream } from '@webex/media-helpers';
2
+ import { SELF_POLICY, IP_VERSION } from '../constants';
3
+ declare const MeetingUtil: {
4
+ parseLocusJoin: (response: any) => any;
5
+ remoteUpdateAudioVideo: (meeting: any, audioMuted?: boolean, videoMuted?: boolean) => any;
6
+ hasOwner: (info: any) => any;
7
+ isOwnerSelf: (owner: any, selfId: any) => boolean;
8
+ isPinOrGuest: (err: any) => boolean;
9
+ /**
10
+ * Returns the current state of knowledge about whether we are on an ipv4-only or ipv6-only or mixed (ipv4 and ipv6) network.
11
+ * The return value matches the possible values of "ipver" parameter used by the backend APIs.
12
+ *
13
+ * @param {Object} webex webex instance
14
+ * @returns {IP_VERSION|undefined} ipver value to be passed to the backend APIs or undefined if we should not pass any value to the backend
15
+ */
16
+ getIpVersion(webex: any): IP_VERSION | undefined;
17
+ joinMeeting: (meeting: any, options: any) => any;
18
+ cleanUp: (meeting: any) => any;
19
+ disconnectPhoneAudio: (meeting: any, phoneUrl: any) => any;
20
+ /**
21
+ * Returns options for leaving a meeting.
22
+ * @param {any} meeting
23
+ * @param {any} options
24
+ * @returns {any} leave options
25
+ */
26
+ prepareLeaveMeetingOptions: (meeting: any, options?: any) => any;
27
+ leaveMeeting: (meeting: any, options?: any) => any;
28
+ declineMeeting: (meeting: any, reason: any) => any;
29
+ isUserInLeftState: (locusInfo: any) => boolean;
30
+ isUserInIdleState: (locusInfo: any) => boolean;
31
+ isUserInJoinedState: (locusInfo: any) => boolean;
32
+ isMediaEstablished: (currentMediaStatus: any) => any;
33
+ joinMeetingOptions: (meeting: any, options?: any) => any;
34
+ /**
35
+ * Returns request options for leaving a meeting.
36
+ * @param {any} meeting
37
+ * @param {any} options
38
+ * @returns {any} request options
39
+ */
40
+ buildLeaveFetchRequestOptions: (meeting: any, options?: any) => any;
41
+ getTrack: (stream: any) => {
42
+ audioTrack: any;
43
+ videoTrack: any;
44
+ };
45
+ getModeratorFromLocusInfo: (locusInfo: any) => any;
46
+ getPolicyFromLocusInfo: (locusInfo: any) => any;
47
+ getUserDisplayHintsFromLocusInfo: (locusInfo: any) => any;
48
+ canInviteNewParticipants: (displayHints: any) => any;
49
+ canAdmitParticipant: (displayHints: any) => any;
50
+ canUserLock: (displayHints: any) => any;
51
+ canUserUnlock: (displayHints: any) => any;
52
+ canUserRaiseHand: (displayHints: any) => any;
53
+ canUserLowerAllHands: (displayHints: any) => any;
54
+ canUserLowerSomeoneElsesHand: (displayHints: any) => any;
55
+ bothLeaveAndEndMeetingAvailable: (displayHints: any) => any;
56
+ canManageBreakout: (displayHints: any) => any;
57
+ canBroadcastMessageToBreakout: (displayHints: any, policies?: {}) => boolean;
58
+ isSuppressBreakoutSupport: (displayHints: any) => any;
59
+ canAdmitLobbyToBreakout: (displayHints: any) => boolean;
60
+ isBreakoutPreassignmentsEnabled: (displayHints: any) => boolean;
61
+ canUserAskForHelp: (displayHints: any) => boolean;
62
+ lockMeeting: (actions: any, request: any, locusUrl: any) => any;
63
+ unlockMeeting: (actions: any, request: any, locusUrl: any) => any;
64
+ handleAudioLogging: (audioStream?: LocalMicrophoneStream) => void;
65
+ handleVideoLogging: (videoStream?: LocalCameraStream) => void;
66
+ handleDeviceLogging: (devices?: any[]) => void;
67
+ endMeetingForAll: (meeting: any) => any;
68
+ canEnableClosedCaption: (displayHints: any) => any;
69
+ isSaveTranscriptsEnabled: (displayHints: any) => any;
70
+ canStartTranscribing: (displayHints: any) => any;
71
+ canStopTranscribing: (displayHints: any) => any;
72
+ isClosedCaptionActive: (displayHints: any) => any;
73
+ isWebexAssistantActive: (displayHints: any) => any;
74
+ canViewCaptionPanel: (displayHints: any) => any;
75
+ isRealTimeTranslationEnabled: (displayHints: any) => any;
76
+ canSelectSpokenLanguages: (displayHints: any) => any;
77
+ waitingForOthersToJoin: (displayHints: any) => any;
78
+ canSendReactions: (originalValue: any, displayHints: any) => any;
79
+ canUserRenameSelfAndObserved: (displayHints: any) => any;
80
+ canUserRenameOthers: (displayHints: any) => any;
81
+ canShareWhiteBoard: (displayHints: any) => any;
82
+ /**
83
+ * Adds the current locus sequence information to a request body
84
+ * @param {Object} meeting The meeting object
85
+ * @param {Object} requestBody The body of a request to locus
86
+ * @returns {void}
87
+ */
88
+ addSequence: (meeting: any, requestBody: any) => void;
89
+ /**
90
+ * Updates the locus info for the meeting with the delta locus
91
+ * returned from requests that include the sequence information
92
+ * Returns the original response object
93
+ * @param {Object} meeting The meeting object
94
+ * @param {Object} response The response of the http request
95
+ * @returns {Object}
96
+ */
97
+ updateLocusWithDelta: (meeting: any, response: any) => any;
98
+ generateBuildLocusDeltaRequestOptions: (originalMeeting: any) => (originalOptions: any) => any;
99
+ generateLocusDeltaRequest: (originalMeeting: any) => (originalOptions: any) => any;
100
+ selfSupportsFeature: (feature: SELF_POLICY, userPolicies: Record<SELF_POLICY, boolean>) => boolean;
101
+ parseInterpretationInfo: (meeting: any, meetingInfo: any) => void;
102
+ /**
103
+ * Returns a CA-recognized error payload for the specified raw error message/reason.
104
+ *
105
+ * New errors can be added to this function for handling in the future
106
+ *
107
+ * @param {String} reason the raw error message
108
+ * @returns {Array<object>} an array of payload objects
109
+ */
110
+ getChangeMeetingFloorErrorPayload: (reason: string) => {
111
+ fatal: boolean;
112
+ category: string;
113
+ errorCode: number;
114
+ errorDescription: string;
115
+ name: string;
116
+ shownToUser: boolean;
117
+ }[];
118
+ };
119
+ export default MeetingUtil;
@@ -56,21 +56,12 @@ var MeetingUtil = {
56
56
  return parsed;
57
57
  },
58
58
  remoteUpdateAudioVideo: function remoteUpdateAudioVideo(meeting, audioMuted, videoMuted) {
59
- var webex = meeting.getWebexObject();
60
59
  if (!meeting) {
61
60
  return _promise.default.reject(new _parameter.default('You need a meeting object.'));
62
61
  }
63
62
  if (!meeting.locusMediaRequest) {
64
63
  return _promise.default.reject(new _parameter.default('You need a meeting with a media connection, call Meeting.addMedia() first.'));
65
64
  }
66
-
67
- // @ts-ignore
68
- webex.internal.newMetrics.submitClientEvent({
69
- name: 'client.locus.media.request',
70
- options: {
71
- meetingId: meeting.id
72
- }
73
- });
74
65
  return meeting.locusMediaRequest.send({
75
66
  type: 'LocalMute',
76
67
  selfUrl: meeting.selfUrl,
@@ -82,13 +73,6 @@ var MeetingUtil = {
82
73
  }
83
74
  }).then(function (response) {
84
75
  var _response$body;
85
- // @ts-ignore
86
- webex.internal.newMetrics.submitClientEvent({
87
- name: 'client.locus.media.response',
88
- options: {
89
- meetingId: meeting.id
90
- }
91
- });
92
76
  return response === null || response === void 0 ? void 0 : (_response$body = response.body) === null || _response$body === void 0 ? void 0 : _response$body.locus;
93
77
  });
94
78
  },