@webex/plugin-meetings 3.0.0-beta.40 → 3.0.0-beta.401

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 (398) hide show
  1. package/README.md +58 -8
  2. package/dist/annotation/annotation.types.js +7 -0
  3. package/dist/annotation/annotation.types.js.map +1 -0
  4. package/dist/annotation/constants.js +49 -0
  5. package/dist/annotation/constants.js.map +1 -0
  6. package/dist/annotation/index.js +342 -0
  7. package/dist/annotation/index.js.map +1 -0
  8. package/dist/breakouts/breakout.js +94 -15
  9. package/dist/breakouts/breakout.js.map +1 -1
  10. package/dist/breakouts/events.js +45 -0
  11. package/dist/breakouts/events.js.map +1 -0
  12. package/dist/breakouts/index.js +625 -123
  13. package/dist/breakouts/index.js.map +1 -1
  14. package/dist/breakouts/utils.js +27 -8
  15. package/dist/breakouts/utils.js.map +1 -1
  16. package/dist/common/errors/no-meeting-info.js +51 -0
  17. package/dist/common/errors/no-meeting-info.js.map +1 -0
  18. package/dist/common/errors/reclaim-host-role-errors.js +158 -0
  19. package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
  20. package/dist/common/errors/webex-errors.js +48 -7
  21. package/dist/common/errors/webex-errors.js.map +1 -1
  22. package/dist/common/logs/logger-proxy.js +1 -1
  23. package/dist/common/logs/logger-proxy.js.map +1 -1
  24. package/dist/common/logs/request.js +5 -1
  25. package/dist/common/logs/request.js.map +1 -1
  26. package/dist/common/queue.js +24 -9
  27. package/dist/common/queue.js.map +1 -1
  28. package/dist/config.js +6 -10
  29. package/dist/config.js.map +1 -1
  30. package/dist/constants.js +247 -34
  31. package/dist/constants.js.map +1 -1
  32. package/dist/controls-options-manager/enums.js +14 -2
  33. package/dist/controls-options-manager/enums.js.map +1 -1
  34. package/dist/controls-options-manager/index.js +109 -15
  35. package/dist/controls-options-manager/index.js.map +1 -1
  36. package/dist/controls-options-manager/types.js +7 -0
  37. package/dist/controls-options-manager/types.js.map +1 -0
  38. package/dist/controls-options-manager/util.js +309 -18
  39. package/dist/controls-options-manager/util.js.map +1 -1
  40. package/dist/index.js +116 -2
  41. package/dist/index.js.map +1 -1
  42. package/dist/interceptors/index.js +15 -0
  43. package/dist/interceptors/index.js.map +1 -0
  44. package/dist/interceptors/locusRetry.js +93 -0
  45. package/dist/interceptors/locusRetry.js.map +1 -0
  46. package/dist/interpretation/collection.js +23 -0
  47. package/dist/interpretation/collection.js.map +1 -0
  48. package/dist/interpretation/index.js +380 -0
  49. package/dist/interpretation/index.js.map +1 -0
  50. package/dist/interpretation/siLanguage.js +25 -0
  51. package/dist/interpretation/siLanguage.js.map +1 -0
  52. package/dist/locus-info/controlsUtils.js +91 -2
  53. package/dist/locus-info/controlsUtils.js.map +1 -1
  54. package/dist/locus-info/index.js +386 -62
  55. package/dist/locus-info/index.js.map +1 -1
  56. package/dist/locus-info/infoUtils.js +7 -1
  57. package/dist/locus-info/infoUtils.js.map +1 -1
  58. package/dist/locus-info/mediaSharesUtils.js +71 -1
  59. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  60. package/dist/locus-info/parser.js +249 -72
  61. package/dist/locus-info/parser.js.map +1 -1
  62. package/dist/locus-info/selfUtils.js +89 -14
  63. package/dist/locus-info/selfUtils.js.map +1 -1
  64. package/dist/media/index.js +65 -102
  65. package/dist/media/index.js.map +1 -1
  66. package/dist/media/properties.js +73 -124
  67. package/dist/media/properties.js.map +1 -1
  68. package/dist/mediaQualityMetrics/config.js +135 -330
  69. package/dist/mediaQualityMetrics/config.js.map +1 -1
  70. package/dist/meeting/in-meeting-actions.js +86 -2
  71. package/dist/meeting/in-meeting-actions.js.map +1 -1
  72. package/dist/meeting/index.js +4509 -3000
  73. package/dist/meeting/index.js.map +1 -1
  74. package/dist/meeting/locusMediaRequest.js +292 -0
  75. package/dist/meeting/locusMediaRequest.js.map +1 -0
  76. package/dist/meeting/muteState.js +236 -136
  77. package/dist/meeting/muteState.js.map +1 -1
  78. package/dist/meeting/request.js +185 -155
  79. package/dist/meeting/request.js.map +1 -1
  80. package/dist/meeting/util.js +676 -417
  81. package/dist/meeting/util.js.map +1 -1
  82. package/dist/meeting/voicea-meeting.js +172 -0
  83. package/dist/meeting/voicea-meeting.js.map +1 -0
  84. package/dist/meeting-info/index.js +73 -7
  85. package/dist/meeting-info/index.js.map +1 -1
  86. package/dist/meeting-info/meeting-info-v2.js +201 -57
  87. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  88. package/dist/meeting-info/util.js +8 -7
  89. package/dist/meeting-info/util.js.map +1 -1
  90. package/dist/meeting-info/utilv2.js +44 -40
  91. package/dist/meeting-info/utilv2.js.map +1 -1
  92. package/dist/meetings/collection.js +39 -0
  93. package/dist/meetings/collection.js.map +1 -1
  94. package/dist/meetings/index.js +484 -119
  95. package/dist/meetings/index.js.map +1 -1
  96. package/dist/meetings/meetings.types.js +7 -0
  97. package/dist/meetings/meetings.types.js.map +1 -0
  98. package/dist/meetings/request.js +2 -0
  99. package/dist/meetings/request.js.map +1 -1
  100. package/dist/meetings/util.js +73 -7
  101. package/dist/meetings/util.js.map +1 -1
  102. package/dist/member/index.js +57 -0
  103. package/dist/member/index.js.map +1 -1
  104. package/dist/member/types.js +25 -0
  105. package/dist/member/types.js.map +1 -0
  106. package/dist/member/util.js +132 -25
  107. package/dist/member/util.js.map +1 -1
  108. package/dist/members/collection.js +10 -0
  109. package/dist/members/collection.js.map +1 -1
  110. package/dist/members/index.js +100 -5
  111. package/dist/members/index.js.map +1 -1
  112. package/dist/members/request.js +106 -38
  113. package/dist/members/request.js.map +1 -1
  114. package/dist/members/types.js +15 -0
  115. package/dist/members/types.js.map +1 -0
  116. package/dist/members/util.js +326 -232
  117. package/dist/members/util.js.map +1 -1
  118. package/dist/metrics/constants.js +18 -1
  119. package/dist/metrics/constants.js.map +1 -1
  120. package/dist/metrics/index.js +1 -446
  121. package/dist/metrics/index.js.map +1 -1
  122. package/dist/multistream/mediaRequestManager.js +223 -32
  123. package/dist/multistream/mediaRequestManager.js.map +1 -1
  124. package/dist/multistream/receiveSlot.js +10 -0
  125. package/dist/multistream/receiveSlot.js.map +1 -1
  126. package/dist/multistream/receiveSlotManager.js +39 -36
  127. package/dist/multistream/receiveSlotManager.js.map +1 -1
  128. package/dist/multistream/remoteMedia.js +3 -1
  129. package/dist/multistream/remoteMedia.js.map +1 -1
  130. package/dist/multistream/remoteMediaGroup.js +76 -5
  131. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  132. package/dist/multistream/remoteMediaManager.js +366 -104
  133. package/dist/multistream/remoteMediaManager.js.map +1 -1
  134. package/dist/multistream/sendSlotManager.js +255 -0
  135. package/dist/multistream/sendSlotManager.js.map +1 -0
  136. package/dist/reachability/clusterReachability.js +356 -0
  137. package/dist/reachability/clusterReachability.js.map +1 -0
  138. package/dist/reachability/index.js +263 -390
  139. package/dist/reachability/index.js.map +1 -1
  140. package/dist/reachability/request.js +6 -4
  141. package/dist/reachability/request.js.map +1 -1
  142. package/dist/reachability/util.js +29 -0
  143. package/dist/reachability/util.js.map +1 -0
  144. package/dist/reconnection-manager/index.js +266 -202
  145. package/dist/reconnection-manager/index.js.map +1 -1
  146. package/dist/recording-controller/index.js +21 -2
  147. package/dist/recording-controller/index.js.map +1 -1
  148. package/dist/recording-controller/util.js +9 -8
  149. package/dist/recording-controller/util.js.map +1 -1
  150. package/dist/roap/index.js +66 -28
  151. package/dist/roap/index.js.map +1 -1
  152. package/dist/roap/request.js +48 -64
  153. package/dist/roap/request.js.map +1 -1
  154. package/dist/roap/turnDiscovery.js +407 -79
  155. package/dist/roap/turnDiscovery.js.map +1 -1
  156. package/dist/rtcMetrics/constants.js +12 -0
  157. package/dist/rtcMetrics/constants.js.map +1 -0
  158. package/dist/rtcMetrics/index.js +179 -0
  159. package/dist/rtcMetrics/index.js.map +1 -0
  160. package/dist/statsAnalyzer/index.js +357 -295
  161. package/dist/statsAnalyzer/index.js.map +1 -1
  162. package/dist/statsAnalyzer/mqaUtil.js +296 -156
  163. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  164. package/dist/types/annotation/annotation.types.d.ts +42 -0
  165. package/dist/types/annotation/constants.d.ts +31 -0
  166. package/dist/types/annotation/index.d.ts +117 -0
  167. package/dist/types/breakouts/events.d.ts +8 -0
  168. package/dist/types/breakouts/utils.d.ts +9 -2
  169. package/dist/types/common/errors/no-meeting-info.d.ts +14 -0
  170. package/dist/types/common/errors/reclaim-host-role-errors.d.ts +60 -0
  171. package/dist/types/common/errors/webex-errors.d.ts +25 -1
  172. package/dist/types/common/logs/request.d.ts +2 -0
  173. package/dist/types/common/queue.d.ts +9 -7
  174. package/dist/types/config.d.ts +2 -7
  175. package/dist/types/constants.d.ts +204 -32
  176. package/dist/types/controls-options-manager/enums.d.ts +11 -1
  177. package/dist/types/controls-options-manager/index.d.ts +17 -1
  178. package/dist/types/controls-options-manager/types.d.ts +43 -0
  179. package/dist/types/controls-options-manager/util.d.ts +1 -7
  180. package/dist/types/index.d.ts +6 -5
  181. package/dist/types/interceptors/index.d.ts +2 -0
  182. package/dist/types/interceptors/locusRetry.d.ts +27 -0
  183. package/dist/types/interpretation/collection.d.ts +5 -0
  184. package/dist/types/interpretation/index.d.ts +5 -0
  185. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  186. package/dist/types/locus-info/index.d.ts +57 -4
  187. package/dist/types/locus-info/parser.d.ts +66 -6
  188. package/dist/types/media/index.d.ts +2 -0
  189. package/dist/types/media/properties.d.ts +34 -49
  190. package/dist/types/mediaQualityMetrics/config.d.ts +99 -223
  191. package/dist/types/meeting/in-meeting-actions.d.ts +86 -2
  192. package/dist/types/meeting/index.d.ts +630 -505
  193. package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
  194. package/dist/types/meeting/muteState.d.ts +88 -26
  195. package/dist/types/meeting/request.d.ts +65 -43
  196. package/dist/types/meeting/util.d.ts +117 -1
  197. package/dist/types/meeting/voicea-meeting.d.ts +16 -0
  198. package/dist/types/meeting-info/index.d.ts +13 -1
  199. package/dist/types/meeting-info/meeting-info-v2.d.ts +31 -1
  200. package/dist/types/meetings/collection.d.ts +17 -0
  201. package/dist/types/meetings/index.d.ts +113 -21
  202. package/dist/types/meetings/meetings.types.d.ts +4 -0
  203. package/dist/types/member/index.d.ts +14 -0
  204. package/dist/types/member/types.d.ts +32 -0
  205. package/dist/types/members/collection.d.ts +5 -0
  206. package/dist/types/members/index.d.ts +35 -2
  207. package/dist/types/members/request.d.ts +73 -9
  208. package/dist/types/members/types.d.ts +25 -0
  209. package/dist/types/members/util.d.ts +214 -1
  210. package/dist/types/metrics/constants.d.ts +17 -0
  211. package/dist/types/metrics/index.d.ts +4 -111
  212. package/dist/types/multistream/mediaRequestManager.d.ts +72 -3
  213. package/dist/types/multistream/receiveSlot.d.ts +7 -3
  214. package/dist/types/multistream/receiveSlotManager.d.ts +14 -4
  215. package/dist/types/multistream/remoteMedia.d.ts +3 -31
  216. package/dist/types/multistream/remoteMediaGroup.d.ts +2 -9
  217. package/dist/types/multistream/remoteMediaManager.d.ts +62 -2
  218. package/dist/types/multistream/sendSlotManager.d.ts +70 -0
  219. package/dist/types/reachability/clusterReachability.d.ts +109 -0
  220. package/dist/types/reachability/index.d.ts +60 -95
  221. package/dist/types/reachability/request.d.ts +3 -1
  222. package/dist/types/reachability/util.d.ts +8 -0
  223. package/dist/types/reconnection-manager/index.d.ts +19 -0
  224. package/dist/types/recording-controller/index.d.ts +15 -1
  225. package/dist/types/recording-controller/util.d.ts +5 -4
  226. package/dist/types/roap/index.d.ts +11 -2
  227. package/dist/types/roap/request.d.ts +9 -8
  228. package/dist/types/roap/turnDiscovery.d.ts +90 -9
  229. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  230. package/dist/types/rtcMetrics/index.d.ts +61 -0
  231. package/dist/types/statsAnalyzer/index.d.ts +34 -12
  232. package/dist/types/statsAnalyzer/mqaUtil.d.ts +28 -4
  233. package/dist/types/webinar/collection.d.ts +16 -0
  234. package/dist/types/webinar/index.d.ts +5 -0
  235. package/dist/webinar/collection.js +44 -0
  236. package/dist/webinar/collection.js.map +1 -0
  237. package/dist/webinar/index.js +69 -0
  238. package/dist/webinar/index.js.map +1 -0
  239. package/package.json +22 -19
  240. package/src/annotation/annotation.types.ts +50 -0
  241. package/src/annotation/constants.ts +36 -0
  242. package/src/annotation/index.ts +328 -0
  243. package/src/breakouts/README.md +27 -6
  244. package/src/breakouts/breakout.ts +67 -9
  245. package/src/breakouts/events.ts +56 -0
  246. package/src/breakouts/index.ts +494 -73
  247. package/src/breakouts/utils.ts +26 -8
  248. package/src/common/errors/no-meeting-info.ts +24 -0
  249. package/src/common/errors/reclaim-host-role-errors.ts +134 -0
  250. package/src/common/errors/webex-errors.ts +44 -2
  251. package/src/common/logs/logger-proxy.ts +1 -1
  252. package/src/common/logs/request.ts +5 -1
  253. package/src/common/queue.ts +22 -8
  254. package/src/config.ts +6 -13
  255. package/src/constants.ts +234 -22
  256. package/src/controls-options-manager/enums.ts +12 -0
  257. package/src/controls-options-manager/index.ts +116 -21
  258. package/src/controls-options-manager/types.ts +59 -0
  259. package/src/controls-options-manager/util.ts +294 -14
  260. package/src/index.ts +45 -0
  261. package/src/interceptors/index.ts +3 -0
  262. package/src/interceptors/locusRetry.ts +67 -0
  263. package/src/interpretation/README.md +60 -0
  264. package/src/interpretation/collection.ts +19 -0
  265. package/src/interpretation/index.ts +349 -0
  266. package/src/interpretation/siLanguage.ts +18 -0
  267. package/src/locus-info/controlsUtils.ts +108 -0
  268. package/src/locus-info/index.ts +417 -59
  269. package/src/locus-info/infoUtils.ts +10 -2
  270. package/src/locus-info/mediaSharesUtils.ts +80 -0
  271. package/src/locus-info/parser.ts +258 -47
  272. package/src/locus-info/selfUtils.ts +81 -5
  273. package/src/media/index.ts +100 -108
  274. package/src/media/properties.ts +88 -117
  275. package/src/mediaQualityMetrics/config.ts +103 -238
  276. package/src/meeting/in-meeting-actions.ts +171 -3
  277. package/src/meeting/index.ts +3899 -2622
  278. package/src/meeting/locusMediaRequest.ts +313 -0
  279. package/src/meeting/muteState.ts +237 -136
  280. package/src/meeting/request.ts +166 -122
  281. package/src/meeting/util.ts +690 -395
  282. package/src/meeting/voicea-meeting.ts +122 -0
  283. package/src/meeting-info/index.ts +81 -8
  284. package/src/meeting-info/meeting-info-v2.ts +166 -16
  285. package/src/meeting-info/util.ts +13 -10
  286. package/src/meeting-info/utilv2.ts +47 -37
  287. package/src/meetings/collection.ts +33 -0
  288. package/src/meetings/index.ts +507 -127
  289. package/src/meetings/meetings.types.ts +12 -0
  290. package/src/meetings/request.ts +2 -0
  291. package/src/meetings/util.ts +81 -12
  292. package/src/member/index.ts +57 -0
  293. package/src/member/types.ts +38 -0
  294. package/src/member/util.ts +141 -25
  295. package/src/members/collection.ts +8 -0
  296. package/src/members/index.ts +133 -7
  297. package/src/members/request.ts +97 -17
  298. package/src/members/types.ts +29 -0
  299. package/src/members/util.ts +333 -240
  300. package/src/metrics/constants.ts +17 -0
  301. package/src/metrics/index.ts +1 -469
  302. package/src/multistream/mediaRequestManager.ts +271 -56
  303. package/src/multistream/receiveSlot.ts +11 -4
  304. package/src/multistream/receiveSlotManager.ts +34 -24
  305. package/src/multistream/remoteMedia.ts +5 -3
  306. package/src/multistream/remoteMediaGroup.ts +78 -0
  307. package/src/multistream/remoteMediaManager.ts +248 -44
  308. package/src/multistream/sendSlotManager.ts +199 -0
  309. package/src/reachability/clusterReachability.ts +320 -0
  310. package/src/reachability/index.ts +229 -346
  311. package/src/reachability/request.ts +8 -4
  312. package/src/reachability/util.ts +24 -0
  313. package/src/reconnection-manager/index.ts +128 -97
  314. package/src/recording-controller/index.ts +20 -3
  315. package/src/recording-controller/util.ts +26 -9
  316. package/src/roap/index.ts +76 -25
  317. package/src/roap/request.ts +48 -67
  318. package/src/roap/turnDiscovery.ts +331 -67
  319. package/src/rtcMetrics/constants.ts +3 -0
  320. package/src/rtcMetrics/index.ts +166 -0
  321. package/src/statsAnalyzer/index.ts +457 -416
  322. package/src/statsAnalyzer/mqaUtil.ts +317 -170
  323. package/src/webinar/collection.ts +31 -0
  324. package/src/webinar/index.ts +62 -0
  325. package/test/integration/spec/converged-space-meetings.js +60 -3
  326. package/test/integration/spec/journey.js +321 -262
  327. package/test/integration/spec/space-meeting.js +76 -3
  328. package/test/unit/spec/annotation/index.ts +418 -0
  329. package/test/unit/spec/breakouts/breakout.ts +119 -28
  330. package/test/unit/spec/breakouts/events.ts +89 -0
  331. package/test/unit/spec/breakouts/index.ts +1204 -118
  332. package/test/unit/spec/breakouts/utils.js +27 -2
  333. package/test/unit/spec/common/queue.js +31 -2
  334. package/test/unit/spec/controls-options-manager/index.js +163 -0
  335. package/test/unit/spec/controls-options-manager/util.js +576 -60
  336. package/test/unit/spec/fixture/locus.js +1 -0
  337. package/test/unit/spec/interceptors/locusRetry.ts +131 -0
  338. package/test/unit/spec/interpretation/collection.ts +15 -0
  339. package/test/unit/spec/interpretation/index.ts +625 -0
  340. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  341. package/test/unit/spec/locus-info/controlsUtils.js +316 -43
  342. package/test/unit/spec/locus-info/index.js +1372 -37
  343. package/test/unit/spec/locus-info/infoUtils.js +37 -15
  344. package/test/unit/spec/locus-info/lib/SeqCmp.json +16 -0
  345. package/test/unit/spec/locus-info/mediaSharesUtils.ts +41 -0
  346. package/test/unit/spec/locus-info/parser.js +116 -35
  347. package/test/unit/spec/locus-info/selfConstant.js +27 -4
  348. package/test/unit/spec/locus-info/selfUtils.js +203 -17
  349. package/test/unit/spec/media/index.ts +178 -81
  350. package/test/unit/spec/media/properties.ts +2 -2
  351. package/test/unit/spec/meeting/in-meeting-actions.ts +85 -3
  352. package/test/unit/spec/meeting/index.js +7520 -2267
  353. package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
  354. package/test/unit/spec/meeting/muteState.js +549 -207
  355. package/test/unit/spec/meeting/request.js +476 -54
  356. package/test/unit/spec/meeting/utils.js +827 -74
  357. package/test/unit/spec/meeting/voicea-meeting.ts +266 -0
  358. package/test/unit/spec/meeting-info/index.js +300 -0
  359. package/test/unit/spec/meeting-info/meetinginfov2.js +535 -9
  360. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  361. package/test/unit/spec/meetings/collection.js +26 -0
  362. package/test/unit/spec/meetings/index.js +1489 -219
  363. package/test/unit/spec/meetings/utils.js +229 -2
  364. package/test/unit/spec/member/index.js +61 -6
  365. package/test/unit/spec/member/util.js +510 -34
  366. package/test/unit/spec/members/index.js +432 -1
  367. package/test/unit/spec/members/request.js +206 -27
  368. package/test/unit/spec/members/utils.js +210 -0
  369. package/test/unit/spec/metrics/index.js +2 -52
  370. package/test/unit/spec/multistream/mediaRequestManager.ts +782 -114
  371. package/test/unit/spec/multistream/receiveSlot.ts +9 -1
  372. package/test/unit/spec/multistream/receiveSlotManager.ts +32 -30
  373. package/test/unit/spec/multistream/remoteMedia.ts +2 -0
  374. package/test/unit/spec/multistream/remoteMediaGroup.ts +345 -0
  375. package/test/unit/spec/multistream/remoteMediaManager.ts +525 -0
  376. package/test/unit/spec/multistream/sendSlotManager.ts +274 -0
  377. package/test/unit/spec/reachability/clusterReachability.ts +279 -0
  378. package/test/unit/spec/reachability/index.ts +551 -14
  379. package/test/unit/spec/reachability/request.js +3 -1
  380. package/test/unit/spec/reachability/util.ts +40 -0
  381. package/test/unit/spec/reconnection-manager/index.js +171 -11
  382. package/test/unit/spec/recording-controller/index.js +293 -218
  383. package/test/unit/spec/recording-controller/util.js +223 -96
  384. package/test/unit/spec/roap/index.ts +233 -81
  385. package/test/unit/spec/roap/request.ts +100 -62
  386. package/test/unit/spec/roap/turnDiscovery.ts +682 -108
  387. package/test/unit/spec/rtcMetrics/index.ts +122 -0
  388. package/test/unit/spec/stats-analyzer/index.js +1252 -12
  389. package/test/unit/spec/webinar/collection.ts +13 -0
  390. package/test/unit/spec/webinar/index.ts +60 -0
  391. package/test/utils/integrationTestUtils.js +46 -0
  392. package/test/utils/testUtils.js +0 -57
  393. package/test/utils/webex-test-users.js +12 -4
  394. package/dist/metrics/config.js +0 -289
  395. package/dist/metrics/config.js.map +0 -1
  396. package/dist/types/metrics/config.d.ts +0 -169
  397. package/src/index.js +0 -18
  398. package/src/metrics/config.ts +0 -485
