@webex/plugin-meetings 3.5.0 → 3.6.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 (201) 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-error.js +149 -0
  25. package/dist/common/errors/reclaim-host-role-error.js.map +1 -0
  26. package/dist/common/errors/reclaim-host-role-errors.d.ts +60 -0
  27. package/dist/common/errors/reconnection-in-progress.d.ts +9 -0
  28. package/dist/common/errors/reconnection-in-progress.js +33 -0
  29. package/dist/common/errors/reconnection-in-progress.js.map +1 -0
  30. package/dist/common/errors/reconnection.d.ts +15 -0
  31. package/dist/common/errors/stats.d.ts +15 -0
  32. package/dist/common/errors/webex-errors.d.ts +93 -0
  33. package/dist/common/errors/webex-meetings-error.d.ts +20 -0
  34. package/dist/common/events/events-scope.d.ts +17 -0
  35. package/dist/common/events/events.d.ts +12 -0
  36. package/dist/common/events/trigger-proxy.d.ts +2 -0
  37. package/dist/common/events/util.d.ts +2 -0
  38. package/dist/common/logs/logger-config.d.ts +2 -0
  39. package/dist/common/logs/logger-proxy.d.ts +2 -0
  40. package/dist/common/logs/request.d.ts +36 -0
  41. package/dist/common/queue.d.ts +34 -0
  42. package/dist/config.d.ts +72 -0
  43. package/dist/config.js +3 -1
  44. package/dist/config.js.map +1 -1
  45. package/dist/constants.d.ts +1088 -0
  46. package/dist/constants.js +1 -0
  47. package/dist/constants.js.map +1 -1
  48. package/dist/controls-options-manager/constants.d.ts +4 -0
  49. package/dist/controls-options-manager/enums.d.ts +15 -0
  50. package/dist/controls-options-manager/index.d.ts +136 -0
  51. package/dist/controls-options-manager/types.d.ts +43 -0
  52. package/dist/controls-options-manager/util.d.ts +1 -0
  53. package/dist/index.d.ts +7 -0
  54. package/dist/interceptors/index.d.ts +2 -0
  55. package/dist/interceptors/locusRetry.d.ts +27 -0
  56. package/dist/interpretation/collection.d.ts +5 -0
  57. package/dist/interpretation/index.d.ts +5 -0
  58. package/dist/interpretation/index.js +1 -1
  59. package/dist/interpretation/siLanguage.d.ts +5 -0
  60. package/dist/interpretation/siLanguage.js +1 -1
  61. package/dist/locus-info/controlsUtils.d.ts +2 -0
  62. package/dist/locus-info/embeddedAppsUtils.d.ts +2 -0
  63. package/dist/locus-info/fullState.d.ts +2 -0
  64. package/dist/locus-info/hostUtils.d.ts +2 -0
  65. package/dist/locus-info/index.d.ts +322 -0
  66. package/dist/locus-info/infoUtils.d.ts +2 -0
  67. package/dist/locus-info/mediaSharesUtils.d.ts +2 -0
  68. package/dist/locus-info/parser.d.ts +272 -0
  69. package/dist/locus-info/selfUtils.d.ts +2 -0
  70. package/dist/media/index.d.ts +34 -0
  71. package/dist/media/index.js +3 -1
  72. package/dist/media/index.js.map +1 -1
  73. package/dist/media/properties.d.ts +93 -0
  74. package/dist/media/util.d.ts +2 -0
  75. package/dist/mediaQualityMetrics/config.d.ts +241 -0
  76. package/dist/mediaQualityMetrics/config.js +502 -0
  77. package/dist/mediaQualityMetrics/config.js.map +1 -0
  78. package/dist/meeting/effectsState.js +260 -0
  79. package/dist/meeting/effectsState.js.map +1 -0
  80. package/dist/meeting/in-meeting-actions.d.ts +167 -0
  81. package/dist/meeting/in-meeting-actions.js +3 -1
  82. package/dist/meeting/in-meeting-actions.js.map +1 -1
  83. package/dist/meeting/index.d.ts +1825 -0
  84. package/dist/meeting/index.js +39 -4
  85. package/dist/meeting/index.js.map +1 -1
  86. package/dist/meeting/locusMediaRequest.d.ts +74 -0
  87. package/dist/meeting/muteState.d.ts +178 -0
  88. package/dist/meeting/request.d.ts +295 -0
  89. package/dist/meeting/request.type.d.ts +11 -0
  90. package/dist/meeting/state.d.ts +9 -0
  91. package/dist/meeting/util.d.ts +119 -0
  92. package/dist/meeting/util.js +5 -8
  93. package/dist/meeting/util.js.map +1 -1
  94. package/dist/meeting/voicea-meeting.d.ts +16 -0
  95. package/dist/meeting-info/collection.d.ts +20 -0
  96. package/dist/meeting-info/index.d.ts +69 -0
  97. package/dist/meeting-info/meeting-info-v2.d.ts +123 -0
  98. package/dist/meeting-info/request.d.ts +22 -0
  99. package/dist/meeting-info/util.d.ts +2 -0
  100. package/dist/meeting-info/utilv2.d.ts +2 -0
  101. package/dist/meetings/collection.d.ts +40 -0
  102. package/dist/meetings/index.d.ts +390 -0
  103. package/dist/meetings/index.js +79 -26
  104. package/dist/meetings/index.js.map +1 -1
  105. package/dist/meetings/meetings.types.d.ts +4 -0
  106. package/dist/meetings/request.d.ts +27 -0
  107. package/dist/meetings/util.d.ts +18 -0
  108. package/dist/member/index.d.ts +160 -0
  109. package/dist/member/member.types.js +17 -0
  110. package/dist/member/member.types.js.map +1 -0
  111. package/dist/member/types.d.ts +32 -0
  112. package/dist/member/util.d.ts +2 -0
  113. package/dist/members/collection.d.ts +29 -0
  114. package/dist/members/index.d.ts +353 -0
  115. package/dist/members/request.d.ts +114 -0
  116. package/dist/members/types.d.ts +25 -0
  117. package/dist/members/util.d.ts +215 -0
  118. package/dist/metrics/config.js +276 -0
  119. package/dist/metrics/config.js.map +1 -0
  120. package/dist/metrics/constants.d.ts +70 -0
  121. package/dist/metrics/index.d.ts +45 -0
  122. package/dist/multistream/mediaRequestManager.d.ts +119 -0
  123. package/dist/multistream/receiveSlot.d.ts +68 -0
  124. package/dist/multistream/receiveSlotManager.d.ts +56 -0
  125. package/dist/multistream/remoteMedia.d.ts +72 -0
  126. package/dist/multistream/remoteMediaGroup.d.ts +49 -0
  127. package/dist/multistream/remoteMediaManager.d.ts +300 -0
  128. package/dist/multistream/sendSlotManager.d.ts +69 -0
  129. package/dist/networkQualityMonitor/index.d.ts +70 -0
  130. package/dist/networkQualityMonitor/index.js +13 -19
  131. package/dist/networkQualityMonitor/index.js.map +1 -1
  132. package/dist/peer-connection-manager/index.js +671 -0
  133. package/dist/peer-connection-manager/index.js.map +1 -0
  134. package/dist/peer-connection-manager/util.js +109 -0
  135. package/dist/peer-connection-manager/util.js.map +1 -0
  136. package/dist/personal-meeting-room/index.d.ts +47 -0
  137. package/dist/personal-meeting-room/request.d.ts +14 -0
  138. package/dist/personal-meeting-room/util.d.ts +2 -0
  139. package/dist/reachability/clusterReachability.d.ts +109 -0
  140. package/dist/reachability/index.d.ts +105 -0
  141. package/dist/reachability/request.d.ts +39 -0
  142. package/dist/reachability/util.d.ts +8 -0
  143. package/dist/reactions/constants.d.ts +3 -0
  144. package/dist/reactions/reactions.d.ts +4 -0
  145. package/dist/reactions/reactions.type.d.ts +52 -0
  146. package/dist/reconnection-manager/index.d.ts +136 -0
  147. package/dist/recording-controller/enums.d.ts +7 -0
  148. package/dist/recording-controller/index.d.ts +207 -0
  149. package/dist/recording-controller/util.d.ts +14 -0
  150. package/dist/roap/collection.js +62 -0
  151. package/dist/roap/collection.js.map +1 -0
  152. package/dist/roap/handler.js +275 -0
  153. package/dist/roap/handler.js.map +1 -0
  154. package/dist/roap/index.d.ts +86 -0
  155. package/dist/roap/request.d.ts +39 -0
  156. package/dist/roap/state.js +126 -0
  157. package/dist/roap/state.js.map +1 -0
  158. package/dist/roap/turnDiscovery.d.ts +155 -0
  159. package/dist/roap/util.js +75 -0
  160. package/dist/roap/util.js.map +1 -0
  161. package/dist/rtcMetrics/constants.d.ts +4 -0
  162. package/dist/rtcMetrics/index.d.ts +61 -0
  163. package/dist/statsAnalyzer/global.d.ts +36 -0
  164. package/dist/statsAnalyzer/global.js +126 -0
  165. package/dist/statsAnalyzer/global.js.map +1 -0
  166. package/dist/statsAnalyzer/index.d.ts +217 -0
  167. package/dist/statsAnalyzer/index.js +1013 -0
  168. package/dist/statsAnalyzer/index.js.map +1 -0
  169. package/dist/statsAnalyzer/mqaUtil.d.ts +48 -0
  170. package/dist/statsAnalyzer/mqaUtil.js +179 -0
  171. package/dist/statsAnalyzer/mqaUtil.js.map +1 -0
  172. package/dist/transcription/index.d.ts +64 -0
  173. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  174. package/dist/types/config.d.ts +1 -0
  175. package/dist/types/constants.d.ts +2 -1
  176. package/dist/types/mediaQualityMetrics/config.d.ts +241 -0
  177. package/dist/types/meeting/in-meeting-actions.d.ts +2 -0
  178. package/dist/types/meeting/index.d.ts +11 -0
  179. package/dist/types/meetings/index.d.ts +34 -2
  180. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  181. package/dist/types/statsAnalyzer/index.d.ts +217 -0
  182. package/dist/types/statsAnalyzer/mqaUtil.d.ts +48 -0
  183. package/dist/webinar/collection.d.ts +16 -0
  184. package/dist/webinar/index.d.ts +5 -0
  185. package/dist/webinar/index.js +1 -1
  186. package/package.json +22 -22
  187. package/src/config.ts +2 -0
  188. package/src/constants.ts +1 -0
  189. package/src/media/index.ts +4 -1
  190. package/src/meeting/in-meeting-actions.ts +3 -0
  191. package/src/meeting/index.ts +42 -2
  192. package/src/meeting/util.ts +21 -29
  193. package/src/meetings/index.ts +107 -37
  194. package/test/unit/spec/media/index.ts +4 -0
  195. package/test/unit/spec/meeting/in-meeting-actions.ts +2 -0
  196. package/test/unit/spec/meeting/index.js +58 -17
  197. package/test/unit/spec/meeting/utils.js +34 -84
  198. package/test/unit/spec/meetings/index.js +112 -13
  199. package/src/rtcMetrics/constants.ts +0 -3
  200. package/src/rtcMetrics/index.ts +0 -186
  201. package/test/unit/spec/rtcMetrics/index.ts +0 -154
