@webex/plugin-meetings 3.0.0-bnr.5 → 3.0.0-stream-classes.2

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 (854) hide show
  1. package/README.md +46 -8
  2. package/dist/annotation/annotation.types.js +7 -0
  3. package/dist/annotation/annotation.types.js.map +1 -0
  4. package/dist/annotation/constants.js +49 -0
  5. package/dist/annotation/constants.js.map +1 -0
  6. package/dist/annotation/index.js +342 -0
  7. package/dist/annotation/index.js.map +1 -0
  8. package/dist/breakouts/breakout.js +70 -32
  9. package/dist/breakouts/breakout.js.map +1 -1
  10. package/dist/breakouts/events.js +45 -0
  11. package/dist/breakouts/events.js.map +1 -0
  12. package/dist/breakouts/index.js +422 -217
  13. package/dist/breakouts/index.js.map +1 -1
  14. package/dist/breakouts/utils.js +12 -1
  15. package/dist/breakouts/utils.js.map +1 -1
  16. package/dist/common/errors/webex-errors.js +3 -2
  17. package/dist/common/errors/webex-errors.js.map +1 -1
  18. package/dist/common/logs/logger-proxy.js +1 -1
  19. package/dist/common/logs/logger-proxy.js.map +1 -1
  20. package/dist/common/queue.js +24 -9
  21. package/dist/common/queue.js.map +1 -1
  22. package/dist/config.js +1 -7
  23. package/dist/config.js.map +1 -1
  24. package/dist/constants.js +118 -24
  25. package/dist/constants.js.map +1 -1
  26. package/dist/controls-options-manager/enums.js +2 -0
  27. package/dist/controls-options-manager/enums.js.map +1 -1
  28. package/dist/controls-options-manager/index.js +19 -14
  29. package/dist/controls-options-manager/index.js.map +1 -1
  30. package/dist/controls-options-manager/types.js.map +1 -1
  31. package/dist/controls-options-manager/util.js +80 -11
  32. package/dist/controls-options-manager/util.js.map +1 -1
  33. package/dist/index.js +62 -20
  34. package/dist/index.js.map +1 -1
  35. package/dist/interpretation/collection.js +23 -0
  36. package/dist/interpretation/collection.js.map +1 -0
  37. package/dist/interpretation/index.js +366 -0
  38. package/dist/interpretation/index.js.map +1 -0
  39. package/dist/interpretation/siLanguage.js +25 -0
  40. package/dist/interpretation/siLanguage.js.map +1 -0
  41. package/dist/locus-info/controlsUtils.js +71 -1
  42. package/dist/locus-info/controlsUtils.js.map +1 -1
  43. package/dist/locus-info/index.js +305 -57
  44. package/dist/locus-info/index.js.map +1 -1
  45. package/dist/locus-info/infoUtils.js +7 -1
  46. package/dist/locus-info/infoUtils.js.map +1 -1
  47. package/dist/locus-info/mediaSharesUtils.js +43 -1
  48. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  49. package/dist/locus-info/parser.js +219 -63
  50. package/dist/locus-info/parser.js.map +1 -1
  51. package/dist/locus-info/selfUtils.js +44 -22
  52. package/dist/locus-info/selfUtils.js.map +1 -1
  53. package/dist/media/index.js +57 -104
  54. package/dist/media/index.js.map +1 -1
  55. package/dist/media/properties.js +60 -121
  56. package/dist/media/properties.js.map +1 -1
  57. package/dist/meeting/in-meeting-actions.js +61 -3
  58. package/dist/meeting/in-meeting-actions.js.map +1 -1
  59. package/dist/meeting/index.js +2530 -2534
  60. package/dist/meeting/index.js.map +1 -1
  61. package/dist/meeting/locusMediaRequest.js +292 -0
  62. package/dist/meeting/locusMediaRequest.js.map +1 -0
  63. package/dist/meeting/muteState.js +125 -205
  64. package/dist/meeting/muteState.js.map +1 -1
  65. package/dist/meeting/request.js +150 -150
  66. package/dist/meeting/request.js.map +1 -1
  67. package/dist/meeting/util.js +568 -438
  68. package/dist/meeting/util.js.map +1 -1
  69. package/dist/meeting-info/index.js +48 -7
  70. package/dist/meeting-info/index.js.map +1 -1
  71. package/dist/meeting-info/meeting-info-v2.js +94 -38
  72. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  73. package/dist/meeting-info/utilv2.js +4 -2
  74. package/dist/meeting-info/utilv2.js.map +1 -1
  75. package/dist/meetings/index.js +260 -85
  76. package/dist/meetings/index.js.map +1 -1
  77. package/dist/meetings/meetings.types.js +7 -0
  78. package/dist/meetings/meetings.types.js.map +1 -0
  79. package/dist/meetings/util.js +42 -7
  80. package/dist/meetings/util.js.map +1 -1
  81. package/dist/member/index.js +26 -0
  82. package/dist/member/index.js.map +1 -1
  83. package/dist/member/types.js +11 -1
  84. package/dist/member/types.js.map +1 -1
  85. package/dist/member/util.js +60 -23
  86. package/dist/member/util.js.map +1 -1
  87. package/dist/members/index.js +4 -1
  88. package/dist/members/index.js.map +1 -1
  89. package/dist/members/request.js +75 -45
  90. package/dist/members/request.js.map +1 -1
  91. package/dist/members/util.js +308 -317
  92. package/dist/members/util.js.map +1 -1
  93. package/dist/metrics/constants.js +1 -0
  94. package/dist/metrics/constants.js.map +1 -1
  95. package/dist/metrics/index.js +1 -451
  96. package/dist/metrics/index.js.map +1 -1
  97. package/dist/multistream/mediaRequestManager.js +136 -40
  98. package/dist/multistream/mediaRequestManager.js.map +1 -1
  99. package/dist/multistream/receiveSlot.js.map +1 -1
  100. package/dist/multistream/receiveSlotManager.js +4 -4
  101. package/dist/multistream/receiveSlotManager.js.map +1 -1
  102. package/dist/multistream/remoteMedia.js.map +1 -1
  103. package/dist/multistream/remoteMediaGroup.js +60 -3
  104. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  105. package/dist/multistream/remoteMediaManager.js +36 -0
  106. package/dist/multistream/remoteMediaManager.js.map +1 -1
  107. package/dist/multistream/sendSlotManager.js +233 -0
  108. package/dist/multistream/sendSlotManager.js.map +1 -0
  109. package/dist/reachability/index.js +18 -3
  110. package/dist/reachability/index.js.map +1 -1
  111. package/dist/reachability/request.js +5 -3
  112. package/dist/reachability/request.js.map +1 -1
  113. package/dist/reconnection-manager/index.js +181 -153
  114. package/dist/reconnection-manager/index.js.map +1 -1
  115. package/dist/recording-controller/index.js +21 -2
  116. package/dist/recording-controller/index.js.map +1 -1
  117. package/dist/recording-controller/util.js +9 -8
  118. package/dist/recording-controller/util.js.map +1 -1
  119. package/dist/roap/index.js +25 -32
  120. package/dist/roap/index.js.map +1 -1
  121. package/dist/roap/request.js +42 -51
  122. package/dist/roap/request.js.map +1 -1
  123. package/dist/roap/turnDiscovery.js +97 -38
  124. package/dist/roap/turnDiscovery.js.map +1 -1
  125. package/dist/rtcMetrics/constants.js +12 -0
  126. package/dist/rtcMetrics/constants.js.map +1 -0
  127. package/dist/rtcMetrics/index.js +117 -0
  128. package/dist/rtcMetrics/index.js.map +1 -0
  129. package/dist/statsAnalyzer/index.js +0 -1
  130. package/dist/statsAnalyzer/index.js.map +1 -1
  131. package/dist/types/annotation/annotation.types.d.ts +42 -0
  132. package/dist/types/annotation/constants.d.ts +31 -0
  133. package/dist/types/annotation/index.d.ts +117 -0
  134. package/dist/types/breakouts/events.d.ts +8 -0
  135. package/dist/types/breakouts/utils.d.ts +7 -0
  136. package/dist/types/common/errors/webex-errors.d.ts +1 -1
  137. package/dist/types/common/queue.d.ts +9 -7
  138. package/dist/types/config.d.ts +0 -6
  139. package/dist/types/constants.d.ts +95 -22
  140. package/dist/types/controls-options-manager/enums.d.ts +2 -0
  141. package/dist/types/controls-options-manager/index.d.ts +1 -1
  142. package/dist/types/controls-options-manager/types.d.ts +7 -1
  143. package/dist/types/index.d.ts +1 -1
  144. package/dist/types/interpretation/collection.d.ts +5 -0
  145. package/dist/types/interpretation/index.d.ts +5 -0
  146. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  147. package/dist/types/locus-info/index.d.ts +47 -2
  148. package/dist/types/locus-info/parser.d.ts +65 -6
  149. package/dist/types/media/index.d.ts +2 -0
  150. package/dist/types/media/properties.d.ts +34 -49
  151. package/dist/types/meeting/in-meeting-actions.d.ts +60 -2
  152. package/dist/types/meeting/index.d.ts +268 -473
  153. package/dist/types/meeting/locusMediaRequest.d.ts +75 -0
  154. package/dist/types/meeting/muteState.d.ts +53 -54
  155. package/dist/types/meeting/request.d.ts +61 -43
  156. package/dist/types/meeting/util.d.ts +93 -1
  157. package/dist/types/meeting-info/index.d.ts +6 -1
  158. package/dist/types/meeting-info/meeting-info-v2.d.ts +14 -3
  159. package/dist/types/meetings/index.d.ts +56 -11
  160. package/dist/types/meetings/meetings.types.d.ts +4 -0
  161. package/dist/types/member/index.d.ts +4 -1
  162. package/dist/types/member/types.d.ts +11 -0
  163. package/dist/types/members/request.d.ts +56 -11
  164. package/dist/types/members/util.d.ts +209 -1
  165. package/dist/types/metrics/constants.d.ts +1 -0
  166. package/dist/types/metrics/index.d.ts +4 -111
  167. package/dist/types/multistream/mediaRequestManager.d.ts +27 -10
  168. package/dist/types/multistream/receiveSlot.d.ts +3 -3
  169. package/dist/types/multistream/remoteMedia.d.ts +2 -2
  170. package/dist/types/multistream/remoteMediaManager.d.ts +14 -0
  171. package/dist/types/multistream/sendSlotManager.d.ts +61 -0
  172. package/dist/types/reachability/index.d.ts +6 -0
  173. package/dist/types/reachability/request.d.ts +3 -1
  174. package/dist/types/reconnection-manager/index.d.ts +2 -2
  175. package/dist/types/recording-controller/index.d.ts +15 -1
  176. package/dist/types/recording-controller/util.d.ts +5 -4
  177. package/dist/types/roap/request.d.ts +8 -8
  178. package/dist/types/roap/turnDiscovery.d.ts +18 -1
  179. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  180. package/dist/types/rtcMetrics/index.d.ts +47 -0
  181. package/package.json +21 -20
  182. package/src/annotation/annotation.types.ts +50 -0
  183. package/src/annotation/constants.ts +36 -0
  184. package/src/annotation/index.ts +328 -0
  185. package/src/breakouts/README.md +3 -2
  186. package/src/breakouts/breakout.ts +62 -27
  187. package/src/breakouts/events.ts +56 -0
  188. package/src/breakouts/index.ts +244 -64
  189. package/src/breakouts/utils.ts +13 -0
  190. package/src/common/errors/webex-errors.ts +6 -2
  191. package/src/common/logs/logger-proxy.ts +1 -1
  192. package/src/common/queue.ts +22 -8
  193. package/src/config.ts +0 -6
  194. package/src/constants.ts +111 -19
  195. package/src/controls-options-manager/enums.ts +2 -0
  196. package/src/controls-options-manager/index.ts +13 -10
  197. package/src/controls-options-manager/types.ts +10 -0
  198. package/src/controls-options-manager/util.ts +82 -11
  199. package/src/index.ts +18 -11
  200. package/src/interpretation/README.md +60 -0
  201. package/src/interpretation/collection.ts +19 -0
  202. package/src/interpretation/index.ts +332 -0
  203. package/src/interpretation/siLanguage.ts +18 -0
  204. package/src/locus-info/controlsUtils.ts +81 -0
  205. package/src/locus-info/index.ts +318 -57
  206. package/src/locus-info/infoUtils.ts +10 -2
  207. package/src/locus-info/mediaSharesUtils.ts +48 -0
  208. package/src/locus-info/parser.ts +224 -39
  209. package/src/locus-info/selfUtils.ts +32 -20
  210. package/src/media/index.ts +94 -108
  211. package/src/media/properties.ts +69 -109
  212. package/src/meeting/in-meeting-actions.ts +120 -4
  213. package/src/meeting/index.ts +1967 -2120
  214. package/src/meeting/locusMediaRequest.ts +314 -0
  215. package/src/meeting/muteState.ts +119 -194
  216. package/src/meeting/request.ts +122 -115
  217. package/src/meeting/util.ts +549 -413
  218. package/src/meeting-info/index.ts +54 -8
  219. package/src/meeting-info/meeting-info-v2.ts +89 -24
  220. package/src/meeting-info/utilv2.ts +6 -2
  221. package/src/meetings/index.ts +247 -87
  222. package/src/meetings/meetings.types.ts +12 -0
  223. package/src/meetings/util.ts +47 -12
  224. package/src/member/index.ts +28 -1
  225. package/src/member/types.ts +14 -0
  226. package/src/member/util.ts +75 -26
  227. package/src/members/index.ts +7 -1
  228. package/src/members/request.ts +61 -21
  229. package/src/members/util.ts +316 -326
  230. package/src/metrics/constants.ts +1 -0
  231. package/src/metrics/index.ts +1 -474
  232. package/src/multistream/mediaRequestManager.ts +183 -67
  233. package/src/multistream/receiveSlot.ts +4 -4
  234. package/src/multistream/receiveSlotManager.ts +4 -4
  235. package/src/multistream/remoteMedia.ts +2 -2
  236. package/src/multistream/remoteMediaGroup.ts +59 -0
  237. package/src/multistream/remoteMediaManager.ts +33 -0
  238. package/src/multistream/sendSlotManager.ts +170 -0
  239. package/src/reachability/index.ts +15 -4
  240. package/src/reachability/request.ts +7 -3
  241. package/src/reconnection-manager/index.ts +36 -29
  242. package/src/recording-controller/index.ts +20 -3
  243. package/src/recording-controller/util.ts +26 -9
  244. package/src/roap/index.ts +25 -30
  245. package/src/roap/request.ts +44 -51
  246. package/src/roap/turnDiscovery.ts +51 -25
  247. package/src/rtcMetrics/constants.ts +3 -0
  248. package/src/rtcMetrics/index.ts +100 -0
  249. package/src/statsAnalyzer/index.ts +0 -1
  250. package/test/integration/spec/converged-space-meetings.js +60 -3
  251. package/test/integration/spec/journey.js +336 -259
  252. package/test/integration/spec/space-meeting.js +76 -3
  253. package/test/unit/spec/annotation/index.ts +418 -0
  254. package/test/unit/spec/breakouts/breakout.ts +85 -26
  255. package/test/unit/spec/breakouts/events.ts +89 -0
  256. package/test/unit/spec/breakouts/index.ts +636 -98
  257. package/test/unit/spec/breakouts/utils.js +19 -1
  258. package/test/unit/spec/common/queue.js +31 -2
  259. package/test/unit/spec/controls-options-manager/index.js +8 -1
  260. package/test/unit/spec/controls-options-manager/util.js +576 -397
  261. package/test/unit/spec/fixture/locus.js +1 -0
  262. package/test/unit/spec/interpretation/collection.ts +15 -0
  263. package/test/unit/spec/interpretation/index.ts +589 -0
  264. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  265. package/test/unit/spec/locus-info/controlsUtils.js +195 -1
  266. package/test/unit/spec/locus-info/index.js +950 -45
  267. package/test/unit/spec/locus-info/infoUtils.js +37 -15
  268. package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
  269. package/test/unit/spec/locus-info/parser.js +62 -22
  270. package/test/unit/spec/locus-info/selfConstant.js +19 -0
  271. package/test/unit/spec/locus-info/selfUtils.js +131 -26
  272. package/test/unit/spec/media/index.ts +82 -79
  273. package/test/unit/spec/meeting/in-meeting-actions.ts +60 -2
  274. package/test/unit/spec/meeting/index.js +3208 -1734
  275. package/test/unit/spec/meeting/locusMediaRequest.ts +443 -0
  276. package/test/unit/spec/meeting/muteState.js +328 -417
  277. package/test/unit/spec/meeting/request.js +393 -48
  278. package/test/unit/spec/meeting/utils.js +552 -76
  279. package/test/unit/spec/meeting-info/index.js +181 -0
  280. package/test/unit/spec/meeting-info/meetinginfov2.js +258 -20
  281. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  282. package/test/unit/spec/meetings/index.js +631 -145
  283. package/test/unit/spec/meetings/utils.js +164 -9
  284. package/test/unit/spec/member/index.js +44 -14
  285. package/test/unit/spec/member/util.js +296 -155
  286. package/test/unit/spec/members/index.js +23 -3
  287. package/test/unit/spec/members/request.js +167 -35
  288. package/test/unit/spec/metrics/index.js +1 -50
  289. package/test/unit/spec/multistream/mediaRequestManager.ts +366 -8
  290. package/test/unit/spec/multistream/receiveSlot.ts +1 -1
  291. package/test/unit/spec/multistream/remoteMediaGroup.ts +266 -0
  292. package/test/unit/spec/multistream/remoteMediaManager.ts +123 -0
  293. package/test/unit/spec/multistream/sendSlotManager.ts +242 -0
  294. package/test/unit/spec/reachability/index.ts +66 -5
  295. package/test/unit/spec/reachability/request.js +3 -1
  296. package/test/unit/spec/reconnection-manager/index.js +55 -5
  297. package/test/unit/spec/recording-controller/index.js +294 -218
  298. package/test/unit/spec/recording-controller/util.js +223 -96
  299. package/test/unit/spec/roap/index.ts +21 -48
  300. package/test/unit/spec/roap/request.ts +74 -60
  301. package/test/unit/spec/roap/turnDiscovery.ts +30 -6
  302. package/test/unit/spec/rtcMetrics/index.ts +68 -0
  303. package/test/utils/integrationTestUtils.js +46 -0
  304. package/test/utils/testUtils.js +0 -60
  305. package/dist/common/browser-detection.d.ts +0 -9
  306. package/dist/common/collection.d.ts +0 -48
  307. package/dist/common/config.d.ts +0 -2
  308. package/dist/common/errors/captcha-error.d.ts +0 -15
  309. package/dist/common/errors/intent-to-join.d.ts +0 -16
  310. package/dist/common/errors/join-meeting.d.ts +0 -17
  311. package/dist/common/errors/media.d.ts +0 -15
  312. package/dist/common/errors/parameter.d.ts +0 -15
  313. package/dist/common/errors/password-error.d.ts +0 -15
  314. package/dist/common/errors/permission.d.ts +0 -14
  315. package/dist/common/errors/reconnection-in-progress.d.ts +0 -9
  316. package/dist/common/errors/reconnection.d.ts +0 -15
  317. package/dist/common/errors/stats.d.ts +0 -15
  318. package/dist/common/errors/webex-errors.d.ts +0 -81
  319. package/dist/common/errors/webex-meetings-error.d.ts +0 -20
  320. package/dist/common/events/events-scope.d.ts +0 -17
  321. package/dist/common/events/events.d.ts +0 -12
  322. package/dist/common/events/trigger-proxy.d.ts +0 -2
  323. package/dist/common/events/util.d.ts +0 -2
  324. package/dist/common/logs/logger-config.d.ts +0 -2
  325. package/dist/common/logs/logger-proxy.d.ts +0 -2
  326. package/dist/common/logs/request.d.ts +0 -34
  327. package/dist/common/queue.d.ts +0 -32
  328. package/dist/config.d.ts +0 -73
  329. package/dist/constants.d.ts +0 -924
  330. package/dist/controls-options-manager/constants.d.ts +0 -4
  331. package/dist/controls-options-manager/enums.d.ts +0 -5
  332. package/dist/controls-options-manager/index.d.ts +0 -120
  333. package/dist/controls-options-manager/util.d.ts +0 -7
  334. package/dist/docs/markdown/index.md +0 -12
  335. package/dist/docs/markdown/plugin-meetings.constants._active_.md +0 -11
  336. package/dist/docs/markdown/plugin-meetings.constants._answer_.md +0 -11
  337. package/dist/docs/markdown/plugin-meetings.constants._call_.md +0 -11
  338. package/dist/docs/markdown/plugin-meetings.constants._conflict_.md +0 -11
  339. package/dist/docs/markdown/plugin-meetings.constants._conversation_url_.md +0 -11
  340. package/dist/docs/markdown/plugin-meetings.constants._created_.md +0 -11
  341. package/dist/docs/markdown/plugin-meetings.constants._error_.md +0 -11
  342. package/dist/docs/markdown/plugin-meetings.constants._forced_.md +0 -11
  343. package/dist/docs/markdown/plugin-meetings.constants._id_.md +0 -11
  344. package/dist/docs/markdown/plugin-meetings.constants._idle_.md +0 -11
  345. package/dist/docs/markdown/plugin-meetings.constants._in_.md +0 -11
  346. package/dist/docs/markdown/plugin-meetings.constants._in_lobby_.md +0 -11
  347. package/dist/docs/markdown/plugin-meetings.constants._in_meeting_.md +0 -11
  348. package/dist/docs/markdown/plugin-meetings.constants._inactive_.md +0 -11
  349. package/dist/docs/markdown/plugin-meetings.constants._incoming_.md +0 -11
  350. package/dist/docs/markdown/plugin-meetings.constants._join_.md +0 -11
  351. package/dist/docs/markdown/plugin-meetings.constants._joined_.md +0 -11
  352. package/dist/docs/markdown/plugin-meetings.constants._left_.md +0 -11
  353. package/dist/docs/markdown/plugin-meetings.constants._locus_id_.md +0 -11
  354. package/dist/docs/markdown/plugin-meetings.constants._meeting_.md +0 -11
  355. package/dist/docs/markdown/plugin-meetings.constants._meeting_center_.md +0 -11
  356. package/dist/docs/markdown/plugin-meetings.constants._meeting_id_.md +0 -11
  357. package/dist/docs/markdown/plugin-meetings.constants._meeting_link_.md +0 -11
  358. package/dist/docs/markdown/plugin-meetings.constants._meeting_uuid_.md +0 -11
  359. package/dist/docs/markdown/plugin-meetings.constants._move_media_.md +0 -11
  360. package/dist/docs/markdown/plugin-meetings.constants._none_.md +0 -11
  361. package/dist/docs/markdown/plugin-meetings.constants._not_in_meeting_.md +0 -11
  362. package/dist/docs/markdown/plugin-meetings.constants._observe_.md +0 -11
  363. package/dist/docs/markdown/plugin-meetings.constants._people_.md +0 -11
  364. package/dist/docs/markdown/plugin-meetings.constants._personal_room_.md +0 -11
  365. package/dist/docs/markdown/plugin-meetings.constants._receive_only_.md +0 -11
  366. package/dist/docs/markdown/plugin-meetings.constants._remove_.md +0 -11
  367. package/dist/docs/markdown/plugin-meetings.constants._requested_.md +0 -11
  368. package/dist/docs/markdown/plugin-meetings.constants._resource_room_.md +0 -11
  369. package/dist/docs/markdown/plugin-meetings.constants._room_.md +0 -11
  370. package/dist/docs/markdown/plugin-meetings.constants._s_line.md +0 -11
  371. package/dist/docs/markdown/plugin-meetings.constants._send_only_.md +0 -11
  372. package/dist/docs/markdown/plugin-meetings.constants._send_receive_.md +0 -11
  373. package/dist/docs/markdown/plugin-meetings.constants._sip_bridge_.md +0 -11
  374. package/dist/docs/markdown/plugin-meetings.constants._sip_uri_.md +0 -11
  375. package/dist/docs/markdown/plugin-meetings.constants._slides_.md +0 -11
  376. package/dist/docs/markdown/plugin-meetings.constants._unknown_.md +0 -11
  377. package/dist/docs/markdown/plugin-meetings.constants._user_.md +0 -11
  378. package/dist/docs/markdown/plugin-meetings.constants._wait_.md +0 -11
  379. package/dist/docs/markdown/plugin-meetings.constants._webex_meeting_.md +0 -11
  380. package/dist/docs/markdown/plugin-meetings.constants.alert.md +0 -11
  381. package/dist/docs/markdown/plugin-meetings.constants.alternate_redirect_true.md +0 -11
  382. package/dist/docs/markdown/plugin-meetings.constants.answer.md +0 -11
  383. package/dist/docs/markdown/plugin-meetings.constants.api.md +0 -14
  384. package/dist/docs/markdown/plugin-meetings.constants.audio.md +0 -11
  385. package/dist/docs/markdown/plugin-meetings.constants.audio_input.md +0 -11
  386. package/dist/docs/markdown/plugin-meetings.constants.audio_status.md +0 -11
  387. package/dist/docs/markdown/plugin-meetings.constants.available_resolutions.md +0 -60
  388. package/dist/docs/markdown/plugin-meetings.constants.bnr_status.md +0 -16
  389. package/dist/docs/markdown/plugin-meetings.constants.breakouts.md +0 -51
  390. package/dist/docs/markdown/plugin-meetings.constants.calendar.md +0 -11
  391. package/dist/docs/markdown/plugin-meetings.constants.calendar_events.md +0 -17
  392. package/dist/docs/markdown/plugin-meetings.constants.calendar_events_api.md +0 -11
  393. package/dist/docs/markdown/plugin-meetings.constants.call.md +0 -11
  394. package/dist/docs/markdown/plugin-meetings.constants.call_removed_reason.md +0 -15
  395. package/dist/docs/markdown/plugin-meetings.constants.claim.md +0 -11
  396. package/dist/docs/markdown/plugin-meetings.constants.cmr_meetings.md +0 -11
  397. package/dist/docs/markdown/plugin-meetings.constants.complete.md +0 -11
  398. package/dist/docs/markdown/plugin-meetings.constants.connection_state.md +0 -18
  399. package/dist/docs/markdown/plugin-meetings.constants.content.md +0 -11
  400. package/dist/docs/markdown/plugin-meetings.constants.controls.md +0 -11
  401. package/dist/docs/markdown/plugin-meetings.constants.conversation_service.md +0 -11
  402. package/dist/docs/markdown/plugin-meetings.constants.conversation_url.md +0 -11
  403. package/dist/docs/markdown/plugin-meetings.constants.correlation_id.md +0 -11
  404. package/dist/docs/markdown/plugin-meetings.constants.decline.md +0 -11
  405. package/dist/docs/markdown/plugin-meetings.constants.default_excluded_stats.md +0 -11
  406. package/dist/docs/markdown/plugin-meetings.constants.default_get_stats_filter.md +0 -13
  407. package/dist/docs/markdown/plugin-meetings.constants.development.md +0 -11
  408. package/dist/docs/markdown/plugin-meetings.constants.dialer_regex.md +0 -15
  409. package/dist/docs/markdown/plugin-meetings.constants.display_hints.md +0 -51
  410. package/dist/docs/markdown/plugin-meetings.constants.embedded_app_types.md +0 -14
  411. package/dist/docs/markdown/plugin-meetings.constants.end.md +0 -11
  412. package/dist/docs/markdown/plugin-meetings.constants.ended.md +0 -11
  413. package/dist/docs/markdown/plugin-meetings.constants.error.md +0 -11
  414. package/dist/docs/markdown/plugin-meetings.constants.error_dictionary.md +0 -62
  415. package/dist/docs/markdown/plugin-meetings.constants.event_triggers.md +0 -82
  416. package/dist/docs/markdown/plugin-meetings.constants.event_types.md +0 -21
  417. package/dist/docs/markdown/plugin-meetings.constants.events.md +0 -26
  418. package/dist/docs/markdown/plugin-meetings.constants.floor_action.md +0 -15
  419. package/dist/docs/markdown/plugin-meetings.constants.full_state.md +0 -17
  420. package/dist/docs/markdown/plugin-meetings.constants.gathering.md +0 -11
  421. package/dist/docs/markdown/plugin-meetings.constants.hecate.md +0 -11
  422. package/dist/docs/markdown/plugin-meetings.constants.host.md +0 -11
  423. package/dist/docs/markdown/plugin-meetings.constants.http_verbs.md +0 -17
  424. package/dist/docs/markdown/plugin-meetings.constants.https_protocol.md +0 -11
  425. package/dist/docs/markdown/plugin-meetings.constants.ice_fail_timeout.md +0 -11
  426. package/dist/docs/markdown/plugin-meetings.constants.ice_gathering_state.md +0 -15
  427. package/dist/docs/markdown/plugin-meetings.constants.ice_state.md +0 -18
  428. package/dist/docs/markdown/plugin-meetings.constants.ice_timeout.md +0 -11
  429. package/dist/docs/markdown/plugin-meetings.constants.intent_to_join.md +0 -11
  430. package/dist/docs/markdown/plugin-meetings.constants.ipv4_regex.md +0 -11
  431. package/dist/docs/markdown/plugin-meetings.constants.join.md +0 -11
  432. package/dist/docs/markdown/plugin-meetings.constants.layout_types.md +0 -13
  433. package/dist/docs/markdown/plugin-meetings.constants.leave.md +0 -11
  434. package/dist/docs/markdown/plugin-meetings.constants.live.md +0 -11
  435. package/dist/docs/markdown/plugin-meetings.constants.local.md +0 -11
  436. package/dist/docs/markdown/plugin-meetings.constants.loci.md +0 -11
  437. package/dist/docs/markdown/plugin-meetings.constants.locus.md +0 -26
  438. package/dist/docs/markdown/plugin-meetings.constants.locus_url.md +0 -11
  439. package/dist/docs/markdown/plugin-meetings.constants.locusevent.md +0 -33
  440. package/dist/docs/markdown/plugin-meetings.constants.locusinfo.md +0 -43
  441. package/dist/docs/markdown/plugin-meetings.constants.max_random_delay_for_meeting_info.md +0 -11
  442. package/dist/docs/markdown/plugin-meetings.constants.md +0 -186
  443. package/dist/docs/markdown/plugin-meetings.constants.media.md +0 -11
  444. package/dist/docs/markdown/plugin-meetings.constants.media_devices.md +0 -15
  445. package/dist/docs/markdown/plugin-meetings.constants.media_peer_connection_name.md +0 -11
  446. package/dist/docs/markdown/plugin-meetings.constants.media_state.md +0 -14
  447. package/dist/docs/markdown/plugin-meetings.constants.media_track_constraint.md +0 -17
  448. package/dist/docs/markdown/plugin-meetings.constants.mediacontent.md +0 -14
  449. package/dist/docs/markdown/plugin-meetings.constants.meet.md +0 -11
  450. package/dist/docs/markdown/plugin-meetings.constants.meet_m.md +0 -11
  451. package/dist/docs/markdown/plugin-meetings.constants.meeting_audio_state_machine.md +0 -20
  452. package/dist/docs/markdown/plugin-meetings.constants.meeting_end_reason.md +0 -14
  453. package/dist/docs/markdown/plugin-meetings.constants.meeting_errors.md +0 -102
  454. package/dist/docs/markdown/plugin-meetings.constants.meeting_info_failure_reason.md +0 -16
  455. package/dist/docs/markdown/plugin-meetings.constants.meeting_removed_reason.md +0 -19
  456. package/dist/docs/markdown/plugin-meetings.constants.meeting_state.md +0 -25
  457. package/dist/docs/markdown/plugin-meetings.constants.meeting_state_machine.md +0 -31
  458. package/dist/docs/markdown/plugin-meetings.constants.meeting_video_state_machine.md +0 -20
  459. package/dist/docs/markdown/plugin-meetings.constants.meetinginfo.md +0 -11
  460. package/dist/docs/markdown/plugin-meetings.constants.meetings.md +0 -11
  461. package/dist/docs/markdown/plugin-meetings.constants.metrics_join_times_max_duration.md +0 -11
  462. package/dist/docs/markdown/plugin-meetings.constants.moderator_false.md +0 -11
  463. package/dist/docs/markdown/plugin-meetings.constants.moderator_true.md +0 -11
  464. package/dist/docs/markdown/plugin-meetings.constants.mqa_inteval.md +0 -11
  465. package/dist/docs/markdown/plugin-meetings.constants.mqa_stats.md +0 -82
  466. package/dist/docs/markdown/plugin-meetings.constants.network_status.md +0 -15
  467. package/dist/docs/markdown/plugin-meetings.constants.network_type.md +0 -16
  468. package/dist/docs/markdown/plugin-meetings.constants.offline.md +0 -11
  469. package/dist/docs/markdown/plugin-meetings.constants.online.md +0 -11
  470. package/dist/docs/markdown/plugin-meetings.constants.participant.md +0 -11
  471. package/dist/docs/markdown/plugin-meetings.constants.participant_deltas.md +0 -22
  472. package/dist/docs/markdown/plugin-meetings.constants.password_status.md +0 -16
  473. package/dist/docs/markdown/plugin-meetings.constants.pc_bail_timeout.md +0 -11
  474. package/dist/docs/markdown/plugin-meetings.constants.peer_connection_state.md +0 -14
  475. package/dist/docs/markdown/plugin-meetings.constants.provisional_type_dial_in.md +0 -11
  476. package/dist/docs/markdown/plugin-meetings.constants.provisional_type_dial_out.md +0 -11
  477. package/dist/docs/markdown/plugin-meetings.constants.pstn_status.md +0 -18
  478. package/dist/docs/markdown/plugin-meetings.constants.quality_levels.md +0 -19
  479. package/dist/docs/markdown/plugin-meetings.constants.reachability.md +0 -15
  480. package/dist/docs/markdown/plugin-meetings.constants.ready.md +0 -11
  481. package/dist/docs/markdown/plugin-meetings.constants.reconnection.md +0 -19
  482. package/dist/docs/markdown/plugin-meetings.constants.recording_state.md +0 -16
  483. package/dist/docs/markdown/plugin-meetings.constants.remote.md +0 -11
  484. package/dist/docs/markdown/plugin-meetings.constants.resource.md +0 -15
  485. package/dist/docs/markdown/plugin-meetings.constants.retry_timeout.md +0 -11
  486. package/dist/docs/markdown/plugin-meetings.constants.roap.md +0 -22
  487. package/dist/docs/markdown/plugin-meetings.constants.self_roles.md +0 -14
  488. package/dist/docs/markdown/plugin-meetings.constants.send_dtmf_endpoint.md +0 -11
  489. package/dist/docs/markdown/plugin-meetings.constants.sendrecv.md +0 -11
  490. package/dist/docs/markdown/plugin-meetings.constants.share.md +0 -11
  491. package/dist/docs/markdown/plugin-meetings.constants.share_peer_connection_name.md +0 -11
  492. package/dist/docs/markdown/plugin-meetings.constants.share_status.md +0 -16
  493. package/dist/docs/markdown/plugin-meetings.constants.share_stopped_reason.md +0 -14
  494. package/dist/docs/markdown/plugin-meetings.constants.sip_uri.md +0 -11
  495. package/dist/docs/markdown/plugin-meetings.constants.stats.md +0 -16
  496. package/dist/docs/markdown/plugin-meetings.constants.type.md +0 -11
  497. package/dist/docs/markdown/plugin-meetings.constants.use_uri_lookup_false.md +0 -11
  498. package/dist/docs/markdown/plugin-meetings.constants.uuid_reg.md +0 -11
  499. package/dist/docs/markdown/plugin-meetings.constants.valid_email_address.md +0 -11
  500. package/dist/docs/markdown/plugin-meetings.constants.valid_pin.md +0 -11
  501. package/dist/docs/markdown/plugin-meetings.constants.valid_pmr_address.md +0 -11
  502. package/dist/docs/markdown/plugin-meetings.constants.valid_pmr_link.md +0 -11
  503. package/dist/docs/markdown/plugin-meetings.constants.video.md +0 -11
  504. package/dist/docs/markdown/plugin-meetings.constants.video_input.md +0 -11
  505. package/dist/docs/markdown/plugin-meetings.constants.video_resolutions.md +0 -24
  506. package/dist/docs/markdown/plugin-meetings.constants.video_status.md +0 -11
  507. package/dist/docs/markdown/plugin-meetings.constants.wbxappapi_service.md +0 -11
  508. package/dist/docs/markdown/plugin-meetings.constants.webex_dot_com.md +0 -11
  509. package/dist/docs/markdown/plugin-meetings.constants.whiteboard.md +0 -11
  510. package/dist/docs/markdown/plugin-meetings.constants.www_dot.md +0 -11
  511. package/dist/docs/markdown/plugin-meetings.md +0 -28
  512. package/dist/docs/markdown/plugin-meetings.meeting.default._constructor_.md +0 -21
  513. package/dist/docs/markdown/plugin-meetings.meeting.default.acknowledge.md +0 -28
  514. package/dist/docs/markdown/plugin-meetings.meeting.default.addmedia.md +0 -28
  515. package/dist/docs/markdown/plugin-meetings.meeting.default.admit.md +0 -32
  516. package/dist/docs/markdown/plugin-meetings.meeting.default.attrs.md +0 -11
  517. package/dist/docs/markdown/plugin-meetings.meeting.default.audio.md +0 -11
  518. package/dist/docs/markdown/plugin-meetings.meeting.default.breakouts.md +0 -11
  519. package/dist/docs/markdown/plugin-meetings.meeting.default.callevents.md +0 -11
  520. package/dist/docs/markdown/plugin-meetings.meeting.default.cancelphoneinvite.md +0 -30
  521. package/dist/docs/markdown/plugin-meetings.meeting.default.canupdatemedia.md +0 -19
  522. package/dist/docs/markdown/plugin-meetings.meeting.default.changevideolayout.md +0 -38
  523. package/dist/docs/markdown/plugin-meetings.meeting.default.clearmeetingdata.md +0 -13
  524. package/dist/docs/markdown/plugin-meetings.meeting.default.closelocalshare.md +0 -21
  525. package/dist/docs/markdown/plugin-meetings.meeting.default.closelocalstream.md +0 -21
  526. package/dist/docs/markdown/plugin-meetings.meeting.default.closepeerconnections.md +0 -21
  527. package/dist/docs/markdown/plugin-meetings.meeting.default.closeremotestream.md +0 -26
  528. package/dist/docs/markdown/plugin-meetings.meeting.default.closeremotetracks.md +0 -19
  529. package/dist/docs/markdown/plugin-meetings.meeting.default.controlsoptionsmanager.md +0 -11
  530. package/dist/docs/markdown/plugin-meetings.meeting.default.conversationurl.md +0 -11
  531. package/dist/docs/markdown/plugin-meetings.meeting.default.correlationid.md +0 -11
  532. package/dist/docs/markdown/plugin-meetings.meeting.default.createmediaconnection.md +0 -26
  533. package/dist/docs/markdown/plugin-meetings.meeting.default.decline.md +0 -28
  534. package/dist/docs/markdown/plugin-meetings.meeting.default.deferjoin.md +0 -11
  535. package/dist/docs/markdown/plugin-meetings.meeting.default.destination.md +0 -11
  536. package/dist/docs/markdown/plugin-meetings.meeting.default.destinationtype.md +0 -11
  537. package/dist/docs/markdown/plugin-meetings.meeting.default.deviceurl.md +0 -11
  538. package/dist/docs/markdown/plugin-meetings.meeting.default.dialindevicestatus.md +0 -11
  539. package/dist/docs/markdown/plugin-meetings.meeting.default.dialinurl.md +0 -11
  540. package/dist/docs/markdown/plugin-meetings.meeting.default.dialoutdevicestatus.md +0 -11
  541. package/dist/docs/markdown/plugin-meetings.meeting.default.dialouturl.md +0 -11
  542. package/dist/docs/markdown/plugin-meetings.meeting.default.disconnectphoneaudio.md +0 -19
  543. package/dist/docs/markdown/plugin-meetings.meeting.default.endcallinitiatejoinreq.md +0 -11
  544. package/dist/docs/markdown/plugin-meetings.meeting.default.endjoinreqresp.md +0 -11
  545. package/dist/docs/markdown/plugin-meetings.meeting.default.endlocalsdpgenremotesdprecvdelay.md +0 -11
  546. package/dist/docs/markdown/plugin-meetings.meeting.default.endmeetingforall.md +0 -21
  547. package/dist/docs/markdown/plugin-meetings.meeting.default.fetchmeetinginfo.md +0 -29
  548. package/dist/docs/markdown/plugin-meetings.meeting.default.fetchmeetinginfotimeoutid.md +0 -11
  549. package/dist/docs/markdown/plugin-meetings.meeting.default.floorgrantpending.md +0 -11
  550. package/dist/docs/markdown/plugin-meetings.meeting.default.forwardevent.md +0 -29
  551. package/dist/docs/markdown/plugin-meetings.meeting.default.getanalyzermetricsprepayload.md +0 -32
  552. package/dist/docs/markdown/plugin-meetings.meeting.default.getcallinitiatejoinreq.md +0 -17
  553. package/dist/docs/markdown/plugin-meetings.meeting.default.getdevices.md +0 -13
  554. package/dist/docs/markdown/plugin-meetings.meeting.default.getjoinreqresp.md +0 -17
  555. package/dist/docs/markdown/plugin-meetings.meeting.default.getlocalsdpgenremotesdprecvdelay.md +0 -17
  556. package/dist/docs/markdown/plugin-meetings.meeting.default.getmediaconnectiondebugid.md +0 -15
  557. package/dist/docs/markdown/plugin-meetings.meeting.default.getmediastreams.md +0 -15
  558. package/dist/docs/markdown/plugin-meetings.meeting.default.getmembers.md +0 -21
  559. package/dist/docs/markdown/plugin-meetings.meeting.default.getsendingmediadelayduration.md +0 -24
  560. package/dist/docs/markdown/plugin-meetings.meeting.default.getsetupdelayduration.md +0 -24
  561. package/dist/docs/markdown/plugin-meetings.meeting.default.getsupporteddevices.md +0 -16
  562. package/dist/docs/markdown/plugin-meetings.meeting.default.gettotaljmt.md +0 -17
  563. package/dist/docs/markdown/plugin-meetings.meeting.default.guest.md +0 -11
  564. package/dist/docs/markdown/plugin-meetings.meeting.default.handledatachannelurlchange.md +0 -26
  565. package/dist/docs/markdown/plugin-meetings.meeting.default.handleroapfailure.md +0 -13
  566. package/dist/docs/markdown/plugin-meetings.meeting.default.hasjoinedonce.md +0 -11
  567. package/dist/docs/markdown/plugin-meetings.meeting.default.haswebsocketconnected.md +0 -11
  568. package/dist/docs/markdown/plugin-meetings.meeting.default.hostid.md +0 -11
  569. package/dist/docs/markdown/plugin-meetings.meeting.default.id.md +0 -11
  570. package/dist/docs/markdown/plugin-meetings.meeting.default.inmeetingactions.md +0 -11
  571. package/dist/docs/markdown/plugin-meetings.meeting.default.invite.md +0 -33
  572. package/dist/docs/markdown/plugin-meetings.meeting.default.isaudioconnected.md +0 -21
  573. package/dist/docs/markdown/plugin-meetings.meeting.default.isaudiomuted.md +0 -21
  574. package/dist/docs/markdown/plugin-meetings.meeting.default.isaudioself.md +0 -21
  575. package/dist/docs/markdown/plugin-meetings.meeting.default.islocalsharelive.md +0 -11
  576. package/dist/docs/markdown/plugin-meetings.meeting.default.ismultistream.md +0 -11
  577. package/dist/docs/markdown/plugin-meetings.meeting.default.isreactionssupported.md +0 -19
  578. package/dist/docs/markdown/plugin-meetings.meeting.default.isroapinprogress.md +0 -11
  579. package/dist/docs/markdown/plugin-meetings.meeting.default.issharing.md +0 -11
  580. package/dist/docs/markdown/plugin-meetings.meeting.default.istranscriptionsupported.md +0 -23
  581. package/dist/docs/markdown/plugin-meetings.meeting.default.isvideoconnected.md +0 -21
  582. package/dist/docs/markdown/plugin-meetings.meeting.default.isvideomuted.md +0 -21
  583. package/dist/docs/markdown/plugin-meetings.meeting.default.isvideoself.md +0 -21
  584. package/dist/docs/markdown/plugin-meetings.meeting.default.join.md +0 -28
  585. package/dist/docs/markdown/plugin-meetings.meeting.default.joinedwith.md +0 -11
  586. package/dist/docs/markdown/plugin-meetings.meeting.default.joinwithmedia.md +0 -36
  587. package/dist/docs/markdown/plugin-meetings.meeting.default.keepalivetimerid.md +0 -11
  588. package/dist/docs/markdown/plugin-meetings.meeting.default.lastvideolayoutinfo.md +0 -11
  589. package/dist/docs/markdown/plugin-meetings.meeting.default.leave.md +0 -31
  590. package/dist/docs/markdown/plugin-meetings.meeting.default.lockmeeting.md +0 -21
  591. package/dist/docs/markdown/plugin-meetings.meeting.default.locusid.md +0 -11
  592. package/dist/docs/markdown/plugin-meetings.meeting.default.locusinfo.md +0 -11
  593. package/dist/docs/markdown/plugin-meetings.meeting.default.locusurl.md +0 -11
  594. package/dist/docs/markdown/plugin-meetings.meeting.default.md +0 -227
  595. package/dist/docs/markdown/plugin-meetings.meeting.default.mediaconnections.md +0 -11
  596. package/dist/docs/markdown/plugin-meetings.meeting.default.mediaid.md +0 -11
  597. package/dist/docs/markdown/plugin-meetings.meeting.default.medianegotiatedevent.md +0 -13
  598. package/dist/docs/markdown/plugin-meetings.meeting.default.mediaproperties.md +0 -11
  599. package/dist/docs/markdown/plugin-meetings.meeting.default.mediarequestmanagers.md +0 -16
  600. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingfinitestatemachine.md +0 -11
  601. package/dist/docs/markdown/plugin-meetings.meeting.default.meetinginfo.md +0 -11
  602. package/dist/docs/markdown/plugin-meetings.meeting.default.meetinginfofailurereason.md +0 -11
  603. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingjoinurl.md +0 -11
  604. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingnumber.md +0 -11
  605. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingrequest.md +0 -11
  606. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingstate.md +0 -11
  607. package/dist/docs/markdown/plugin-meetings.meeting.default.members.md +0 -11
  608. package/dist/docs/markdown/plugin-meetings.meeting.default.movefrom.md +0 -28
  609. package/dist/docs/markdown/plugin-meetings.meeting.default.moveto.md +0 -28
  610. package/dist/docs/markdown/plugin-meetings.meeting.default.mute.md +0 -29
  611. package/dist/docs/markdown/plugin-meetings.meeting.default.muteaudio.md +0 -21
  612. package/dist/docs/markdown/plugin-meetings.meeting.default.mutevideo.md +0 -21
  613. package/dist/docs/markdown/plugin-meetings.meeting.default.namespace.md +0 -11
  614. package/dist/docs/markdown/plugin-meetings.meeting.default.networkqualitymonitor.md +0 -11
  615. package/dist/docs/markdown/plugin-meetings.meeting.default.networkstatus.md +0 -11
  616. package/dist/docs/markdown/plugin-meetings.meeting.default.options.md +0 -11
  617. package/dist/docs/markdown/plugin-meetings.meeting.default.orgid.md +0 -11
  618. package/dist/docs/markdown/plugin-meetings.meeting.default.owner.md +0 -11
  619. package/dist/docs/markdown/plugin-meetings.meeting.default.parsemeetinginfo.md +0 -34
  620. package/dist/docs/markdown/plugin-meetings.meeting.default.partner.md +0 -11
  621. package/dist/docs/markdown/plugin-meetings.meeting.default.passwordstatus.md +0 -11
  622. package/dist/docs/markdown/plugin-meetings.meeting.default.pauserecording.md +0 -21
  623. package/dist/docs/markdown/plugin-meetings.meeting.default.permissiontoken.md +0 -11
  624. package/dist/docs/markdown/plugin-meetings.meeting.default.policy.md +0 -11
  625. package/dist/docs/markdown/plugin-meetings.meeting.default.processnextqueuedmediaupdate.md +0 -13
  626. package/dist/docs/markdown/plugin-meetings.meeting.default.publishtracks.md +0 -33
  627. package/dist/docs/markdown/plugin-meetings.meeting.default.queuedmediaupdates.md +0 -11
  628. package/dist/docs/markdown/plugin-meetings.meeting.default.receiveslotmanager.md +0 -11
  629. package/dist/docs/markdown/plugin-meetings.meeting.default.reconnect.md +0 -28
  630. package/dist/docs/markdown/plugin-meetings.meeting.default.reconnectionmanager.md +0 -11
  631. package/dist/docs/markdown/plugin-meetings.meeting.default.recording.md +0 -11
  632. package/dist/docs/markdown/plugin-meetings.meeting.default.recordingcontroller.md +0 -11
  633. package/dist/docs/markdown/plugin-meetings.meeting.default.refreshcaptcha.md +0 -21
  634. package/dist/docs/markdown/plugin-meetings.meeting.default.remotemediamanager.md +0 -11
  635. package/dist/docs/markdown/plugin-meetings.meeting.default.remove.md +0 -28
  636. package/dist/docs/markdown/plugin-meetings.meeting.default.requiredcaptcha.md +0 -11
  637. package/dist/docs/markdown/plugin-meetings.meeting.default.resource.md +0 -11
  638. package/dist/docs/markdown/plugin-meetings.meeting.default.resourceid.md +0 -11
  639. package/dist/docs/markdown/plugin-meetings.meeting.default.resourceurl.md +0 -11
  640. package/dist/docs/markdown/plugin-meetings.meeting.default.resumerecording.md +0 -21
  641. package/dist/docs/markdown/plugin-meetings.meeting.default.roap.md +0 -11
  642. package/dist/docs/markdown/plugin-meetings.meeting.default.roapseq.md +0 -11
  643. package/dist/docs/markdown/plugin-meetings.meeting.default.selfid.md +0 -11
  644. package/dist/docs/markdown/plugin-meetings.meeting.default.senddtmf.md +0 -28
  645. package/dist/docs/markdown/plugin-meetings.meeting.default.sendreaction.md +0 -29
  646. package/dist/docs/markdown/plugin-meetings.meeting.default.setdisallowunmute.md +0 -26
  647. package/dist/docs/markdown/plugin-meetings.meeting.default.setendcallinitiatejoinreq.md +0 -17
  648. package/dist/docs/markdown/plugin-meetings.meeting.default.setendjoinreqresp.md +0 -17
  649. package/dist/docs/markdown/plugin-meetings.meeting.default.setendlocalsdpgenremotesdprecvdelay.md +0 -17
  650. package/dist/docs/markdown/plugin-meetings.meeting.default.setendsendingmediadelay.md +0 -24
  651. package/dist/docs/markdown/plugin-meetings.meeting.default.setendsetupdelay.md +0 -24
  652. package/dist/docs/markdown/plugin-meetings.meeting.default.setlocalsharetrack.md +0 -28
  653. package/dist/docs/markdown/plugin-meetings.meeting.default.setlocaltracks.md +0 -28
  654. package/dist/docs/markdown/plugin-meetings.meeting.default.setlocalvideoquality.md +0 -26
  655. package/dist/docs/markdown/plugin-meetings.meeting.default.setmeetingquality.md +0 -31
  656. package/dist/docs/markdown/plugin-meetings.meeting.default.setmercurylistener.md +0 -21
  657. package/dist/docs/markdown/plugin-meetings.meeting.default.setmuteall.md +0 -28
  658. package/dist/docs/markdown/plugin-meetings.meeting.default.setmuteonentry.md +0 -26
  659. package/dist/docs/markdown/plugin-meetings.meeting.default.setremotequalitylevel.md +0 -26
  660. package/dist/docs/markdown/plugin-meetings.meeting.default.setsipuri.md +0 -26
  661. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartcallinitiatejoinreq.md +0 -17
  662. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartjoinreqresp.md +0 -17
  663. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartlocalsdpgenremotesdprecvdelay.md +0 -17
  664. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartsendingmediadelay.md +0 -24
  665. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartsetupdelay.md +0 -24
  666. package/dist/docs/markdown/plugin-meetings.meeting.default.setupbreakoutslistener.md +0 -19
  667. package/dist/docs/markdown/plugin-meetings.meeting.default.setupmediaconnectionlisteners.md +0 -11
  668. package/dist/docs/markdown/plugin-meetings.meeting.default.setupstatsanalyzereventhandlers.md +0 -13
  669. package/dist/docs/markdown/plugin-meetings.meeting.default.sharescreen.md +0 -32
  670. package/dist/docs/markdown/plugin-meetings.meeting.default.sharestatus.md +0 -11
  671. package/dist/docs/markdown/plugin-meetings.meeting.default.sipuri.md +0 -11
  672. package/dist/docs/markdown/plugin-meetings.meeting.default.startcallinitiatejoinreq.md +0 -11
  673. package/dist/docs/markdown/plugin-meetings.meeting.default.startjoinreqresp.md +0 -11
  674. package/dist/docs/markdown/plugin-meetings.meeting.default.startkeepalive.md +0 -13
  675. package/dist/docs/markdown/plugin-meetings.meeting.default.startlocalsdpgenremotesdprecvdelay.md +0 -11
  676. package/dist/docs/markdown/plugin-meetings.meeting.default.startrecording.md +0 -21
  677. package/dist/docs/markdown/plugin-meetings.meeting.default.startwhiteboardshare.md +0 -29
  678. package/dist/docs/markdown/plugin-meetings.meeting.default.state.md +0 -11
  679. package/dist/docs/markdown/plugin-meetings.meeting.default.statsanalyzer.md +0 -11
  680. package/dist/docs/markdown/plugin-meetings.meeting.default.stopkeepalive.md +0 -13
  681. package/dist/docs/markdown/plugin-meetings.meeting.default.stopreceivingtranscription.md +0 -19
  682. package/dist/docs/markdown/plugin-meetings.meeting.default.stoprecording.md +0 -21
  683. package/dist/docs/markdown/plugin-meetings.meeting.default.stopshare.md +0 -28
  684. package/dist/docs/markdown/plugin-meetings.meeting.default.stopwhiteboardshare.md +0 -28
  685. package/dist/docs/markdown/plugin-meetings.meeting.default.togglereactions.md +0 -28
  686. package/dist/docs/markdown/plugin-meetings.meeting.default.transcription.md +0 -11
  687. package/dist/docs/markdown/plugin-meetings.meeting.default.transfer.md +0 -29
  688. package/dist/docs/markdown/plugin-meetings.meeting.default.type.md +0 -11
  689. package/dist/docs/markdown/plugin-meetings.meeting.default.unlockmeeting.md +0 -21
  690. package/dist/docs/markdown/plugin-meetings.meeting.default.unmuteaudio.md +0 -21
  691. package/dist/docs/markdown/plugin-meetings.meeting.default.unmutevideo.md +0 -21
  692. package/dist/docs/markdown/plugin-meetings.meeting.default.unpublishtracks.md +0 -26
  693. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetlocalsharetrack.md +0 -21
  694. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetlocalvideotrack.md +0 -21
  695. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetpeerconnections.md +0 -21
  696. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetremotestream.md +0 -26
  697. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetremotetracks.md +0 -19
  698. package/dist/docs/markdown/plugin-meetings.meeting.default.updateaudio.md +0 -34
  699. package/dist/docs/markdown/plugin-meetings.meeting.default.updatellmconnection.md +0 -19
  700. package/dist/docs/markdown/plugin-meetings.meeting.default.updatemedia.md +0 -32
  701. package/dist/docs/markdown/plugin-meetings.meeting.default.updatemediaconnections.md +0 -11
  702. package/dist/docs/markdown/plugin-meetings.meeting.default.updateshare.md +0 -35
  703. package/dist/docs/markdown/plugin-meetings.meeting.default.updatevideo.md +0 -34
  704. package/dist/docs/markdown/plugin-meetings.meeting.default.uploadlogs.md +0 -28
  705. package/dist/docs/markdown/plugin-meetings.meeting.default.usephoneaudio.md +0 -28
  706. package/dist/docs/markdown/plugin-meetings.meeting.default.userid.md +0 -11
  707. package/dist/docs/markdown/plugin-meetings.meeting.default.verifypassword.md +0 -35
  708. package/dist/docs/markdown/plugin-meetings.meeting.default.video.md +0 -11
  709. package/dist/docs/markdown/plugin-meetings.meeting.default.wirelessshare.md +0 -11
  710. package/dist/docs/markdown/plugin-meetings.meeting.md +0 -18
  711. package/dist/docs/markdown/plugin-meetings.meeting.media_update_type.md +0 -17
  712. package/dist/docs/markdown/plugin-meetings.meetings._constructor_.md +0 -22
  713. package/dist/docs/markdown/plugin-meetings.meetings.create.md +0 -30
  714. package/dist/docs/markdown/plugin-meetings.meetings.fetchuserpreferredwebexsite.md +0 -19
  715. package/dist/docs/markdown/plugin-meetings.meetings.geohintinfo.md +0 -11
  716. package/dist/docs/markdown/plugin-meetings.meetings.getallmeetings.md +0 -31
  717. package/dist/docs/markdown/plugin-meetings.meetings.getgeohint.md +0 -19
  718. package/dist/docs/markdown/plugin-meetings.meetings.getlogger.md +0 -19
  719. package/dist/docs/markdown/plugin-meetings.meetings.getmeetingbytype.md +0 -29
  720. package/dist/docs/markdown/plugin-meetings.meetings.getpersonalmeetingroom.md +0 -21
  721. package/dist/docs/markdown/plugin-meetings.meetings.getreachability.md +0 -21
  722. package/dist/docs/markdown/plugin-meetings.meetings.getscheduledmeetings.md +0 -19
  723. package/dist/docs/markdown/plugin-meetings.meetings.loggerrequest.md +0 -11
  724. package/dist/docs/markdown/plugin-meetings.meetings.md +0 -57
  725. package/dist/docs/markdown/plugin-meetings.meetings.media.md +0 -11
  726. package/dist/docs/markdown/plugin-meetings.meetings.meetingcollection.md +0 -11
  727. package/dist/docs/markdown/plugin-meetings.meetings.meetinginfo.md +0 -11
  728. package/dist/docs/markdown/plugin-meetings.meetings.namespace.md +0 -11
  729. package/dist/docs/markdown/plugin-meetings.meetings.personalmeetingroom.md +0 -11
  730. package/dist/docs/markdown/plugin-meetings.meetings.preferredwebexsite.md +0 -11
  731. package/dist/docs/markdown/plugin-meetings.meetings.reachability.md +0 -11
  732. package/dist/docs/markdown/plugin-meetings.meetings.register.md +0 -21
  733. package/dist/docs/markdown/plugin-meetings.meetings.registered.md +0 -11
  734. package/dist/docs/markdown/plugin-meetings.meetings.request.md +0 -11
  735. package/dist/docs/markdown/plugin-meetings.meetings.setreachability.md +0 -21
  736. package/dist/docs/markdown/plugin-meetings.meetings.startreachability.md +0 -21
  737. package/dist/docs/markdown/plugin-meetings.meetings.syncmeetings.md +0 -21
  738. package/dist/docs/markdown/plugin-meetings.meetings.unregister.md +0 -21
  739. package/dist/docs/markdown/plugin-meetings.meetings.uploadlogs.md +0 -34
  740. package/dist/docs/markdown/plugin-meetings.reactions.md +0 -13
  741. package/dist/docs/markdown/plugin-meetings.reactions.reactions.md +0 -11
  742. package/dist/docs/markdown/plugin-meetings.reactions.skintones.md +0 -11
  743. package/dist/docs/markdown/plugin-meetings.remotemedia.getmaxfs.md +0 -26
  744. package/dist/docs/markdown/plugin-meetings.remotemedia.md +0 -31
  745. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia._constructor_.md +0 -22
  746. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.csi.md +0 -13
  747. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.id.md +0 -11
  748. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.md +0 -40
  749. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.mediatype.md +0 -13
  750. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.memberid.md +0 -13
  751. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.setsizehint.md +0 -25
  752. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.sourcestate.md +0 -13
  753. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.stream.md +0 -13
  754. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemediaevents.md +0 -14
  755. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemediaid.md +0 -11
  756. package/dist/docs/markdown/plugin-meetings.remotemedia.remotevideoresolution.md +0 -11
  757. package/dist/docs/markdown/plugin-meetings.remotemediagroup.md +0 -12
  758. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup._constructor_.md +0 -24
  759. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.getremotemedia.md +0 -26
  760. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.includes.md +0 -27
  761. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.ispinned.md +0 -22
  762. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.md +0 -28
  763. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.pin.md +0 -25
  764. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.unpin.md +0 -24
  765. package/dist/docs/markdown/plugin-meetings.triggerproxy.md +0 -11
  766. package/dist/docs/metadata/index.api.json +0 -14144
  767. package/dist/docs/metadata/index.api.md +0 -2075
  768. package/dist/docs/metadata/index.d.ts +0 -5594
  769. package/dist/index.d.ts +0 -4
  770. package/dist/locus-info/controlsUtils.d.ts +0 -2
  771. package/dist/locus-info/embeddedAppsUtils.d.ts +0 -2
  772. package/dist/locus-info/fullState.d.ts +0 -2
  773. package/dist/locus-info/hostUtils.d.ts +0 -2
  774. package/dist/locus-info/index.d.ts +0 -269
  775. package/dist/locus-info/infoUtils.d.ts +0 -2
  776. package/dist/locus-info/mediaSharesUtils.d.ts +0 -2
  777. package/dist/locus-info/parser.d.ts +0 -212
  778. package/dist/locus-info/selfUtils.d.ts +0 -2
  779. package/dist/media/index.d.ts +0 -32
  780. package/dist/media/properties.d.ts +0 -108
  781. package/dist/media/util.d.ts +0 -2
  782. package/dist/mediaQualityMetrics/config.d.ts +0 -233
  783. package/dist/meeting/effectsState.d.ts +0 -42
  784. package/dist/meeting/effectsState.js +0 -260
  785. package/dist/meeting/effectsState.js.map +0 -1
  786. package/dist/meeting/in-meeting-actions.d.ts +0 -79
  787. package/dist/meeting/index.d.ts +0 -1621
  788. package/dist/meeting/muteState.d.ts +0 -116
  789. package/dist/meeting/request.d.ts +0 -255
  790. package/dist/meeting/state.d.ts +0 -9
  791. package/dist/meeting/util.d.ts +0 -2
  792. package/dist/meeting-info/collection.d.ts +0 -20
  793. package/dist/meeting-info/index.d.ts +0 -57
  794. package/dist/meeting-info/meeting-info-v2.d.ts +0 -93
  795. package/dist/meeting-info/request.d.ts +0 -22
  796. package/dist/meeting-info/util.d.ts +0 -2
  797. package/dist/meeting-info/utilv2.d.ts +0 -2
  798. package/dist/meetings/collection.d.ts +0 -23
  799. package/dist/meetings/index.d.ts +0 -298
  800. package/dist/meetings/request.d.ts +0 -27
  801. package/dist/meetings/util.d.ts +0 -18
  802. package/dist/member/index.d.ts +0 -145
  803. package/dist/member/util.d.ts +0 -2
  804. package/dist/members/collection.d.ts +0 -24
  805. package/dist/members/index.d.ts +0 -298
  806. package/dist/members/request.d.ts +0 -50
  807. package/dist/members/util.d.ts +0 -2
  808. package/dist/metrics/config.d.ts +0 -169
  809. package/dist/metrics/config.js +0 -291
  810. package/dist/metrics/config.js.map +0 -1
  811. package/dist/metrics/constants.d.ts +0 -57
  812. package/dist/metrics/index.d.ts +0 -152
  813. package/dist/networkQualityMonitor/index.d.ts +0 -70
  814. package/dist/peer-connection-manager/index.d.ts +0 -6
  815. package/dist/peer-connection-manager/index.js +0 -671
  816. package/dist/peer-connection-manager/index.js.map +0 -1
  817. package/dist/peer-connection-manager/util.d.ts +0 -6
  818. package/dist/peer-connection-manager/util.js +0 -110
  819. package/dist/peer-connection-manager/util.js.map +0 -1
  820. package/dist/personal-meeting-room/index.d.ts +0 -47
  821. package/dist/personal-meeting-room/request.d.ts +0 -14
  822. package/dist/personal-meeting-room/util.d.ts +0 -2
  823. package/dist/plugin-meetings.d.ts +0 -5399
  824. package/dist/reachability/index.d.ts +0 -139
  825. package/dist/reachability/request.d.ts +0 -35
  826. package/dist/reactions/reactions.d.ts +0 -4
  827. package/dist/reactions/reactions.type.d.ts +0 -32
  828. package/dist/reconnection-manager/index.d.ts +0 -112
  829. package/dist/recording-controller/enums.d.ts +0 -7
  830. package/dist/recording-controller/index.d.ts +0 -193
  831. package/dist/recording-controller/util.d.ts +0 -13
  832. package/dist/roap/collection.d.ts +0 -10
  833. package/dist/roap/collection.js +0 -63
  834. package/dist/roap/collection.js.map +0 -1
  835. package/dist/roap/handler.d.ts +0 -47
  836. package/dist/roap/handler.js +0 -279
  837. package/dist/roap/handler.js.map +0 -1
  838. package/dist/roap/index.d.ts +0 -116
  839. package/dist/roap/request.d.ts +0 -35
  840. package/dist/roap/state.d.ts +0 -9
  841. package/dist/roap/state.js +0 -127
  842. package/dist/roap/state.js.map +0 -1
  843. package/dist/roap/turnDiscovery.d.ts +0 -67
  844. package/dist/roap/util.d.ts +0 -2
  845. package/dist/roap/util.js +0 -76
  846. package/dist/roap/util.js.map +0 -1
  847. package/dist/statsAnalyzer/global.d.ts +0 -126
  848. package/dist/statsAnalyzer/index.d.ts +0 -190
  849. package/dist/statsAnalyzer/mqaUtil.d.ts +0 -22
  850. package/dist/transcription/index.d.ts +0 -64
  851. package/dist/types/meeting/effectsState.d.ts +0 -42
  852. package/dist/types/metrics/config.d.ts +0 -171
  853. package/dist/types/tsdoc-metadata.json +0 -11
  854. package/src/metrics/config.ts +0 -487
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable require-jsdoc */
2
2
  import {
3
- MediaRequest as WcmeMediaRequest,
3
+ StreamRequest,
4
4
  Policy,
5
5
  ActiveSpeakerInfo,
6
6
  ReceiverSelectedInfo,
@@ -9,7 +9,7 @@ import {
9
9
  getRecommendedMaxBitrateForFrameSize,
10
10
  RecommendedOpusBitrates,
11
11
  } from '@webex/internal-media-core';
12
- import {cloneDeep, debounce, isEmpty} from 'lodash';
12
+ import {cloneDeepWith, debounce, isEmpty} from 'lodash';
13
13
 
14
14
  import LoggerProxy from '../common/logs/logger-proxy';
15
15
 
@@ -47,6 +47,7 @@ export interface MediaRequest {
47
47
  receiveSlots: Array<ReceiveSlot>;
48
48
  codecInfo?: CodecInfo;
49
49
  preferredMaxFs?: number;
50
+ handleMaxFs?: ({maxFs}: {maxFs: number}) => void;
50
51
  }
51
52
 
52
53
  export type MediaRequestId = string;
@@ -65,13 +66,17 @@ type DegradationPreferences = {
65
66
  maxMacroblocksLimit: number;
66
67
  };
67
68
 
68
- type SendMediaRequestsCallback = (mediaRequests: WcmeMediaRequest[]) => void;
69
+ type SendMediaRequestsCallback = (streamRequests: StreamRequest[]) => void;
69
70
  type Kind = 'audio' | 'video';
70
71
 
71
72
  type Options = {
72
73
  degradationPreferences: DegradationPreferences;
73
74
  kind: Kind;
75
+ trimRequestsToNumOfSources: boolean; // if enabled, AS speaker requests will be trimmed based on the calls to setNumCurrentSources()
74
76
  };
77
+
78
+ type ClientRequestsMap = {[key: MediaRequestId]: MediaRequest};
79
+
75
80
  export class MediaRequestManager {
76
81
  private sendMediaRequestsCallback: SendMediaRequestsCallback;
77
82
 
@@ -79,7 +84,7 @@ export class MediaRequestManager {
79
84
 
80
85
  private counter: number;
81
86
 
82
- private clientRequests: {[key: MediaRequestId]: MediaRequest};
87
+ private clientRequests: ClientRequestsMap;
83
88
 
84
89
  private degradationPreferences: DegradationPreferences;
85
90
 
@@ -87,14 +92,21 @@ export class MediaRequestManager {
87
92
 
88
93
  private debouncedSourceUpdateListener: () => void;
89
94
 
90
- private previousWCMEMediaRequests: Array<WcmeMediaRequest> = [];
95
+ private previousStreamRequests: Array<StreamRequest> = [];
96
+
97
+ private trimRequestsToNumOfSources: boolean;
98
+ private numTotalSources: number;
99
+ private numLiveSources: number;
91
100
 
92
101
  constructor(sendMediaRequestsCallback: SendMediaRequestsCallback, options: Options) {
93
102
  this.sendMediaRequestsCallback = sendMediaRequestsCallback;
94
103
  this.counter = 0;
104
+ this.numLiveSources = 0;
105
+ this.numTotalSources = 0;
95
106
  this.clientRequests = {};
96
107
  this.degradationPreferences = options.degradationPreferences;
97
108
  this.kind = options.kind;
109
+ this.trimRequestsToNumOfSources = options.trimRequestsToNumOfSources;
98
110
  this.sourceUpdateListener = this.commit.bind(this);
99
111
  this.debouncedSourceUpdateListener = debounce(
100
112
  this.sourceUpdateListener,
@@ -107,8 +119,7 @@ export class MediaRequestManager {
107
119
  this.sendRequests(); // re-send requests after preferences are set
108
120
  }
109
121
 
110
- private getDegradedClientRequests() {
111
- const clientRequests = cloneDeep(this.clientRequests);
122
+ private getDegradedClientRequests(clientRequests: ClientRequestsMap) {
112
123
  const maxFsLimits = [
113
124
  getMaxFs('best'),
114
125
  getMaxFs('large'),
@@ -121,7 +132,7 @@ export class MediaRequestManager {
121
132
  // reduce max-fs until total macroblocks is below limit
122
133
  for (let i = 0; i < maxFsLimits.length; i += 1) {
123
134
  let totalMacroblocksRequested = 0;
124
- Object.entries(clientRequests).forEach(([id, mr]) => {
135
+ Object.values(clientRequests).forEach((mr) => {
125
136
  if (mr.codecInfo) {
126
137
  mr.codecInfo.maxFs = Math.min(
127
138
  mr.preferredMaxFs || CODEC_DEFAULTS.h264.maxFs,
@@ -129,9 +140,7 @@ export class MediaRequestManager {
129
140
  maxFsLimits[i]
130
141
  );
131
142
  // we only consider sources with "live" state
132
- const slotsWithLiveSource = this.clientRequests[id].receiveSlots.filter(
133
- (rs) => rs.sourceState === 'live'
134
- );
143
+ const slotsWithLiveSource = mr.receiveSlots.filter((rs) => rs.sourceState === 'live');
135
144
  totalMacroblocksRequested += mr.codecInfo.maxFs * slotsWithLiveSource.length;
136
145
  }
137
146
  });
@@ -148,37 +157,35 @@ export class MediaRequestManager {
148
157
  );
149
158
  }
150
159
  }
151
-
152
- return clientRequests;
153
160
  }
154
161
 
155
162
  /**
156
- * Returns true if two media requests are the same, false otherwise.
163
+ * Returns true if two stream requests are the same, false otherwise.
157
164
  *
158
- * @param {WcmeMediaRequest} mediaRequestA - Media request A for comparison.
159
- * @param {WcmeMediaRequest} mediaRequestB - Media request B for comparison.
165
+ * @param {StreamRequest} streamRequestA - Stream request A for comparison.
166
+ * @param {StreamRequest} streamRequestB - Stream request B for comparison.
160
167
  * @returns {boolean} - Whether they are equal.
161
168
  */
162
169
  // eslint-disable-next-line class-methods-use-this
163
- public isEqual(mediaRequestA: WcmeMediaRequest, mediaRequestB: WcmeMediaRequest) {
170
+ public isEqual(streamRequestA: StreamRequest, streamRequestB: StreamRequest) {
164
171
  return (
165
- JSON.stringify(mediaRequestA._toJmpScrRequest()) ===
166
- JSON.stringify(mediaRequestB._toJmpScrRequest())
172
+ JSON.stringify(streamRequestA._toJmpStreamRequest()) ===
173
+ JSON.stringify(streamRequestB._toJmpStreamRequest())
167
174
  );
168
175
  }
169
176
 
170
177
  /**
171
- * Compares new media requests to previous ones and determines
178
+ * Compares new stream requests to previous ones and determines
172
179
  * if they are the same.
173
180
  *
174
- * @param {WcmeMediaRequest[]} newRequests - Array with new requests.
181
+ * @param {StreamRequest[]} newRequests - Array with new requests.
175
182
  * @returns {boolean} - True if they are equal, false otherwise.
176
183
  */
177
- private checkIsNewRequestsEqualToPrev(newRequests: WcmeMediaRequest[]) {
184
+ private checkIsNewRequestsEqualToPrev(newRequests: StreamRequest[]) {
178
185
  return (
179
- !isEmpty(this.previousWCMEMediaRequests) &&
180
- this.previousWCMEMediaRequests.length === newRequests.length &&
181
- this.previousWCMEMediaRequests.every((req, idx) => this.isEqual(req, newRequests[idx]))
186
+ !isEmpty(this.previousStreamRequests) &&
187
+ this.previousStreamRequests.length === newRequests.length &&
188
+ this.previousStreamRequests.every((req, idx) => this.isEqual(req, newRequests[idx]))
182
189
  );
183
190
  }
184
191
 
@@ -222,57 +229,151 @@ export class MediaRequestManager {
222
229
  }
223
230
 
224
231
  /**
225
- * Clears the previous media requests.
232
+ * Clears the previous stream requests.
226
233
  *
227
234
  * @returns {void}
228
235
  */
229
236
  public clearPreviousRequests(): void {
230
- this.previousWCMEMediaRequests = [];
237
+ this.previousStreamRequests = [];
238
+ }
239
+
240
+ /** Modifies the passed in clientRequests and makes sure that in total they don't ask
241
+ * for more streams than there are available.
242
+ *
243
+ * @param {Object} clientRequests
244
+ * @returns {void}
245
+ */
246
+ private trimRequests(clientRequests: ClientRequestsMap) {
247
+ const preferLiveVideo = this.getPreferLiveVideo();
248
+
249
+ if (!this.trimRequestsToNumOfSources) {
250
+ return;
251
+ }
252
+
253
+ // preferLiveVideo being undefined means that there are no active-speaker requests so we don't need to do any trimming
254
+ if (preferLiveVideo === undefined) {
255
+ return;
256
+ }
257
+
258
+ let numStreamsAvailable = preferLiveVideo ? this.numLiveSources : this.numTotalSources;
259
+
260
+ Object.values(clientRequests)
261
+ .sort((a, b) => {
262
+ // we have to count how many streams we're asking for
263
+ // and should not ask for more than numStreamsAvailable in total,
264
+ // so we might need to trim active-speaker requests and first ones to trim should be
265
+ // the ones with lowest priority
266
+
267
+ // receiver-selected requests have priority over active-speakers
268
+ if (a.policyInfo.policy === 'receiver-selected') {
269
+ return -1;
270
+ }
271
+ if (b.policyInfo.policy === 'receiver-selected') {
272
+ return 1;
273
+ }
274
+
275
+ // and active-speakers are sorted by descending priority
276
+ return b.policyInfo.priority - a.policyInfo.priority;
277
+ })
278
+ .forEach((request) => {
279
+ // we only trim active-speaker requests
280
+ if (request.policyInfo.policy === 'active-speaker') {
281
+ const trimmedCount = Math.min(numStreamsAvailable, request.receiveSlots.length);
282
+
283
+ request.receiveSlots.length = trimmedCount;
284
+
285
+ numStreamsAvailable -= trimmedCount;
286
+ } else {
287
+ numStreamsAvailable -= request.receiveSlots.length;
288
+ }
289
+
290
+ if (numStreamsAvailable < 0) {
291
+ numStreamsAvailable = 0;
292
+ }
293
+ });
294
+ }
295
+
296
+ private getPreferLiveVideo(): boolean | undefined {
297
+ let preferLiveVideo;
298
+
299
+ Object.values(this.clientRequests).forEach((mr) => {
300
+ if (mr.policyInfo.policy === 'active-speaker') {
301
+ // take the value from first encountered active speaker request
302
+ if (preferLiveVideo === undefined) {
303
+ preferLiveVideo = mr.policyInfo.preferLiveVideo;
304
+ }
305
+
306
+ if (mr.policyInfo.preferLiveVideo !== preferLiveVideo) {
307
+ throw new Error(
308
+ 'a mix of active-speaker groups with different values for preferLiveVideo is not supported'
309
+ );
310
+ }
311
+ }
312
+ });
313
+
314
+ return preferLiveVideo;
315
+ }
316
+
317
+ private cloneClientRequests(): ClientRequestsMap {
318
+ // we clone the client requests but without cloning the ReceiveSlots that they reference
319
+ return cloneDeepWith(this.clientRequests, (value, key) => {
320
+ if (key === 'receiveSlots') {
321
+ return [...value];
322
+ }
323
+
324
+ return undefined;
325
+ });
231
326
  }
232
327
 
233
328
  private sendRequests() {
234
- const wcmeMediaRequests: WcmeMediaRequest[] = [];
329
+ const streamRequests: StreamRequest[] = [];
330
+
331
+ // clone the requests so that any modifications we do to them don't affect the original ones
332
+ const clientRequests = this.cloneClientRequests();
235
333
 
236
- const clientRequests = this.getDegradedClientRequests();
334
+ this.trimRequests(clientRequests);
335
+ this.getDegradedClientRequests(clientRequests);
237
336
 
238
- // map all the client media requests to wcme media requests
337
+ // map all the client media requests to wcme stream requests
239
338
  Object.values(clientRequests).forEach((mr) => {
240
- wcmeMediaRequests.push(
241
- new WcmeMediaRequest(
242
- mr.policyInfo.policy === 'active-speaker'
243
- ? Policy.ActiveSpeaker
244
- : Policy.ReceiverSelected,
245
- mr.policyInfo.policy === 'active-speaker'
246
- ? new ActiveSpeakerInfo(
247
- mr.policyInfo.priority,
248
- mr.policyInfo.crossPriorityDuplication,
249
- mr.policyInfo.crossPolicyDuplication,
250
- mr.policyInfo.preferLiveVideo
251
- )
252
- : new ReceiverSelectedInfo(mr.policyInfo.csi),
253
- mr.receiveSlots.map((receiveSlot) => receiveSlot.wcmeReceiveSlot),
254
- this.getMaxPayloadBitsPerSecond(mr),
255
- mr.codecInfo && [
256
- new WcmeCodecInfo(
257
- 0x80,
258
- new H264Codec(
259
- mr.codecInfo.maxFs,
260
- mr.codecInfo.maxFps || CODEC_DEFAULTS.h264.maxFps,
261
- this.getH264MaxMbps(mr),
262
- mr.codecInfo.maxWidth,
263
- mr.codecInfo.maxHeight
264
- )
265
- ),
266
- ]
267
- )
268
- );
339
+ if (mr.receiveSlots.length > 0) {
340
+ streamRequests.push(
341
+ new StreamRequest(
342
+ mr.policyInfo.policy === 'active-speaker'
343
+ ? Policy.ActiveSpeaker
344
+ : Policy.ReceiverSelected,
345
+ mr.policyInfo.policy === 'active-speaker'
346
+ ? new ActiveSpeakerInfo(
347
+ mr.policyInfo.priority,
348
+ mr.policyInfo.crossPriorityDuplication,
349
+ mr.policyInfo.crossPolicyDuplication,
350
+ mr.policyInfo.preferLiveVideo
351
+ )
352
+ : new ReceiverSelectedInfo(mr.policyInfo.csi),
353
+ mr.receiveSlots.map((receiveSlot) => receiveSlot.wcmeReceiveSlot),
354
+ this.getMaxPayloadBitsPerSecond(mr),
355
+ mr.codecInfo && [
356
+ new WcmeCodecInfo(
357
+ 0x80,
358
+ new H264Codec(
359
+ mr.codecInfo.maxFs,
360
+ mr.codecInfo.maxFps || CODEC_DEFAULTS.h264.maxFps,
361
+ this.getH264MaxMbps(mr),
362
+ mr.codecInfo.maxWidth,
363
+ mr.codecInfo.maxHeight
364
+ )
365
+ ),
366
+ ]
367
+ )
368
+ );
369
+ }
269
370
  });
270
371
 
271
372
  //! IMPORTANT: this is only a temporary fix. This will soon be done in the jmp layer (@webex/json-multistream)
272
373
  // https://jira-eng-gpk2.cisco.com/jira/browse/WEBEX-326713
273
- if (!this.checkIsNewRequestsEqualToPrev(wcmeMediaRequests)) {
274
- this.sendMediaRequestsCallback(wcmeMediaRequests);
275
- this.previousWCMEMediaRequests = wcmeMediaRequests;
374
+ if (!this.checkIsNewRequestsEqualToPrev(streamRequests)) {
375
+ this.sendMediaRequestsCallback(streamRequests);
376
+ this.previousStreamRequests = streamRequests;
276
377
  LoggerProxy.logger.info(`multistream:sendRequests --> media requests sent. `);
277
378
  } else {
278
379
  LoggerProxy.logger.info(
@@ -287,12 +388,15 @@ export class MediaRequestManager {
287
388
 
288
389
  this.clientRequests[newId] = mediaRequest;
289
390
 
391
+ const eventHandler = ({maxFs}) => {
392
+ mediaRequest.preferredMaxFs = maxFs;
393
+ this.debouncedSourceUpdateListener();
394
+ };
395
+ mediaRequest.handleMaxFs = eventHandler;
396
+
290
397
  mediaRequest.receiveSlots.forEach((rs) => {
291
398
  rs.on(ReceiveSlotEvents.SourceUpdate, this.sourceUpdateListener);
292
- rs.on(ReceiveSlotEvents.MaxFsUpdate, ({maxFs}) => {
293
- mediaRequest.preferredMaxFs = maxFs;
294
- this.debouncedSourceUpdateListener();
295
- });
399
+ rs.on(ReceiveSlotEvents.MaxFsUpdate, mediaRequest.handleMaxFs);
296
400
  });
297
401
 
298
402
  if (commit) {
@@ -303,8 +407,11 @@ export class MediaRequestManager {
303
407
  }
304
408
 
305
409
  public cancelRequest(requestId: MediaRequestId, commit = true) {
306
- this.clientRequests[requestId]?.receiveSlots.forEach((rs) => {
410
+ const mediaRequest = this.clientRequests[requestId];
411
+
412
+ mediaRequest?.receiveSlots.forEach((rs) => {
307
413
  rs.off(ReceiveSlotEvents.SourceUpdate, this.sourceUpdateListener);
414
+ rs.off(ReceiveSlotEvents.MaxFsUpdate, mediaRequest.handleMaxFs);
308
415
  });
309
416
 
310
417
  delete this.clientRequests[requestId];
@@ -320,5 +427,14 @@ export class MediaRequestManager {
320
427
 
321
428
  public reset() {
322
429
  this.clientRequests = {};
430
+ this.numTotalSources = 0;
431
+ this.numLiveSources = 0;
432
+ }
433
+
434
+ public setNumCurrentSources(numTotalSources: number, numLiveSources: number) {
435
+ this.numTotalSources = numTotalSources;
436
+ this.numLiveSources = numLiveSources;
437
+
438
+ this.sendRequests();
323
439
  }
324
440
  }
@@ -3,7 +3,7 @@ import {
3
3
  MediaType,
4
4
  ReceiveSlot as WcmeReceiveSlot,
5
5
  ReceiveSlotEvents as WcmeReceiveSlotEvents,
6
- SourceState,
6
+ StreamState,
7
7
  } from '@webex/internal-media-core';
8
8
 
9
9
  import LoggerProxy from '../common/logs/logger-proxy';
@@ -14,7 +14,7 @@ export const ReceiveSlotEvents = {
14
14
  MaxFsUpdate: 'maxFsUpdate',
15
15
  };
16
16
 
17
- export type {SourceState} from '@webex/internal-media-core';
17
+ export type {StreamState} from '@webex/internal-media-core';
18
18
  export type CSI = number;
19
19
  export type MemberId = string;
20
20
  export type ReceiveSlotId = string;
@@ -40,7 +40,7 @@ export class ReceiveSlot extends EventsScope {
40
40
 
41
41
  #csi?: CSI;
42
42
 
43
- #sourceState: SourceState;
43
+ #sourceState: StreamState;
44
44
 
45
45
  /**
46
46
  * constructor - don't use it directly, you should always use meeting.receiveSlotManager.allocateSlot()
@@ -119,7 +119,7 @@ export class ReceiveSlot extends EventsScope {
119
119
 
120
120
  this.mcReceiveSlot.on(
121
121
  WcmeReceiveSlotEvents.SourceUpdate,
122
- (state: SourceState, csi?: number) => {
122
+ (state: StreamState, csi?: number) => {
123
123
  LoggerProxy.logger.log(
124
124
  `ReceiveSlot#setupEventListeners --> got source update on receive slot ${this.id}, mediaType=${this.mediaType}, csi=${csi}, state=${state}`
125
125
  );
@@ -59,7 +59,7 @@ export class ReceiveSlotManager {
59
59
  if (availableSlot) {
60
60
  this.allocatedSlots[mediaType].push(availableSlot);
61
61
 
62
- LoggerProxy.logger.log(`receive slot re-used: ${availableSlot.id}`);
62
+ LoggerProxy.logger.log(`${mediaType}: receive slot re-used: ${availableSlot.id}`);
63
63
 
64
64
  return availableSlot;
65
65
  }
@@ -70,7 +70,7 @@ export class ReceiveSlotManager {
70
70
  const receiveSlot = new ReceiveSlot(mediaType, wcmeReceiveSlot, this.findMemberIdByCsiCallback);
71
71
 
72
72
  this.allocatedSlots[mediaType].push(receiveSlot);
73
- LoggerProxy.logger.log(`new receive slot allocated: ${receiveSlot.id}`);
73
+ LoggerProxy.logger.log(`${mediaType}: new receive slot allocated: ${receiveSlot.id}`);
74
74
 
75
75
  return receiveSlot;
76
76
  }
@@ -87,10 +87,10 @@ export class ReceiveSlotManager {
87
87
  if (idx >= 0) {
88
88
  this.allocatedSlots[slot.mediaType].splice(idx, 1);
89
89
  this.freeSlots[slot.mediaType].push(slot);
90
- LoggerProxy.logger.log(`receive slot released: ${slot.id}`);
90
+ LoggerProxy.logger.log(`${slot.mediaType}: receive slot released: ${slot.id}`);
91
91
  } else {
92
92
  LoggerProxy.logger.warn(
93
- 'ReceiveSlotManager#releaseSlot --> trying to release a slot that is not managed by this ReceiveSlotManager'
93
+ `ReceiveSlotManager#releaseSlot --> trying to release a ${slot.mediaType}} slot that is not managed by this ReceiveSlotManager`
94
94
  );
95
95
  }
96
96
  }
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable valid-jsdoc */
2
- import {MediaType, SourceState} from '@webex/internal-media-core';
2
+ import {MediaType, StreamState} from '@webex/internal-media-core';
3
3
  import LoggerProxy from '../common/logs/logger-proxy';
4
4
  import EventsScope from '../common/events/events-scope';
5
5
 
@@ -233,7 +233,7 @@ export class RemoteMedia extends EventsScope {
233
233
  /**
234
234
  * Getter for source state
235
235
  */
236
- public get sourceState(): SourceState {
236
+ public get sourceState(): StreamState {
237
237
  return this.receiveSlot?.sourceState;
238
238
  }
239
239
 
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable valid-jsdoc */
2
2
  /* eslint-disable require-jsdoc */
3
3
  /* eslint-disable import/prefer-default-export */
4
+ import {forEach} from 'lodash';
4
5
  import LoggerProxy from '../common/logs/logger-proxy';
5
6
 
6
7
  import {getMaxFs, RemoteMedia, RemoteVideoResolution} from './remoteMedia';
@@ -66,6 +67,53 @@ export class RemoteMediaGroup {
66
67
  return [...this.unpinnedRemoteMedia, ...this.pinnedRemoteMedia];
67
68
  }
68
69
 
70
+ /**
71
+ * Sets CSIs for multiple RemoteMedia instances belonging to this RemoteMediaGroup.
72
+ * For each entry in the remoteMediaCsis array:
73
+ * - if csi is specified, the RemoteMedia instance is pinned to that CSI
74
+ * - if csi is undefined, the RemoteMedia instance is unpinned
75
+ * @internal
76
+ */
77
+ public setActiveSpeakerCsis(
78
+ remoteMediaCsis: {remoteMedia: RemoteMedia; csi?: number}[],
79
+ commit = true
80
+ ): void {
81
+ forEach(remoteMediaCsis, ({csi, remoteMedia}) => {
82
+ if (csi) {
83
+ if (!(this.pinnedRemoteMedia.indexOf(remoteMedia) >= 0)) {
84
+ const unpinId = this.unpinnedRemoteMedia.indexOf(remoteMedia);
85
+ if (unpinId >= 0) {
86
+ this.unpinnedRemoteMedia.splice(unpinId, 1);
87
+ this.pinnedRemoteMedia.push(remoteMedia);
88
+ } else {
89
+ throw new Error(
90
+ `failed to pin a remote media object ${remoteMedia.id}, because it is not found in this remote media group`
91
+ );
92
+ }
93
+ }
94
+ remoteMedia.sendMediaRequest(csi, false);
95
+ } else {
96
+ if (!(this.unpinnedRemoteMedia.indexOf(remoteMedia) >= 0)) {
97
+ const pinId = this.pinnedRemoteMedia.indexOf(remoteMedia);
98
+ if (pinId >= 0) {
99
+ this.pinnedRemoteMedia.splice(pinId, 1);
100
+ this.unpinnedRemoteMedia.push(remoteMedia);
101
+ } else {
102
+ throw new Error(
103
+ `failed to unpin a remote media object ${remoteMedia.id}, because it is not found in this remote media group`
104
+ );
105
+ }
106
+ }
107
+ remoteMedia.cancelMediaRequest(false);
108
+ }
109
+ });
110
+ this.cancelActiveSpeakerMediaRequest(false);
111
+ this.sendActiveSpeakerMediaRequest(false);
112
+ if (commit) {
113
+ this.mediaRequestManager.commit();
114
+ }
115
+ }
116
+
69
117
  /**
70
118
  * Pins a specific remote media instance to a specfic CSI, so the media will
71
119
  * no longer come from active speaker, but from that CSI.
@@ -151,6 +199,17 @@ export class RemoteMediaGroup {
151
199
  throw new Error(`remote media object ${remoteMedia.id} not found in the group`);
152
200
  }
153
201
 
202
+ /**
203
+ * setPreferLiveVideo - sets preferLiveVideo to true/false
204
+ * @internal
205
+ */
206
+ public setPreferLiveVideo(preferLiveVideo: boolean, commit: boolean) {
207
+ if (this.options.preferLiveVideo !== preferLiveVideo) {
208
+ this.options.preferLiveVideo = preferLiveVideo;
209
+ this.sendActiveSpeakerMediaRequest(commit);
210
+ }
211
+ }
212
+
154
213
  private sendActiveSpeakerMediaRequest(commit: boolean) {
155
214
  this.cancelActiveSpeakerMediaRequest(false);
156
215
 
@@ -96,6 +96,7 @@ const OnePlusFiveLayout: VideoLayout = {
96
96
  };
97
97
 
98
98
  // A layout with 2 big panes for 2 main active speakers and a strip of 6 small panes for other active speakers:
99
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
99
100
  const TwoMainPlusSixSmallLayout: VideoLayout = {
100
101
  activeSpeakerVideoPaneGroups: [
101
102
  {
@@ -490,6 +491,38 @@ export class RemoteMediaManager extends EventsScope {
490
491
  return this.currentLayoutId;
491
492
  }
492
493
 
494
+ /**
495
+ * sets the preferLiveVideo
496
+ */
497
+ public setPreferLiveVideo(preferLiveVideo: boolean) {
498
+ LoggerProxy.logger.log(
499
+ `RemoteMediaManager#setPreferLiveVideo --> setPreferLiveVideo is called to set preferLiveVideo to ${preferLiveVideo}`
500
+ );
501
+ this.config.video.preferLiveVideo = preferLiveVideo;
502
+ Object.values(this.media.video.activeSpeakerGroups).forEach((activeSpeakerGroup) => {
503
+ activeSpeakerGroup.setPreferLiveVideo(preferLiveVideo, false);
504
+ });
505
+ this.mediaRequestManagers.video.commit();
506
+ }
507
+
508
+ /**
509
+ * Sets CSIs for multiple RemoteMedia instances belonging to RemoteMediaGroup.
510
+ * For each entry in the remoteMediaCsis array:
511
+ * - if csi is specified, the RemoteMedia instance is pinned to that CSI
512
+ * - if csi is undefined, the RemoteMedia instance is unpinned
513
+ */
514
+ public setActiveSpeakerCsis(remoteMediaCsis: {remoteMedia: RemoteMedia; csi?: number}[]) {
515
+ Object.values(this.media.video.activeSpeakerGroups).forEach((remoteMediaGroup) => {
516
+ const groupRemoteMediaCsis = remoteMediaCsis.filter(({remoteMedia}) =>
517
+ remoteMediaGroup.includes(remoteMedia)
518
+ );
519
+ if (groupRemoteMediaCsis.length > 0) {
520
+ remoteMediaGroup.setActiveSpeakerCsis(groupRemoteMediaCsis, false);
521
+ }
522
+ });
523
+ this.mediaRequestManagers.video.commit();
524
+ }
525
+
493
526
  /**
494
527
  * Creates the audio slots
495
528
  */