@@ -0,0 +1,74 @@
1
+ import { WebexPlugin } from '@webex/webex-core';
2
+ import { IP_VERSION } from '../constants';
3
+ export type MediaRequestType = 'RoapMessage' | 'LocalMute';
4
+ export type RequestResult = any;
5
+ export type RoapRequest = {
6
+ type: 'RoapMessage';
7
+ selfUrl: string;
8
+ mediaId: string;
9
+ roapMessage: any;
10
+ reachability: any;
11
+ sequence?: any;
12
+ joinCookie: any;
13
+ ipVersion?: IP_VERSION;
14
+ };
15
+ export type LocalMuteRequest = {
16
+ type: 'LocalMute';
17
+ selfUrl: string;
18
+ mediaId: string;
19
+ sequence?: any;
20
+ muteOptions: {
21
+ audioMuted?: boolean;
22
+ videoMuted?: boolean;
23
+ };
24
+ };
25
+ export type Request = RoapRequest | LocalMuteRequest;
26
+ export type Config = {
27
+ device: {
28
+ url: string;
29
+ deviceType: string;
30
+ countryCode?: string;
31
+ regionCode?: string;
32
+ };
33
+ correlationId: string;
34
+ preferTranscoding: boolean;
35
+ };
36
+ /**
37
+ * This class manages all /media API requests to Locus. Every call to that
38
+ * Locus API has to go through this class.
39
+ */
40
+ export declare class LocusMediaRequest extends WebexPlugin {
41
+ private config;
42
+ private latestAudioMuted?;
43
+ private latestVideoMuted?;
44
+ private isRequestInProgress;
45
+ private queuedRequests;
46
+ private confluenceState;
47
+ /**
48
+ * Constructor
49
+ */
50
+ constructor(config: Config, options: any);
51
+ /**
52
+ * Add a request to the internal queue.
53
+ */
54
+ private addToQueue;
55
+ /**
56
+ * Takes the next request from the queue and executes it. Once that
57
+ * request is completed, the next one will be taken from the queue
58
+ * and executed and this is repeated until the queue is empty.
59
+ */
60
+ private executeNextQueuedRequest;
61
+ /**
62
+ * Returns latest requested audio and video mute values. If they have never been
63
+ * requested, we assume audio/video to be muted.
64
+ */
65
+ private getLatestMuteState;
66
+ /**
67
+ * Prepares the uri and body for the media request to be sent to Locus
68
+ */
69
+ private sendHttpRequest;
70
+ /**
71
+ * Sends a media request to Locus
72
+ */
73
+ send(request: Request): Promise<RequestResult>;
74
+ }
@@ -1,45 +1,94 @@
1
- export declare const createMuteState: (type: any, meeting: any, mediaDirection: any) => MuteState;
1
+ import { ServerMuteReason } from '@webex/media-helpers';
2
+ export declare const createMuteState: (type: any, meeting: any, enabled: boolean) => MuteState;
2
3
  /** The purpose of this class is to manage the local and remote mute state and make sure that the server state always matches
3
4
  the last requested state by the client.
4
5
 
5
6
  More info about Locus muting API: https://sqbu-github.cisco.com/pages/WebExSquared/locus/guides/mute.html#
7
+
8
+ This class is exported only for unit tests. It should never be instantiated directly with new MuteState(), instead createMuteState() should be called
6
9
  */
