@webex/plugin-meetings 2.39.0 → 2.39.2

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 (101) hide show
  1. package/dist/common/browser-detection.d.ts +9 -0
  2. package/dist/common/collection.d.ts +48 -0
  3. package/dist/common/config.d.ts +2 -0
  4. package/dist/common/errors/captcha-error.d.ts +15 -0
  5. package/dist/common/errors/intent-to-join.d.ts +16 -0
  6. package/dist/common/errors/join-meeting.d.ts +17 -0
  7. package/dist/common/errors/media.d.ts +15 -0
  8. package/dist/common/errors/parameter.d.ts +15 -0
  9. package/dist/common/errors/password-error.d.ts +15 -0
  10. package/dist/common/errors/permission.d.ts +14 -0
  11. package/dist/common/errors/reconnection-in-progress.d.ts +9 -0
  12. package/dist/common/errors/reconnection.d.ts +15 -0
  13. package/dist/common/errors/stats.d.ts +15 -0
  14. package/dist/common/errors/webex-errors.d.ts +81 -0
  15. package/dist/common/errors/webex-meetings-error.d.ts +20 -0
  16. package/dist/common/events/events-scope.d.ts +17 -0
  17. package/dist/common/events/events.d.ts +12 -0
  18. package/dist/common/events/trigger-proxy.d.ts +2 -0
  19. package/dist/common/events/util.d.ts +2 -0
  20. package/dist/common/logs/logger-config.d.ts +2 -0
  21. package/dist/common/logs/logger-proxy.d.ts +2 -0
  22. package/dist/common/logs/request.d.ts +34 -0
  23. package/dist/common/queue.d.ts +32 -0
  24. package/dist/config.d.ts +73 -0
  25. package/dist/constants.d.ts +924 -0
  26. package/dist/controls-options-manager/constants.d.ts +4 -0
  27. package/dist/controls-options-manager/enums.d.ts +5 -0
  28. package/dist/controls-options-manager/index.d.ts +120 -0
  29. package/dist/controls-options-manager/util.d.ts +7 -0
  30. package/dist/index.d.ts +4 -0
  31. package/dist/locus-info/controlsUtils.d.ts +2 -0
  32. package/dist/locus-info/embeddedAppsUtils.d.ts +2 -0
  33. package/dist/locus-info/fullState.d.ts +2 -0
  34. package/dist/locus-info/hostUtils.d.ts +2 -0
  35. package/dist/locus-info/index.d.ts +269 -0
  36. package/dist/locus-info/infoUtils.d.ts +2 -0
  37. package/dist/locus-info/mediaSharesUtils.d.ts +2 -0
  38. package/dist/locus-info/parser.d.ts +212 -0
  39. package/dist/locus-info/selfUtils.d.ts +2 -0
  40. package/dist/media/index.d.ts +32 -0
  41. package/dist/media/properties.d.ts +108 -0
  42. package/dist/media/util.d.ts +2 -0
  43. package/dist/mediaQualityMetrics/config.d.ts +233 -0
  44. package/dist/meeting/effectsState.d.ts +42 -0
  45. package/dist/meeting/in-meeting-actions.d.ts +79 -0
  46. package/dist/meeting/index.d.ts +1621 -0
  47. package/dist/meeting/muteState.d.ts +116 -0
  48. package/dist/meeting/request.d.ts +255 -0
  49. package/dist/meeting/state.d.ts +9 -0
  50. package/dist/meeting/util.d.ts +2 -0
  51. package/dist/meeting-info/collection.d.ts +20 -0
  52. package/dist/meeting-info/index.d.ts +57 -0
  53. package/dist/meeting-info/meeting-info-v2.d.ts +93 -0
  54. package/dist/meeting-info/request.d.ts +22 -0
  55. package/dist/meeting-info/util.d.ts +2 -0
  56. package/dist/meeting-info/utilv2.d.ts +2 -0
  57. package/dist/meetings/collection.d.ts +23 -0
  58. package/dist/meetings/index.d.ts +297 -0
  59. package/dist/meetings/request.d.ts +27 -0
  60. package/dist/meetings/util.d.ts +18 -0
  61. package/dist/member/index.d.ts +145 -0
  62. package/dist/member/util.d.ts +2 -0
  63. package/dist/members/collection.d.ts +24 -0
  64. package/dist/members/index.d.ts +298 -0
  65. package/dist/members/request.d.ts +50 -0
  66. package/dist/members/util.d.ts +2 -0
  67. package/dist/metrics/config.d.ts +169 -0
  68. package/dist/metrics/config.js +1 -11
  69. package/dist/metrics/config.js.map +1 -1
  70. package/dist/metrics/constants.d.ts +57 -0
  71. package/dist/metrics/index.d.ts +152 -0
  72. package/dist/metrics/index.js +3 -25
  73. package/dist/metrics/index.js.map +1 -1
  74. package/dist/networkQualityMonitor/index.d.ts +70 -0
  75. package/dist/peer-connection-manager/index.d.ts +6 -0
  76. package/dist/peer-connection-manager/util.d.ts +6 -0
  77. package/dist/personal-meeting-room/index.d.ts +47 -0
  78. package/dist/personal-meeting-room/request.d.ts +14 -0
  79. package/dist/personal-meeting-room/util.d.ts +2 -0
  80. package/dist/reachability/index.d.ts +139 -0
  81. package/dist/reachability/request.d.ts +35 -0
  82. package/dist/reactions/reactions.d.ts +4 -0
  83. package/dist/reactions/reactions.type.d.ts +32 -0
  84. package/dist/reconnection-manager/index.d.ts +112 -0
  85. package/dist/recording-controller/enums.d.ts +7 -0
  86. package/dist/recording-controller/index.d.ts +193 -0
  87. package/dist/recording-controller/util.d.ts +13 -0
  88. package/dist/roap/collection.d.ts +10 -0
  89. package/dist/roap/handler.d.ts +47 -0
  90. package/dist/roap/index.d.ts +116 -0
  91. package/dist/roap/request.d.ts +35 -0
  92. package/dist/roap/state.d.ts +9 -0
  93. package/dist/roap/turnDiscovery.d.ts +67 -0
  94. package/dist/roap/util.d.ts +2 -0
  95. package/dist/statsAnalyzer/global.d.ts +126 -0
  96. package/dist/statsAnalyzer/index.d.ts +190 -0
  97. package/dist/statsAnalyzer/mqaUtil.d.ts +22 -0
  98. package/dist/transcription/index.d.ts +64 -0
  99. package/package.json +18 -19
  100. package/src/metrics/config.ts +0 -10
  101. package/src/metrics/index.ts +3 -24