@@ -0,0 +1,241 @@
1
+ export declare const emptyMqaInterval: {
2
+ audioReceive: any[];
3
+ audioTransmit: any[];
4
+ intervalMetadata: {
5
+ peerReflexiveIP: string;
6
+ peripherals: any[];
7
+ processAverageCPU: number;
8
+ processMaximumCPU: number;
9
+ systemAverageCPU: number;
10
+ systemMaximumCPU: number;
11
+ };
12
+ networkType: string;
13
+ intervalNumber: number;
14
+ videoReceive: any[];
15
+ videoTransmit: any[];
16
+ };
17
+ export declare const emptyAudioReceive: {
18
+ common: {
19
+ common: {
20
+ direction: string;
21
+ isMain: boolean;
22
+ mariFecEnabled: boolean;
23
+ mariQosEnabled: boolean;
24
+ multistreamEnabled: boolean;
25
+ };
26
+ dtlsBitrate: number;
27
+ dtlsPackets: number;
28
+ fecBitrate: number;
29
+ fecPackets: number;
30
+ maxBitrate: number;
31
+ mediaHopByHopLost: number;
32
+ rtcpBitrate: number;
33
+ rtcpPackets: number;
34
+ rtpBitrate: number;
35
+ rtpHopByHopLost: number;
36
+ rtpPackets: number;
37
+ rtpRecovered: number;
38
+ rtxBitrate: number;
39
+ rtxPackets: number;
40
+ srtcpUnprotectErrors: number;
41
+ srtpUnprotectErrors: number;
42
+ stunBitrate: number;
43
+ stunPackets: number;
44
+ transportType: string;
45
+ };
46
+ streams: any[];
47
+ };
48
+ export declare const emptyAudioReceiveStream: {
49
+ common: {
50
+ codec: string;
51
+ concealedFrames: number;
52
+ csi: any[];
53
+ maxConcealRunLength: number;
54
+ optimalBitrate: number;
55
+ optimalFrameRate: number;
56
+ receivedBitrate: number;
57
+ receivedFrameRate: number;
58
+ renderedFrameRate: number;
59
+ requestedBitrate: number;
60
+ requestedFrameRate: number;
61
+ rtpEndToEndLost: number;
62
+ maxRtpJitter: number;
63
+ meanRtpJitter: number;
64
+ rtpPackets: number;
65
+ ssci: number;
66
+ };
67
+ };
68
+ export declare const emptyAudioTransmit: {
69
+ common: {
70
+ availableBitrate: number;
71
+ common: {
72
+ direction: string;
73
+ isMain: boolean;
74
+ mariFecEnabled: boolean;
75
+ mariQosEnabled: boolean;
76
+ multistreamEnabled: boolean;
77
+ };
78
+ dtlsBitrate: number;
79
+ dtlsPackets: number;
80
+ fecBitrate: number;
81
+ fecPackets: number;
82
+ maxBitrate: number;
83
+ queueDelay: number;
84
+ remoteJitter: number;
85
+ remoteLossRate: number;
86
+ remoteReceiveRate: number;
87
+ roundTripTime: number;
88
+ rtcpBitrate: number;
89
+ rtcpPackets: number;
90
+ rtpBitrate: number;
91
+ rtpPackets: number;
92
+ rtxBitrate: number;
93
+ rtxPackets: number;
94
+ stunBitrate: number;
95
+ stunPackets: number;
96
+ transportType: string;
97
+ };
98
+ streams: any[];
99
+ };
100
+ export declare const emptyAudioTransmitStream: {
101
+ common: {
102
+ codec: string;
103
+ csi: any[];
104
+ requestedBitrate: number;
105
+ requestedFrames: number;
106
+ rtpPackets: number;
107
+ ssci: number;
108
+ transmittedBitrate: number;
109
+ transmittedFrameRate: number;
110
+ };
111
+ };
112
+ export declare const emptyVideoReceive: {
113
+ common: {
114
+ common: {
115
+ direction: string;
116
+ isMain: boolean;
117
+ mariFecEnabled: boolean;
118
+ mariQosEnabled: boolean;
119
+ multistreamEnabled: boolean;
120
+ };
121
+ dtlsBitrate: number;
122
+ dtlsPackets: number;
123
+ fecBitrate: number;
124
+ fecPackets: number;
125
+ maxBitrate: number;
126
+ mediaHopByHopLost: number;
127
+ rtcpBitrate: number;
128
+ rtcpPackets: number;
129
+ rtpBitrate: number;
130
+ rtpHopByHopLost: number;
131
+ rtpPackets: number;
132
+ rtpRecovered: number;
133
+ rtxBitrate: number;
134
+ rtxPackets: number;
135
+ srtcpUnprotectErrors: number;
136
+ srtpUnprotectErrors: number;
137
+ stunBitrate: number;
138
+ stunPackets: number;
139
+ transportType: string;
140
+ };
141
+ streams: any[];
142
+ };
143
+ export declare const emptyVideoReceiveStream: {
144
+ common: {
145
+ codec: string;
146
+ concealedFrames: number;
147
+ csi: any[];
148
+ maxConcealRunLength: number;
149
+ optimalBitrate: number;
150
+ optimalFrameRate: number;
151
+ receivedBitrate: number;
152
+ receivedFrameRate: number;
153
+ renderedFrameRate: number;
154
+ requestedBitrate: number;
155
+ requestedFrameRate: number;
156
+ rtpEndToEndLost: number;
157
+ rtpJitter: number;
158
+ rtpPackets: number;
159
+ ssci: number;
160
+ };
161
+ h264CodecProfile: string;
162
+ isActiveSpeaker: boolean;
163
+ optimalFrameSize: number;
164
+ receivedFrameSize: number;
165
+ receivedHeight: number;
166
+ receivedKeyFrames: number;
167
+ receivedKeyFramesForRequest: number;
168
+ receivedKeyFramesSourceChange: number;
169
+ receivedKeyFramesUnknown: number;
170
+ receivedWidth: number;
171
+ requestedFrameSize: number;
172
+ requestedKeyFrames: number;
173
+ };
174
+ export declare const emptyVideoTransmit: {
175
+ common: {
176
+ availableBitrate: number;
177
+ common: {
178
+ direction: string;
179
+ isMain: boolean;
180
+ mariFecEnabled: boolean;
181
+ mariQosEnabled: boolean;
182
+ multistreamEnabled: boolean;
183
+ };
184
+ dtlsBitrate: number;
185
+ dtlsPackets: number;
186
+ fecBitrate: number;
187
+ fecPackets: number;
188
+ maxBitrate: number;
189
+ queueDelay: number;
190
+ remoteJitter: number;
191
+ remoteLossRate: number;
192
+ remoteReceiveRate: number;
193
+ roundTripTime: number;
194
+ rtcpBitrate: number;
195
+ rtcpPackets: number;
196
+ rtpBitrate: number;
197
+ rtpPackets: number;
198
+ rtxBitrate: number;
199
+ rtxPackets: number;
200
+ stunBitrate: number;
201
+ stunPackets: number;
202
+ transportType: string;
203
+ };
204
+ streams: any[];
205
+ };
206
+ export declare const emptyVideoTransmitStream: {
207
+ common: {
208
+ codec: string;
209
+ csi: any[];
210
+ duplicateSsci: number;
211
+ requestedBitrate: number;
212
+ requestedFrames: number;
213
+ rtpPackets: number;
214
+ ssci: number;
215
+ transmittedBitrate: number;
216
+ transmittedFrameRate: number;
217
+ };
218
+ h264CodecProfile: string;
219
+ isAvatar: boolean;
220
+ isHardwareEncoded: boolean;
221
+ localConfigurationChanges: number;
222
+ maxFrameQp: number;
223
+ maxNoiseLevel: number;
224
+ minRegionQp: number;
225
+ remoteConfigurationChanges: number;
226
+ requestedFrameSize: number;
227
+ requestedKeyFrames: number;
228
+ transmittedFrameSize: number;
229
+ transmittedHeight: number;
230
+ transmittedKeyFrames: number;
231
+ transmittedKeyFramesClient: number;
232
+ transmittedKeyFramesConfigurationChange: number;
233
+ transmittedKeyFramesFeedback: number;
234
+ transmittedKeyFramesLocalDrop: number;
235
+ transmittedKeyFramesOtherLayer: number;
236
+ transmittedKeyFramesPeriodic: number;
237
+ transmittedKeyFramesSceneChange: number;
238
+ transmittedKeyFramesStartup: number;
239
+ transmittedKeyFramesUnknown: number;
240
+ transmittedWidth: number;
241
+ };
@@ -79,6 +79,7 @@ interface IInMeetingActions {
79
79
  supportHDV?: boolean;
80
80
  canShareWhiteBoard?: boolean;
81
81
  enforceVirtualBackground?: boolean;
82
+ canPollingAndQA?: boolean;
82
83
  }
