@webex/plugin-meetings 3.0.0-beta.16 → 3.0.0-beta.161

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 (424) hide show
  1. package/README.md +45 -1
  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 +359 -0
  7. package/dist/annotation/index.js.map +1 -0
  8. package/dist/breakouts/breakout.js +212 -0
  9. package/dist/breakouts/breakout.js.map +1 -0
  10. package/dist/breakouts/collection.js +23 -0
  11. package/dist/breakouts/collection.js.map +1 -0
  12. package/dist/breakouts/edit-lock-error.js +52 -0
  13. package/dist/breakouts/edit-lock-error.js.map +1 -0
  14. package/dist/breakouts/events.js +43 -0
  15. package/dist/breakouts/events.js.map +1 -0
  16. package/dist/breakouts/index.js +1046 -0
  17. package/dist/breakouts/index.js.map +1 -0
  18. package/dist/breakouts/request.js +78 -0
  19. package/dist/breakouts/request.js.map +1 -0
  20. package/dist/breakouts/utils.js +67 -0
  21. package/dist/breakouts/utils.js.map +1 -0
  22. package/dist/common/errors/webex-errors.js +3 -2
  23. package/dist/common/errors/webex-errors.js.map +1 -1
  24. package/dist/common/logs/logger-proxy.js +1 -1
  25. package/dist/common/logs/logger-proxy.js.map +1 -1
  26. package/dist/config.js +6 -8
  27. package/dist/config.js.map +1 -1
  28. package/dist/constants.js +175 -26
  29. package/dist/constants.js.map +1 -1
  30. package/dist/controls-options-manager/constants.js +14 -0
  31. package/dist/controls-options-manager/constants.js.map +1 -0
  32. package/dist/controls-options-manager/enums.js +27 -0
  33. package/dist/controls-options-manager/enums.js.map +1 -0
  34. package/dist/controls-options-manager/index.js +297 -0
  35. package/dist/controls-options-manager/index.js.map +1 -0
  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 +300 -0
  39. package/dist/controls-options-manager/util.js.map +1 -0
  40. package/dist/index.js +77 -0
  41. package/dist/index.js.map +1 -1
  42. package/dist/interpretation/collection.js +23 -0
  43. package/dist/interpretation/collection.js.map +1 -0
  44. package/dist/interpretation/index.js +214 -0
  45. package/dist/interpretation/index.js.map +1 -0
  46. package/dist/interpretation/siLanguage.js +25 -0
  47. package/dist/interpretation/siLanguage.js.map +1 -0
  48. package/dist/locus-info/controlsUtils.js +92 -2
  49. package/dist/locus-info/controlsUtils.js.map +1 -1
  50. package/dist/locus-info/index.js +317 -24
  51. package/dist/locus-info/index.js.map +1 -1
  52. package/dist/locus-info/mediaSharesUtils.js +43 -1
  53. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  54. package/dist/locus-info/parser.js +2 -1
  55. package/dist/locus-info/parser.js.map +1 -1
  56. package/dist/locus-info/selfUtils.js +97 -14
  57. package/dist/locus-info/selfUtils.js.map +1 -1
  58. package/dist/media/index.js +39 -134
  59. package/dist/media/index.js.map +1 -1
  60. package/dist/media/properties.js +19 -97
  61. package/dist/media/properties.js.map +1 -1
  62. package/dist/mediaQualityMetrics/config.js +505 -493
  63. package/dist/mediaQualityMetrics/config.js.map +1 -1
  64. package/dist/meeting/in-meeting-actions.js +79 -1
  65. package/dist/meeting/in-meeting-actions.js.map +1 -1
  66. package/dist/meeting/index.js +2349 -2178
  67. package/dist/meeting/index.js.map +1 -1
  68. package/dist/meeting/locusMediaRequest.js +291 -0
  69. package/dist/meeting/locusMediaRequest.js.map +1 -0
  70. package/dist/meeting/muteState.js +229 -124
  71. package/dist/meeting/muteState.js.map +1 -1
  72. package/dist/meeting/request.js +191 -167
  73. package/dist/meeting/request.js.map +1 -1
  74. package/dist/meeting/request.type.js.map +1 -1
  75. package/dist/meeting/util.js +444 -443
  76. package/dist/meeting/util.js.map +1 -1
  77. package/dist/meeting-info/meeting-info-v2.js +157 -49
  78. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  79. package/dist/meeting-info/utilv2.js +20 -5
  80. package/dist/meeting-info/utilv2.js.map +1 -1
  81. package/dist/meetings/collection.js +22 -0
  82. package/dist/meetings/collection.js.map +1 -1
  83. package/dist/meetings/index.js +365 -73
  84. package/dist/meetings/index.js.map +1 -1
  85. package/dist/meetings/meetings.types.js +7 -0
  86. package/dist/meetings/meetings.types.js.map +1 -0
  87. package/dist/meetings/request.js +16 -12
  88. package/dist/meetings/request.js.map +1 -1
  89. package/dist/meetings/util.js +88 -1
  90. package/dist/meetings/util.js.map +1 -1
  91. package/dist/member/index.js +43 -0
  92. package/dist/member/index.js.map +1 -1
  93. package/dist/member/types.js +15 -0
  94. package/dist/member/types.js.map +1 -0
  95. package/dist/member/util.js +97 -3
  96. package/dist/member/util.js.map +1 -1
  97. package/dist/members/collection.js +10 -0
  98. package/dist/members/collection.js.map +1 -1
  99. package/dist/members/index.js +94 -11
  100. package/dist/members/index.js.map +1 -1
  101. package/dist/members/request.js +109 -39
  102. package/dist/members/request.js.map +1 -1
  103. package/dist/members/types.js +15 -0
  104. package/dist/members/types.js.map +1 -0
  105. package/dist/members/util.js +316 -233
  106. package/dist/members/util.js.map +1 -1
  107. package/dist/metrics/config.js +50 -14
  108. package/dist/metrics/config.js.map +1 -1
  109. package/dist/metrics/constants.js +3 -5
  110. package/dist/metrics/constants.js.map +1 -1
  111. package/dist/metrics/index.js +48 -29
  112. package/dist/metrics/index.js.map +1 -1
  113. package/dist/multistream/mediaRequestManager.js +265 -36
  114. package/dist/multistream/mediaRequestManager.js.map +1 -1
  115. package/dist/multistream/receiveSlot.js +52 -19
  116. package/dist/multistream/receiveSlot.js.map +1 -1
  117. package/dist/multistream/receiveSlotManager.js +53 -33
  118. package/dist/multistream/receiveSlotManager.js.map +1 -1
  119. package/dist/multistream/remoteMedia.js +44 -18
  120. package/dist/multistream/remoteMedia.js.map +1 -1
  121. package/dist/multistream/remoteMediaGroup.js +60 -3
  122. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  123. package/dist/multistream/remoteMediaManager.js +322 -103
  124. package/dist/multistream/remoteMediaManager.js.map +1 -1
  125. package/dist/networkQualityMonitor/index.js +4 -2
  126. package/dist/networkQualityMonitor/index.js.map +1 -1
  127. package/dist/reachability/index.js +117 -60
  128. package/dist/reachability/index.js.map +1 -1
  129. package/dist/reachability/request.js +12 -5
  130. package/dist/reachability/request.js.map +1 -1
  131. package/dist/reactions/constants.js +13 -0
  132. package/dist/reactions/constants.js.map +1 -0
  133. package/dist/reactions/reactions.js +2 -2
  134. package/dist/reactions/reactions.js.map +1 -1
  135. package/dist/reactions/reactions.type.js +18 -18
  136. package/dist/reactions/reactions.type.js.map +1 -1
  137. package/dist/reconnection-manager/index.js +190 -145
  138. package/dist/reconnection-manager/index.js.map +1 -1
  139. package/dist/recording-controller/enums.js +17 -0
  140. package/dist/recording-controller/enums.js.map +1 -0
  141. package/dist/recording-controller/index.js +343 -0
  142. package/dist/recording-controller/index.js.map +1 -0
  143. package/dist/recording-controller/util.js +63 -0
  144. package/dist/recording-controller/util.js.map +1 -0
  145. package/dist/roap/index.js +21 -29
  146. package/dist/roap/index.js.map +1 -1
  147. package/dist/roap/request.js +127 -92
  148. package/dist/roap/request.js.map +1 -1
  149. package/dist/roap/turnDiscovery.js +135 -53
  150. package/dist/roap/turnDiscovery.js.map +1 -1
  151. package/dist/statsAnalyzer/global.js +1 -93
  152. package/dist/statsAnalyzer/global.js.map +1 -1
  153. package/dist/statsAnalyzer/index.js +329 -314
  154. package/dist/statsAnalyzer/index.js.map +1 -1
  155. package/dist/statsAnalyzer/mqaUtil.js +103 -54
  156. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  157. package/dist/types/annotation/annotation.types.d.ts +43 -0
  158. package/dist/types/annotation/constants.d.ts +31 -0
  159. package/dist/types/annotation/index.d.ts +124 -0
  160. package/dist/types/breakouts/breakout.d.ts +8 -0
  161. package/dist/types/breakouts/collection.d.ts +5 -0
  162. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  163. package/dist/types/breakouts/events.d.ts +2 -0
  164. package/dist/types/breakouts/index.d.ts +5 -0
  165. package/dist/types/breakouts/request.d.ts +22 -0
  166. package/dist/types/breakouts/utils.d.ts +15 -0
  167. package/dist/types/common/browser-detection.d.ts +9 -0
  168. package/dist/types/common/collection.d.ts +48 -0
  169. package/dist/types/common/config.d.ts +2 -0
  170. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  171. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  172. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  173. package/dist/types/common/errors/media.d.ts +15 -0
  174. package/dist/types/common/errors/parameter.d.ts +15 -0
  175. package/dist/types/common/errors/password-error.d.ts +15 -0
  176. package/dist/types/common/errors/permission.d.ts +14 -0
  177. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  178. package/dist/types/common/errors/reconnection.d.ts +15 -0
  179. package/dist/types/common/errors/stats.d.ts +15 -0
  180. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  181. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  182. package/dist/types/common/events/events-scope.d.ts +17 -0
  183. package/dist/types/common/events/events.d.ts +12 -0
  184. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  185. package/dist/types/common/events/util.d.ts +2 -0
  186. package/dist/types/common/logs/logger-config.d.ts +2 -0
  187. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  188. package/dist/types/common/logs/request.d.ts +34 -0
  189. package/dist/types/common/queue.d.ts +32 -0
  190. package/dist/types/config.d.ts +72 -0
  191. package/dist/types/constants.d.ts +987 -0
  192. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  193. package/dist/types/controls-options-manager/enums.d.ts +15 -0
  194. package/dist/types/controls-options-manager/index.d.ts +136 -0
  195. package/dist/types/controls-options-manager/types.d.ts +43 -0
  196. package/dist/types/controls-options-manager/util.d.ts +1 -0
  197. package/dist/types/index.d.ts +7 -0
  198. package/dist/types/interpretation/collection.d.ts +5 -0
  199. package/dist/types/interpretation/index.d.ts +5 -0
  200. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  201. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  202. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  203. package/dist/types/locus-info/fullState.d.ts +2 -0
  204. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  205. package/dist/types/locus-info/index.d.ts +315 -0
  206. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  207. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  208. package/dist/types/locus-info/parser.d.ts +212 -0
  209. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  210. package/dist/types/media/index.d.ts +34 -0
  211. package/dist/types/media/properties.d.ts +86 -0
  212. package/dist/types/media/util.d.ts +2 -0
  213. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  214. package/dist/types/meeting/in-meeting-actions.d.ts +149 -0
  215. package/dist/types/meeting/index.d.ts +1524 -0
  216. package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
  217. package/dist/types/meeting/muteState.d.ts +184 -0
  218. package/dist/types/meeting/request.d.ts +270 -0
  219. package/dist/types/meeting/request.type.d.ts +11 -0
  220. package/dist/types/meeting/state.d.ts +9 -0
  221. package/dist/types/meeting/util.d.ts +75 -0
  222. package/dist/types/meeting-info/collection.d.ts +20 -0
  223. package/dist/types/meeting-info/index.d.ts +57 -0
  224. package/dist/types/meeting-info/meeting-info-v2.d.ts +122 -0
  225. package/dist/types/meeting-info/request.d.ts +22 -0
  226. package/dist/types/meeting-info/util.d.ts +2 -0
  227. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  228. package/dist/types/meetings/collection.d.ts +31 -0
  229. package/dist/types/meetings/index.d.ts +364 -0
  230. package/dist/types/meetings/meetings.types.d.ts +4 -0
  231. package/dist/types/meetings/request.d.ts +27 -0
  232. package/dist/types/meetings/util.d.ts +18 -0
  233. package/dist/types/member/index.d.ts +158 -0
  234. package/dist/types/member/types.d.ts +21 -0
  235. package/dist/types/member/util.d.ts +2 -0
  236. package/dist/types/members/collection.d.ts +29 -0
  237. package/dist/types/members/index.d.ts +353 -0
  238. package/dist/types/members/request.d.ts +114 -0
  239. package/dist/types/members/types.d.ts +24 -0
  240. package/dist/types/members/util.d.ts +210 -0
  241. package/dist/types/metrics/config.d.ts +195 -0
  242. package/dist/types/metrics/constants.d.ts +55 -0
  243. package/dist/types/metrics/index.d.ts +169 -0
  244. package/dist/types/multistream/mediaRequestManager.d.ts +118 -0
  245. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  246. package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
  247. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  248. package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
  249. package/dist/types/multistream/remoteMediaManager.d.ts +277 -0
  250. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  251. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  252. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  253. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  254. package/dist/types/reachability/index.d.ts +152 -0
  255. package/dist/types/reachability/request.d.ts +37 -0
  256. package/dist/types/reactions/constants.d.ts +3 -0
  257. package/dist/types/reactions/reactions.d.ts +4 -0
  258. package/dist/types/reactions/reactions.type.d.ts +52 -0
  259. package/dist/types/reconnection-manager/index.d.ts +126 -0
  260. package/dist/types/recording-controller/enums.d.ts +7 -0
  261. package/dist/types/recording-controller/index.d.ts +193 -0
  262. package/dist/types/recording-controller/util.d.ts +13 -0
  263. package/dist/types/roap/index.d.ts +77 -0
  264. package/dist/types/roap/request.d.ts +36 -0
  265. package/dist/types/roap/turnDiscovery.d.ts +91 -0
  266. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  267. package/dist/types/statsAnalyzer/index.d.ts +200 -0
  268. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  269. package/dist/types/transcription/index.d.ts +64 -0
  270. package/package.json +28 -21
  271. package/src/annotation/annotation.types.ts +52 -0
  272. package/src/annotation/constants.ts +36 -0
  273. package/src/annotation/index.ts +343 -0
  274. package/src/breakouts/README.md +220 -0
  275. package/src/breakouts/breakout.ts +180 -0
  276. package/src/breakouts/collection.ts +19 -0
  277. package/src/breakouts/edit-lock-error.ts +25 -0
  278. package/src/breakouts/events.ts +37 -0
  279. package/src/breakouts/index.ts +921 -0
  280. package/src/breakouts/request.ts +55 -0
  281. package/src/breakouts/utils.ts +57 -0
  282. package/src/common/errors/webex-errors.ts +6 -2
  283. package/src/common/logs/logger-proxy.ts +1 -1
  284. package/src/config.ts +5 -7
  285. package/src/constants.ts +165 -20
  286. package/src/controls-options-manager/constants.ts +5 -0
  287. package/src/controls-options-manager/enums.ts +18 -0
  288. package/src/controls-options-manager/index.ts +278 -0
  289. package/src/controls-options-manager/types.ts +59 -0
  290. package/src/controls-options-manager/util.ts +286 -0
  291. package/src/index.ts +34 -0
  292. package/src/interpretation/README.md +51 -0
  293. package/src/interpretation/collection.ts +19 -0
  294. package/src/interpretation/index.ts +182 -0
  295. package/src/interpretation/siLanguage.ts +18 -0
  296. package/src/locus-info/controlsUtils.ts +110 -0
  297. package/src/locus-info/index.ts +339 -21
  298. package/src/locus-info/mediaSharesUtils.ts +48 -0
  299. package/src/locus-info/parser.ts +2 -1
  300. package/src/locus-info/selfUtils.ts +86 -2
  301. package/src/media/index.ts +70 -142
  302. package/src/media/properties.ts +41 -104
  303. package/src/mediaQualityMetrics/config.ts +379 -377
  304. package/src/meeting/in-meeting-actions.ts +156 -0
  305. package/src/meeting/index.ts +1779 -1741
  306. package/src/meeting/locusMediaRequest.ts +309 -0
  307. package/src/meeting/muteState.ts +228 -132
  308. package/src/meeting/request.ts +100 -91
  309. package/src/meeting/request.type.ts +2 -0
  310. package/src/meeting/util.ts +422 -421
  311. package/src/meeting-info/meeting-info-v2.ts +134 -13
  312. package/src/meeting-info/utilv2.ts +13 -3
  313. package/src/meetings/collection.ts +20 -0
  314. package/src/meetings/index.ts +385 -83
  315. package/src/meetings/meetings.types.ts +12 -0
  316. package/src/meetings/request.ts +3 -1
  317. package/src/meetings/util.ts +103 -4
  318. package/src/member/index.ts +42 -0
  319. package/src/member/types.ts +24 -0
  320. package/src/member/util.ts +95 -1
  321. package/src/members/collection.ts +8 -0
  322. package/src/members/index.ts +108 -6
  323. package/src/members/request.ts +98 -17
  324. package/src/members/types.ts +28 -0
  325. package/src/members/util.ts +319 -240
  326. package/src/metrics/config.ts +49 -10
  327. package/src/metrics/constants.ts +2 -4
  328. package/src/metrics/index.ts +43 -27
  329. package/src/multistream/mediaRequestManager.ts +337 -63
  330. package/src/multistream/receiveSlot.ts +68 -26
  331. package/src/multistream/receiveSlotManager.ts +61 -38
  332. package/src/multistream/remoteMedia.ts +29 -3
  333. package/src/multistream/remoteMediaGroup.ts +61 -2
  334. package/src/multistream/remoteMediaManager.ts +260 -66
  335. package/src/networkQualityMonitor/index.ts +6 -6
  336. package/src/reachability/index.ts +75 -25
  337. package/src/reachability/request.ts +10 -5
  338. package/src/reactions/constants.ts +4 -0
  339. package/src/reactions/reactions.ts +4 -4
  340. package/src/reactions/reactions.type.ts +28 -3
  341. package/src/reconnection-manager/index.ts +53 -32
  342. package/src/recording-controller/enums.ts +8 -0
  343. package/src/recording-controller/index.ts +315 -0
  344. package/src/recording-controller/util.ts +58 -0
  345. package/src/roap/index.ts +21 -30
  346. package/src/roap/request.ts +51 -52
  347. package/src/roap/turnDiscovery.ts +51 -27
  348. package/src/statsAnalyzer/global.ts +1 -94
  349. package/src/statsAnalyzer/index.ts +380 -390
  350. package/src/statsAnalyzer/mqaUtil.ts +106 -99
  351. package/test/integration/spec/converged-space-meetings.js +233 -0
  352. package/test/integration/spec/journey.js +331 -254
  353. package/test/integration/spec/space-meeting.js +77 -4
  354. package/test/unit/spec/annotation/index.ts +436 -0
  355. package/test/unit/spec/breakouts/breakout.ts +233 -0
  356. package/test/unit/spec/breakouts/collection.ts +15 -0
  357. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  358. package/test/unit/spec/breakouts/events.ts +77 -0
  359. package/test/unit/spec/breakouts/index.ts +1790 -0
  360. package/test/unit/spec/breakouts/request.ts +104 -0
  361. package/test/unit/spec/breakouts/utils.js +72 -0
  362. package/test/unit/spec/controls-options-manager/index.js +287 -0
  363. package/test/unit/spec/controls-options-manager/util.js +518 -0
  364. package/test/unit/spec/fixture/locus.js +1 -0
  365. package/test/unit/spec/interpretation/collection.ts +15 -0
  366. package/test/unit/spec/interpretation/index.ts +329 -0
  367. package/test/unit/spec/interpretation/siLanguage.ts +26 -0
  368. package/test/unit/spec/locus-info/controlsUtils.js +323 -30
  369. package/test/unit/spec/locus-info/index.js +680 -4
  370. package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
  371. package/test/unit/spec/locus-info/selfConstant.js +48 -0
  372. package/test/unit/spec/locus-info/selfUtils.js +275 -0
  373. package/test/unit/spec/media/index.ts +118 -22
  374. package/test/unit/spec/media/properties.ts +9 -9
  375. package/test/unit/spec/meeting/in-meeting-actions.ts +76 -0
  376. package/test/unit/spec/meeting/index.js +2695 -1513
  377. package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
  378. package/test/unit/spec/meeting/muteState.js +370 -208
  379. package/test/unit/spec/meeting/request.js +354 -42
  380. package/test/unit/spec/meeting/utils.js +270 -156
  381. package/test/unit/spec/meeting-info/meetinginfov2.js +383 -5
  382. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  383. package/test/unit/spec/meetings/collection.js +14 -0
  384. package/test/unit/spec/meetings/index.js +866 -120
  385. package/test/unit/spec/meetings/utils.js +206 -2
  386. package/test/unit/spec/member/index.js +31 -0
  387. package/test/unit/spec/member/util.js +408 -32
  388. package/test/unit/spec/members/index.js +320 -1
  389. package/test/unit/spec/members/request.js +206 -27
  390. package/test/unit/spec/members/utils.js +184 -0
  391. package/test/unit/spec/metrics/index.js +98 -0
  392. package/test/unit/spec/multistream/mediaRequestManager.ts +1012 -109
  393. package/test/unit/spec/multistream/receiveSlot.ts +77 -18
  394. package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
  395. package/test/unit/spec/multistream/remoteMedia.ts +32 -2
  396. package/test/unit/spec/multistream/remoteMediaGroup.ts +271 -5
  397. package/test/unit/spec/multistream/remoteMediaManager.ts +672 -65
  398. package/test/unit/spec/networkQualityMonitor/index.js +4 -4
  399. package/test/unit/spec/reachability/index.ts +176 -25
  400. package/test/unit/spec/reachability/request.js +66 -0
  401. package/test/unit/spec/reconnection-manager/index.js +46 -13
  402. package/test/unit/spec/recording-controller/index.js +231 -0
  403. package/test/unit/spec/recording-controller/util.js +102 -0
  404. package/test/unit/spec/roap/index.ts +21 -51
  405. package/test/unit/spec/roap/request.ts +187 -0
  406. package/test/unit/spec/roap/turnDiscovery.ts +73 -34
  407. package/test/unit/spec/stats-analyzer/index.js +94 -43
  408. package/test/utils/constants.js +9 -0
  409. package/test/utils/integrationTestUtils.js +46 -0
  410. package/test/utils/testUtils.js +0 -45
  411. package/test/utils/webex-config.js +4 -0
  412. package/test/utils/webex-test-users.js +7 -3
  413. package/tsconfig.json +6 -0
  414. package/dist/media/internal-media-core-wrapper.js +0 -18
  415. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  416. package/dist/meeting/effectsState.js +0 -262
  417. package/dist/meeting/effectsState.js.map +0 -1
  418. package/dist/multistream/multistreamMedia.js +0 -106
  419. package/dist/multistream/multistreamMedia.js.map +0 -1
  420. package/src/index.js +0 -15
  421. package/src/media/internal-media-core-wrapper.ts +0 -9
  422. package/src/meeting/effectsState.ts +0 -211
  423. package/src/multistream/multistreamMedia.ts +0 -93
  424. package/test/unit/spec/meeting/effectsState.js +0 -281