7
- declare class MuteState {
8
- pendingPromiseReject: any;
9
- pendingPromiseResolve: any;
10
- state: any;
10
+ export declare class MuteState {
11
+ state: {
12
+ client: {
13
+ enabled: boolean;
14
+ localMute: boolean;
15
+ };
16
+ server: {
17
+ localMute: boolean;
18
+ remoteMute: boolean;
19
+ unmuteAllowed: boolean;
20
+ };
21
+ syncToServerInProgress: boolean;
22
+ };
11
23
  type: any;
24
+ ignoreMuteStateChange: boolean;
12
25
  /**
13
26
  * Constructor
14
27
  *
15
28
  * @param {String} type - audio or video
16
29
  * @param {Object} meeting - the meeting object (used for reading current remote mute status)
30
+ * @param {boolean} enabled - whether the client audio/video is enabled at all
31
+ */
32
+ constructor(type: string, meeting: any, enabled: boolean);
33
+ /**
34
+ * Starts the mute state machine. Needs to be called after a new MuteState instance is created.
35
+ *
36
+ * @param {Object} meeting - the meeting object
37
+ * @returns {void}
38
+ */
39
+ init(meeting: any): void;
40
+ /**
41
+ * This method needs to be called whenever the local audio/video stream has changed.
42
+ * It reapplies the remote mute state onto the new stream and also reads the current
43
+ * local mute state from the stream and updates the internal state machine and sends
44
+ * any required requests to the server.
45
+ *
46
+ * @param {Object} meeting - the meeting object
47
+ * @returns {void}
17
48
  */
18
- constructor(type: string, meeting: any);
49
+ handleLocalStreamChange(meeting: any): void;
19
50
  /**
20
- * Handles mute/unmute request from the client/user. Returns a promise that's resolved once the server update is completed or
21
- * at the point that this request becomese superseded by another client request.
51
+ * Enables/disables audio/video
22
52
  *
23
- * The client doesn't have to wait for the returned promise to resolve before calling handleClientRequest() again. If
24
- * handleClientRequest() is called again before the previous one resolved, the MuteState class will make sure that eventually
25
- * the server state will match the last requested state from the client.
53
+ * @param {Object} meeting - the meeting object
54
+ * @param {boolean} enable
55
+ * @returns {void}
56
+ */
57
+ enable(meeting: any, enable: boolean): void;
58
+ /**
59
+ * Mutes/unmutes local stream
26
60
  *
61
+ * @param {Object} meeting - the meeting object
62
+ * @param {Boolean} mute - true to mute the stream, false to unmute it
63
+ * @param {ServerMuteReason} reason - reason for muting/unmuting
64
+ * @returns {void}
65
+ */
66
+ private muteLocalStream;
67
+ /**
68
+ * This method should be called when the local stream mute state is changed
27
69
  * @public
28
70
  * @memberof MuteState
29
71
  * @param {Object} [meeting] the meeting object
30
72
  * @param {Boolean} [mute] true for muting, false for unmuting request
31
- * @returns {Promise}
73
+ * @returns {void}
32
74
  */
33
- handleClientRequest(meeting?: object, mute?: boolean): Promise<unknown>;
75
+ handleLocalStreamMuteStateChange(meeting?: any): void;
34
76
  /**
35
- * Applies the current mute state to the local track (by enabling or disabling it accordingly)
77
+ * Applies the current mute state to the local stream (by enabling or disabling it accordingly)
36
78
  *
37
79
  * @public
38
80
  * @param {Object} [meeting] the meeting object
81
+ * @param {ServerMuteReason} reason - reason why we're applying our client state to the local stream
39
82
  * @memberof MuteState
40
83
  * @returns {void}
41
84
  */
42
- applyClientStateLocally(meeting?: any): void;
85
+ applyClientStateLocally(meeting?: any, reason?: ServerMuteReason): void;
86
+ /** Returns true if client is locally muted - it takes into account not just the client local mute state,
87
+ * but also whether audio/video is enabled at all
88
+ *
89
+ * @returns {boolean}
90
+ */
91
+ private getClientLocalMuteState;
43
92
  /**
44
93
  * Updates the server local and remote mute values so that they match the current client desired state.
45
94
  *
@@ -67,16 +116,23 @@ declare class MuteState {
67
116
  * @returns {Promise}
68
117
  */
69
118
  private sendRemoteMuteRequestToServer;
119
+ /** Applies the current value for unmute allowed to the underlying stream
120
+ *
121
+ * @param {Meeting} meeting
122
+ * @returns {void}
123
+ */
124
+ private applyUnmuteAllowedToStream;
70
125
  /**
71
126
  * This method should be called whenever the server remote mute state is changed
72
127
  *
73
128
  * @public
74
129
  * @memberof MuteState
130
+ * @param {Meeting} meeting
75
131
  * @param {Boolean} [muted] true if user is remotely muted, false otherwise
76
132
  * @param {Boolean} [unmuteAllowed] indicates if user is allowed to unmute self (false when "hard mute" feature is used)
77
133
  * @returns {undefined}
78
134
  */
79
- handleServerRemoteMuteUpdate(muted?: boolean, unmuteAllowed?: boolean): void;
135
+ handleServerRemoteMuteUpdate(meeting: any, muted?: boolean, unmuteAllowed?: boolean): void;
80
136
  /**
81
137
  * This method should be called whenever we receive from the server a requirement to locally unmute
82
138
  *
@@ -85,32 +141,38 @@ declare class MuteState {
85
141
  * @param {Object} [meeting] the meeting object
86
142
  * @returns {undefined}
87
143
  */
88
- handleServerLocalUnmuteRequired(meeting?: object): void;
144
+ handleServerLocalUnmuteRequired(meeting?: any): void;
145
+ /**
146
+ * Returns true if the user is locally or remotely muted.
147
+ * It only checks the mute status, ignoring the fact whether audio/video is enabled.
148
+ *
149
+ * @public
150
+ * @memberof MuteState
151
+ * @returns {Boolean}
152
+ */
153
+ isMuted(): boolean;
89
154
  /**
90
- * Returns true if the user is locally or remotely muted
155
+ * Returns true if the user is remotely muted
91
156
  *
92
157
  * @public
93
158
  * @memberof MuteState
94
159
  * @returns {Boolean}
95
160
  */
96
- isMuted(): any;
161
+ isRemotelyMuted(): boolean;
97
162
  /**
98
- * Returns true if the user is locally muted
163
+ * Returns true if unmute is allowed
99
164
  *
100
165
  * @public
101
166
  * @memberof MuteState
102
167
  * @returns {Boolean}
103
168
  */
104
- isLocallyMuted(): any;
169
+ isUnmuteAllowed(): boolean;
105
170
  /**
106
- * Returns true if the user is muted as a result of the client request (and not remotely muted)
171
+ * Returns true if the user is locally muted or audio/video is disabled
107
172
  *
108
173
  * @public
109
174
  * @memberof MuteState
110
175
  * @returns {Boolean}
111
176
  */
112
- isSelf(): boolean;
113
- get muted(): any;
114
- get self(): boolean;
177
+ isLocallyMuted(): boolean;
115
178
  }
116
- export {};
@@ -1,10 +1,15 @@
1
1
  import { StatelessWebexPlugin } from '@webex/webex-core';
2
+ import { IP_VERSION } from '../constants';
2
3
  import { SendReactionOptions, ToggleReactionsOptions } from './request.type';
4
+ import { AnnotationInfo } from '../annotation/annotation.types';
3
5
  /**
4
6
  * @class MeetingRequest
5
7
  */
6
8
  export default class MeetingRequest extends StatelessWebexPlugin {
7
9
  changeVideoLayoutDebounced: any;
10
+ meetingRef: WeakRef<any>;
11
+ locusDeltaRequest: (options: object) => Promise<any>;
12
+ buildLocusDeltaRequestOptions: (options: object) => Promise<any>;
8
13
  /**
9
14
  * Constructor
10
15
  * @param {Object} attrs
@@ -30,12 +35,16 @@ export default class MeetingRequest extends StatelessWebexPlugin {
30
35
  * @param {boolean} options.moveToResource
31
36
  * @param {Object} options.roapMessage
32
37
  * @param {boolean} options.breakoutsSupported
38
+ * @param {String} options.locale,
39
+ * @param {Array} options.deviceCapabilities
40
+ * @param {boolean} options.liveAnnotationSupported
33
41
  * @returns {Promise}
34
42
  */
35
43
  joinMeeting(options: {
36
44
  sipUri: string;
37
45
  deviceUrl: string;
38
46
  locusUrl: string;
47
+ locusClusterUrl: string;
39
48
  resourceId: string;
40
49
  correlationId: string;
41
50
  ensureConversation: boolean;
@@ -48,7 +57,12 @@ export default class MeetingRequest extends StatelessWebexPlugin {
48
57
  meetingNumber: any;
49
58
  permissionToken: any;
50
59
  preferTranscoding: any;
60
+ reachability: any;
51
61
  breakoutsSupported: boolean;
62
+ locale?: string;
63
+ deviceCapabilities?: Array<string>;
64
+ liveAnnotationSupported: boolean;
65
+ ipVersion?: IP_VERSION;
52
66
  }): Promise<any>;
53
67
  /**
54
68
  * Send a request to refresh the captcha
@@ -83,26 +97,13 @@ export default class MeetingRequest extends StatelessWebexPlugin {
83
97
  */
84
98
  private dialOut;
85
99
  /**
86
- * Syns the missed delta event
100
+ * Sends a requests to get the latest locus DTO, it might be a full Locus or a delta, depending on the url provided
87
101
  * @param {Object} options
88
- * @param {boolean} options.desync flag to get partial or whole locus object
89
- * @param {String} options.syncUrl sync url to get ht elatest locus delta
90
- * @returns {Promise}
91
- */
92
- syncMeeting(options: {
93
- desync: boolean;
94
- syncUrl: string;
95
- }): any;
96
- /**
97
- * Request to get the complete locus object
98
- * @param {Object} options
99
- * @param {boolean} options.desync flag to get partial or whole locus object
100
102
  * @param {String} options.locusUrl sync url to get ht elatest locus delta
101
103
  * @returns {Promise}
102
104
  */
103
- getFullLocus(options: {
104
- desync: boolean;
105
- locusUrl: string;
105
+ getLocusDTO(options: {
106
+ url: string;
106
107
  }): any;
107
108
  /**
108
109
  * Make a network request to make a provisioned phone leave the meeting
@@ -116,13 +117,36 @@ export default class MeetingRequest extends StatelessWebexPlugin {
116
117
  */
117
118
  private disconnectPhoneAudio;
118
119
  /**
119
- * Make a network request to leave a meeting
120
+ * Prepares request options to to leave a meeting
120
121
  * @param {Object} options
121
122
  * @param {Url} options.locusUrl
122
123
  * @param {String} options.selfId
123
124
  * @param {Url} options.deviceUrl
124
125
  * @param {String} options.resourceId,
125
126
  * @param {String} options.correlationId
127
+ * @returns {Object} request options
128
+ */
129
+ prepareLeaveMeetingRequestOptions({ locusUrl, selfId, deviceUrl: url, resourceId, correlationId, }: {
130
+ locusUrl: string;
131
+ selfId: string;
132
+ deviceUrl: string;
133
+ resourceId: string;
134
+ correlationId: string;
135
+ }): {
136
+ method: string;
137
+ uri: string;
138
+ body: {
139
+ device: {
140
+ deviceType: any;
141
+ url: string;
142
+ };
143
+ usingResource: string;
144
+ correlationId: string;
145
+ };
146
+ };
147
+ /**
148
+ * Make a network request to leave a meeting
149
+ * @param {Object} options
126
150
  * @returns {Promise}
127
151
  */
128
152
  leaveMeeting({ locusUrl, selfId, deviceUrl: url, resourceId, correlationId, }: {
@@ -131,7 +155,13 @@ export default class MeetingRequest extends StatelessWebexPlugin {
131
155
  deviceUrl: string;
132
156
  resourceId: string;
133
157
  correlationId: string;
134
- }): any;
158
+ }): Promise<any>;
159
+ /**
160
+ * Builds request options to leave a meeting
161
+ * @param {Object} options
162
+ * @returns {Object} request options
163
+ */
164
+ buildLeaveMeetingRequestOptions(options: any): Promise<any>;
135
165
  /**
136
166
  * Make a network request to acknowledge a meeting
137
167
  * @param {Object} options
@@ -144,8 +174,14 @@ export default class MeetingRequest extends StatelessWebexPlugin {
144
174
  locusUrl: string;
145
175
  deviceUrl: string;
146
176
  correlationId: string;
147
- }): any;
148
- lockMeeting(options: any): any;
177
+ }): Promise<any>;
178
+ /**
179
+ * Makes a network request to lock the meeting
180
+ * @param {Object} options
181
+ * @param {Boolean} options.lock Whether it is locked or not
182
+ * @returns {Promise}
183
+ */
184
+ lockMeeting(options: any): Promise<any>;
149
185
  /**
150
186
  * Make a network request to decline a meeting
151
187
  * @param {Object} options
@@ -158,25 +194,7 @@ export default class MeetingRequest extends StatelessWebexPlugin {
158
194
  locusUrl: string;
159
195
  deviceUrl: string;
160
196
  reason: string;
161
- }): any;
162
- /**
163
- * Toggle remote audio and/or video
164
- * @param {Object} options options for toggling
165
- * @param {String} options.selfId Locus self id??
166
- * @param {String} options.locusUrl Locus url
167
- * @param {String} options.deviceUrl Url of a device
168
- * @param {String} options.resourceId Populated if you are paired to a device
169
- * @param {String} options.localMedias local sdps
170
- * @param {Boolean} options.preferTranscoding false for multistream (Homer), true for transcoded media (Edonus)
171
- * @returns {Promise}
172
- */
173
- remoteAudioVideoToggle(options: {
174
- selfId: string;
175
- locusUrl: string;
176
- deviceUrl: string;
177
- resourceId: string;
178
- localMedias: string;
179
- } | any): any;
197
+ }): Promise<any>;
180
198
  /**
181
199
  * change the content floor grant
182
200
  * @param {Object} options options for floor grant
@@ -185,6 +203,7 @@ export default class MeetingRequest extends StatelessWebexPlugin {
185
203
  * @param {String} options.deviceUrl Url of a device
186
204
  * @param {String} options.resourceId Populated if you are paired to a device
187
205
  * @param {String} options.uri floor grant uri
206
+ * @param {String} options.shareInstanceId id for current share
188
207
  * @returns {Promise}
189
208
  */
190
209
  changeMeetingFloor(options: {
@@ -193,6 +212,8 @@ export default class MeetingRequest extends StatelessWebexPlugin {
193
212
  deviceUrl: string;
194
213
  resourceId: string;
195
214
  uri: string;
215
+ annotationInfo: AnnotationInfo;
216
+ shareInstanceId: string;
196
217
  } | any): any;
197
218
  /**
198
219
  * Sends a request to the DTMF endpoint to send tones
@@ -206,7 +227,7 @@ export default class MeetingRequest extends StatelessWebexPlugin {
206
227
  locusUrl: string;
207
228
  deviceUrl: string;
208
229
  tones: string;
209
- }): any;
230
+ }): Promise<any>;
210
231
  /**
211
232
  * Sends a request to the controls endpoint to set the video layout
212
233
  * @param {Object} options
@@ -233,7 +254,7 @@ export default class MeetingRequest extends StatelessWebexPlugin {
233
254
  width: number;
234
255
  height: number;
235
256
  };
236
- }): any;
257
+ }): Promise<any>;
237
258
  /**
238
259
  * Make a network request to end meeting for all
239
260
  * @param {Object} options
@@ -242,7 +263,7 @@ export default class MeetingRequest extends StatelessWebexPlugin {
242
263
  */
243
264
  endMeetingForAll({ locusUrl }: {
244
265
  locusUrl: string;
245
- }): any;
266
+ }): Promise<any>;
246
267
  /**
247
268
  * Send a locus keepAlive (used in lobby)
248
269
  * @param {Object} options
@@ -267,5 +288,6 @@ export default class MeetingRequest extends StatelessWebexPlugin {
267
288
  * @param {locusUrl} options.locusUrl
268
289
  * @returns {Promise}
269
290
  */
270
- toggleReactions({ enable, locusUrl, requestingParticipantId }: ToggleReactionsOptions): any;
291
+ toggleReactions({ enable, locusUrl, requestingParticipantId }: ToggleReactionsOptions): Promise<any>;
292
+ getLocusStatusByUrl(locusUrl: string): any;
271
293
  }