83
84
  /**
84
85
  * @class InMeetingActions
@@ -158,6 +159,7 @@ export default class InMeetingActions implements IInMeetingActions {
158
159
  enforceVirtualBackground: any;
159
160
  supportHDV: any;
160
161
  canShareWhiteBoard: any;
162
+ canPollingAndQA: any;
161
163
  /**
162
164
  * Returns all meeting action options
163
165
  * @returns {Object}
@@ -67,6 +67,7 @@ export type AddMediaOptions = {
67
67
  };
68
68
  export type CallStateForMetrics = {
69
69
  correlationId?: string;
70
+ sessionCorrelationId?: string;
70
71
  joinTrigger?: string;
71
72
  loginType?: string;
72
73
  };
@@ -488,6 +489,16 @@ export default class Meeting extends StatelessWebexPlugin {
488
489
  * @param {string} correlationId
489
490
  */
490
491
  set correlationId(correlationId: string);
492
+ /**
493
+ * Getter - Returns callStateForMetrics.sessionCorrelationId
494
+ * @returns {string}
495
+ */
496
+ get sessionCorrelationId(): string;
497
+ /**
498
+ * Setter - sets callStateForMetrics.sessionCorrelationId
499
+ * @param {string} sessionCorrelationId
500
+ */
501
+ set sessionCorrelationId(sessionCorrelationId: string);
491
502
  /**
492
503
  * Getter - Returns isoLocalClientMeetingJoinTime
493
504
  * This will be set once on meeting join, and not updated again
@@ -2,6 +2,7 @@ import '@webex/internal-plugin-mercury';
2
2
  import '@webex/internal-plugin-conversation';
3
3
  import '@webex/internal-plugin-metrics';
4
4
  import { WebexPlugin } from '@webex/webex-core';
5
+ import { DeviceRegistrationOptions } from '@webex/internal-plugin-device';
5
6
  import * as mediaHelpersModule from '@webex/media-helpers';
6
7
  import 'webrtc-adapter';
7
8
  import { DESTINATION_TYPE } from '../constants';
@@ -51,6 +52,26 @@ import { INoiseReductionEffect, IVirtualBackgroundEffect } from './meetings.type
51
52
  * @property {String} type what type of meeting it was
52
53
  * @memberof Meetings
53
54
  */
