@webex/plugin-meetings 3.0.0-beta.2 → 3.0.0-beta.200

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 (576) hide show
  1. package/README.md +45 -7
  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/parameter.js +5 -33
  39. package/dist/common/errors/parameter.js.map +1 -1
  40. package/dist/common/errors/password-error.js +10 -24
  41. package/dist/common/errors/password-error.js.map +1 -1
  42. package/dist/common/errors/permission.js +9 -23
  43. package/dist/common/errors/permission.js.map +1 -1
  44. package/dist/common/errors/reconnection-in-progress.js +0 -17
  45. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  46. package/dist/common/errors/reconnection.js +10 -24
  47. package/dist/common/errors/reconnection.js.map +1 -1
  48. package/dist/common/errors/stats.js +10 -24
  49. package/dist/common/errors/stats.js.map +1 -1
  50. package/dist/common/errors/webex-errors.js +9 -43
  51. package/dist/common/errors/webex-errors.js.map +1 -1
  52. package/dist/common/errors/webex-meetings-error.js +5 -25
  53. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  54. package/dist/common/events/events-scope.js +0 -22
  55. package/dist/common/events/events-scope.js.map +1 -1
  56. package/dist/common/events/events.js +0 -23
  57. package/dist/common/events/events.js.map +1 -1
  58. package/dist/common/events/trigger-proxy.js +0 -12
  59. package/dist/common/events/trigger-proxy.js.map +1 -1
  60. package/dist/common/events/util.js +0 -15
  61. package/dist/common/events/util.js.map +1 -1
  62. package/dist/common/logs/logger-config.js +0 -4
  63. package/dist/common/logs/logger-config.js.map +1 -1
  64. package/dist/common/logs/logger-proxy.js +1 -8
  65. package/dist/common/logs/logger-proxy.js.map +1 -1
  66. package/dist/common/logs/request.js +37 -60
  67. package/dist/common/logs/request.js.map +1 -1
  68. package/dist/common/queue.js +28 -23
  69. package/dist/common/queue.js.map +1 -1
  70. package/dist/config.js +8 -13
  71. package/dist/config.js.map +1 -1
  72. package/dist/constants.js +250 -66
  73. package/dist/constants.js.map +1 -1
  74. package/dist/controls-options-manager/constants.js +14 -0
  75. package/dist/controls-options-manager/constants.js.map +1 -0
  76. package/dist/controls-options-manager/enums.js +27 -0
  77. package/dist/controls-options-manager/enums.js.map +1 -0
  78. package/dist/controls-options-manager/index.js +297 -0
  79. package/dist/controls-options-manager/index.js.map +1 -0
  80. package/dist/controls-options-manager/types.js +7 -0
  81. package/dist/controls-options-manager/types.js.map +1 -0
  82. package/dist/controls-options-manager/util.js +319 -0
  83. package/dist/controls-options-manager/util.js.map +1 -0
  84. package/dist/index.js +108 -17
  85. package/dist/index.js.map +1 -1
  86. package/dist/interpretation/collection.js +23 -0
  87. package/dist/interpretation/collection.js.map +1 -0
  88. package/dist/interpretation/index.js +366 -0
  89. package/dist/interpretation/index.js.map +1 -0
  90. package/dist/interpretation/siLanguage.js +25 -0
  91. package/dist/interpretation/siLanguage.js.map +1 -0
  92. package/dist/locus-info/controlsUtils.js +101 -29
  93. package/dist/locus-info/controlsUtils.js.map +1 -1
  94. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  95. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  96. package/dist/locus-info/fullState.js +0 -15
  97. package/dist/locus-info/fullState.js.map +1 -1
  98. package/dist/locus-info/hostUtils.js +4 -12
  99. package/dist/locus-info/hostUtils.js.map +1 -1
  100. package/dist/locus-info/index.js +532 -240
  101. package/dist/locus-info/index.js.map +1 -1
  102. package/dist/locus-info/infoUtils.js +3 -37
  103. package/dist/locus-info/infoUtils.js.map +1 -1
  104. package/dist/locus-info/mediaSharesUtils.js +54 -38
  105. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  106. package/dist/locus-info/parser.js +284 -154
  107. package/dist/locus-info/parser.js.map +1 -1
  108. package/dist/locus-info/selfUtils.js +110 -92
  109. package/dist/locus-info/selfUtils.js.map +1 -1
  110. package/dist/media/index.js +95 -226
  111. package/dist/media/index.js.map +1 -1
  112. package/dist/media/properties.js +99 -194
  113. package/dist/media/properties.js.map +1 -1
  114. package/dist/media/util.js +2 -9
  115. package/dist/media/util.js.map +1 -1
  116. package/dist/mediaQualityMetrics/config.js +505 -495
  117. package/dist/mediaQualityMetrics/config.js.map +1 -1
  118. package/dist/meeting/in-meeting-actions.js +83 -14
  119. package/dist/meeting/in-meeting-actions.js.map +1 -1
  120. package/dist/meeting/index.js +3478 -3563
  121. package/dist/meeting/index.js.map +1 -1
  122. package/dist/meeting/locusMediaRequest.js +291 -0
  123. package/dist/meeting/locusMediaRequest.js.map +1 -0
  124. package/dist/meeting/muteState.js +247 -183
  125. package/dist/meeting/muteState.js.map +1 -1
  126. package/dist/meeting/request.js +344 -344
  127. package/dist/meeting/request.js.map +1 -1
  128. package/dist/meeting/request.type.js +7 -0
  129. package/dist/meeting/request.type.js.map +1 -0
  130. package/dist/meeting/state.js +21 -31
  131. package/dist/meeting/state.js.map +1 -1
  132. package/dist/meeting/util.js +529 -588
  133. package/dist/meeting/util.js.map +1 -1
  134. package/dist/meeting-info/collection.js +6 -25
  135. package/dist/meeting-info/collection.js.map +1 -1
  136. package/dist/meeting-info/index.js +62 -39
  137. package/dist/meeting-info/index.js.map +1 -1
  138. package/dist/meeting-info/meeting-info-v2.js +328 -283
  139. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  140. package/dist/meeting-info/request.js +3 -15
  141. package/dist/meeting-info/request.js.map +1 -1
  142. package/dist/meeting-info/util.js +98 -183
  143. package/dist/meeting-info/util.js.map +1 -1
  144. package/dist/meeting-info/utilv2.js +156 -232
  145. package/dist/meeting-info/utilv2.js.map +1 -1
  146. package/dist/meetings/collection.js +26 -19
  147. package/dist/meetings/collection.js.map +1 -1
  148. package/dist/meetings/index.js +795 -574
  149. package/dist/meetings/index.js.map +1 -1
  150. package/dist/meetings/meetings.types.js +7 -0
  151. package/dist/meetings/meetings.types.js.map +1 -0
  152. package/dist/meetings/request.js +26 -41
  153. package/dist/meetings/request.js.map +1 -1
  154. package/dist/meetings/util.js +186 -155
  155. package/dist/meetings/util.js.map +1 -1
  156. package/dist/member/index.js +126 -85
  157. package/dist/member/index.js.map +1 -1
  158. package/dist/member/types.js +25 -0
  159. package/dist/member/types.js.map +1 -0
  160. package/dist/member/util.js +147 -88
  161. package/dist/member/util.js.map +1 -1
  162. package/dist/members/collection.js +13 -12
  163. package/dist/members/collection.js.map +1 -1
  164. package/dist/members/index.js +178 -204
  165. package/dist/members/index.js.map +1 -1
  166. package/dist/members/request.js +113 -68
  167. package/dist/members/request.js.map +1 -1
  168. package/dist/members/types.js +15 -0
  169. package/dist/members/types.js.map +1 -0
  170. package/dist/members/util.js +314 -260
  171. package/dist/members/util.js.map +1 -1
  172. package/dist/metrics/constants.js +4 -7
  173. package/dist/metrics/constants.js.map +1 -1
  174. package/dist/metrics/index.js +11 -558
  175. package/dist/metrics/index.js.map +1 -1
  176. package/dist/multistream/mediaRequestManager.js +264 -50
  177. package/dist/multistream/mediaRequestManager.js.map +1 -1
  178. package/dist/multistream/receiveSlot.js +58 -65
  179. package/dist/multistream/receiveSlot.js.map +1 -1
  180. package/dist/multistream/receiveSlotManager.js +76 -95
  181. package/dist/multistream/receiveSlotManager.js.map +1 -1
  182. package/dist/multistream/remoteMedia.js +62 -76
  183. package/dist/multistream/remoteMedia.js.map +1 -1
  184. package/dist/multistream/remoteMediaGroup.js +66 -43
  185. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  186. package/dist/multistream/remoteMediaManager.js +502 -442
  187. package/dist/multistream/remoteMediaManager.js.map +1 -1
  188. package/dist/networkQualityMonitor/index.js +40 -59
  189. package/dist/networkQualityMonitor/index.js.map +1 -1
  190. package/dist/personal-meeting-room/index.js +21 -45
  191. package/dist/personal-meeting-room/index.js.map +1 -1
  192. package/dist/personal-meeting-room/request.js +1 -31
  193. package/dist/personal-meeting-room/request.js.map +1 -1
  194. package/dist/personal-meeting-room/util.js +0 -13
  195. package/dist/personal-meeting-room/util.js.map +1 -1
  196. package/dist/reachability/index.js +192 -191
  197. package/dist/reachability/index.js.map +1 -1
  198. package/dist/reachability/request.js +15 -23
  199. package/dist/reachability/request.js.map +1 -1
  200. package/dist/reactions/constants.js +13 -0
  201. package/dist/reactions/constants.js.map +1 -0
  202. package/dist/reactions/reactions.js +109 -0
  203. package/dist/reactions/reactions.js.map +1 -0
  204. package/dist/reactions/reactions.type.js +36 -0
  205. package/dist/reactions/reactions.type.js.map +1 -0
  206. package/dist/reconnection-manager/index.js +384 -476
  207. package/dist/reconnection-manager/index.js.map +1 -1
  208. package/dist/recording-controller/enums.js +17 -0
  209. package/dist/recording-controller/enums.js.map +1 -0
  210. package/dist/recording-controller/index.js +363 -0
  211. package/dist/recording-controller/index.js.map +1 -0
  212. package/dist/recording-controller/util.js +64 -0
  213. package/dist/recording-controller/util.js.map +1 -0
  214. package/dist/roap/index.js +58 -91
  215. package/dist/roap/index.js.map +1 -1
  216. package/dist/roap/request.js +137 -135
  217. package/dist/roap/request.js.map +1 -1
  218. package/dist/roap/turnDiscovery.js +148 -100
  219. package/dist/roap/turnDiscovery.js.map +1 -1
  220. package/dist/rtcMetrics/constants.js +12 -0
  221. package/dist/rtcMetrics/constants.js.map +1 -0
  222. package/dist/rtcMetrics/index.js +115 -0
  223. package/dist/rtcMetrics/index.js.map +1 -0
  224. package/dist/statsAnalyzer/global.js +1 -95
  225. package/dist/statsAnalyzer/global.js.map +1 -1
  226. package/dist/statsAnalyzer/index.js +385 -460
  227. package/dist/statsAnalyzer/index.js.map +1 -1
  228. package/dist/statsAnalyzer/mqaUtil.js +143 -87
  229. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  230. package/dist/transcription/index.js +22 -47
  231. package/dist/transcription/index.js.map +1 -1
  232. package/dist/types/annotation/annotation.types.d.ts +42 -0
  233. package/dist/types/annotation/constants.d.ts +31 -0
  234. package/dist/types/annotation/index.d.ts +117 -0
  235. package/dist/types/breakouts/breakout.d.ts +8 -0
  236. package/dist/types/breakouts/collection.d.ts +5 -0
  237. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  238. package/dist/types/breakouts/events.d.ts +8 -0
  239. package/dist/types/breakouts/index.d.ts +5 -0
  240. package/dist/types/breakouts/request.d.ts +22 -0
  241. package/dist/types/breakouts/utils.d.ts +15 -0
  242. package/dist/types/common/browser-detection.d.ts +9 -0
  243. package/dist/types/common/collection.d.ts +48 -0
  244. package/dist/types/common/config.d.ts +2 -0
  245. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  246. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  247. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  248. package/dist/types/common/errors/media.d.ts +15 -0
  249. package/dist/types/common/errors/parameter.d.ts +15 -0
  250. package/dist/types/common/errors/password-error.d.ts +15 -0
  251. package/dist/types/common/errors/permission.d.ts +14 -0
  252. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  253. package/dist/types/common/errors/reconnection.d.ts +15 -0
  254. package/dist/types/common/errors/stats.d.ts +15 -0
  255. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  256. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  257. package/dist/types/common/events/events-scope.d.ts +17 -0
  258. package/dist/types/common/events/events.d.ts +12 -0
  259. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  260. package/dist/types/common/events/util.d.ts +2 -0
  261. package/dist/types/common/logs/logger-config.d.ts +2 -0
  262. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  263. package/dist/types/common/logs/request.d.ts +34 -0
  264. package/dist/types/common/queue.d.ts +34 -0
  265. package/dist/types/config.d.ts +72 -0
  266. package/dist/types/constants.d.ts +1016 -0
  267. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  268. package/dist/types/controls-options-manager/enums.d.ts +15 -0
  269. package/dist/types/controls-options-manager/index.d.ts +136 -0
  270. package/dist/types/controls-options-manager/types.d.ts +43 -0
  271. package/dist/types/controls-options-manager/util.d.ts +1 -0
  272. package/dist/types/index.d.ts +7 -0
  273. package/dist/types/interpretation/collection.d.ts +5 -0
  274. package/dist/types/interpretation/index.d.ts +5 -0
  275. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  276. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  277. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  278. package/dist/types/locus-info/fullState.d.ts +2 -0
  279. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  280. package/dist/types/locus-info/index.d.ts +322 -0
  281. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  282. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  283. package/dist/types/locus-info/parser.d.ts +271 -0
  284. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  285. package/dist/types/media/index.d.ts +34 -0
  286. package/dist/types/media/properties.d.ts +93 -0
  287. package/dist/types/media/util.d.ts +2 -0
  288. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  289. package/dist/types/meeting/in-meeting-actions.d.ts +153 -0
  290. package/dist/types/meeting/index.d.ts +1471 -0
  291. package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
  292. package/dist/types/meeting/muteState.d.ts +184 -0
  293. package/dist/types/meeting/request.d.ts +257 -0
  294. package/dist/types/meeting/request.type.d.ts +11 -0
  295. package/dist/types/meeting/state.d.ts +9 -0
  296. package/dist/types/meeting/util.d.ts +78 -0
  297. package/dist/types/meeting-info/collection.d.ts +20 -0
  298. package/dist/types/meeting-info/index.d.ts +62 -0
  299. package/dist/types/meeting-info/meeting-info-v2.d.ts +122 -0
  300. package/dist/types/meeting-info/request.d.ts +22 -0
  301. package/dist/types/meeting-info/util.d.ts +2 -0
  302. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  303. package/dist/types/meetings/collection.d.ts +31 -0
  304. package/dist/types/meetings/index.d.ts +367 -0
  305. package/dist/types/meetings/meetings.types.d.ts +4 -0
  306. package/dist/types/meetings/request.d.ts +27 -0
  307. package/dist/types/meetings/util.d.ts +18 -0
  308. package/dist/types/member/index.d.ts +159 -0
  309. package/dist/types/member/types.d.ts +32 -0
  310. package/dist/types/member/util.d.ts +2 -0
  311. package/dist/types/members/collection.d.ts +29 -0
  312. package/dist/types/members/index.d.ts +353 -0
  313. package/dist/types/members/request.d.ts +114 -0
  314. package/dist/types/members/types.d.ts +24 -0
  315. package/dist/types/members/util.d.ts +210 -0
  316. package/dist/types/metrics/constants.d.ts +55 -0
  317. package/dist/types/metrics/index.d.ts +45 -0
  318. package/dist/types/multistream/mediaRequestManager.d.ts +118 -0
  319. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  320. package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
  321. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  322. package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
  323. package/dist/types/multistream/remoteMediaManager.d.ts +277 -0
  324. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  325. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  326. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  327. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  328. package/dist/types/reachability/index.d.ts +152 -0
  329. package/dist/types/reachability/request.d.ts +37 -0
  330. package/dist/types/reactions/constants.d.ts +3 -0
  331. package/dist/types/reactions/reactions.d.ts +4 -0
  332. package/dist/types/reactions/reactions.type.d.ts +52 -0
  333. package/dist/types/reconnection-manager/index.d.ts +126 -0
  334. package/dist/types/recording-controller/enums.d.ts +7 -0
  335. package/dist/types/recording-controller/index.d.ts +208 -0
  336. package/dist/types/recording-controller/util.d.ts +14 -0
  337. package/dist/types/roap/index.d.ts +77 -0
  338. package/dist/types/roap/request.d.ts +36 -0
  339. package/dist/types/roap/turnDiscovery.d.ts +91 -0
  340. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  341. package/dist/types/rtcMetrics/index.d.ts +46 -0
  342. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  343. package/dist/types/statsAnalyzer/index.d.ts +200 -0
  344. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  345. package/dist/types/transcription/index.d.ts +64 -0
  346. package/internal-README.md +7 -6
  347. package/package.json +29 -21
  348. package/src/annotation/annotation.types.ts +50 -0
  349. package/src/annotation/constants.ts +36 -0
  350. package/src/annotation/index.ts +328 -0
  351. package/src/breakouts/README.md +220 -0
  352. package/src/breakouts/breakout.ts +188 -0
  353. package/src/breakouts/collection.ts +19 -0
  354. package/src/breakouts/edit-lock-error.ts +25 -0
  355. package/src/breakouts/events.ts +56 -0
  356. package/src/breakouts/index.ts +925 -0
  357. package/src/breakouts/request.ts +55 -0
  358. package/src/breakouts/utils.ts +57 -0
  359. package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
  360. package/src/common/collection.ts +9 -7
  361. package/src/common/{config.js → config.ts} +1 -1
  362. package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
  363. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
  364. package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
  365. package/src/common/errors/{media.js → media.ts} +11 -7
  366. package/src/common/errors/parameter.ts +11 -7
  367. package/src/common/errors/{password-error.js → password-error.ts} +11 -7
  368. package/src/common/errors/{permission.js → permission.ts} +10 -6
  369. package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
  370. package/src/common/errors/{stats.js → stats.ts} +11 -7
  371. package/src/common/errors/{webex-errors.js → webex-errors.ts} +14 -9
  372. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
  373. package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
  374. package/src/common/events/{events.js → events.ts} +5 -1
  375. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
  376. package/src/common/events/{util.js → util.ts} +2 -3
  377. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  378. package/src/common/logs/logger-proxy.ts +44 -0
  379. package/src/common/logs/{request.js → request.ts} +22 -9
  380. package/src/common/queue.ts +22 -9
  381. package/src/{config.js → config.ts} +17 -17
  382. package/src/constants.ts +197 -22
  383. package/src/controls-options-manager/constants.ts +5 -0
  384. package/src/controls-options-manager/enums.ts +18 -0
  385. package/src/controls-options-manager/index.ts +278 -0
  386. package/src/controls-options-manager/types.ts +59 -0
  387. package/src/controls-options-manager/util.ts +300 -0
  388. package/src/index.ts +39 -0
  389. package/src/interpretation/README.md +60 -0
  390. package/src/interpretation/collection.ts +19 -0
  391. package/src/interpretation/index.ts +332 -0
  392. package/src/interpretation/siLanguage.ts +18 -0
  393. package/src/locus-info/controlsUtils.ts +222 -0
  394. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  395. package/src/locus-info/{fullState.js → fullState.ts} +16 -12
  396. package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
  397. package/src/locus-info/{index.js → index.ts} +518 -111
  398. package/src/locus-info/{infoUtils.js → infoUtils.ts} +19 -8
  399. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +65 -17
  400. package/src/locus-info/{parser.js → parser.ts} +271 -98
  401. package/src/locus-info/{selfUtils.js → selfUtils.ts} +199 -68
  402. package/src/media/index.ts +456 -0
  403. package/src/media/{properties.js → properties.ts} +80 -102
  404. package/src/media/{util.js → util.ts} +2 -2
  405. package/src/mediaQualityMetrics/config.ts +384 -0
  406. package/src/meeting/in-meeting-actions.ts +171 -3
  407. package/src/meeting/index.ts +7070 -0
  408. package/src/meeting/locusMediaRequest.ts +309 -0
  409. package/src/meeting/muteState.ts +450 -0
  410. package/src/meeting/{request.js → request.ts} +354 -214
  411. package/src/meeting/request.type.ts +13 -0
  412. package/src/meeting/{state.js → state.ts} +50 -35
  413. package/src/meeting/util.ts +615 -0
  414. package/src/meeting-info/{collection.js → collection.ts} +6 -2
  415. package/src/meeting-info/index.ts +183 -0
  416. package/src/meeting-info/meeting-info-v2.ts +407 -0
  417. package/src/meeting-info/{request.js → request.ts} +14 -4
  418. package/src/meeting-info/{util.js → util.ts} +60 -51
  419. package/src/meeting-info/{utilv2.js → utilv2.ts} +77 -60
  420. package/src/meetings/{collection.js → collection.ts} +26 -3
  421. package/src/meetings/index.ts +1467 -0
  422. package/src/meetings/meetings.types.ts +12 -0
  423. package/src/meetings/{request.js → request.ts} +34 -25
  424. package/src/meetings/{util.js → util.ts} +137 -36
  425. package/src/member/{index.js → index.ts} +151 -56
  426. package/src/member/types.ts +38 -0
  427. package/src/member/util.ts +383 -0
  428. package/src/members/{collection.js → collection.ts} +10 -2
  429. package/src/members/{index.js → index.ts} +323 -145
  430. package/src/members/request.ts +255 -0
  431. package/src/members/types.ts +28 -0
  432. package/src/members/util.ts +339 -0
  433. package/src/metrics/{constants.js → constants.ts} +2 -6
  434. package/src/metrics/index.ts +73 -0
  435. package/src/multistream/mediaRequestManager.ts +337 -61
  436. package/src/multistream/receiveSlot.ts +69 -26
  437. package/src/multistream/receiveSlotManager.ts +66 -42
  438. package/src/multistream/remoteMedia.ts +40 -5
  439. package/src/multistream/remoteMediaGroup.ts +63 -3
  440. package/src/multistream/remoteMediaManager.ts +263 -66
  441. package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
  442. package/src/personal-meeting-room/{index.js → index.ts} +28 -19
  443. package/src/personal-meeting-room/{request.js → request.ts} +13 -4
  444. package/src/personal-meeting-room/{util.js → util.ts} +4 -4
  445. package/src/reachability/{index.js → index.ts} +157 -94
  446. package/src/reachability/request.ts +46 -35
  447. package/src/reactions/constants.ts +4 -0
  448. package/src/reactions/reactions.ts +104 -0
  449. package/src/reactions/reactions.type.ts +62 -0
  450. package/src/reconnection-manager/{index.js → index.ts} +254 -136
  451. package/src/recording-controller/enums.ts +8 -0
  452. package/src/recording-controller/index.ts +333 -0
  453. package/src/recording-controller/util.ts +75 -0
  454. package/src/roap/{index.js → index.ts} +86 -78
  455. package/src/roap/request.ts +163 -0
  456. package/src/roap/turnDiscovery.ts +111 -49
  457. package/src/rtcMetrics/constants.ts +3 -0
  458. package/src/rtcMetrics/index.ts +96 -0
  459. package/src/statsAnalyzer/global.ts +37 -0
  460. package/src/statsAnalyzer/index.ts +1272 -0
  461. package/src/statsAnalyzer/mqaUtil.ts +291 -0
  462. package/src/transcription/{index.js → index.ts} +46 -39
  463. package/test/integration/spec/converged-space-meetings.js +233 -0
  464. package/test/integration/spec/journey.js +804 -526
  465. package/test/integration/spec/space-meeting.js +391 -204
  466. package/test/integration/spec/transcription.js +7 -8
  467. package/test/unit/spec/annotation/index.ts +418 -0
  468. package/test/unit/spec/breakouts/breakout.ts +237 -0
  469. package/test/unit/spec/breakouts/collection.ts +15 -0
  470. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  471. package/test/unit/spec/breakouts/events.ts +89 -0
  472. package/test/unit/spec/breakouts/index.ts +1790 -0
  473. package/test/unit/spec/breakouts/request.ts +104 -0
  474. package/test/unit/spec/breakouts/utils.js +72 -0
  475. package/test/unit/spec/common/browser-detection.js +9 -28
  476. package/test/unit/spec/common/queue.js +31 -2
  477. package/test/unit/spec/controls-options-manager/index.js +287 -0
  478. package/test/unit/spec/controls-options-manager/util.js +582 -0
  479. package/test/unit/spec/fixture/locus.js +93 -90
  480. package/test/unit/spec/interpretation/collection.ts +15 -0
  481. package/test/unit/spec/interpretation/index.ts +589 -0
  482. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  483. package/test/unit/spec/locus-info/controlsUtils.js +325 -32
  484. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  485. package/test/unit/spec/locus-info/index.js +1176 -18
  486. package/test/unit/spec/locus-info/infoUtils.js +41 -32
  487. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  488. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  489. package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
  490. package/test/unit/spec/locus-info/parser.js +65 -31
  491. package/test/unit/spec/locus-info/selfConstant.js +120 -103
  492. package/test/unit/spec/locus-info/selfUtils.js +296 -12
  493. package/test/unit/spec/media/index.ts +162 -68
  494. package/test/unit/spec/media/properties.ts +9 -9
  495. package/test/unit/spec/meeting/in-meeting-actions.ts +82 -3
  496. package/test/unit/spec/meeting/index.js +4569 -1773
  497. package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
  498. package/test/unit/spec/meeting/muteState.js +382 -211
  499. package/test/unit/spec/meeting/request.js +444 -78
  500. package/test/unit/spec/meeting/utils.js +517 -192
  501. package/test/unit/spec/meeting-info/index.js +181 -0
  502. package/test/unit/spec/meeting-info/meetinginfov2.js +481 -76
  503. package/test/unit/spec/meeting-info/request.js +7 -9
  504. package/test/unit/spec/meeting-info/util.js +11 -12
  505. package/test/unit/spec/meeting-info/utilv2.js +131 -74
  506. package/test/unit/spec/meetings/collection.js +15 -1
  507. package/test/unit/spec/meetings/index.js +1254 -330
  508. package/test/unit/spec/meetings/utils.js +220 -14
  509. package/test/unit/spec/member/index.js +58 -5
  510. package/test/unit/spec/member/util.js +494 -26
  511. package/test/unit/spec/members/index.js +423 -55
  512. package/test/unit/spec/members/request.js +228 -40
  513. package/test/unit/spec/members/utils.js +191 -4
  514. package/test/unit/spec/metrics/index.js +12 -66
  515. package/test/unit/spec/multistream/mediaRequestManager.ts +1013 -106
  516. package/test/unit/spec/multistream/receiveSlot.ts +77 -18
  517. package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
  518. package/test/unit/spec/multistream/remoteMedia.ts +40 -2
  519. package/test/unit/spec/multistream/remoteMediaGroup.ts +271 -5
  520. package/test/unit/spec/multistream/remoteMediaManager.ts +730 -65
  521. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  522. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  523. package/test/unit/spec/reachability/index.ts +176 -27
  524. package/test/unit/spec/reachability/request.js +66 -0
  525. package/test/unit/spec/reconnection-manager/index.js +155 -9
  526. package/test/unit/spec/recording-controller/index.js +307 -0
  527. package/test/unit/spec/recording-controller/util.js +229 -0
  528. package/test/unit/spec/roap/index.ts +28 -52
  529. package/test/unit/spec/roap/request.ts +225 -0
  530. package/test/unit/spec/roap/turnDiscovery.ts +92 -50
  531. package/test/unit/spec/rtcMetrics/index.ts +60 -0
  532. package/test/unit/spec/stats-analyzer/index.js +116 -60
  533. package/test/utils/cmr.js +44 -42
  534. package/test/utils/constants.js +9 -0
  535. package/test/utils/integrationTestUtils.js +46 -0
  536. package/test/utils/testUtils.js +63 -99
  537. package/test/utils/webex-config.js +22 -18
  538. package/test/utils/webex-test-users.js +57 -50
  539. package/tsconfig.json +6 -0
  540. package/dist/media/internal-media-core-wrapper.js +0 -22
  541. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  542. package/dist/meeting/effectsState.js +0 -327
  543. package/dist/meeting/effectsState.js.map +0 -1
  544. package/dist/metrics/config.js +0 -301
  545. package/dist/metrics/config.js.map +0 -1
  546. package/dist/multistream/multistreamMedia.js +0 -116
  547. package/dist/multistream/multistreamMedia.js.map +0 -1
  548. package/dist/peer-connection-manager/util.js +0 -124
  549. package/dist/peer-connection-manager/util.js.map +0 -1
  550. package/src/common/logs/logger-proxy.js +0 -33
  551. package/src/index.js +0 -15
  552. package/src/locus-info/controlsUtils.js +0 -102
  553. package/src/media/index.js +0 -459
  554. package/src/media/internal-media-core-wrapper.ts +0 -9
  555. package/src/mediaQualityMetrics/config.js +0 -382
  556. package/src/meeting/effectsState.js +0 -205
  557. package/src/meeting/index.js +0 -6284
  558. package/src/meeting/muteState.js +0 -318
  559. package/src/meeting/util.js +0 -506
  560. package/src/meeting-info/index.js +0 -131
  561. package/src/meeting-info/meeting-info-v2.js +0 -255
  562. package/src/meetings/index.js +0 -1015
  563. package/src/member/util.js +0 -254
  564. package/src/members/request.js +0 -131
  565. package/src/members/util.js +0 -258
  566. package/src/metrics/config.js +0 -324
  567. package/src/metrics/index.js +0 -530
  568. package/src/multistream/multistreamMedia.ts +0 -92
  569. package/src/peer-connection-manager/util.ts +0 -117
  570. package/src/roap/request.js +0 -127
  571. package/src/statsAnalyzer/global.js +0 -133
  572. package/src/statsAnalyzer/index.js +0 -1006
  573. package/src/statsAnalyzer/mqaUtil.js +0 -173
  574. package/test/unit/spec/meeting/effectsState.js +0 -291
  575. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
  576. /package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