@@ -1,2 +1,118 @@
1
- declare const MeetingUtil: any;
1
+ import { SELF_POLICY, IP_VERSION } from '../constants';
2
+ declare const MeetingUtil: {
3
+ parseLocusJoin: (response: any) => any;
4
+ remoteUpdateAudioVideo: (meeting: any, audioMuted?: boolean, videoMuted?: boolean) => any;
5
+ hasOwner: (info: any) => any;
6
+ isOwnerSelf: (owner: any, selfId: any) => boolean;
7
+ isPinOrGuest: (err: any) => boolean;
8
+ /**
9
+ * Returns the current state of knowledge about whether we are on an ipv4-only or ipv6-only or mixed (ipv4 and ipv6) network.
10
+ * The return value matches the possible values of "ipver" parameter used by the backend APIs.
11
+ *
12
+ * @param {Object} webex webex instance
13
+ * @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
14
+ */
15
+ getIpVersion(webex: any): IP_VERSION | undefined;
16
+ joinMeeting: (meeting: any, options: any) => any;
17
+ cleanUp: (meeting: any) => any;
18
+ disconnectPhoneAudio: (meeting: any, phoneUrl: any) => any;
19
+ /**
20
+ * Returns options for leaving a meeting.
21
+ * @param {any} meeting
22
+ * @param {any} options
23
+ * @returns {any} leave options
24
+ */
25
+ prepareLeaveMeetingOptions: (meeting: any, options?: any) => any;
26
+ leaveMeeting: (meeting: any, options?: any) => any;
27
+ declineMeeting: (meeting: any, reason: any) => any;
28
+ isUserInLeftState: (locusInfo: any) => boolean;
29
+ isUserInIdleState: (locusInfo: any) => boolean;
30
+ isUserInJoinedState: (locusInfo: any) => boolean;
31
+ isMediaEstablished: (currentMediaStatus: any) => any;
32
+ joinMeetingOptions: (meeting: any, options?: any) => any;
33
+ /**
34
+ * Returns request options for leaving a meeting.
35
+ * @param {any} meeting
36
+ * @param {any} options
37
+ * @returns {any} request options
38
+ */
39
+ buildLeaveFetchRequestOptions: (meeting: any, options?: any) => any;
40
+ getTrack: (stream: any) => {
41
+ audioTrack: any;
42
+ videoTrack: any;
43
+ };
44
+ getModeratorFromLocusInfo: (locusInfo: any) => any;
45
+ getPolicyFromLocusInfo: (locusInfo: any) => any;
46
+ getUserDisplayHintsFromLocusInfo: (locusInfo: any) => any;
47
+ canInviteNewParticipants: (displayHints: any) => any;
48
+ canAdmitParticipant: (displayHints: any) => any;
49
+ canUserLock: (displayHints: any) => any;
50
+ canUserUnlock: (displayHints: any) => any;
51
+ canUserRaiseHand: (displayHints: any) => any;
52
+ canUserLowerAllHands: (displayHints: any) => any;
53
+ canUserLowerSomeoneElsesHand: (displayHints: any) => any;
54
+ bothLeaveAndEndMeetingAvailable: (displayHints: any) => any;
55
+ canManageBreakout: (displayHints: any) => any;
56
+ canBroadcastMessageToBreakout: (displayHints: any, policies?: {}) => boolean;
57
+ isSuppressBreakoutSupport: (displayHints: any) => any;
58
+ canAdmitLobbyToBreakout: (displayHints: any) => boolean;
59
+ isBreakoutPreassignmentsEnabled: (displayHints: any) => boolean;
60
+ canUserAskForHelp: (displayHints: any) => boolean;
61
+ lockMeeting: (actions: any, request: any, locusUrl: any) => any;
62
+ unlockMeeting: (actions: any, request: any, locusUrl: any) => any;
63
+ handleAudioLogging: (audioStream?: LocalMicrophoneStream) => void;
64
+ handleVideoLogging: (videoStream?: LocalCameraStream) => void;
65
+ handleDeviceLogging: (devices?: any[]) => void;
66
+ endMeetingForAll: (meeting: any) => any;
67
+ canEnableClosedCaption: (displayHints: any) => any;
68
+ isSaveTranscriptsEnabled: (displayHints: any) => any;
69
+ canStartTranscribing: (displayHints: any) => any;
70
+ canStopTranscribing: (displayHints: any) => any;
71
+ isClosedCaptionActive: (displayHints: any) => any;
72
+ isWebexAssistantActive: (displayHints: any) => any;
73
+ canViewCaptionPanel: (displayHints: any) => any;
74
+ isRealTimeTranslationEnabled: (displayHints: any) => any;
75
+ canSelectSpokenLanguages: (displayHints: any) => any;
76
+ waitingForOthersToJoin: (displayHints: any) => any;
77
+ canSendReactions: (originalValue: any, displayHints: any) => any;
78
+ canUserRenameSelfAndObserved: (displayHints: any) => any;
79
+ canUserRenameOthers: (displayHints: any) => any;
80
+ canShareWhiteBoard: (displayHints: any) => any;
81
+ /**
82
+ * Adds the current locus sequence information to a request body
83
+ * @param {Object} meeting The meeting object
84
+ * @param {Object} requestBody The body of a request to locus
85
+ * @returns {void}
86
+ */
87
+ addSequence: (meeting: any, requestBody: any) => void;
88
+ /**
89
+ * Updates the locus info for the meeting with the delta locus
90
+ * returned from requests that include the sequence information
91
+ * Returns the original response object
92
+ * @param {Object} meeting The meeting object
93
+ * @param {Object} response The response of the http request
94
+ * @returns {Object}
95
+ */
96
+ updateLocusWithDelta: (meeting: any, response: any) => any;
97
+ generateBuildLocusDeltaRequestOptions: (originalMeeting: any) => (originalOptions: any) => any;
98
+ generateLocusDeltaRequest: (originalMeeting: any) => (originalOptions: any) => any;
99
+ selfSupportsFeature: (feature: SELF_POLICY, userPolicies: Record<SELF_POLICY, boolean>) => boolean;
100
+ parseInterpretationInfo: (meeting: any, meetingInfo: any) => void;
101
+ /**
102
+ * Returns a CA-recognized error payload for the specified raw error message/reason.
103
+ *
104
+ * New errors can be added to this function for handling in the future
105
+ *
106
+ * @param {String} reason the raw error message
107
+ * @returns {Array<object>} an array of payload objects
108
+ */
109
+ getChangeMeetingFloorErrorPayload: (reason: string) => {
110
+ fatal: boolean;
111
+ category: string;
112
+ errorCode: number;
113
+ errorDescription: string;
114
+ name: string;
115
+ shownToUser: boolean;
116
+ }[];
117
+ };
2
118
  export default MeetingUtil;