55
+ /**
56
+ * Object containing only the most basic information about a meeting.
57
+ * This is the information that is kept even after the meeting is deleted from the MeetingCollection
58
+ */
59
+ export type BasicMeetingInformation = {
60
+ allowMediaInLobby: boolean;
61
+ correlationId: string;
62
+ environment: string;
63
+ id: string;
64
+ locusUrl: string;
65
+ locusInfo: {
66
+ url: string;
67
+ fullState: {
68
+ lastActive: string;
69
+ sessionId: string;
70
+ };
71
+ };
72
+ meetingInfo: any;
73
+ sessionCorrelationId: string;
74
+ };
54
75
  /**
55
76
  * Maintain a cache of meetings and sync with services.
56
77
  * @class
@@ -59,6 +80,7 @@ export default class Meetings extends WebexPlugin {
59
80
  loggerRequest: any;
60
81
  media: any;
61
82
  meetingCollection: any;
83
+ deletedMeetings: Map<string, BasicMeetingInformation>;
62
84
  personalMeetingRoom: any;
63
85
  preferredWebexSite: any;
64
86
  reachability: Reachability;
@@ -189,11 +211,12 @@ export default class Meetings extends WebexPlugin {
189
211
  * Explicitly sets up the meetings plugin by registering
190
212
  * the device, connecting to mercury, and listening for locus events.
191
213
  *
214
+ * @param {DeviceRegistrationOptions} [deviceRegistrationOptions] - The options for registering the device (optional)
192
215
  * @returns {Promise}
193
216
  * @public
194
217
  * @memberof Meetings
195
218
  */