@@ -0,0 +1,159 @@
1
+ import { IExternalRoles, IMediaStatus } from './types';
2
+ /**
3
+ * @class Member
4
+ */
5
+ export default class Member {
6
+ associatedUser: any;
7
+ id: any;
8
+ isAudioMuted: any;
9
+ isContentSharing: any;
10
+ isDevice: any;
11
+ isGuest: any;
12
+ isHandRaised: any;
13
+ isHost: any;
14
+ isInLobby: any;
15
+ isInMeeting: any;
16
+ isModerator: any;
17
+ isModeratorAssignmentProhibited: any;
18
+ isMutable: any;
19
+ isNotAdmitted: any;
20
+ isRecording: any;
21
+ isRemovable: any;
22
+ isSelf: any;
23
+ isUser: any;
24
+ isVideoMuted: any;
25
+ roles: IExternalRoles;
26
+ mediaStatus: IMediaStatus;
27
+ name: any;
28
+ participant: any;
29
+ status: any;
30
+ supportsBreakouts: boolean;
31
+ supportsInterpretation: boolean;
32
+ supportLiveAnnotation: boolean;
33
+ type: any;
34
+ namespace: string;
35
+ /**
36
+ * @param {Object} participant - the locus participant
37
+ * @param {Object} [options] - constructor params
38
+ * @param {String} options.selfId
39
+ * @param {String} options.hostId
40
+ * @param {String} options.contentSharingId
41
+ * @param {String} options.type
42
+ * @returns {Member}
43
+ * @memberof Member
44
+ */
45
+ constructor(participant: object, options?: {
46
+ selfId: string;
47
+ hostId: string;
48
+ contentSharingId: string;
49
+ type: string;
50
+ } | any);
51
+ /**
52
+ * set all the participant values extracted directly from locus participant
53
+ * @param {Object} participant the locus participant object
54
+ * @returns {undefined}
55
+ * @private
56
+ * @memberof Member
57
+ */
58
+ private processParticipant;
59
+ /**
60
+ * Use the members options and participant values to set on the member
61
+ * @param {Object} participant the locus participant object
62
+ * @param {Object} options the passed in options, what was set on members
63
+ * @returns {undefined}
64
+ * @private
65
+ * @memberof Member
66
+ */
67
+ private processParticipantOptions;
68
+ /**
69
+ * processes what already exists on the member to determine other info about the member
70
+ * @returns {undefined}
71
+ * @private
72
+ * @memberof Member
73
+ */
74
+ private processMember;
75
+ /**
76
+ * set the status on member object
77
+ * @param {Object} participant the locus participant object
78
+ * @returns {undefined}
79
+ * @private
80
+ * @memberof Member
81
+ */
82
+ private processStatus;
83
+ /**
84
+ * set the isContentSharing on member
85
+ * @param {Boolean} flag
86
+ * @returns {undefined}
87
+ * @public
88
+ * @memberof Member
89
+ */
90
+ setIsContentSharing(flag: boolean): void;
91
+ /**
92
+ * set the isHost on member
93
+ * @param {Boolean} flag
94
+ * @returns {undefined}
95
+ * @public
96
+ * @memberof Member
97
+ */
98
+ setIsHost(flag: boolean): void;
99
+ /**
100
+ * set the isSelf on member
101
+ * @param {Boolean} flag
102
+ * @returns {undefined}
103
+ * @public
104
+ * @memberof Member
105
+ */
106
+ setIsSelf(flag: boolean): void;
107
+ /**
108
+ * determine if this member is content sharing
109
+ * @param {Object} participant
110
+ * @param {String} sharingId
111
+ * @returns {undefined}
112
+ * @public
113
+ * @memberof Member
114
+ */
115
+ processIsContentSharing(participant: object, sharingId: string): void;
116
+ /**
117
+ * Determine if this member is recording
118
+ * @param {Object} participant
119
+ * @param {String} recordingId
120
+ * @returns {undefined}
121
+ * @public
122
+ * @memberof Member
123
+ */
124
+ processIsRecording(participant: object, recordingId: string): void;
125
+ /**
126
+ * determine if this member is the self
127
+ * @param {Object} participant
128
+ * @param {String} selfId
129
+ * @returns {undefined}
130
+ * @private
131
+ * @memberof Member
132
+ */
133
+ private processIsSelf;
134
+ /**
135
+ * determine if this member is the host
136
+ * @param {Object} participant
137
+ * @param {String} hostId
138
+ * @returns {undefined}
139
+ * @private
140
+ * @memberof Member
141
+ */
142
+ private processIsHost;
143
+ /**
144
+ * process the roles that have been applied to this member
145
+ * @param {Object} participant
146
+ * @returns {undefined}
147
+ * @private
148
+ * @memberof Member
149
+ */
150
+ private processRoles;
151
+ /**
152
+ * set the type for the member, could be MEETING or CALL
153
+ * @param {String} type
154
+ * @returns {undefined}
155
+ * @private
156
+ * @memberof Member
157
+ */
158
+ private processType;
159
+ }
@@ -0,0 +1,32 @@
1
+ export interface IExternalRoles {
2
+ cohost: boolean;
3
+ moderator: boolean;
4
+ presenter: boolean;
5
+ }
6
+ export declare enum ServerRoles {
7
+ Cohost = "COHOST",
8
+ Moderator = "MODERATOR",
9
+ Presenter = "PRESENTER"
10
+ }
11
+ export type ServerRoleShape = {
12
+ type: ServerRoles;
13
+ hasRole: boolean;
14
+ };
15
+ export type ParticipantWithRoles = {
16
+ controls: {
17
+ role: {
18
+ roles: Array<ServerRoleShape>;
19
+ };
20
+ };
21
+ };
22
+ export declare enum MediaStatus {
23
+ RECVONLY = "RECVONLY",
24
+ SENDONLY = "SENDONLY",
25
+ SENDRECV = "SENDRECV",
26
+ INACTIVE = "INACTIVE",
27
+ UNKNOWN = "UNKNOWN"
28
+ }
29
+ export interface IMediaStatus {
30
+ audio: MediaStatus;
31
+ video: MediaStatus;
32
+ }
@@ -0,0 +1,2 @@
1
+ declare const MemberUtil: any;
2
+ export default MemberUtil;
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @class MembersCollection
3
+ */
4
+ export default class MembersCollection {
5
+ members: any;
6
+ namespace: string;
7
+ /**
8
+ * @param {Object} locus
9
+ * @memberof Members
10
+ */
11
+ constructor();
12
+ set(id: any, member: any): void;
13
+ setAll(members: any): void;
14
+ /**
15
+ * @param {String} id
16
+ * @returns {Member}
17
+ */
18
+ get(id: string): any;
19
+ /**
20
+ * @returns {Object} returns an object map of Member instances
21
+ * @memberof MembersCollection
22
+ */
23
+ getAll(): any;
24
+ /**
25
+ * @returns {void}
26
+ * reset members
27
+ */
28
+ reset(): void;
29
+ }
@@ -0,0 +1,353 @@
1
+ import { StatelessWebexPlugin } from '@webex/webex-core';
2
+ import { ReceiveSlotManager } from '../multistream/receiveSlotManager';
3
+ import { MediaRequestManager } from '../multistream/mediaRequestManager';
4
+ import { ServerRoleShape } from './types';
5
+ /**
6
+ * Members Update Event
7
+ * Emitted when something in the roster list needs to be updated
8
+ * @event members:update
9
+ * @instance
10
+ * @property {Object} delta the changes to the members list
11
+ * @property {Array} delta.updated array only the updates, includes removals, as they will have updated status and member properties
12
+ * @property {Array} delta.added array added members to the meeting
13
+ * @property {Array} full array the full members collection
14
+ * @memberof Members
15
+ */
16
+ /**
17
+ * Members Content Update Event
18
+ * Emitted when who is sharing changes
19
+ * @event members:content:update
20
+ * @instance
21
+ * @property {String} activeContentSharingId
22
+ * @property {String} endedContentSharingId
23
+ * @memberof Members
24
+ */
25
+ /**
26
+ * Members Host Update Event
27
+ * Emitted when who is the host changes
28
+ * @event members:host:update
29
+ * @instance
30
+ * @property {String} activeHostId
31
+ * @property {String} endedHostId
32
+ * @memberof Members
33
+ */
34
+ /**
35
+ * Members Self Update Event
36
+ * Emitted when who is the self changes
37
+ * @event members:self:update
38
+ * @instance
39
+ * @property {String} activeSelfId
40
+ * @property {String} endedSelfId
41
+ * @memberof Members
42
+ */
43
+ /**
44
+ * @class Members
45
+ */
46
+ export default class Members extends StatelessWebexPlugin {
47
+ hostId: any;
48
+ locusUrl: any;
49
+ mediaShareContentId: any;
50
+ mediaShareWhiteboardId: any;
51
+ membersCollection: any;
52
+ membersRequest: any;
53
+ receiveSlotManager: ReceiveSlotManager;
54
+ mediaRequestManagers: {
55
+ audio: MediaRequestManager;
56
+ video: MediaRequestManager;
57
+ };
58
+ recordingId: any;
59
+ selfId: any;
60
+ type: any;
61
+ namespace: string;
62
+ /**
63
+ *
64
+ * @param {Object} attrs
65
+ * @param {Object} options
66
+ * @memberof Members
67
+ */
68
+ constructor(attrs: any, options: object);
69
+ /**
70
+ * Internal update the self Id value
71
+ * @param {Object} payload
72
+ * @param {Object} payload.newSelf
73
+ * @param {Object} payload.oldSelf
74
+ * @returns {undefined}
75
+ * @private
76
+ * @memberof Members
77
+ */
78
+ locusSelfUpdate(payload: {
79
+ newSelf: any;
80
+ oldSelf: any;
81
+ }): void;
82
+ /**
83
+ * Internal update the hostId value
84
+ * @param {Object} payload
85
+ * @param {Object} payload.newHost
86
+ * @param {Object} payload.oldHost
87
+ * @returns {undefined}
88
+ * @private
89
+ * @memberof Members
90
+ */
91
+ locusHostUpdate(payload: {
92
+ newHost: any;
93
+ oldHost: any;
94
+ }): void;
95
+ /**
96
+ * clear member collection
97
+ * @returns {void}
98
+ * @private
99
+ * @memberof Members
100
+ */
101
+ clearMembers(): void;
102
+ /**
103
+ * when new participant updates come in, both delta and full participants, update them in members collection
104
+ * delta object in the event will have {updated, added} and full will be the full membersCollection
105
+ * @param {Object} payload
106
+ * @param {Object} payload.participants
107
+ * @returns {undefined}
108
+ * @private
109
+ * @memberof Members
110
+ */
111
+ locusParticipantsUpdate(payload: {
112
+ participants: object;
113
+ isReplace?: boolean;
114
+ }): void;
115
+ /**
116
+ * Internal update the content id
117
+ * @param {Object} payload
118
+ * @param {Object} payload.current
119
+ * @param {Object} payload.previous
120
+ * @returns {undefined}
121
+ * @private
122
+ * @memberof Members
123
+ */
124
+ locusMediaSharesUpdate(payload: {
125
+ current: any;
126
+ previous: any;
127
+ }): void;
128
+ /**
129
+ * Internal update the locus url value
130
+ * @param {Object} payload
131
+ * @param {String} payload.locusUrl
132
+ * @returns {undefined}
133
+ * @private
134
+ * @memberof Members
135
+ */
136
+ locusUrlUpdate(payload: any): void;
137
+ /**
138
+ * Internal update the type of meeting
139
+ * @param {Object} payload
140
+ * @param {String} payload.type
141
+ * @returns {undefined}
142
+ * @private
143
+ * @memberof Members
144
+ */
145
+ locusFullStateTypeUpdate(payload: {
146
+ type: string;
147
+ }): void;
148
+ /**
149
+ * sets values in the members collection for updated and added properties from delta
150
+ * @param {Object} membersUpdate {updated: [], added: []}
151
+ * @returns {Object} membersCollection
152
+ * @private
153
+ * @memberof Members
154
+ */
155
+ private handleMembersUpdate;
156
+ /**
157
+ * set members to the member collection from each updated/added lists as passed in
158
+ * @param {Array} list
159
+ * @returns {undefined}
160
+ * @private
161
+ * @memberof Members
162
+ */
163
+ private constructMembers;
164
+ /**
165
+ * Internal update the participants value
166
+ * @param {Object} payload
167
+ * @returns {Object}
168
+ * @private
169
+ * @memberof Members
170
+ */
171
+ private handleLocusInfoUpdatedParticipants;
172
+ /**
173
+ * Update the locus Url
174
+ * @param {Object} locus
175
+ * @param {String} [locusUrl] optional, takes precedence
176
+ * @throws {ParameterError}
177
+ * @returns {undefined}
178
+ * @public
179
+ * @memberof Members
180
+ */
181
+ setLocusUrl(locus: any, locusUrl?: string): void;
182
+ /**
183
+ * Update the host id
184
+ * @param {Object} locus
185
+ * @param {String} [hostId] optional, takes precedence
186
+ * @throws {ParameterError}
187
+ * @returns {undefined}
188
+ * @public
189
+ * @memberof Members
190
+ */
191
+ setHostId(locus: any, hostId?: string): void;
192
+ /**
193
+ * Update the type
194
+ * @param {Object} fullState
195
+ * @param {String} [type] optional, takes precedence
196
+ * @throws {ParameterError}
197
+ * @returns {undefined}
198
+ * @public
199
+ * @memberof Members
200
+ */
201
+ setType(fullState: any, type?: string): void;
202
+ /**
203
+ * Update the self Id
204
+ * @param {Object} locus
205
+ * @param {String} [selfId] optional, takes precedence
206
+ * @throws {Error}
207
+ * @returns {undefined}
208
+ * @memberof Members
209
+ */
210
+ setSelfId(locus: any, selfId?: string): void;
211
+ /**
212
+ * Update the media share content id
213
+ * @param {Object} locus
214
+ * @param {String} [contentId] optional, takes precedence
215
+ * @throws {Error}
216
+ * @returns {undefined}
217
+ * @memberof Members
218
+ */
219
+ setMediaShareContentId(locus: any, contentId?: string): void;
220
+ /**
221
+ * Update the media share whiteboard id
222
+ * @param {Object} locus
223
+ * @param {String} [whiteboardId] optional, takes precedence
224
+ * @throws {Error}
225
+ * @returns {undefined}
226
+ * @memberof Members
227
+ */
228
+ setMediaShareWhiteboardId(locus: any, whiteboardId?: string): void;
229
+ /**
230
+ * Find all the updates, and added members
231
+ * Removed/left members will end up in updates
232
+ * Each array contains only members
233
+ * @param {Array} participants the locus participants
234
+ * @returns {Object} {added: {Array}, updated: {Array}}
235
+ * @private
236
+ * @memberof Members
237
+ */
238
+ private update;
239
+ /**
240
+ * Adds a guest Member to the associated meeting
241
+ * @param {String} invitee
242
+ * @param {Boolean} [alertIfActive]
243
+ * @returns {Promise}
244
+ * @memberof Members
245
+ */
246
+ addMember(invitee: any, alertIfActive?: boolean): any;
247
+ /**
248
+ * Cancels an outgoing PSTN call to the associated meeting
249
+ * @param {String} invitee
250
+ * @returns {Promise}
251
+ * @memberof Members
252
+ */
253
+ cancelPhoneInvite(invitee: any): any;
254
+ /**
255
+ * Admits waiting members (invited guests to meeting)
256
+ * @param {Array} memberIds
257
+ * @param {Object} sessionLocusUrls: {authorizingLocusUrl, mainLocusUrl}
258
+ * @returns {Promise}
259
+ * @public
260
+ * @memberof Members
261
+ */
262
+ admitMembers(memberIds: Array<any>, sessionLocusUrls?: {
263
+ authorizingLocusUrl: string;
264
+ mainLocusUrl: string;
265
+ }): any;
266
+ /**
267
+ * Removes a member from the meeting
268
+ * @param {String} memberId
269
+ * @returns {Promise}
270
+ * @public
271
+ * @memberof Members
272
+ */
273
+ removeMember(memberId: string): any;
274
+ /**
275
+ * Audio mutes another member in a meeting
276
+ * @param {String} memberId
277
+ * @param {boolean} [mute] default true
278
+ * @param {boolean} [isAudio] default true
279
+ * @returns {Promise}
280
+ * @public
281
+ * @memberof Members
282
+ */
283
+ muteMember(memberId: string, mute?: boolean, isAudio?: boolean): any;
284
+ /**
285
+ * Assign role(s) to a member in the meeting
286
+ * @param {String} memberId
287
+ * @param {[ServerRoleShape]} roles - to assign an array of roles
288
+ * @returns {Promise}
289
+ * @public
290
+ * @memberof Members
291
+ */
292
+ assignRoles(memberId: string, roles: Array<ServerRoleShape>): any;
293
+ /**
294
+ * Raise or lower the hand of a member in a meeting
295
+ * @param {String} memberId
296
+ * @param {boolean} [raise] - to raise hand (=true) or lower (=false), default: true
297
+ * @returns {Promise}
298
+ * @public
299
+ * @memberof Members
300
+ */
301
+ raiseOrLowerHand(memberId: string, raise?: boolean): any;
302
+ /**
303
+ * Lower all hands of members in a meeting
304
+ * @param {String} requestingMemberId - id of the participant which requested the lower all hands
305
+ * @returns {Promise}
306
+ * @public
307
+ * @memberof Members
308
+ */
309
+ lowerAllHands(requestingMemberId: string): any;
310
+ /**
311
+ * Transfers the host to another member
312
+ * @param {String} memberId
313
+ * @param {boolean} [moderator] default true
314
+ * @returns {Promise}
315
+ * @public
316
+ * @memberof Members
317
+ */
318
+ transferHostToMember(memberId: string, moderator?: boolean): any;
319
+ /**
320
+ * Sends DTMF tones for the PSTN member of a meeting
321
+ * @param {String} tones a string of one or more DTMF tones to send
322
+ * @param {String} memberId member id
323
+ * @returns {Promise}
324
+ * @public
325
+ * @memberof Members
326
+ */
327
+ sendDialPadKey(tones?: string, memberId?: string): any;
328
+ /** Finds a member that has any device with a csi matching provided value
329
+ *
330
+ * @param {number} csi
331
+ * @returns {Member}
332
+ */
333
+ findMemberByCsi(csi: any): unknown;
334
+ /**
335
+ * Returns an array of a member's CSIs matching the mediaType and mediaContent
336
+ *
337
+ * @param {string} memberId
338
+ * @param {string} mediaType 'audio' or 'video'
339
+ * @param {string} mediaContent 'main' or 'slides'
340
+ * @returns {Member}
341
+ */
342
+ getCsisForMember(memberId: any, mediaType?: string, mediaContent?: string): any[];
343
+ /**
344
+ * Edit display name of participants in a meeting
345
+ * @param {string} memberId - id of the participant who is receiving request
346
+ * @param {string} requestingParticipantId - id of the participant who is sending request (optional)
347
+ * @param {string} [alias] - alias name
348
+ * @returns {Promise}
349
+ * @public
350
+ * @memberof Members
351
+ */
352
+ editDisplayName(memberId: string, requestingParticipantId: string, alias: string): any;
353
+ }
@@ -0,0 +1,114 @@
1
+ import { StatelessWebexPlugin } from '@webex/webex-core';
2
+ /**
3
+ * @class MembersRequest
4
+ */
5
+ export default class MembersRequest extends StatelessWebexPlugin {
6
+ namespace: string;
7
+ locusDeltaRequest: (options: object) => Promise<any>;
8
+ /**
9
+ * Constructor
10
+ * @param {Object} attrs
11
+ * @param {Object} options
12
+ */
13
+ constructor(attrs: {
14
+ meeting: any;
15
+ }, options: object);
16
+ /**
17
+ *
18
+ * @param {Object} options with format of {invitee: string, locusUrl: string}
19
+ * @returns {Promise}
20
+ * @throws {Error} if the options are not valid and complete, must have invitee with emailAddress OR email AND locusUrl
21
+ * @memberof MembersRequest
22
+ */
23
+ addMembers(options: any): Promise<any>;
24
+ /**
25
+ *
26
+ * @param {Object} options
27
+ * @returns {Promise}
28
+ * @throws {Error} if the options are not valid and complete, must have memberIds AND locusUrl
29
+ * @memberof MembersRequest
30
+ */
31
+ admitMember(options: any): Promise<any>;
32
+ /**
33
+ * Sends a request to remove a member
34
+ * @param {Object} options
35
+ * @param {String} options.locusUrl
36
+ * @param {String} options.memberId ID of member
37
+ * @returns {Promise}
38
+ */
39
+ removeMember(options: any): Promise<any>;
40
+ /**
41
+ * Sends a request to mute a member
42
+ * @param {Object} options
43
+ * @param {String} options.locusUrl
44
+ * @param {String} options.memberId ID of member
45
+ * @returns {Promise}
46
+ */
47
+ muteMember(options: any): Promise<any>;
48
+ /**
49
+ * Sends a request to the DTMF endpoint to send tones
50
+ * @param {Object} options
51
+ * @param {String} options.locusUrl
52
+ * @param {String} options.memberId ID of PSTN user
53
+ * @returns {Promise}
54
+ */
55
+ assignRolesMember(options: any): Promise<any>;
56
+ /**
57
+ * Sends a request to raise or lower a member's hand
58
+ * @param {Object} options
59
+ * @param {String} options.locusUrl
60
+ * @param {String} options.memberId ID of member
61
+ * @returns {Promise}
62
+ */
63
+ raiseOrLowerHandMember(options: any): Promise<any>;
64
+ /**
65
+ * Sends a request to lower all hands
66
+ * @param {Object} options
67
+ * @param {String} options.locusUrl
68
+ * @param {String} options.requestingParticipantId ID of requesting participant
69
+ * @returns {Promise}
70
+ */
71
+ lowerAllHandsMember(options: any): Promise<any>;
72
+ /**
73
+ *
74
+ * @param {Object} options with format of {locusUrl: string, requestingParticipantId: string}
75
+ * @returns {Promise}
76
+ * @throws {Error} if the options are not valid and complete, must have requestingParticipantId AND locusUrl
77
+ * @memberof MembersRequest
78
+ */
79
+ editDisplayNameMember(options: {
80
+ locusUrl: string;
81
+ requestingParticipantId: string;
82
+ }): Promise<any>;
83
+ /**
84
+ * Sends a request to raise or lower a member's hand
85
+ * @param {Object} options
86
+ * @param {String} options.locusUrl
87
+ * @param {String} options.memberId ID of member
88
+ * @param {String} options.moderator ID of moderator
89
+ * @returns {Promise}
90
+ */
91
+ transferHostToMember(options: any): Promise<any>;
92
+ /**
93
+ * Sends a request to the DTMF endpoint to send tones
94
+ * @param {Object} options
95
+ * @param {String} options.locusUrl
96
+ * @param {String} options.url device url SIP user
97
+ * @param {String} options.tones a string of one or more DTMF tones to send
98
+ * @param {String} options.memberId ID of PSTN user
99
+ * @returns {Promise}
100
+ */
101
+ sendDialPadKey(options: {
102
+ locusUrl: string;
103
+ url: string;
104
+ tones: string;
105
+ memberId: string;
106
+ }): Promise<any>;
107
+ /**
108
+ * @param {Object} options with format of {invitee: string, locusUrl: string}
109
+ * @returns {Promise}
110
+ * @throws {Error} if the options are not valid and complete, must have invitee with emailAddress OR email AND locusUrl
111
+ * @memberof MembersRequest
112
+ */
113
+ cancelPhoneInvite(options: any): Promise<any>;
114
+ }