@@ -0,0 +1,16 @@
1
+ export declare const getSpeaker: (members: any, csis?: any[]) => unknown;
2
+ export declare const getSpeakerFromProxyOrStore: ({ csisKey, meetingMembers, transcriptData }: {
3
+ csisKey: any;
4
+ meetingMembers: any;
5
+ transcriptData: any;
6
+ }) => {
7
+ speaker: {
8
+ speakerId: string;
9
+ name: string;
10
+ };
11
+ needsCaching: boolean;
12
+ };
13
+ export declare const processNewCaptions: ({ data, meeting }: {
14
+ data: any;
15
+ meeting: any;
16
+ }) => void;
@@ -49,9 +49,21 @@ export default class MeetingInfo {
49
49
  * Fetches meeting info from the server
50
50
  * @param {String} destination one of many different types of destinations to look up info for
51
51
  * @param {String} [type] to match up with the destination value
52
+ * @param {String} [password] meeting password
53
+ * @param {Object} [captchaInfo] captcha code and id
54
+ * @param {String} [installedOrgID]
55
+ * @param {String} [locusId]
56
+ * @param {Object} [extraParams]
57
+ * @param {Boolean} [options] meeting Id and whether Call Analyzer events should be sent
52
58
  * @returns {Promise} returns a meeting info object
53
59
  * @public
54
60
  * @memberof MeetingInfo
55
61
  */
56
- fetchMeetingInfo(destination: string, type?: string): any;
62
+ fetchMeetingInfo(destination: string, type?: string, password?: string, captchaInfo?: {
63
+ code: string;
64
+ id: string;
65
+ }, installedOrgID?: any, locusId?: any, extraParams?: object, options?: {
66
+ meetingId?: string;
67
+ sendCAevents?: boolean;
68
+ }): any;
57
69
  }