196
- register(): Promise<void>;
219
+ register(deviceRegistrationOptions?: DeviceRegistrationOptions): Promise<any>;
197
220
  /**
198
221
  * Explicitly tears down the meetings plugin by deregistering
199
222
  * the device, disconnecting from mercury, and stops listening to locus events
@@ -281,6 +304,14 @@ export default class Meetings extends WebexPlugin {
281
304
  * @memberof Meetings
282
305
  */
283
306
  getPersonalMeetingRoom(): any;
307
+ /**
308
+ * Returns basic information about a meeting that exists or
309
+ * used to exist in the MeetingCollection
310
+ *
311
+ * @param {string} meetingId
312
+ * @returns {BasicMeetingInformation|undefined}
313
+ */
314
+ getBasicMeetingInformation(meetingId: string): BasicMeetingInformation;
284
315
  /**
285
316
  * @param {Meeting} meeting
286
317
  * @param {Object} reason
@@ -304,11 +335,12 @@ export default class Meetings extends WebexPlugin {
304
335
  * @param {CallStateForMetrics} callStateForMetrics - information about call state for metrics
305
336
  * @param {Object} [meetingInfo] - Pre-fetched complete meeting info
306
337
  * @param {String} [meetingLookupUrl] - meeting info prefetch url
338
+ * @param {string} sessionCorrelationId - the optional specified sessionCorrelationId (callStateForMetrics.sessionCorrelationId) can be provided instead
307
339
  * @returns {Promise<Meeting>} A new Meeting.
308
340
  * @public
309
341
  * @memberof Meetings
310
342
  */