@@ -0,0 +1,4 @@
1
+ declare const ENABLED = "enabled";
2
+ declare const CAN_SET = "canSet";
3
+ declare const CAN_UNSET = "canUnset";
4
+ export { ENABLED, CAN_SET, CAN_UNSET };
@@ -0,0 +1,15 @@
1
+ declare enum Setting {
2
+ disallowUnmute = "DisallowUnmute",
3
+ muteOnEntry = "MuteOnEntry",
4
+ muted = "Muted"
5
+ }
6
+ declare enum Control {
7
+ audio = "audio",
8
+ raiseHand = "raiseHand",
9
+ reactions = "reactions",
10
+ shareControl = "shareControl",
11
+ video = "video",
12
+ viewTheParticipantList = "viewTheParticipantList"
13
+ }
14
+ export { Control, Setting };
15
+ export default Setting;
@@ -0,0 +1,136 @@
1
+ import MeetingRequest from '../meeting/request';
2
+ import { ControlConfig } from './types';
3
+ /**
4
+ * docs
5
+ * https://sqbu-github.cisco.com/pages/WebExSquared/locus/guides/mute.html
6
+ * https://confluence-eng-gpk2.cisco.com/conf/display/LOCUS/Hard+Mute+and+Audio+Privacy#HardMuteandAudioPrivacy-SelfMuteonEntry
7
+ * https://confluence-eng-gpk2.cisco.com/conf/pages/viewpage.action?spaceKey=UC&title=WEBEX-124454%3A+UCF%3A+Hard+mute+support+for+Teams+joining+Webex+meeting
8
+ * https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-180867
9
+ * https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-393351
10
+ */
11
+ /**
12
+ * @description ControlsOptionsManager is responsible for handling the behavior of participant controls when somebody joins a meeting
13
+ * @export
14
+ * @private
15
+ * @class Recording
16
+ */
17
+ export default class ControlsOptionsManager {
18
+ /**
19
+ * @instance
20
+ * @type {MeetingRequest}
21
+ * @private
22
+ * @memberof ControlsOptionsManager
23
+ */
24
+ private request;
25
+ /**
26
+ * @instance
27
+ * @type {Array}
28
+ * @private
29
+ * @memberof ControlsOptionsManager
30
+ */
31
+ private displayHints;
32
+ /**
33
+ * @instance
34
+ * @type {string}
35
+ * @private
36
+ * @memberof ControlsOptionsManager
37
+ */
38
+ private locusUrl;
39
+ /**
40
+ * @param {MeetingRequest} request
41
+ * @param {Object} options
42
+ * @constructor
43
+ * @memberof ControlsOptionsManager
44
+ */
45
+ constructor(request: MeetingRequest, options?: {
46
+ locusUrl: string;
47
+ displayHints?: Array<string>;
48
+ });
49
+ /**
50
+ * @param {MeetingRequest} request
51
+ * @returns {void}
52
+ * @private
53
+ * @memberof ControlsOptionsManager
54
+ */
55
+ private initialize;
56
+ /**
57
+ * @param {Object} options
58
+ * @returns {void}
59
+ * @public
60
+ * @memberof ControlsOptionsManager
61
+ */
62
+ set(options?: {
63
+ locusUrl: string;
64
+ displayHints?: Array<string>;
65
+ }): void;
66
+ /**
67
+ * @param {string} url
68
+ * @returns {void}
69
+ * @public
70
+ * @memberof ControlsOptionsManager
71
+ */
72
+ setLocusUrl(url: string): void;
73
+ /**
74
+ * @param {Array} hints
75
+ * @returns {void}
76
+ * @public
77
+ * @memberof ControlsOptionsManager
78
+ */
79
+ setDisplayHints(hints: Array<string>): void;
80
+ /**
81
+ * @returns {string}
82
+ * @public
83
+ * @memberof ControlsOptionsManager
84
+ */
85
+ getLocusUrl(): string;
86
+ /**
87
+ * @returns {Array}
88
+ * @public
89
+ * @memberof ControlsOptionsManager
90
+ */
91
+ getDisplayHints(): string[];
92
+ /**
93
+ * @param {Object} options
94
+ * @returns {void}
95
+ * @private
96
+ * @memberof ControlsOptionsManager
97
+ */
98
+ private extract;
99
+ /**
100
+ * Set controls for this meeting.
101
+ *
102
+ * @param {Array<ControlConfig>} controls - Spread Array of ControlConfigs
103
+ * @returns {Promise<Array<any>>}- Promise resolving if the request was successful.
104
+ */
105
+ update(...controls: Array<ControlConfig>): Promise<any>;
106
+ /**
107
+ * @param {Setting} setting
108
+ * @private
109
+ * @memberof ControlsOptionsManager
110
+ * @returns {Promise}
111
+ */
112
+ private setControls;
113
+ /**
114
+ * @public
115
+ * @param {boolean} enabled
116
+ * @memberof ControlsOptionsManager
117
+ * @returns {Promise}
118
+ */
119
+ setMuteOnEntry(enabled: boolean): Promise<any>;
120
+ /**
121
+ * @public
122
+ * @param {boolean} enabled
123
+ * @memberof ControlsOptionsManager
124
+ * @returns {Promise}
125
+ */
126
+ setDisallowUnmute(enabled: boolean): Promise<any>;
127
+ /**
128
+ * @public
129
+ * @param {boolean} mutedEnabled
130
+ * @param {boolean} disallowUnmuteEnabled
131
+ * @param {boolean} muteOnEntryEnabled
132
+ * @memberof ControlsOptionsManager
133
+ * @returns {Promise}
134
+ */
135
+ setMuteAll(mutedEnabled: boolean, disallowUnmuteEnabled: boolean, muteOnEntryEnabled: boolean): Promise<any>;
136
+ }
@@ -0,0 +1,43 @@
1
+ import { Control } from './enums';
2
+ export interface ControlProperties {
3
+ /**
4
+ * A list of additional properties that apply to various specific settings.
5
+ *
6
+ * @remarks
7
+ * The values stored here, per the service, are fully ambiguous, an can vary
8
+ * depending on which control scope is being configured.
9
+ */
10
+ [key: string]: boolean;
11
+ }
12
+ export interface AudioProperties {
13
+ muted?: boolean;
14
+ disallowUnmute?: boolean;
15
+ muteOnEntry?: boolean;
16
+ }
17
+ export interface RaiseHandProperties {
18
+ enabled?: boolean;
19
+ }
20
+ export interface ReactionsProperties {
21
+ enabled?: boolean;
22
+ showDisplayNameWithReactions?: boolean;
23
+ }
24
+ export interface ShareControlProperties {
25
+ control?: 'ANYONE' | 'MODERATOR_PRESENTER';
26
+ }
27
+ export interface VideoProperties {
28
+ enabled?: boolean;
29
+ }
30
+ export interface ViewTheParticipantListProperties {
31
+ enabled?: boolean;
32
+ }
33
+ export type Properties = AudioProperties | RaiseHandProperties | ReactionsProperties | ShareControlProperties | VideoProperties | ViewTheParticipantListProperties;
34
+ export interface ControlConfig<Props = Properties> {
35
+ /**
36
+ * The scope of the control within this object.
37
+ */
38
+ scope: Control;
39
+ /**
40
+ * The properties to assign to this control.
41
+ */
42
+ properties: Props;
43
+ }
@@ -0,0 +1 @@
1
+ export default Utils;
@@ -0,0 +1,7 @@
1
+ import Meetings from './meetings';
2
+ export { getDevices, LocalTrack, LocalDisplayTrack, LocalTrackEvents, type TrackMuteEvent, type ServerMuteReason, LocalMicrophoneTrackEvents, LocalCameraTrackEvents, LocalMicrophoneTrack, LocalCameraTrack, createMicrophoneTrack, createCameraTrack, createDisplayTrack, } from '@webex/media-helpers';
3
+ export default Meetings;
4
+ export * as CONSTANTS from './constants';
5
+ export * as REACTIONS from './reactions/reactions';
6
+ export { RemoteMedia } from './multistream/remoteMedia';
7
+ export { default as TriggerProxy } from './common/events/trigger-proxy';
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.
3
+ */
4
+ declare const SILanguageCollection: any;
5
+ export default SILanguageCollection;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @class SimultaneousInterpretation
3
+ */
4
+ declare const SimultaneousInterpretation: any;
5
+ export default SimultaneousInterpretation;
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.
3
+ */
4
+ declare const SILanguage: any;
5
+ export default SILanguage;
@@ -0,0 +1,2 @@
1
+ declare const ControlsUtils: any;
2
+ export default ControlsUtils;
@@ -0,0 +1,2 @@
1
+ declare const EmbeddedAppsUtils: any;
2
+ export default EmbeddedAppsUtils;
@@ -0,0 +1,2 @@
1
+ declare const FullState: any;
2
+ export default FullState;
@@ -0,0 +1,2 @@
1
+ declare const HostUtils: any;
2
+ export default HostUtils;
@@ -0,0 +1,315 @@
1
+ import EventsScope from '../common/events/events-scope';
2
+ /**
3
+ * @description LocusInfo extends ChildEmitter to convert locusInfo info a private emitter to parent object
4
+ * @export
5
+ * @private
6
+ * @class LocusInfo
7
+ */
8
+ export default class LocusInfo extends EventsScope {
9
+ compareAndUpdateFlags: any;
10
+ emitChange: any;
11
+ locusParser: any;
12
+ meetingId: any;
13
+ parsedLocus: any;
14
+ updateMeeting: any;
15
+ webex: any;
16
+ aclUrl: any;
17
+ baseSequence: any;
18
+ created: any;
19
+ deltaParticipants: any;
20
+ identities: any;
21
+ membership: any;
22
+ participants: any;
23
+ participantsUrl: any;
24
+ replaces: any;
25
+ scheduledMeeting: any;
26
+ sequence: any;
27
+ controls: any;
28
+ conversationUrl: any;
29
+ embeddedApps: any;
30
+ fullState: any;
31
+ host: any;
32
+ info: any;
33
+ roles: any;
34
+ mediaShares: any;
35
+ replace: any;
36
+ url: any;
37
+ services: any;
38
+ mainSessionLocusCache: any;
39
+ /**
40
+ * Constructor
41
+ * @param {boolean} updateMeeting true if the meeting should be updated
42
+ * @param {object} webex
43
+ * @param {string} meetingId
44
+ * @returns {undefined}
45
+ */
46
+ constructor(updateMeeting: any, webex: any, meetingId: any);
47
+ /**
48
+ * Apply locus delta data to meeting
49
+ * @param {string} action Locus delta action
50
+ * @param {Locus} locus
51
+ * @param {Meeting} meeting
52
+ * @returns {undefined}
53
+ */
54
+ applyLocusDeltaData(action: string, locus: any, meeting: any): void;
55
+ /**
56
+ * Adds locus delta to parser's queue
57
+ * and registers a function handler
58
+ * to recieve parsed actions from queue.
59
+ * @param {Locus} locus
60
+ * @param {Meeting} meeting
61
+ * @returns {undefined}
62
+ */
63
+ handleLocusDelta(locus: any, meeting: any): void;
64
+ /**
65
+ * @param {Locus} locus
66
+ * @returns {undefined}
67
+ * @memberof LocusInfo
68
+ */
69
+ init(locus?: any): void;
70
+ /**
71
+ * @param {Object} locus
72
+ * @returns {undefined}
73
+ * @memberof LocusInfo
74
+ */
75
+ initialSetup(locus: object): void;
76
+ /**
77
+ * @param {Meeting} meeting
78
+ * @param {Object} data
79
+ * @returns {undefined}
80
+ * @memberof LocusInfo
81
+ */
82
+ parse(meeting: any, data: any): void;
83
+ /**
84
+ * @param {String} scope
85
+ * @param {String} eventName
86
+ * @param {Array} args
87
+ * @returns {undefined}
88
+ * @memberof LocusInfo
89
+ */
90
+ emitScoped(scope?: any, eventName?: string, args?: any): boolean;
91
+ /**
92
+ * updates the locus with full locus object
93
+ * @param {object} locus locus object
94
+ * @param {string} eventType particulat locus event
95
+ * @returns {object} null
96
+ * @memberof LocusInfo
97
+ */
98
+ onFullLocus(locus: any, eventType?: string): void;
99
+ /**
100
+ * @param {String} eventType
101
+ * @returns {undefined}
102
+ * @memberof LocusInfo
103
+ */
104
+ handleOneOnOneEvent(eventType: string): void;
105
+ /**
106
+ * @param {Object} locus
107
+ * @returns {undefined}
108
+ * @memberof LocusInfo
109
+ */
110
+ onDeltaLocus(locus: any): void;
111
+ /**
112
+ * @param {Object} locus
113
+ * @returns {undefined}
114
+ * @memberof LocusInfo
115
+ */
116
+ updateLocusInfo(locus: any): void;
117
+ /**
118
+ * @param {Array} participants
119
+ * @param {Object} self
120
+ * @returns {Array}
121
+ * @memberof LocusInfo
122
+ */
123
+ getLocusPartner(participants: Array<any>, self: any): any;
124
+ /**
125
+ * @returns {undefined}
126
+ * @memberof LocusInfo
127
+ */
128
+ isMeetingActive(): void;
129
+ /**
130
+ * checks if the host permissions have changed while in the meeting
131
+ * This would be the case if your role as host or moderator has been updated
132
+ * @returns {undefined}
133
+ * @memberof LocusInfo
134
+ */
135
+ compareAndUpdate(): void;
136
+ /**
137
+ * compared the self object to check if the user has host permissions
138
+ * @returns {undefined}
139
+ * @memberof LocusInfo
140
+ */
141
+ compareSelfAndHost(): void;
142
+ /**
143
+ * Update the deltaParticipants property of this object based on a list of
144
+ * provided participants.
145
+ *
146
+ * @param {Array} [participants] - The participants to update against.
147
+ * @returns {void}
148
+ */
149
+ updateParticipantDeltas(participants?: Array<any>): void;
150
+ /**
151
+ * update meeting's members
152
+ * @param {Object} participants new participants object
153
+ * @param {Boolean} isReplace is replace the whole members
154
+ * @returns {Array} updatedParticipants
155
+ * @memberof LocusInfo
156
+ */
157
+ updateParticipants(participants: object, isReplace?: boolean): void;
158
+ /**
159
+ * @param {Object} controls
160
+ * @param {Object} self
161
+ * @returns {undefined}
162
+ * @memberof LocusInfo
163
+ */
164
+ updateControls(controls: object, self: object): void;
165
+ /**
166
+ * @param {String} conversationUrl
167
+ * @param {Object} info
168
+ * @returns {undefined}
169
+ * @memberof LocusInfo
170
+ */
171
+ updateConversationUrl(conversationUrl: string, info: any): void;
172
+ /**
173
+ * @param {Object} created
174
+ * @returns {undefined}
175
+ * @memberof LocusInfo
176
+ */
177
+ updateCreated(created: object): void;
178
+ /**
179
+ * @param {Object} services
180
+ * @returns {undefined}
181
+ * @memberof LocusInfo
182
+ */
183
+ updateServices(services: Record<'breakout' | 'record', {
184
+ url: string;
185
+ }>): void;
186
+ /**
187
+ * @param {Object} fullState
188
+ * @returns {undefined}
189
+ * @memberof LocusInfo
190
+ */
191
+ updateFullState(fullState: object): void;
192
+ /**
193
+ * handles when the locus.host is updated
194
+ * @param {Object} host the locus.host property
195
+ * @returns {undefined}
196
+ * @memberof LocusInfo
197
+ * emits internal event locus_info_update_host
198
+ */
199
+ updateHostInfo(host: object): void;
200
+ /**
201
+ * @param {Object} info
202
+ * @param {Object} self
203
+ * @returns {undefined}
204
+ * @memberof LocusInfo
205
+ */
206
+ updateMeetingInfo(info: object, self?: object): void;
207
+ /**
208
+ * @param {Object} embeddedApps
209
+ * @returns {undefined}
210
+ * @memberof LocusInfo
211
+ */
212
+ updateEmbeddedApps(embeddedApps: object): void;
213
+ /**
214
+ * handles when the locus.mediaShares is updated
215
+ * @param {Object} mediaShares the locus.mediaShares property
216
+ * @returns {undefined}
217
+ * @memberof LocusInfo
218
+ * emits internal event locus_info_update_media_shares
219
+ */
220
+ updateMediaShares(mediaShares: object): void;
221
+ /**
222
+ * @param {String} participantsUrl
223
+ * @returns {undefined}
224
+ * @memberof LocusInfo
225
+ */
226
+ updateParticipantsUrl(participantsUrl: string): void;
227
+ /**
228
+ * @param {Object} replace
229
+ * @returns {undefined}
230
+ * @memberof LocusInfo
231
+ */
232
+ updateReplace(replace: object): void;
233
+ /**
234
+ * handles when the locus.self is updated
235
+ * @param {Object} self the locus.mediaShares property
236
+ * @param {Array} participants the locus.participants property
237
+ * @returns {undefined}
238
+ * @memberof LocusInfo
239
+ * emits internal events self_admitted_guest, self_unadmitted_guest, locus_info_update_self
240
+ */
241
+ updateSelf(self: any, participants: Array<any>): void;
242
+ /**
243
+ * handles when the locus.url is updated
244
+ * @param {String} url
245
+ * @returns {undefined}
246
+ * emits internal event locus_info_update_url
247
+ */
248
+ updateLocusUrl(url: string): void;
249
+ /**
250
+ * @param {String} aclUrl
251
+ * @returns {undefined}
252
+ * @memberof LocusInfo
253
+ */
254
+ updateAclUrl(aclUrl: string): void;
255
+ /**
256
+ * @param {Number} baseSequence
257
+ * @returns {undefined}
258
+ * @memberof LocusInfo
259
+ */
260
+ updateBasequence(baseSequence: number): void;
261
+ /**
262
+ * @param {Number} sequence
263
+ * @returns {undefined}
264
+ * @memberof LocusInfo
265
+ */
266
+ updateSequence(sequence: number): void;
267
+ /**
268
+ * @param {Object} membership
269
+ * @returns {undefined}
270
+ * @memberof LocusInfo
271
+ */
272
+ updateMemberShip(membership: object): void;
273
+ /**
274
+ * @param {Array} identities
275
+ * @returns {undefined}
276
+ * @memberof LocusInfo
277
+ */
278
+ updateIdentifiers(identities: Array<any>): void;
279
+ /**
280
+ * check the locus is main session's one or not, if is main session's, update main session cache
281
+ * @param {Object} locus
282
+ * @returns {undefined}
283
+ * @memberof LocusInfo
284
+ */
285
+ updateLocusCache(locus: any): void;
286
+ /**
287
+ * if return from breakout to main session, need to use cached main session DTO since locus won't send the full locus (participants)
288
+ * if join breakout from main session, need to query main locus url (if response with 403 means no privilege, need to clear the cache)
289
+ * @param {Object} newLocus
290
+ * @returns {Object}
291
+ * @memberof LocusInfo
292
+ */
293
+ getTheLocusToUpdate(newLocus: any): any;
294
+ /**
295
+ * merge participants by participant id
296
+ * @param {Array} participants
297
+ * @param {Array} sourceParticipants
298
+ * @returns {Array} merged participants
299
+ * @memberof LocusInfo
300
+ */
301
+ mergeParticipants(participants: any, sourceParticipants: any): any;
302
+ /**
303
+ * need cache main sessions' participants since locus will not send the full list when cohost/host leave breakout
304
+ * @param {Object} mainLocus
305
+ * @returns {undefined}
306
+ * @memberof LocusInfo
307
+ */
308
+ updateMainSessionLocusCache(mainLocus: any): void;
309
+ /**
310
+ * clear main session cache
311
+ * @returns {undefined}
312
+ * @memberof LocusInfo
313
+ */
314
+ clearMainSessionLocusCache(): void;
315
+ }
@@ -0,0 +1,2 @@
1
+ declare const InfoUtils: any;
2
+ export default InfoUtils;
@@ -0,0 +1,2 @@
1
+ declare const MediaSharesUtils: any;
2
+ export default MediaSharesUtils;