@webex/plugin-meetings 3.0.0-beta.4 → 3.0.0-beta.400

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 (629) hide show
  1. package/README.md +58 -8
  2. package/UPGRADING.md +9 -9
  3. package/browsers.js +19 -24
  4. package/dist/annotation/annotation.types.js +7 -0
  5. package/dist/annotation/annotation.types.js.map +1 -0
  6. package/dist/annotation/constants.js +49 -0
  7. package/dist/annotation/constants.js.map +1 -0
  8. package/dist/annotation/index.js +342 -0
  9. package/dist/annotation/index.js.map +1 -0
  10. package/dist/breakouts/breakout.js +216 -0
  11. package/dist/breakouts/breakout.js.map +1 -0
  12. package/dist/breakouts/collection.js +23 -0
  13. package/dist/breakouts/collection.js.map +1 -0
  14. package/dist/breakouts/edit-lock-error.js +52 -0
  15. package/dist/breakouts/edit-lock-error.js.map +1 -0
  16. package/dist/breakouts/events.js +45 -0
  17. package/dist/breakouts/events.js.map +1 -0
  18. package/dist/breakouts/index.js +1048 -0
  19. package/dist/breakouts/index.js.map +1 -0
  20. package/dist/breakouts/request.js +78 -0
  21. package/dist/breakouts/request.js.map +1 -0
  22. package/dist/breakouts/utils.js +67 -0
  23. package/dist/breakouts/utils.js.map +1 -0
  24. package/dist/common/browser-detection.js +1 -20
  25. package/dist/common/browser-detection.js.map +1 -1
  26. package/dist/common/collection.js +5 -20
  27. package/dist/common/collection.js.map +1 -1
  28. package/dist/common/config.js +0 -7
  29. package/dist/common/config.js.map +1 -1
  30. package/dist/common/errors/captcha-error.js +10 -24
  31. package/dist/common/errors/captcha-error.js.map +1 -1
  32. package/dist/common/errors/intent-to-join.js +11 -24
  33. package/dist/common/errors/intent-to-join.js.map +1 -1
  34. package/dist/common/errors/join-meeting.js +12 -25
  35. package/dist/common/errors/join-meeting.js.map +1 -1
  36. package/dist/common/errors/media.js +10 -24
  37. package/dist/common/errors/media.js.map +1 -1
  38. package/dist/common/errors/no-meeting-info.js +51 -0
  39. package/dist/common/errors/no-meeting-info.js.map +1 -0
  40. package/dist/common/errors/parameter.js +5 -33
  41. package/dist/common/errors/parameter.js.map +1 -1
  42. package/dist/common/errors/password-error.js +10 -24
  43. package/dist/common/errors/password-error.js.map +1 -1
  44. package/dist/common/errors/permission.js +9 -23
  45. package/dist/common/errors/permission.js.map +1 -1
  46. package/dist/common/errors/reclaim-host-role-errors.js +158 -0
  47. package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
  48. package/dist/common/errors/reconnection-in-progress.js +0 -17
  49. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  50. package/dist/common/errors/reconnection.js +10 -24
  51. package/dist/common/errors/reconnection.js.map +1 -1
  52. package/dist/common/errors/stats.js +10 -24
  53. package/dist/common/errors/stats.js.map +1 -1
  54. package/dist/common/errors/webex-errors.js +54 -48
  55. package/dist/common/errors/webex-errors.js.map +1 -1
  56. package/dist/common/errors/webex-meetings-error.js +5 -25
  57. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  58. package/dist/common/events/events-scope.js +0 -22
  59. package/dist/common/events/events-scope.js.map +1 -1
  60. package/dist/common/events/events.js +0 -23
  61. package/dist/common/events/events.js.map +1 -1
  62. package/dist/common/events/trigger-proxy.js +0 -12
  63. package/dist/common/events/trigger-proxy.js.map +1 -1
  64. package/dist/common/events/util.js +0 -15
  65. package/dist/common/events/util.js.map +1 -1
  66. package/dist/common/logs/logger-config.js +0 -4
  67. package/dist/common/logs/logger-config.js.map +1 -1
  68. package/dist/common/logs/logger-proxy.js +1 -8
  69. package/dist/common/logs/logger-proxy.js.map +1 -1
  70. package/dist/common/logs/request.js +41 -60
  71. package/dist/common/logs/request.js.map +1 -1
  72. package/dist/common/queue.js +28 -23
  73. package/dist/common/queue.js.map +1 -1
  74. package/dist/config.js +11 -15
  75. package/dist/config.js.map +1 -1
  76. package/dist/constants.js +347 -74
  77. package/dist/constants.js.map +1 -1
  78. package/dist/controls-options-manager/constants.js +14 -0
  79. package/dist/controls-options-manager/constants.js.map +1 -0
  80. package/dist/controls-options-manager/enums.js +27 -0
  81. package/dist/controls-options-manager/enums.js.map +1 -0
  82. package/dist/controls-options-manager/index.js +297 -0
  83. package/dist/controls-options-manager/index.js.map +1 -0
  84. package/dist/controls-options-manager/types.js +7 -0
  85. package/dist/controls-options-manager/types.js.map +1 -0
  86. package/dist/controls-options-manager/util.js +319 -0
  87. package/dist/controls-options-manager/util.js.map +1 -0
  88. package/dist/index.js +125 -18
  89. package/dist/index.js.map +1 -1
  90. package/dist/interceptors/index.js +15 -0
  91. package/dist/interceptors/index.js.map +1 -0
  92. package/dist/interceptors/locusRetry.js +93 -0
  93. package/dist/interceptors/locusRetry.js.map +1 -0
  94. package/dist/interpretation/collection.js +23 -0
  95. package/dist/interpretation/collection.js.map +1 -0
  96. package/dist/interpretation/index.js +380 -0
  97. package/dist/interpretation/index.js.map +1 -0
  98. package/dist/interpretation/siLanguage.js +25 -0
  99. package/dist/interpretation/siLanguage.js.map +1 -0
  100. package/dist/locus-info/controlsUtils.js +101 -29
  101. package/dist/locus-info/controlsUtils.js.map +1 -1
  102. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  103. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  104. package/dist/locus-info/fullState.js +0 -15
  105. package/dist/locus-info/fullState.js.map +1 -1
  106. package/dist/locus-info/hostUtils.js +4 -12
  107. package/dist/locus-info/hostUtils.js.map +1 -1
  108. package/dist/locus-info/index.js +564 -246
  109. package/dist/locus-info/index.js.map +1 -1
  110. package/dist/locus-info/infoUtils.js +10 -38
  111. package/dist/locus-info/infoUtils.js.map +1 -1
  112. package/dist/locus-info/mediaSharesUtils.js +82 -38
  113. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  114. package/dist/locus-info/parser.js +314 -163
  115. package/dist/locus-info/parser.js.map +1 -1
  116. package/dist/locus-info/selfUtils.js +110 -92
  117. package/dist/locus-info/selfUtils.js.map +1 -1
  118. package/dist/media/index.js +107 -231
  119. package/dist/media/index.js.map +1 -1
  120. package/dist/media/properties.js +137 -222
  121. package/dist/media/properties.js.map +1 -1
  122. package/dist/media/util.js +2 -9
  123. package/dist/media/util.js.map +1 -1
  124. package/dist/mediaQualityMetrics/config.js +316 -501
  125. package/dist/mediaQualityMetrics/config.js.map +1 -1
  126. package/dist/meeting/in-meeting-actions.js +97 -14
  127. package/dist/meeting/in-meeting-actions.js.map +1 -1
  128. package/dist/meeting/index.js +5311 -3871
  129. package/dist/meeting/index.js.map +1 -1
  130. package/dist/meeting/locusMediaRequest.js +292 -0
  131. package/dist/meeting/locusMediaRequest.js.map +1 -0
  132. package/dist/meeting/muteState.js +260 -183
  133. package/dist/meeting/muteState.js.map +1 -1
  134. package/dist/meeting/request.js +421 -347
  135. package/dist/meeting/request.js.map +1 -1
  136. package/dist/meeting/request.type.js +7 -0
  137. package/dist/meeting/request.type.js.map +1 -0
  138. package/dist/meeting/state.js +21 -31
  139. package/dist/meeting/state.js.map +1 -1
  140. package/dist/meeting/util.js +672 -585
  141. package/dist/meeting/util.js.map +1 -1
  142. package/dist/meeting/voicea-meeting.js +172 -0
  143. package/dist/meeting/voicea-meeting.js.map +1 -0
  144. package/dist/meeting-info/collection.js +6 -25
  145. package/dist/meeting-info/collection.js.map +1 -1
  146. package/dist/meeting-info/index.js +87 -39
  147. package/dist/meeting-info/index.js.map +1 -1
  148. package/dist/meeting-info/meeting-info-v2.js +352 -283
  149. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  150. package/dist/meeting-info/request.js +3 -15
  151. package/dist/meeting-info/request.js.map +1 -1
  152. package/dist/meeting-info/util.js +99 -183
  153. package/dist/meeting-info/util.js.map +1 -1
  154. package/dist/meeting-info/utilv2.js +147 -234
  155. package/dist/meeting-info/utilv2.js.map +1 -1
  156. package/dist/meetings/collection.js +43 -19
  157. package/dist/meetings/collection.js.map +1 -1
  158. package/dist/meetings/index.js +895 -600
  159. package/dist/meetings/index.js.map +1 -1
  160. package/dist/meetings/meetings.types.js +7 -0
  161. package/dist/meetings/meetings.types.js.map +1 -0
  162. package/dist/meetings/request.js +26 -41
  163. package/dist/meetings/request.js.map +1 -1
  164. package/dist/meetings/util.js +184 -157
  165. package/dist/meetings/util.js.map +1 -1
  166. package/dist/member/index.js +134 -85
  167. package/dist/member/index.js.map +1 -1
  168. package/dist/member/types.js +25 -0
  169. package/dist/member/types.js.map +1 -0
  170. package/dist/member/util.js +158 -88
  171. package/dist/member/util.js.map +1 -1
  172. package/dist/members/collection.js +13 -12
  173. package/dist/members/collection.js.map +1 -1
  174. package/dist/members/index.js +194 -204
  175. package/dist/members/index.js.map +1 -1
  176. package/dist/members/request.js +113 -68
  177. package/dist/members/request.js.map +1 -1
  178. package/dist/members/types.js +15 -0
  179. package/dist/members/types.js.map +1 -0
  180. package/dist/members/util.js +324 -259
  181. package/dist/members/util.js.map +1 -1
  182. package/dist/metrics/constants.js +19 -7
  183. package/dist/metrics/constants.js.map +1 -1
  184. package/dist/metrics/index.js +11 -558
  185. package/dist/metrics/index.js.map +1 -1
  186. package/dist/multistream/mediaRequestManager.js +263 -50
  187. package/dist/multistream/mediaRequestManager.js.map +1 -1
  188. package/dist/multistream/receiveSlot.js +58 -65
  189. package/dist/multistream/receiveSlot.js.map +1 -1
  190. package/dist/multistream/receiveSlotManager.js +76 -95
  191. package/dist/multistream/receiveSlotManager.js.map +1 -1
  192. package/dist/multistream/remoteMedia.js +62 -76
  193. package/dist/multistream/remoteMedia.js.map +1 -1
  194. package/dist/multistream/remoteMediaGroup.js +82 -45
  195. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  196. package/dist/multistream/remoteMediaManager.js +657 -448
  197. package/dist/multistream/remoteMediaManager.js.map +1 -1
  198. package/dist/multistream/sendSlotManager.js +255 -0
  199. package/dist/multistream/sendSlotManager.js.map +1 -0
  200. package/dist/networkQualityMonitor/index.js +40 -59
  201. package/dist/networkQualityMonitor/index.js.map +1 -1
  202. package/dist/personal-meeting-room/index.js +21 -45
  203. package/dist/personal-meeting-room/index.js.map +1 -1
  204. package/dist/personal-meeting-room/request.js +1 -31
  205. package/dist/personal-meeting-room/request.js.map +1 -1
  206. package/dist/personal-meeting-room/util.js +0 -13
  207. package/dist/personal-meeting-room/util.js.map +1 -1
  208. package/dist/reachability/clusterReachability.js +356 -0
  209. package/dist/reachability/clusterReachability.js.map +1 -0
  210. package/dist/reachability/index.js +297 -460
  211. package/dist/reachability/index.js.map +1 -1
  212. package/dist/reachability/request.js +20 -26
  213. package/dist/reachability/request.js.map +1 -1
  214. package/dist/reachability/util.js +29 -0
  215. package/dist/reachability/util.js.map +1 -0
  216. package/dist/reactions/constants.js +13 -0
  217. package/dist/reactions/constants.js.map +1 -0
  218. package/dist/reactions/reactions.js +109 -0
  219. package/dist/reactions/reactions.js.map +1 -0
  220. package/dist/reactions/reactions.type.js +36 -0
  221. package/dist/reactions/reactions.type.js.map +1 -0
  222. package/dist/reconnection-manager/index.js +413 -483
  223. package/dist/reconnection-manager/index.js.map +1 -1
  224. package/dist/recording-controller/enums.js +17 -0
  225. package/dist/recording-controller/enums.js.map +1 -0
  226. package/dist/recording-controller/index.js +362 -0
  227. package/dist/recording-controller/index.js.map +1 -0
  228. package/dist/recording-controller/util.js +64 -0
  229. package/dist/recording-controller/util.js.map +1 -0
  230. package/dist/roap/index.js +102 -86
  231. package/dist/roap/index.js.map +1 -1
  232. package/dist/roap/request.js +131 -135
  233. package/dist/roap/request.js.map +1 -1
  234. package/dist/roap/turnDiscovery.js +437 -116
  235. package/dist/roap/turnDiscovery.js.map +1 -1
  236. package/dist/rtcMetrics/constants.js +12 -0
  237. package/dist/rtcMetrics/constants.js.map +1 -0
  238. package/dist/rtcMetrics/index.js +179 -0
  239. package/dist/rtcMetrics/index.js.map +1 -0
  240. package/dist/statsAnalyzer/global.js +1 -95
  241. package/dist/statsAnalyzer/global.js.map +1 -1
  242. package/dist/statsAnalyzer/index.js +557 -583
  243. package/dist/statsAnalyzer/index.js.map +1 -1
  244. package/dist/statsAnalyzer/mqaUtil.js +326 -130
  245. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  246. package/dist/transcription/index.js +22 -47
  247. package/dist/transcription/index.js.map +1 -1
  248. package/dist/types/annotation/annotation.types.d.ts +42 -0
  249. package/dist/types/annotation/constants.d.ts +31 -0
  250. package/dist/types/annotation/index.d.ts +117 -0
  251. package/dist/types/breakouts/breakout.d.ts +8 -0
  252. package/dist/types/breakouts/collection.d.ts +5 -0
  253. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  254. package/dist/types/breakouts/events.d.ts +8 -0
  255. package/dist/types/breakouts/index.d.ts +5 -0
  256. package/dist/types/breakouts/request.d.ts +22 -0
  257. package/dist/types/breakouts/utils.d.ts +15 -0
  258. package/dist/types/common/browser-detection.d.ts +9 -0
  259. package/dist/types/common/collection.d.ts +48 -0
  260. package/dist/types/common/config.d.ts +2 -0
  261. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  262. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  263. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  264. package/dist/types/common/errors/media.d.ts +15 -0
  265. package/dist/types/common/errors/no-meeting-info.d.ts +14 -0
  266. package/dist/types/common/errors/parameter.d.ts +15 -0
  267. package/dist/types/common/errors/password-error.d.ts +15 -0
  268. package/dist/types/common/errors/permission.d.ts +14 -0
  269. package/dist/types/common/errors/reclaim-host-role-errors.d.ts +60 -0
  270. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  271. package/dist/types/common/errors/reconnection.d.ts +15 -0
  272. package/dist/types/common/errors/stats.d.ts +15 -0
  273. package/dist/types/common/errors/webex-errors.d.ts +93 -0
  274. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  275. package/dist/types/common/events/events-scope.d.ts +17 -0
  276. package/dist/types/common/events/events.d.ts +12 -0
  277. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  278. package/dist/types/common/events/util.d.ts +2 -0
  279. package/dist/types/common/logs/logger-config.d.ts +2 -0
  280. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  281. package/dist/types/common/logs/request.d.ts +36 -0
  282. package/dist/types/common/queue.d.ts +34 -0
  283. package/dist/types/config.d.ts +72 -0
  284. package/dist/types/constants.d.ts +1088 -0
  285. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  286. package/dist/types/controls-options-manager/enums.d.ts +15 -0
  287. package/dist/types/controls-options-manager/index.d.ts +136 -0
  288. package/dist/types/controls-options-manager/types.d.ts +43 -0
  289. package/dist/types/controls-options-manager/util.d.ts +1 -0
  290. package/dist/types/index.d.ts +7 -0
  291. package/dist/types/interceptors/index.d.ts +2 -0
  292. package/dist/types/interceptors/locusRetry.d.ts +27 -0
  293. package/dist/types/interpretation/collection.d.ts +5 -0
  294. package/dist/types/interpretation/index.d.ts +5 -0
  295. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  296. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  297. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  298. package/dist/types/locus-info/fullState.d.ts +2 -0
  299. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  300. package/dist/types/locus-info/index.d.ts +322 -0
  301. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  302. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  303. package/dist/types/locus-info/parser.d.ts +272 -0
  304. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  305. package/dist/types/media/index.d.ts +34 -0
  306. package/dist/types/media/properties.d.ts +93 -0
  307. package/dist/types/media/util.d.ts +2 -0
  308. package/dist/types/mediaQualityMetrics/config.d.ts +241 -0
  309. package/dist/types/meeting/in-meeting-actions.d.ts +167 -0
  310. package/dist/types/meeting/index.d.ts +1824 -0
  311. package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
  312. package/dist/types/meeting/muteState.d.ts +178 -0
  313. package/dist/types/meeting/request.d.ts +293 -0
  314. package/dist/types/meeting/request.type.d.ts +11 -0
  315. package/dist/types/meeting/state.d.ts +9 -0
  316. package/dist/types/meeting/util.d.ts +118 -0
  317. package/dist/types/meeting/voicea-meeting.d.ts +16 -0
  318. package/dist/types/meeting-info/collection.d.ts +20 -0
  319. package/dist/types/meeting-info/index.d.ts +69 -0
  320. package/dist/types/meeting-info/meeting-info-v2.d.ts +123 -0
  321. package/dist/types/meeting-info/request.d.ts +22 -0
  322. package/dist/types/meeting-info/util.d.ts +2 -0
  323. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  324. package/dist/types/meetings/collection.d.ts +40 -0
  325. package/dist/types/meetings/index.d.ts +389 -0
  326. package/dist/types/meetings/meetings.types.d.ts +4 -0
  327. package/dist/types/meetings/request.d.ts +27 -0
  328. package/dist/types/meetings/util.d.ts +18 -0
  329. package/dist/types/member/index.d.ts +160 -0
  330. package/dist/types/member/types.d.ts +32 -0
  331. package/dist/types/member/util.d.ts +2 -0
  332. package/dist/types/members/collection.d.ts +29 -0
  333. package/dist/types/members/index.d.ts +353 -0
  334. package/dist/types/members/request.d.ts +114 -0
  335. package/dist/types/members/types.d.ts +25 -0
  336. package/dist/types/members/util.d.ts +215 -0
  337. package/dist/types/metrics/constants.d.ts +70 -0
  338. package/dist/types/metrics/index.d.ts +45 -0
  339. package/dist/types/multistream/mediaRequestManager.d.ts +120 -0
  340. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  341. package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
  342. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  343. package/dist/types/multistream/remoteMediaGroup.d.ts +49 -0
  344. package/dist/types/multistream/remoteMediaManager.d.ts +301 -0
  345. package/dist/types/multistream/sendSlotManager.d.ts +70 -0
  346. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  347. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  348. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  349. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  350. package/dist/types/reachability/clusterReachability.d.ts +109 -0
  351. package/dist/types/reachability/index.d.ts +105 -0
  352. package/dist/types/reachability/request.d.ts +39 -0
  353. package/dist/types/reachability/util.d.ts +8 -0
  354. package/dist/types/reactions/constants.d.ts +3 -0
  355. package/dist/types/reactions/reactions.d.ts +4 -0
  356. package/dist/types/reactions/reactions.type.d.ts +52 -0
  357. package/dist/types/reconnection-manager/index.d.ts +136 -0
  358. package/dist/types/recording-controller/enums.d.ts +7 -0
  359. package/dist/types/recording-controller/index.d.ts +207 -0
  360. package/dist/types/recording-controller/util.d.ts +14 -0
  361. package/dist/types/roap/index.d.ts +86 -0
  362. package/dist/types/roap/request.d.ts +39 -0
  363. package/dist/types/roap/turnDiscovery.d.ts +155 -0
  364. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  365. package/dist/types/rtcMetrics/index.d.ts +61 -0
  366. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  367. package/dist/types/statsAnalyzer/index.d.ts +217 -0
  368. package/dist/types/statsAnalyzer/mqaUtil.d.ts +48 -0
  369. package/dist/types/transcription/index.d.ts +64 -0
  370. package/dist/types/webinar/collection.d.ts +16 -0
  371. package/dist/types/webinar/index.d.ts +5 -0
  372. package/dist/webinar/collection.js +44 -0
  373. package/dist/webinar/collection.js.map +1 -0
  374. package/dist/webinar/index.js +69 -0
  375. package/dist/webinar/index.js.map +1 -0
  376. package/internal-README.md +7 -6
  377. package/package.json +30 -21
  378. package/src/annotation/annotation.types.ts +50 -0
  379. package/src/annotation/constants.ts +36 -0
  380. package/src/annotation/index.ts +328 -0
  381. package/src/breakouts/README.md +220 -0
  382. package/src/breakouts/breakout.ts +188 -0
  383. package/src/breakouts/collection.ts +19 -0
  384. package/src/breakouts/edit-lock-error.ts +25 -0
  385. package/src/breakouts/events.ts +56 -0
  386. package/src/breakouts/index.ts +925 -0
  387. package/src/breakouts/request.ts +55 -0
  388. package/src/breakouts/utils.ts +57 -0
  389. package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
  390. package/src/common/collection.ts +9 -7
  391. package/src/common/{config.js → config.ts} +1 -1
  392. package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
  393. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
  394. package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
  395. package/src/common/errors/{media.js → media.ts} +11 -7
  396. package/src/common/errors/no-meeting-info.ts +24 -0
  397. package/src/common/errors/parameter.ts +11 -7
  398. package/src/common/errors/{password-error.js → password-error.ts} +11 -7
  399. package/src/common/errors/{permission.js → permission.ts} +10 -6
  400. package/src/common/errors/reclaim-host-role-errors.ts +134 -0
  401. package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
  402. package/src/common/errors/{stats.js → stats.ts} +11 -7
  403. package/src/common/errors/{webex-errors.js → webex-errors.ts} +51 -8
  404. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
  405. package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
  406. package/src/common/events/{events.js → events.ts} +5 -1
  407. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
  408. package/src/common/events/{util.js → util.ts} +2 -3
  409. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  410. package/src/common/logs/logger-proxy.ts +44 -0
  411. package/src/common/logs/{request.js → request.ts} +26 -9
  412. package/src/common/queue.ts +22 -9
  413. package/src/{config.js → config.ts} +19 -21
  414. package/src/constants.ts +296 -27
  415. package/src/controls-options-manager/constants.ts +5 -0
  416. package/src/controls-options-manager/enums.ts +18 -0
  417. package/src/controls-options-manager/index.ts +278 -0
  418. package/src/controls-options-manager/types.ts +59 -0
  419. package/src/controls-options-manager/util.ts +300 -0
  420. package/src/index.ts +45 -0
  421. package/src/interceptors/index.ts +3 -0
  422. package/src/interceptors/locusRetry.ts +67 -0
  423. package/src/interpretation/README.md +60 -0
  424. package/src/interpretation/collection.ts +19 -0
  425. package/src/interpretation/index.ts +349 -0
  426. package/src/interpretation/siLanguage.ts +18 -0
  427. package/src/locus-info/controlsUtils.ts +222 -0
  428. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  429. package/src/locus-info/{fullState.js → fullState.ts} +16 -12
  430. package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
  431. package/src/locus-info/{index.js → index.ts} +561 -119
  432. package/src/locus-info/{infoUtils.js → infoUtils.ts} +29 -10
  433. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +97 -17
  434. package/src/locus-info/{parser.js → parser.ts} +303 -104
  435. package/src/locus-info/{selfUtils.js → selfUtils.ts} +199 -68
  436. package/src/media/index.ts +460 -0
  437. package/src/media/properties.ts +283 -0
  438. package/src/media/{util.js → util.ts} +2 -2
  439. package/src/mediaQualityMetrics/config.ts +249 -0
  440. package/src/meeting/in-meeting-actions.ts +199 -3
  441. package/src/meeting/index.ts +8494 -0
  442. package/src/meeting/locusMediaRequest.ts +313 -0
  443. package/src/meeting/muteState.ts +465 -0
  444. package/src/meeting/request.ts +912 -0
  445. package/src/meeting/request.type.ts +13 -0
  446. package/src/meeting/{state.js → state.ts} +50 -35
  447. package/src/meeting/util.ts +799 -0
  448. package/src/meeting/voicea-meeting.ts +122 -0
  449. package/src/meeting-info/{collection.js → collection.ts} +6 -2
  450. package/src/meeting-info/index.ts +210 -0
  451. package/src/meeting-info/meeting-info-v2.ts +423 -0
  452. package/src/meeting-info/{request.js → request.ts} +14 -4
  453. package/src/meeting-info/{util.js → util.ts} +70 -58
  454. package/src/meeting-info/{utilv2.js → utilv2.ts} +99 -82
  455. package/src/meetings/collection.ts +76 -0
  456. package/src/meetings/index.ts +1539 -0
  457. package/src/meetings/meetings.types.ts +12 -0
  458. package/src/meetings/{request.js → request.ts} +34 -25
  459. package/src/meetings/{util.js → util.ts} +133 -38
  460. package/src/member/{index.js → index.ts} +159 -56
  461. package/src/member/types.ts +38 -0
  462. package/src/member/util.ts +397 -0
  463. package/src/members/{collection.js → collection.ts} +10 -2
  464. package/src/members/{index.js → index.ts} +351 -146
  465. package/src/members/request.ts +255 -0
  466. package/src/members/types.ts +29 -0
  467. package/src/members/util.ts +353 -0
  468. package/src/metrics/{constants.js → constants.ts} +17 -6
  469. package/src/metrics/index.ts +73 -0
  470. package/src/multistream/mediaRequestManager.ts +341 -64
  471. package/src/multistream/receiveSlot.ts +69 -26
  472. package/src/multistream/receiveSlotManager.ts +66 -42
  473. package/src/multistream/remoteMedia.ts +40 -5
  474. package/src/multistream/remoteMediaGroup.ts +82 -3
  475. package/src/multistream/remoteMediaManager.ts +401 -81
  476. package/src/multistream/sendSlotManager.ts +199 -0
  477. package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
  478. package/src/personal-meeting-room/{index.js → index.ts} +28 -19
  479. package/src/personal-meeting-room/{request.js → request.ts} +13 -4
  480. package/src/personal-meeting-room/{util.js → util.ts} +4 -4
  481. package/src/reachability/clusterReachability.ts +320 -0
  482. package/src/reachability/index.ts +371 -0
  483. package/src/reachability/request.ts +50 -35
  484. package/src/reachability/util.ts +24 -0
  485. package/src/reactions/constants.ts +4 -0
  486. package/src/reactions/reactions.ts +104 -0
  487. package/src/reactions/reactions.type.ts +62 -0
  488. package/src/reconnection-manager/index.ts +643 -0
  489. package/src/recording-controller/enums.ts +8 -0
  490. package/src/recording-controller/index.ts +332 -0
  491. package/src/recording-controller/util.ts +75 -0
  492. package/src/roap/index.ts +288 -0
  493. package/src/roap/request.ts +153 -0
  494. package/src/roap/turnDiscovery.ts +374 -70
  495. package/src/rtcMetrics/constants.ts +3 -0
  496. package/src/rtcMetrics/index.ts +166 -0
  497. package/src/statsAnalyzer/global.ts +37 -0
  498. package/src/statsAnalyzer/index.ts +1275 -0
  499. package/src/statsAnalyzer/mqaUtil.ts +440 -0
  500. package/src/transcription/{index.js → index.ts} +46 -39
  501. package/src/webinar/collection.ts +31 -0
  502. package/src/webinar/index.ts +62 -0
  503. package/test/integration/spec/converged-space-meetings.js +233 -0
  504. package/test/integration/spec/journey.js +791 -531
  505. package/test/integration/spec/space-meeting.js +391 -204
  506. package/test/integration/spec/transcription.js +7 -8
  507. package/test/unit/spec/annotation/index.ts +418 -0
  508. package/test/unit/spec/breakouts/breakout.ts +238 -0
  509. package/test/unit/spec/breakouts/collection.ts +15 -0
  510. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  511. package/test/unit/spec/breakouts/events.ts +89 -0
  512. package/test/unit/spec/breakouts/index.ts +1793 -0
  513. package/test/unit/spec/breakouts/request.ts +104 -0
  514. package/test/unit/spec/breakouts/utils.js +72 -0
  515. package/test/unit/spec/common/browser-detection.js +9 -28
  516. package/test/unit/spec/common/queue.js +31 -2
  517. package/test/unit/spec/controls-options-manager/index.js +287 -0
  518. package/test/unit/spec/controls-options-manager/util.js +582 -0
  519. package/test/unit/spec/fixture/locus.js +93 -90
  520. package/test/unit/spec/interceptors/locusRetry.ts +131 -0
  521. package/test/unit/spec/interpretation/collection.ts +15 -0
  522. package/test/unit/spec/interpretation/index.ts +625 -0
  523. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  524. package/test/unit/spec/locus-info/controlsUtils.js +325 -32
  525. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  526. package/test/unit/spec/locus-info/index.js +1458 -21
  527. package/test/unit/spec/locus-info/infoUtils.js +71 -40
  528. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  529. package/test/unit/spec/locus-info/lib/SeqCmp.json +529 -685
  530. package/test/unit/spec/locus-info/mediaSharesUtils.ts +41 -0
  531. package/test/unit/spec/locus-info/parser.js +119 -44
  532. package/test/unit/spec/locus-info/selfConstant.js +120 -103
  533. package/test/unit/spec/locus-info/selfUtils.js +291 -12
  534. package/test/unit/spec/media/index.ts +194 -111
  535. package/test/unit/spec/media/properties.ts +11 -11
  536. package/test/unit/spec/meeting/in-meeting-actions.ts +96 -3
  537. package/test/unit/spec/meeting/index.js +8616 -1921
  538. package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
  539. package/test/unit/spec/meeting/muteState.js +568 -207
  540. package/test/unit/spec/meeting/request.js +602 -82
  541. package/test/unit/spec/meeting/utils.js +867 -179
  542. package/test/unit/spec/meeting/voicea-meeting.ts +266 -0
  543. package/test/unit/spec/meeting-info/index.js +300 -0
  544. package/test/unit/spec/meeting-info/meetinginfov2.js +631 -78
  545. package/test/unit/spec/meeting-info/request.js +7 -9
  546. package/test/unit/spec/meeting-info/util.js +11 -12
  547. package/test/unit/spec/meeting-info/utilv2.js +131 -74
  548. package/test/unit/spec/meetings/collection.js +27 -1
  549. package/test/unit/spec/meetings/index.js +1826 -374
  550. package/test/unit/spec/meetings/utils.js +243 -14
  551. package/test/unit/spec/member/index.js +61 -7
  552. package/test/unit/spec/member/util.js +526 -26
  553. package/test/unit/spec/members/index.js +536 -55
  554. package/test/unit/spec/members/request.js +228 -40
  555. package/test/unit/spec/members/utils.js +217 -4
  556. package/test/unit/spec/metrics/index.js +13 -68
  557. package/test/unit/spec/multistream/mediaRequestManager.ts +1032 -110
  558. package/test/unit/spec/multistream/receiveSlot.ts +77 -18
  559. package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
  560. package/test/unit/spec/multistream/remoteMedia.ts +40 -2
  561. package/test/unit/spec/multistream/remoteMediaGroup.ts +350 -5
  562. package/test/unit/spec/multistream/remoteMediaManager.ts +937 -65
  563. package/test/unit/spec/multistream/sendSlotManager.ts +274 -0
  564. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  565. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  566. package/test/unit/spec/reachability/clusterReachability.ts +279 -0
  567. package/test/unit/spec/reachability/index.ts +606 -26
  568. package/test/unit/spec/reachability/request.js +68 -0
  569. package/test/unit/spec/reachability/util.ts +40 -0
  570. package/test/unit/spec/reconnection-manager/index.js +222 -34
  571. package/test/unit/spec/recording-controller/index.js +306 -0
  572. package/test/unit/spec/recording-controller/util.js +229 -0
  573. package/test/unit/spec/roap/index.ts +238 -82
  574. package/test/unit/spec/roap/request.ts +255 -0
  575. package/test/unit/spec/roap/turnDiscovery.ts +707 -110
  576. package/test/unit/spec/rtcMetrics/index.ts +122 -0
  577. package/test/unit/spec/stats-analyzer/index.js +1331 -62
  578. package/test/unit/spec/webinar/collection.ts +13 -0
  579. package/test/unit/spec/webinar/index.ts +60 -0
  580. package/test/utils/cmr.js +44 -42
  581. package/test/utils/constants.js +9 -0
  582. package/test/utils/integrationTestUtils.js +46 -0
  583. package/test/utils/testUtils.js +63 -99
  584. package/test/utils/webex-config.js +22 -18
  585. package/test/utils/webex-test-users.js +65 -50
  586. package/tsconfig.json +6 -0
  587. package/dist/media/internal-media-core-wrapper.js +0 -22
  588. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  589. package/dist/meeting/effectsState.js +0 -327
  590. package/dist/meeting/effectsState.js.map +0 -1
  591. package/dist/metrics/config.js +0 -301
  592. package/dist/metrics/config.js.map +0 -1
  593. package/dist/multistream/multistreamMedia.js +0 -116
  594. package/dist/multistream/multistreamMedia.js.map +0 -1
  595. package/dist/peer-connection-manager/util.js +0 -124
  596. package/dist/peer-connection-manager/util.js.map +0 -1
  597. package/src/common/logs/logger-proxy.js +0 -33
  598. package/src/index.js +0 -15
  599. package/src/locus-info/controlsUtils.js +0 -102
  600. package/src/media/index.js +0 -459
  601. package/src/media/internal-media-core-wrapper.ts +0 -9
  602. package/src/media/properties.js +0 -289
  603. package/src/mediaQualityMetrics/config.js +0 -382
  604. package/src/meeting/effectsState.js +0 -205
  605. package/src/meeting/index.js +0 -6284
  606. package/src/meeting/muteState.js +0 -318
  607. package/src/meeting/request.js +0 -684
  608. package/src/meeting/util.js +0 -506
  609. package/src/meeting-info/index.js +0 -131
  610. package/src/meeting-info/meeting-info-v2.js +0 -255
  611. package/src/meetings/collection.js +0 -40
  612. package/src/meetings/index.js +0 -1015
  613. package/src/member/util.js +0 -254
  614. package/src/members/request.js +0 -131
  615. package/src/members/util.js +0 -258
  616. package/src/metrics/config.js +0 -324
  617. package/src/metrics/index.js +0 -530
  618. package/src/multistream/multistreamMedia.ts +0 -92
  619. package/src/peer-connection-manager/util.ts +0 -117
  620. package/src/reachability/index.js +0 -464
  621. package/src/reconnection-manager/index.js +0 -519
  622. package/src/roap/index.js +0 -220
  623. package/src/roap/request.js +0 -127
  624. package/src/statsAnalyzer/global.js +0 -133
  625. package/src/statsAnalyzer/index.js +0 -1006
  626. package/src/statsAnalyzer/mqaUtil.js +0 -173
  627. package/test/unit/spec/meeting/effectsState.js +0 -291
  628. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
  629. /package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