@@ -0,0 +1,297 @@
1
+ import '@webex/internal-plugin-mercury';
2
+ import '@webex/internal-plugin-conversation';
3
+ import { WebexPlugin } from '@webex/webex-core';
4
+ import 'webrtc-adapter';
5
+ /**
6
+ * Meetings Ready Event
7
+ * Emitted when the meetings instance on webex is ready
8
+ * @event meetings:ready
9
+ * @instance
10
+ * @memberof Meetings
11
+ */
12
+ /**
13
+ * Meetings Network Disconnected Event
14
+ * Emitted when the meetings instance is disconnected from
15
+ * the internal mercury server
16
+ * @event network:disconnected
17
+ * @instance
18
+ * @memberof Meetings
19
+ */
20
+ /**
21
+ * Meetings Registered Event
22
+ * Emitted when the meetings instance has been registered and listening
23
+ * @event meetings:registered
24
+ * @instance
25
+ * @memberof Meetings
26
+ */
27
+ /**
28
+ * Meeting Removed Event
29
+ * Emitted when a meeting was removed from the cache of meetings
30
+ * @event meeting:removed
31
+ * @instance
32
+ * @type {Object}
33
+ * @property {String} meetingId the removed meeting
34
+ * @property {Object} response the server response
35
+ * @property {String} type what type of meeting it was
36
+ * @memberof Meetings
37
+ */
38
+ /**
39
+ * Meeting Added Event
40
+ * Emitted when a meeting was added to the cache of meetings
41
+ * @event meeting:added
42
+ * @instance
43
+ * @type {Object}
44
+ * @property {String} meetingId the added meeting
45
+ * @property {String} type what type of meeting it was
46
+ * @memberof Meetings
47
+ */
48
+ /**
49
+ * Maintain a cache of meetings and sync with services.
50
+ * @class
51
+ */
52
+ export default class Meetings extends WebexPlugin {
53
+ loggerRequest: any;
54
+ media: any;
55
+ meetingCollection: any;
56
+ personalMeetingRoom: any;
57
+ preferredWebexSite: any;
58
+ reachability: any;
59
+ registered: any;
60
+ request: any;
61
+ geoHintInfo: any;
62
+ meetingInfo: any;
63
+ namespace: string;
64
+ /**
65
+ * Initializes the Meetings Plugin
66
+ * @constructor
67
+ * @public
68
+ * @memberof Meetings
69
+ */
70
+ constructor(...args: any[]);
71
+ /**
72
+ * handle locus events and takes meeting actions with them as they come in
73
+ * @param {Object} data a locus event
74
+ * @param {String} data.locusUrl
75
+ * @param {Object} data.locus
76
+ * @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
77
+ * @param {String} data.eventType
78
+ * @returns {undefined}
79
+ * @private
80
+ * @memberof Meetings
81
+ */
82
+ private handleLocusEvent;
83
+ /**
84
+ * handles locus events through mercury that are not roap
85
+ * @param {Object} envelope
86
+ * @param {Object} envelope.data
87
+ * @param {String} envelope.data.eventType
88
+ * @returns {undefined}
89
+ * @private
90
+ * @memberof Meetings
91
+ */
92
+ private handleLocusMercury;
93
+ /**
94
+ * handles mecury offline event
95
+ * @returns {undefined}
96
+ * @private
97
+ * @memberof Meetings
98
+ */
99
+ private handleMercuryOffline;
100
+ /**
101
+ * registers for locus and roap mercury events
102
+ * @returns {undefined}
103
+ * @private
104
+ * @memberof Meetings
105
+ */
106
+ private listenForEvents;
107
+ /**
108
+ * stops listening for locus and roap mercury events
109
+ * @returns {undefined}
110
+ * @private
111
+ * @memberof Meetings
112
+ */
113
+ private stopListeningForEvents;
114
+ /**
115
+ * @returns {undefined}
116
+ * @private
117
+ * @memberof Meetings
118
+ */
119
+ private onReady;
120
+ /**
121
+ * API to toggle unified meetings
122
+ * @param {Boolean} changeState
123
+ * @private
124
+ * @memberof Meetings
125
+ * @returns {undefined}
126
+ */
127
+ private _toggleUnifiedMeetings;
128
+ /**
129
+ * API to enable or disable TURN discovery
130
+ * @param {Boolean} enable
131
+ * @private
132
+ * @memberof Meetings
133
+ * @returns {undefined}
134
+ */
135
+ private _toggleTurnDiscovery;
136
+ /**
137
+ * API to toggle starting adhoc meeting
138
+ * @param {Boolean} changeState
139
+ * @private
140
+ * @memberof Meetings
141
+ * @returns {undefined}
142
+ */
143
+ private _toggleAdhocMeetings;
144
+ /**
145
+ * Explicitly sets up the meetings plugin by registering
146
+ * the device, connecting to mercury, and listening for locus events.
147
+ *
148
+ * @returns {Promise}
149
+ * @public
150
+ * @memberof Meetings
151
+ */
152
+ register(): Promise<void>;
153
+ /**
154
+ * Explicitly tears down the meetings plugin by deregistering
155
+ * the device, disconnecting from mercury, and stops listening to locus events
156
+ *
157
+ * @returns {Promise}
158
+ * @public
159
+ * @memberof Meetings
160
+ */
161
+ unregister(): any;
162
+ /**
163
+ * Uploads logs to the webex services for tracking
164
+ * @param {Object} [options={}]
165
+ * @param {String} [options.callStart] Call Start Time
166
+ * @param {String} [options.feedbackId] ID used for tracking
167
+ * @param {String} [options.locusId]
168
+ * @param {String} [options.correlationId]
169
+ * @param {String} [options.meetingId] webex meeting ID
170
+ * @param {String} [options.userId] userId
171
+ * @param {String} [options.orgId] org id
172
+ * @returns {String} feedback ID logs were submitted under
173
+ */
174
+ uploadLogs(options?: {
175
+ callStart?: string;
176
+ feedbackId?: string;
177
+ locusId?: string;
178
+ correlationId?: string;
179
+ meetingId?: string;
180
+ userId?: string;
181
+ orgId?: string;
182
+ }): any;
183
+ /**
184
+ * initializes the reachability instance for Meetings
185
+ * @returns {undefined}
186
+ * @public
187
+ * @memberof Meetings
188
+ */
189
+ setReachability(): void;
190
+ /**
191
+ * gets the reachability instance for Meetings
192
+ * @returns {Reachability}
193
+ * @public
194
+ * @memberof Meetings
195
+ */
196
+ getReachability(): any;
197
+ /**
198
+ * initializes and starts gathering reachability for Meetings
199
+ * @returns {Promise}
200
+ * @public
201
+ * @memberof Meetings
202
+ */
203
+ startReachability(): any;
204
+ /**
205
+ * Get geoHint for info for meetings
206
+ * @returns {Promise}
207
+ * @private
208
+ * @memberof Meetings
209
+ */
210
+ getGeoHint(): any;
211
+ /**
212
+ * Fetch user preferred webex site information
213
+ * This also has other infomation about the user
214
+ * @returns {Promise}
215
+ * @private
216
+ * @memberof Meetings
217
+ */
218
+ fetchUserPreferredWebexSite(): any;
219
+ /**
220
+ * gets the personal meeting room instance, for saved PMR values for this user
221
+ * @returns {PersonalMeetingRoom}
222
+ * @public
223
+ * @memberof Meetings
224
+ */
225
+ getPersonalMeetingRoom(): any;
226
+ /**
227
+ * @param {Meeting} meeting
228
+ * @param {Object} reason
229
+ * @param {String} type
230
+ * @returns {Undefined}
231
+ * @private
232
+ * @memberof Meetings
233
+ */
234
+ private destroy;
235
+ /**
236
+ * Create a meeting.
237
+ * @param {string} destination - sipURL, spaceId, phonenumber, or locus object}
238
+ * @param {string} [type] - the optional specified type, such as locusId
239
+ * @param {Boolean} useRandomDelayForInfo - whether a random delay should be added to fetching meeting info
240
+ * @returns {Promise<Meeting>} A new Meeting.
241
+ * @public
242
+ * @memberof Meetings
243
+ */
244
+ create(destination: string, type?: string, useRandomDelayForInfo?: boolean): any;
245
+ /**
246
+ * @param {String} destination see create()
247
+ * @param {String} type see create()
248
+ * @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
249
+ * @returns {Promise} a new meeting instance complete with meeting info and destination
250
+ * @private
251
+ * @memberof Meetings
252
+ */
253
+ private createMeeting;
254
+ /**
255
+ * get a specifc meeting given it's type matched to the value, i.e., locus url
256
+ * @param {String} type
257
+ * @param {Object} value
258
+ * @returns {Meeting}
259
+ * @public
260
+ * @memberof Meetings
261
+ */
262
+ getMeetingByType(type: string, value: object): any;
263
+ /**
264
+ * Get all meetings.
265
+ * @param {object} options
266
+ * @param {object} options.startDate - get meetings after this start date
267
+ * @param {object} options.endDate - get meetings before this end date
268
+ * @returns {Object} All currently active meetings.
269
+ * @public
270
+ * @memberof Meetings
271
+ */
272
+ getAllMeetings(options?: {
273
+ startDate: object;
274
+ endDate: object;
275
+ }): any;
276
+ /**
277
+ * syncs all the meeting from server
278
+ * @returns {undefined}
279
+ * @public
280
+ * @memberof Meetings
281
+ */
282
+ syncMeetings(): any;
283
+ /**
284
+ * Get all scheduled meetings.
285
+ * @param {object} options
286
+ * @param {object} options.startDate - get meetings after this start date
287
+ * @param {object} options.endDate - get meetings before this end date
288
+ * @returns {Object} All scheduled meetings.
289
+ * @memberof Meetings
290
+ */
291
+ getScheduledMeetings(): any;
292
+ /**
293
+ * Get the logger instance for plugin-meetings
294
+ * @returns {Logger}
295
+ */
296
+ getLogger(): any;
297
+ }
@@ -0,0 +1,27 @@
1
+ import { StatelessWebexPlugin } from '@webex/webex-core';
2
+ /**
3
+ * @class MeetingRequest
4
+ */
5
+ export default class MeetingRequest extends StatelessWebexPlugin {
6
+ /**
7
+ * get all the active meetings for the user
8
+ * @returns {Array} return locus array
9
+ */
10
+ getActiveMeetings(): any;
11
+ /**
12
+ * fetch geoHit for the user
13
+ * @returns {Promise<object>} geoHintInfo
14
+ */
15
+ fetchGeoHint(): any;
16
+ /**
17
+ * get user meeting preference information
18
+ * @returns {Promise<object>} getMeetingPreferences
19
+ */
20
+ getMeetingPreferences(): any;
21
+ /**
22
+ * Fetches indivdual locus rather then getting all at once
23
+ * @param {object} responseBody determine the locus and fetch them if a remoteUrl is given
24
+ * @returns {Promise} returns locusObject array
25
+ */
26
+ determineRedirections(responseBody: any): Promise<any>;
27
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Meetings Media Codec Missing Event
3
+ * Emitted when H.264 codec is not
4
+ * found in the browser.
5
+ * @event media:codec:missing
6
+ * @instance
7
+ * @memberof MeetingsUtil
8
+ */
9
+ /**
10
+ * Meetings Media Codec Loaded Event
11
+ * Emitted when H.264 codec has been
12
+ * loaded in the browser.
13
+ * @event media:codec:loaded
14
+ * @instance
15
+ * @memberof MeetingsUtil
16
+ */
17
+ declare const MeetingsUtil: any;
18
+ export default MeetingsUtil;
@@ -0,0 +1,145 @@
1
+ /**
2
+ * @class Member
3
+ */
4
+ export default class Member {
5
+ associatedUser: any;
6
+ id: any;
7
+ isAudioMuted: any;
8
+ isContentSharing: any;
9
+ isDevice: any;
10
+ isGuest: any;
11
+ isHandRaised: any;
12
+ isHost: any;
13
+ isInLobby: any;
14
+ isInMeeting: any;
15
+ isModerator: any;
16
+ isModeratorAssignmentProhibited: any;
17
+ isMutable: any;
18
+ isNotAdmitted: any;
19
+ isRecording: any;
20
+ isRemovable: any;
21
+ isSelf: any;
22
+ isUser: any;
23
+ isVideoMuted: any;
24
+ name: any;
25
+ participant: any;
26
+ status: any;
27
+ type: any;
28
+ namespace: string;
29
+ /**
30
+ * @param {Object} participant - the locus participant
31
+ * @param {Object} [options] - constructor params
32
+ * @param {String} options.selfId
33
+ * @param {String} options.hostId
34
+ * @param {String} options.contentSharingId
35
+ * @param {String} options.type
36
+ * @returns {Member}
37
+ * @memberof Member
38
+ */
39
+ constructor(participant: object, options?: {
40
+ selfId: string;
41
+ hostId: string;
42
+ contentSharingId: string;
43
+ type: string;
44
+ } | any);
45
+ /**
46
+ * set all the participant values extracted directly from locus participant
47
+ * @param {Object} participant the locus participant object
48
+ * @returns {undefined}
49
+ * @private
50
+ * @memberof Member
51
+ */
52
+ private processParticipant;
53
+ /**
54
+ * Use the members options and participant values to set on the member
55
+ * @param {Object} participant the locus participant object
56
+ * @param {Object} options the passed in options, what was set on members
57
+ * @returns {undefined}
58
+ * @private
59
+ * @memberof Member
60
+ */
61
+ private processParticipantOptions;
62
+ /**
63
+ * processes what already exists on the member to determine other info about the member
64
+ * @returns {undefined}
65
+ * @private
66
+ * @memberof Member
67
+ */
68
+ private processMember;
69
+ /**
70
+ * set the status on member object
71
+ * @param {Object} participant the locus participant object
72
+ * @returns {undefined}
73
+ * @private
74
+ * @memberof Member
75
+ */
76
+ private processStatus;
77
+ /**
78
+ * set the isContentSharing on member
79
+ * @param {Boolean} flag
80
+ * @returns {undefined}
81
+ * @public
82
+ * @memberof Member
83
+ */
84
+ setIsContentSharing(flag: boolean): void;
85
+ /**
86
+ * set the isHost on member
87
+ * @param {Boolean} flag
88
+ * @returns {undefined}
89
+ * @public
90
+ * @memberof Member
91
+ */
92
+ setIsHost(flag: boolean): void;
93
+ /**
94
+ * set the isSelf on member
95
+ * @param {Boolean} flag
96
+ * @returns {undefined}
97
+ * @public
98
+ * @memberof Member
99
+ */
100
+ setIsSelf(flag: boolean): void;
101
+ /**
102
+ * determine if this member is content sharing
103
+ * @param {Object} participant
104
+ * @param {String} sharingId
105
+ * @returns {undefined}
106
+ * @public
107
+ * @memberof Member
108
+ */
109
+ processIsContentSharing(participant: object, sharingId: string): void;
110
+ /**
111
+ * Determine if this member is recording
112
+ * @param {Object} participant
113
+ * @param {String} recordingId
114
+ * @returns {undefined}
115
+ * @public
116
+ * @memberof Member
117
+ */
118
+ processIsRecording(participant: object, recordingId: string): void;
119
+ /**
120
+ * determine if this member is the self
121
+ * @param {Object} participant
122
+ * @param {String} selfId
123
+ * @returns {undefined}
124
+ * @private
125
+ * @memberof Member
126
+ */
127
+ private processIsSelf;
128
+ /**
129
+ * determine if this member is the host
130
+ * @param {Object} participant
131
+ * @param {String} hostId
132
+ * @returns {undefined}
133
+ * @private
134
+ * @memberof Member
135
+ */
136
+ private processIsHost;
137
+ /**
138
+ * set the type for the member, could be MEETING or CALL
139
+ * @param {String} type
140
+ * @returns {undefined}
141
+ * @private
142
+ * @memberof Member
143
+ */
144
+ private processType;
145
+ }
@@ -0,0 +1,2 @@
1
+ declare const MemberUtil: any;
2
+ export default MemberUtil;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @class MembersCollection
3
+ */
4
+ export default class MembersCollection {
5
+ members: any;
6
+ namespace: string;
7
+ /**
8
+ * @param {Object} locus
9
+ * @memberof Members
10
+ */
11
+ constructor();
12
+ set(id: any, member: any): void;
13
+ setAll(members: any): void;
14
+ /**
15
+ * @param {String} id
16
+ * @returns {Member}
17
+ */
18
+ get(id: string): any;
19
+ /**
20
+ * @returns {Object} returns an object map of Member instances
21
+ * @memberof MembersCollection
22
+ */
23
+ getAll(): any;
24
+ }