311
- create(destination: string, type?: DESTINATION_TYPE, useRandomDelayForInfo?: boolean, infoExtraParams?: {}, correlationId?: string, failOnMissingMeetingInfo?: boolean, callStateForMetrics?: CallStateForMetrics, meetingInfo?: any, meetingLookupUrl?: any): any;
343
+ create(destination: string, type?: DESTINATION_TYPE, useRandomDelayForInfo?: boolean, infoExtraParams?: {}, correlationId?: string, failOnMissingMeetingInfo?: boolean, callStateForMetrics?: CallStateForMetrics, meetingInfo?: any, meetingLookupUrl?: any, sessionCorrelationId?: string): any;
312
344
  /**
313
345
  * Create meeting
314
346
  *
@@ -0,0 +1,36 @@
1
+ declare const STATS_DEFAULT: {
2
+ encryption: string;
3
+ bandwidth: {
4
+ systemBandwidth: number;
5
+ sentPerSecond: number;
6
+ encodedPerSecond: number;
7
+ helper: {
8
+ audioBytesSent: number;
9
+ videoBytestSent: number;
10
+ };
11
+ speed: number;
12
+ };
13
+ results: {};
14
+ connectionType: {
15
+ systemNetworkType: string;
16
+ systemIpAddress: string;
17
+ local: {
18
+ candidateType: any[];
19
+ transport: any[];
20
+ ipAddress: any[];
21
+ networkType: any[];
22
+ };
23
+ remote: {
24
+ candidateType: any[];
25
+ transport: any[];
26
+ ipAddress: any[];
27
+ networkType: any[];
28
+ };
29
+ };
30
+ resolutions: {};
31
+ internal: {
32
+ remote: {};
33
+ candidates: {};
34
+ };
35
+ };
36
+ export default STATS_DEFAULT;
@@ -0,0 +1,217 @@
1
+ /// <reference types="node" />
2
+ import EventsScope from '../common/events/events-scope';
3
+ import { ReceiveSlot } from '../multistream/receiveSlot';
4
+ export declare const EVENTS: {
5
+ MEDIA_QUALITY: string;
6
+ LOCAL_MEDIA_STARTED: string;
7
+ LOCAL_MEDIA_STOPPED: string;
8
+ REMOTE_MEDIA_STARTED: string;
9
+ REMOTE_MEDIA_STOPPED: string;
10
+ };
11
+ type ReceiveSlotCallback = (csi: number) => ReceiveSlot | undefined;
12
+ type MediaStatus = {
13
+ actual?: any;
14
+ expected?: any;
15
+ };
16
+ /**
17
+ * Stats Analyzer class that will emit events based on detected quality
18
+ *
19
+ * @export
20
+ * @class StatsAnalyzer
21
+ * @extends {EventsScope}
22
+ */
23
+ export declare class StatsAnalyzer extends EventsScope {
24
+ config: any;
25
+ correlationId: any;
26
+ lastEmittedStartStopEvent: any;
27
+ lastMqaDataSent: any;
28
+ lastStatsResults: any;
29
+ meetingMediaStatus: any;
30
+ mqaInterval: NodeJS.Timeout;
31
+ mqaSentCount: any;
32
+ networkQualityMonitor: any;
33
+ mediaConnection: any;
34
+ statsInterval: NodeJS.Timeout;
35
+ statsResults: any;
36
+ statsStarted: any;
37
+ successfulCandidatePair: any;
38
+ localIpAddress: string;
39
+ receiveSlotCallback: ReceiveSlotCallback;
40
+ /**
41
+ * Creates a new instance of StatsAnalyzer
42
+ * @constructor
43
+ * @public
44
+ * @param {Object} config SDK Configuration Object
45
+ * @param {Function} receiveSlotCallback Callback used to access receive slots.
46
+ * @param {Object} networkQualityMonitor class for assessing network characteristics (jitter, packetLoss, latency)
47
+ * @param {Object} statsResults Default properties for stats
48
+ */
49
+ constructor(config: any, receiveSlotCallback?: ReceiveSlotCallback, networkQualityMonitor?: object, statsResults?: object);
50
+ /**
51
+ * Resets cumulative stats arrays.
52
+ *
53
+ * @public
54
+ * @memberof StatsAnalyzer
55
+ * @returns {void}
56
+ */
57
+ resetStatsResults(): void;
58
+ /**
59
+ * sets mediaStatus status for analyzing metrics
60
+ *
61
+ * @public
62
+ * @param {Object} status for the audio and video
63
+ * @memberof StatsAnalyzer
64
+ * @returns {void}
65
+ */
66
+ updateMediaStatus(status: MediaStatus): void;
67
+ /**
68
+ * captures MQA data from media connection
69
+ *
70
+ * @public
71
+ * @memberof StatsAnalyzer
72
+ * @returns {void}
73
+ */
74
+ sendMqaData(): void;
75
+ /**
76
+ * updated the media connection when changed
77
+ *
78
+ * @private
79
+ * @memberof StatsAnalyzer
80
+ * @param {RoapMediaConnection} mediaConnection
81
+ * @returns {void}
82
+ */
83
+ updateMediaConnection(mediaConnection: any): void;
84
+ /**
85
+ * Returns the local IP address for diagnostics.
86
+ * this is the local IP of the interface used for the current media connection
87
+ * a host can have many local Ip Addresses
88
+ * @returns {string | undefined} The local IP address.
89
+ */
90
+ getLocalIpAddress(): string;
91
+ /**
92
+ * Starts the stats analyzer on interval
93
+ *
94
+ * @public
95
+ * @memberof StatsAnalyzer
96
+ * @param {RoapMediaConnection} mediaConnection
97
+ * @returns {Promise}
98
+ */
99
+ startAnalyzer(mediaConnection: any): any;
100
+ /**
101
+ * Cleans up the analyzer when done
102
+ *
103
+ * @public
104
+ * @memberof StatsAnalyzer
105
+ * @returns {void}
106
+ */
107
+ stopAnalyzer(): any;
108
+ /**
109
+ * Parse a single result of get stats
110
+ *
111
+ * @private
112
+ * @param {*} getStatsResult
113
+ * @param {String} type
114
+ * @param {boolean} isSender
115
+ * @returns {void}
116
+ * @memberof StatsAnalyzer
117
+ */
118
+ private parseGetStatsResult;
119
+ /**
120
+ * Filters the get stats results for types
121
+ * @private
122
+ * @param {Array} statsItem
123
+ * @param {String} type
124
+ * @param {boolean} isSender
125
+ * @returns {void}
126
+ */
127
+ filterAndParseGetStatsResults(statsItem: any, type: string, isSender: boolean): void;
128
+ /**
129
+ * parse the audio
130
+ * @param {String} result
131
+ * @param {boolean} type
132
+ * @returns {void}
133
+ */
134
+ parseAudioSource(result: any, type: any): void;
135
+ /**
136
+ * emits started/stopped events for local/remote media by checking
137
+ * if given values are increasing or not. The previousValue, currentValue
138
+ * params can be any numerical value like number of receive packets or
139
+ * decoded frames, etc.
140
+ *
141
+ * @private
142
+ * @param {string} mediaType
143
+ * @param {number} previousValue - value to compare
144
+ * @param {number} currentValue - value to compare (must be same type of value as previousValue)
145
+ * @param {boolean} isLocal - true if stats are for local media being sent out, false for remote media being received
146
+ * @memberof StatsAnalyzer
147
+ * @returns {void}
148
+ */
149
+ emitStartStopEvents: (mediaType: string, previousValue: number, currentValue: number, isLocal: boolean) => void;
150
+ /**
151
+ * compares current and previous stats to check if packets are not sent
152
+ *
153
+ * @private
154
+ * @memberof StatsAnalyzer
155
+ * @returns {void}
156
+ */
157
+ private compareLastStatsResult;
158
+ /**
159
+ * Does a `getStats` on all the transceivers and parses the results
160
+ *
161
+ * @private
162
+ * @memberof StatsAnalyzer
163
+ * @returns {Promise}
164
+ */
165
+ private getStatsAndParse;
166
+ /**
167
+ * Processes OutboundRTP stats result and stores
168
+ * @private
169
+ * @param {*} result
170
+ * @param {*} mediaType
171
+ * @returns {void}
172
+ */
173
+ private processOutboundRTPResult;
174
+ /**
175
+ * Processes InboundRTP stats result and stores
176
+ * @private
177
+ * @param {*} result
178
+ * @param {*} mediaType
179
+ * @returns {void}
180
+ */
181
+ private processInboundRTPResult;
182
+ /**
183
+ * extracts the local Ip address from the statsResult object by looking at stats results candidates
184
+ * and matches that ID with the successful candidate pair. It looks at the type of local candidate it is
185
+ * and then extracts the IP address from the relatedAddress or address property based on conditions known in webrtc
186
+ * note, there are known incompatibilities and it is possible for this to set undefined, or for the IP address to be the public IP address
187
+ * for example, firefox does not set the relayProtocol, and if the user is behind a NAT it might be the public IP
188
+ * @private
189
+ * @param {string} successfulCandidatePairId - The ID of the successful candidate pair.
190
+ * @param {Object} candidates - the stats result candidates
191
+ * @returns {void}
192
+ */
193
+ extractAndSetLocalIpAddressInfoForDiagnostics: (successfulCandidatePairId: string, candidates: {
194
+ [key: string]: Record<string, unknown>;
195
+ }) => void;
196
+ /**
197
+ * Processes remote and local candidate result and stores
198
+ * @private
199
+ * @param {*} result
200
+ * @param {*} type
201
+ * @param {boolean} isSender
202
+ * @param {boolean} isRemote
203
+ *
204
+ * @returns {void}
205
+ */
206
+ parseCandidate: (result: any, type: any, isSender: boolean, isRemote: boolean) => void;
207
+ /**
208
+ *
209
+ * @private
210
+ * @param {*} result
211
+ * @param {*} type
212
+ * @returns {void}
213
+ * @memberof StatsAnalyzer
214
+ */
215
+ compareSentAndReceived(result: any, type: any): void;
216
+ }
217
+ export {};
@@ -0,0 +1,48 @@
1
+ export declare const getAudioReceiverMqa: ({ audioReceiver, statsResults, lastMqaDataSent, baseMediaType, }: {
2
+ audioReceiver: any;
3
+ statsResults: any;
4
+ lastMqaDataSent: any;
5
+ baseMediaType: any;
6
+ }) => void;
7
+ export declare const getAudioReceiverStreamMqa: ({ audioReceiverStream, statsResults, lastMqaDataSent, mediaType, }: {
8
+ audioReceiverStream: any;
9
+ statsResults: any;
10
+ lastMqaDataSent: any;
11
+ mediaType: any;
12
+ }) => void;
13
+ export declare const getAudioSenderMqa: ({ audioSender, statsResults, lastMqaDataSent, baseMediaType }: {
14
+ audioSender: any;
15
+ statsResults: any;
16
+ lastMqaDataSent: any;
17
+ baseMediaType: any;
18
+ }) => void;
19
+ export declare const getAudioSenderStreamMqa: ({ audioSenderStream, statsResults, lastMqaDataSent, mediaType, }: {
20
+ audioSenderStream: any;
21
+ statsResults: any;
22
+ lastMqaDataSent: any;
23
+ mediaType: any;
24
+ }) => void;
25
+ export declare const getVideoReceiverMqa: ({ videoReceiver, statsResults, lastMqaDataSent, baseMediaType, }: {
26
+ videoReceiver: any;
27
+ statsResults: any;
28
+ lastMqaDataSent: any;
29
+ baseMediaType: any;
30
+ }) => void;
31
+ export declare const getVideoReceiverStreamMqa: ({ videoReceiverStream, statsResults, lastMqaDataSent, mediaType, }: {
32
+ videoReceiverStream: any;
33
+ statsResults: any;
34
+ lastMqaDataSent: any;
35
+ mediaType: any;
36
+ }) => void;
37
+ export declare const getVideoSenderMqa: ({ videoSender, statsResults, lastMqaDataSent, baseMediaType }: {
38
+ videoSender: any;
39
+ statsResults: any;
40
+ lastMqaDataSent: any;
41
+ baseMediaType: any;
42
+ }) => void;
43
+ export declare const getVideoSenderStreamMqa: ({ videoSenderStream, statsResults, lastMqaDataSent, mediaType, }: {
44
+ videoSenderStream: any;
45
+ statsResults: any;
46
+ lastMqaDataSent: any;
47
+ mediaType: any;
48
+ }) => void;
@@ -0,0 +1,16 @@
1
+ /*!
2
+ * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.
3
+ */
4
+ declare class WebinarCollection {
5
+ webinarInfo: any;
6
+ namespace: string;
7
+ mainIndex: string;
8
+ constructor();
9
+ set(id: any, info: any): void;
10
+ /**
11
+ * @param {String} id
12
+ * @returns {Member}
13
+ */
14
+ get(id: string): any;
15
+ }
16
+ export default WebinarCollection;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @class Webinar
3
+ */
4
+ declare const Webinar: any;
5
+ export default Webinar;
@@ -62,7 +62,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
62
62
  updateCanManageWebcast: function updateCanManageWebcast(canManageWebcast) {
63
63
  this.set('canManageWebcast', canManageWebcast);
64
64
  },
65
- version: "3.5.0"
65
+ version: "3.6.0"
66
66
  });
67
67
  var _default = exports.default = Webinar;
68
68
  //# sourceMappingURL=index.js.map