@@ -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;
@@ -0,0 +1,20 @@
1
+ import Collection from '../common/collection';
2
+ /**
3
+ * @class MeetingInfoCollection
4
+ */
5
+ export default class MeetingInfoCollection extends Collection {
6
+ namespace: string;
7
+ /**
8
+ * @memberof MeetingInfoCollection
9
+ * @constructor
10
+ * @public
11
+ */
12
+ constructor();
13
+ /**
14
+ * @param {String} id ID of the meeting info you wish to retreive
15
+ * @returns {MeetingInfo} returns a meeting info instance
16
+ * @public
17
+ * @memberof MeetingInfoCollection
18
+ */
19
+ get(id: string): any;
20
+ }
@@ -0,0 +1,69 @@
1
+ /*!
2
+ * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
3
+ */
4
+ /**
5
+ * @class MeetingInfo
6
+ */
7
+ export default class MeetingInfo {
8
+ meetingInfoCollection: any;
9
+ meetingInfoRequest: any;
10
+ webex: any;
11
+ /**
12
+ *
13
+ * @param {WebexSDK} webex
14
+ */
15
+ constructor(webex: any);
16
+ /**
17
+ * @param {string} id
18
+ * @returns {object}
19
+ * @public
20
+ * @memberof MeetingInfo
21
+ */
22
+ getMeetingInfo(id: string): any;
23
+ /**
24
+ * @param {string} id
25
+ * @param {object} info
26
+ * @returns {null}
27
+ * @public
28
+ * @memberof MeetingInfo
29
+ */
30
+ setMeetingInfo(id: string, info: object): void;
31
+ /**
32
+ * Helper to make the actual MeetingInfo request and set the meetingInfo if successful, else reject
33
+ * @param {Object} options
34
+ * @returns {Promise}
35
+ * @private
36
+ * @memberof MeetingInfo
37
+ */
38
+ private requestFetchInfo;
39
+ /**
40
+ * Helper to generate the options for the MeetingInfo request
41
+ * @param {String} destination
42
+ * @param {String} type
43
+ * @returns {Promise}
44
+ * @private
45
+ * @memberof MeetingInfo
46
+ */
47
+ private fetchInfoOptions;
48
+ /**
49
+ * Fetches meeting info from the server
50
+ * @param {String} destination one of many different types of destinations to look up info for
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
58
+ * @returns {Promise} returns a meeting info object
59
+ * @public
60
+ * @memberof MeetingInfo
61
+ */
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;
69
+ }
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Error to indicate that wbxappapi requires a password
3
+ */
4
+ export declare class MeetingInfoV2PasswordError extends Error {
5
+ meetingInfo: any;
6
+ sdkMessage: any;
7
+ wbxAppApiCode: any;
8
+ body: any;
9
+ /**
10
+ *
11
+ * @constructor
12
+ * @param {Number} [wbxAppApiErrorCode]
13
+ * @param {Object} [meetingInfo]
14
+ * @param {String} [message]
15
+ */
16
+ constructor(wbxAppApiErrorCode?: number, meetingInfo?: object, message?: string);
17
+ }
18
+ /**
19
+ * Error generating a adhoc space meeting
20
+ */
21
+ export declare class MeetingInfoV2AdhocMeetingError extends Error {
22
+ sdkMessage: any;
23
+ wbxAppApiCode: any;
24
+ /**
25
+ *
26
+ * @constructor
27
+ * @param {Number} [wbxAppApiErrorCode]
28
+ * @param {String} [message]
29
+ */
30
+ constructor(wbxAppApiErrorCode?: number, message?: string);
31
+ }
32
+ /**
33
+ * Error preventing join because of a meeting policy
34
+ */
35
+ export declare class MeetingInfoV2PolicyError extends Error {
36
+ meetingInfo: object;
37
+ sdkMessage: string;
38
+ wbxAppApiCode: number;
39
+ /**
40
+ *
41
+ * @constructor
42
+ * @param {Number} [wbxAppApiErrorCode]
43
+ * @param {Object} [meetingInfo]
44
+ * @param {String} [message]
45
+ */
46
+ constructor(wbxAppApiErrorCode?: number, meetingInfo?: object, message?: string);
47
+ }
48
+ /**
49
+ * Error to indicate that preferred webex site not present to start adhoc meeting
50
+ */
51
+ export declare class MeetingInfoV2CaptchaError extends Error {
52
+ captchaInfo: any;
53
+ isPasswordRequired: any;
54
+ sdkMessage: any;
55
+ wbxAppApiCode: any;
56
+ body: any;
57
+ /**
58
+ *
59
+ * @constructor
60
+ * @param {Number} [wbxAppApiErrorCode]
61
+ * @param {Object} [captchaInfo]
62
+ * @param {String} [message]
63
+ */
64
+ constructor(wbxAppApiErrorCode?: number, captchaInfo?: object, message?: string);
65
+ }
66
+ /**
67
+ * @class MeetingInfo
68
+ */
69
+ export default class MeetingInfoV2 {
70
+ webex: any;
71
+ /**
72
+ *
73
+ * @param {WebexSDK} webex
74
+ */
75
+ constructor(webex: any);
76
+ /**
77
+ * converts hydra id into conversation url and persons Id
78
+ * @param {String} destination one of many different types of destinations to look up info for
79
+ * @param {String} [type] to match up with the destination value
80
+ * @returns {Promise} destination and type
81
+ * @public
82
+ * @memberof MeetingInfo
83
+ */
84
+ fetchInfoOptions(destination: string, type?: string): any;
85
+ /**
86
+ * Raises a MeetingInfoV2PolicyError for policy error codes
87
+ * @param {any} err the error from the request
88
+ * @returns {void}
89
+ */
90
+ handlePolicyError: (err: any) => void;
91
+ /**
92
+ * Creates adhoc space meetings for a space by fetching the conversation infomation
93
+ * @param {String} conversationUrl conversationUrl to start adhoc meeting on
94
+ * @param {String} installedOrgID org ID of user's machine
95
+ * @returns {Promise} returns a meeting info object
96
+ * @public
97
+ * @memberof MeetingInfo
98
+ */
99
+ createAdhocSpaceMeeting(conversationUrl: string, installedOrgID?: string): Promise<any>;
100
+ /**
101
+ * Fetches meeting info from the server
102
+ * @param {String} destination one of many different types of destinations to look up info for
103
+ * @param {String} [type] to match up with the destination value
104
+ * @param {String} password
105
+ * @param {Object} captchaInfo
106
+ * @param {String} captchaInfo.code
107
+ * @param {String} captchaInfo.id
108
+ * @param {String} installedOrgID org ID of user's machine
109
+ * @param {String} locusId
110
+ * @param {Object} extraParams
111
+ * @param {Object} options
112
+ * @returns {Promise} returns a meeting info object
113
+ * @public
114
+ * @memberof MeetingInfo
115
+ */
116
+ fetchMeetingInfo(destination: string, type?: string, password?: string, captchaInfo?: {
117
+ code: string;
118
+ id: string;
119
+ }, installedOrgID?: any, locusId?: any, extraParams?: object, options?: {
120
+ meetingId?: string;
121
+ sendCAevents?: boolean;
122
+ }): Promise<any>;
123
+ }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @class MeetingInfoRequest
3
+ */
4
+ export default class MeetingInfoRequest {
5
+ webex: any;
6
+ /**
7
+ * Meeting Info Request Constructor
8
+ * @param {WebexSDK} webex
9
+ */
10
+ constructor(webex: any);
11
+ /**
12
+ *
13
+ * @param {Object} options with format of {type: String, desintation: String}
14
+ * where type is PERSONAL_ROOM, SIP_URI, CONVERSATION_URL, and destination is userId, sipUri, conversationUrl respectively
15
+ * type can also be specified as an option and be of the list SIP_URI,MEETING_ID,LOCUS_ID,PERSONAL_ROOM,MEETING_LINK,ONE_ON_ONE,MEDIA_SIP_URI,CONVERSATION_URL,TEMP_SIP_URI
16
+ * with the desination matching
17
+ * @returns {Promise} returns a promise that resolves/rejects the result of the request
18
+ * @throws {Error} if the options are not valid and complete
19
+ * @memberof MeetingInfoRequest
20
+ */
21
+ fetchMeetingInfo(options: any): any;
22
+ }
@@ -0,0 +1,2 @@
1
+ declare const MeetingInfoUtil: any;
2
+ export default MeetingInfoUtil;
@@ -0,0 +1,2 @@
1
+ declare const MeetingInfoUtil: any;
2
+ export default MeetingInfoUtil;
@@ -0,0 +1,40 @@
1
+ import Collection from '../common/collection';
2
+ /**
3
+ * @export
4
+ * @class MeetingCollection
5
+ */
6
+ export default class MeetingCollection extends Collection {
7
+ /**
8
+ * @constructor
9
+ * @public
10
+ * @memberof MeetingCollection
11
+ */
12
+ constructor();
13
+ set(meeting: any): any;
14
+ /**
15
+ * get a specific meeting searching for key
16
+ * @param {String} key
17
+ * @param {Any} value
18
+ * @returns {Meeting} if found, else returns null
19
+ * @public
20
+ * @memberof MeetingCollection
21
+ */
22
+ getByKey(key: string, value: any): any;
23
+ /**
24
+ * get a specific meeting searching for key
25
+ * @param {String} breakoutUrl
26
+ * @returns {Meeting} if found, else returns null
27
+ * @public
28
+ * @memberof MeetingCollection
29
+ */
30
+ getActiveBreakoutLocus(breakoutUrl: string): any;
31
+ /**
32
+ * Gets the meeting that has a webrtc media connection
33
+ * NOTE: this function assumes there is no more than 1 such meeting
34
+ *
35
+ * @returns {Meeting} first meeting found, else undefined
36
+ * @public
37
+ * @memberof MeetingCollection
38
+ */
39
+ getActiveWebrtcMeeting(): any;
40
+ }
@@ -0,0 +1,389 @@
1
+ import '@webex/internal-plugin-mercury';
2
+ import '@webex/internal-plugin-conversation';
3
+ import '@webex/internal-plugin-metrics';
4
+ import { WebexPlugin } from '@webex/webex-core';
5
+ import 'webrtc-adapter';
6
+ import { CallStateForMetrics } from '../meeting';
7
+ import Reachability from '../reachability';
8
+ import { INoiseReductionEffect, IVirtualBackgroundEffect } from './meetings.types';
9
+ /**
10
+ * Meetings Ready Event
11
+ * Emitted when the meetings instance on webex is ready
12
+ * @event meetings:ready
13
+ * @instance
14
+ * @memberof Meetings
15
+ */
16
+ /**
17
+ * Meetings Network Disconnected Event
18
+ * Emitted when the meetings instance is disconnected from
19
+ * the internal mercury server
20
+ * @event network:disconnected
21
+ * @instance
22
+ * @memberof Meetings
23
+ */
24
+ /**
25
+ * Meetings Registered Event
26
+ * Emitted when the meetings instance has been registered and listening
27
+ * @event meetings:registered
28
+ * @instance
29
+ * @memberof Meetings
30
+ */
31
+ /**
32
+ * Meeting Removed Event
33
+ * Emitted when a meeting was removed from the cache of meetings
34
+ * @event meeting:removed
35
+ * @instance
36
+ * @type {Object}
37
+ * @property {String} meetingId the removed meeting
38
+ * @property {Object} response the server response
39
+ * @property {String} type what type of meeting it was
40
+ * @memberof Meetings
41
+ */
42
+ /**
43
+ * Meeting Added Event
44
+ * Emitted when a meeting was added to the cache of meetings
45
+ * @event meeting:added
46
+ * @instance
47
+ * @type {Object}
48
+ * @property {String} meetingId the added meeting
49
+ * @property {String} type what type of meeting it was
50
+ * @memberof Meetings
51
+ */
52
+ /**
53
+ * Maintain a cache of meetings and sync with services.
54
+ * @class
55
+ */
56
+ export default class Meetings extends WebexPlugin {
57
+ loggerRequest: any;
58
+ media: any;
59
+ meetingCollection: any;
60
+ personalMeetingRoom: any;
61
+ preferredWebexSite: any;
62
+ reachability: Reachability;
63
+ registered: any;
64
+ request: any;
65
+ geoHintInfo: any;
66
+ meetingInfo: any;
67
+ mediaHelpers: any;
68
+ breakoutLocusForHandleLater: any;
69
+ namespace: string;
70
+ /**
71
+ * Initializes the Meetings Plugin
72
+ * @constructor
73
+ * @public
74
+ * @memberof Meetings
75
+ */
76
+ constructor(...args: any[]);
77
+ /**
78
+ * check whether you need to handle this main session's locus data or not
79
+ * @param {Object} meeting current meeting data
80
+ * @param {Object} newLocus new locus data
81
+ * @returns {boolean}
82
+ * @private
83
+ * @memberof Meetings
84
+ */
85
+ private isNeedHandleMainLocus;
86
+ /**
87
+ * check whether you need to handle this locus data or not
88
+ * @param {Object} meeting old locus data
89
+ * @param {Object} newLocus new locus data
90
+ * @returns {boolean}
91
+ * @private
92
+ * @memberof Meetings
93
+ */
94
+ private isNeedHandleLocusDTO;
95
+ /**
96
+ * get corresponding meeting object by locus data
97
+ * @param {Object} data a locus event
98
+ * @param {String} data.locusUrl
99
+ * @param {Object} data.locus
100
+ * @returns {Object}
101
+ * @private
102
+ * @memberof Meetings
103
+ */
104
+ getCorrespondingMeetingByLocus(data: any): any;
105
+ /**
106
+ * handle locus events and takes meeting actions with them as they come in
107
+ * @param {Object} data a locus event
108
+ * @param {String} data.locusUrl
109
+ * @param {Object} data.locus
110
+ * @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
111
+ * @param {String} data.eventType
112
+ * @returns {undefined}
113
+ * @private
114
+ * @memberof Meetings
115
+ */
116
+ private handleLocusEvent;
117
+ /**
118
+ * handles locus events through mercury that are not roap
119
+ * @param {Object} envelope
120
+ * @param {Object} envelope.data
121
+ * @param {String} envelope.data.eventType
122
+ * @returns {undefined}
123
+ * @private
124
+ * @memberof Meetings
125
+ */
126
+ private handleLocusMercury;
127
+ /**
128
+ * handles mecury offline event
129
+ * @returns {undefined}
130
+ * @private
131
+ * @memberof Meetings
132
+ */
133
+ private handleMercuryOffline;
134
+ /**
135
+ * registers for locus and roap mercury events
136
+ * @returns {undefined}
137
+ * @private
138
+ * @memberof Meetings
139
+ */
140
+ private listenForEvents;
141
+ /**
142
+ * stops listening for locus and roap mercury events
143
+ * @returns {undefined}
144
+ * @private
145
+ * @memberof Meetings
146
+ */
147
+ private stopListeningForEvents;
148
+ /**
149
+ * @returns {undefined}
150
+ * @private
151
+ * @memberof Meetings
152
+ */
153
+ private onReady;
154
+ /**
155
+ * API to toggle unified meetings
156
+ * @param {Boolean} changeState
157
+ * @private
158
+ * @memberof Meetings
159
+ * @returns {undefined}
160
+ */
161
+ private _toggleUnifiedMeetings;
162
+ /**
163
+ * API to toggle starting adhoc meeting
164
+ * @param {Boolean} changeState
165
+ * @private
166
+ * @memberof Meetings
167
+ * @returns {undefined}
168
+ */
169
+ private _toggleAdhocMeetings;
170
+ /**
171
+ * API to toggle TCP reachability, needs to be called before webex.meetings.register()
172
+ * @param {Boolean} newValue
173
+ * @private
174
+ * @memberof Meetings
175
+ * @returns {undefined}
176
+ */
177
+ private _toggleTcpReachability;
178
+ /**
179
+ * Explicitly sets up the meetings plugin by registering
180
+ * the device, connecting to mercury, and listening for locus events.
181
+ *
182
+ * @returns {Promise}
183
+ * @public
184
+ * @memberof Meetings
185
+ */
186
+ register(): Promise<void>;
187
+ /**
188
+ * Explicitly tears down the meetings plugin by deregistering
189
+ * the device, disconnecting from mercury, and stops listening to locus events
190
+ *
191
+ * @returns {Promise}
192
+ * @public
193
+ * @memberof Meetings
194
+ */
195
+ unregister(): any;
196
+ /**
197
+ * Creates a noise reduction effect
198
+ *
199
+ * @param {INoiseReductionEffect} options optional custom effect options
200
+ * @returns {Promise<effect>} noise reduction effect.
201
+ * @public
202
+ * @memberof Meetings
203
+ */
204
+ createNoiseReductionEffect: (options?: INoiseReductionEffect) => Promise<any>;
205
+ /**
206
+ * Creates a virtual background effect
207
+ *
208
+ * @param {IVirtualBackgroundEffect} options optional custom effect options
209
+ * @returns {Promise<effect>} virtual background effect.
210
+ * @public
211
+ * @memberof Meetings
212
+ */
213
+ createVirtualBackgroundEffect: (options?: IVirtualBackgroundEffect) => Promise<any>;
214
+ /**
215
+ * Uploads logs to the webex services for tracking
216
+ * @param {Object} [options={}]
217
+ * @param {String} [options.callStart] Call Start Time
218
+ * @param {String} [options.feedbackId] ID used for tracking
219
+ * @param {String} [options.locusId]
220
+ * @param {String} [options.correlationId]
221
+ * @param {String} [options.meetingId] webex meeting ID
222
+ * @param {String} [options.userId] userId
223
+ * @param {String} [options.orgId] org id
224
+ * @returns {String} feedback ID logs were submitted under
225
+ */
226
+ uploadLogs(options?: {
227
+ autoupload?: boolean;
228
+ callStart?: string;
229
+ feedbackId?: string;
230
+ locussessionid?: string;
231
+ locusId?: string;
232
+ correlationId?: string;
233
+ meetingId?: string;
234
+ userId?: string;
235
+ orgId?: string;
236
+ }): any;
237
+ /**
238
+ * gets the reachability instance for Meetings
239
+ * @returns {Reachability}
240
+ * @public
241
+ * @memberof Meetings
242
+ */
243
+ getReachability(): Reachability;
244
+ /**
245
+ * initializes and starts gathering reachability for Meetings
246
+ * @returns {Promise}
247
+ * @public
248
+ * @memberof Meetings
249
+ */
250
+ startReachability(): Promise<import("../reachability").ReachabilityResults>;
251
+ /**
252
+ * Get geoHint for info for meetings
253
+ * @returns {Promise}
254
+ * @private
255
+ * @memberof Meetings
256
+ */
257
+ getGeoHint(): any;
258
+ /**
259
+ * Fetch user preferred webex site information
260
+ * This also has other infomation about the user
261
+ * @returns {Promise}
262
+ * @private
263
+ * @memberof Meetings
264
+ */
265
+ fetchUserPreferredWebexSite(): any;
266
+ /**
267
+ * gets the personal meeting room instance, for saved PMR values for this user
268
+ * @returns {PersonalMeetingRoom}
269
+ * @public
270
+ * @memberof Meetings
271
+ */
272
+ getPersonalMeetingRoom(): any;
273
+ /**
274
+ * @param {Meeting} meeting
275
+ * @param {Object} reason
276
+ * @param {String} type
277
+ * @returns {Undefined}
278
+ * @private
279
+ * @memberof Meetings
280
+ */
281
+ private destroy;
282
+ /**
283
+ * Create a meeting or return an existing meeting.
284
+ *
285
+ * When meeting info passed it should be complete, e.g.: fetched after password or captcha provided
286
+ *
287
+ * @param {string} destination - sipURL, phonenumber, or locus object}
288
+ * @param {string} [type] - the optional specified type, such as locusId
289
+ * @param {Boolean} useRandomDelayForInfo - whether a random delay should be added to fetching meeting info
290
+ * @param {Object} infoExtraParams extra parameters to be provided when fetching meeting info
291
+ * @param {string} correlationId - the optional specified correlationId (callStateForMetrics.correlationId can be provided instead)
292
+ * @param {Boolean} failOnMissingMeetingInfo - whether to throw an error if meeting info fails to fetch (for calls that are not 1:1 or content share)
293
+ * @param {CallStateForMetrics} callStateForMetrics - information about call state for metrics
294
+ * @param {Object} [meetingInfo] - Pre-fetched complete meeting info
295
+ * @param {String} [meetingLookupUrl] - meeting info prefetch url
296
+ * @returns {Promise<Meeting>} A new Meeting.
297
+ * @public
298
+ * @memberof Meetings
299
+ */
300
+ create(destination: string, type?: string, useRandomDelayForInfo?: boolean, infoExtraParams?: {}, correlationId?: string, failOnMissingMeetingInfo?: boolean, callStateForMetrics?: CallStateForMetrics, meetingInfo?: any, meetingLookupUrl?: any): any;
301
+ /**
302
+ * Create meeting
303
+ *
304
+ * When meeting info passed it should be complete, e.g.: fetched after password or captcha provided
305
+ *
306
+ * @param {String} destination see create()
307
+ * @param {String} type see create()
308
+ * @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
309
+ * @param {Object} infoExtraParams extra parameters to be provided when fetching meeting info
310
+ * @param {CallStateForMetrics} callStateForMetrics - information about call state for metrics
311
+ * @param {Boolean} failOnMissingMeetingInfo - whether to throw an error if meeting info fails to fetch (for calls that are not 1:1 or content share)
312
+ * @param {Object} [meetingInfo] - Pre-fetched complete meeting info
313
+ * @param {String} [meetingLookupUrl] - meeting info prefetch url
314
+ * @returns {Promise} a new meeting instance complete with meeting info and destination
315
+ * @private
316
+ * @memberof Meetings
317
+ */
318
+ private createMeeting;
319
+ /**
320
+ * get a specifc meeting given it's type matched to the value, i.e., locus url
321
+ * @param {String} type
322
+ * @param {Object} value
323
+ * @returns {Meeting}
324
+ * @public
325
+ * @memberof Meetings
326
+ */
327
+ getMeetingByType(type: string, value: object): any;
328
+ /**
329
+ * Get all meetings.
330
+ * @param {object} options
331
+ * @param {object} options.startDate - get meetings after this start date
332
+ * @param {object} options.endDate - get meetings before this end date
333
+ * @returns {Object} All currently active meetings.
334
+ * @public
335
+ * @memberof Meetings
336
+ */
337
+ getAllMeetings(options?: {
338
+ startDate: object;
339
+ endDate: object;
340
+ }): any;
341
+ /**
342
+ * Syncs all the meetings from server. Does nothing and returns immediately if unverified guest.
343
+ * @param {boolean} keepOnlyLocusMeetings - whether the sync should keep only locus meetings or any other meeting in meetingCollection
344
+ * @returns {Promise<void>}
345
+ * @public
346
+ * @memberof Meetings
347
+ */
348
+ syncMeetings({ keepOnlyLocusMeetings }?: {
349
+ keepOnlyLocusMeetings?: boolean;
350
+ }): Promise<void>;
351
+ /**
352
+ * sort out locus array for initial creating
353
+ * @param {Array} loci original locus array
354
+ * @returns {undefined}
355
+ * @public
356
+ * @memberof Meetings
357
+ */
358
+ sortLocusArrayToUpdate(loci: any[]): any[];
359
+ /**
360
+ * check breakout locus which waiting for main locus's meeting to be created, then handle the breakout locus
361
+ * @param {Object} newCreatedLocus the locus which just create meeting object of it
362
+ * @returns {undefined}
363
+ * @public
364
+ * @memberof Meetings
365
+ */
366
+ checkHandleBreakoutLocus(newCreatedLocus: any): void;
367
+ /**
368
+ * Get all scheduled meetings.
369
+ * @param {object} options
370
+ * @param {object} options.startDate - get meetings after this start date
371
+ * @param {object} options.endDate - get meetings before this end date
372
+ * @returns {Object} All scheduled meetings.
373
+ * @memberof Meetings
374
+ */
375
+ getScheduledMeetings(): any;
376
+ /**
377
+ * Get the logger instance for plugin-meetings
378
+ * @returns {Logger}
379
+ */
380
+ getLogger(): any;
381
+ /**
382
+ * Returns the first meeting it finds that has the webrtc media connection created.
383
+ * Useful for debugging in the console.
384
+ *
385
+ * @private
386
+ * @returns {Meeting} Meeting object that has a webrtc media connection, else undefined
387
+ */
388
+ getActiveWebrtcMeeting(): any;
389
+ }
@@ -0,0 +1,4 @@
1
+ import type { NoiseReductionEffectOptions, VirtualBackgroundEffectOptions } from '@webex/media-helpers';
2
+ type INoiseReductionEffect = Omit<NoiseReductionEffectOptions, 'authToken' | 'workletProcessorUrl' | 'legacyProcessorUrl'>;
3
+ type IVirtualBackgroundEffect = Omit<VirtualBackgroundEffectOptions, 'authToken'>;
4
+ export type { INoiseReductionEffect, IVirtualBackgroundEffect };