@webex/plugin-meetings 3.0.0-beta.34 → 3.0.0-beta.340

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 (392) 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 +94 -15
  9. package/dist/breakouts/breakout.js.map +1 -1
  10. package/dist/breakouts/edit-lock-error.js +52 -0
  11. package/dist/breakouts/edit-lock-error.js.map +1 -0
  12. package/dist/breakouts/events.js +45 -0
  13. package/dist/breakouts/events.js.map +1 -0
  14. package/dist/breakouts/index.js +709 -35
  15. package/dist/breakouts/index.js.map +1 -1
  16. package/dist/breakouts/utils.js +45 -1
  17. package/dist/breakouts/utils.js.map +1 -1
  18. package/dist/common/errors/no-meeting-info.js +51 -0
  19. package/dist/common/errors/no-meeting-info.js.map +1 -0
  20. package/dist/common/errors/reclaim-host-role-errors.js +158 -0
  21. package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
  22. package/dist/common/errors/webex-errors.js +48 -7
  23. package/dist/common/errors/webex-errors.js.map +1 -1
  24. package/dist/common/logs/logger-proxy.js +1 -1
  25. package/dist/common/logs/logger-proxy.js.map +1 -1
  26. package/dist/common/logs/request.js +5 -1
  27. package/dist/common/logs/request.js.map +1 -1
  28. package/dist/common/queue.js +24 -9
  29. package/dist/common/queue.js.map +1 -1
  30. package/dist/config.js +5 -10
  31. package/dist/config.js.map +1 -1
  32. package/dist/constants.js +233 -29
  33. package/dist/constants.js.map +1 -1
  34. package/dist/controls-options-manager/enums.js +14 -2
  35. package/dist/controls-options-manager/enums.js.map +1 -1
  36. package/dist/controls-options-manager/index.js +109 -15
  37. package/dist/controls-options-manager/index.js.map +1 -1
  38. package/dist/controls-options-manager/types.js +7 -0
  39. package/dist/controls-options-manager/types.js.map +1 -0
  40. package/dist/controls-options-manager/util.js +309 -18
  41. package/dist/controls-options-manager/util.js.map +1 -1
  42. package/dist/index.js +112 -1
  43. package/dist/index.js.map +1 -1
  44. package/dist/interpretation/collection.js +23 -0
  45. package/dist/interpretation/collection.js.map +1 -0
  46. package/dist/interpretation/index.js +366 -0
  47. package/dist/interpretation/index.js.map +1 -0
  48. package/dist/interpretation/siLanguage.js +25 -0
  49. package/dist/interpretation/siLanguage.js.map +1 -0
  50. package/dist/locus-info/controlsUtils.js +91 -2
  51. package/dist/locus-info/controlsUtils.js.map +1 -1
  52. package/dist/locus-info/index.js +383 -62
  53. package/dist/locus-info/index.js.map +1 -1
  54. package/dist/locus-info/infoUtils.js +7 -1
  55. package/dist/locus-info/infoUtils.js.map +1 -1
  56. package/dist/locus-info/mediaSharesUtils.js +57 -1
  57. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  58. package/dist/locus-info/parser.js +249 -72
  59. package/dist/locus-info/parser.js.map +1 -1
  60. package/dist/locus-info/selfUtils.js +89 -14
  61. package/dist/locus-info/selfUtils.js.map +1 -1
  62. package/dist/media/index.js +62 -116
  63. package/dist/media/index.js.map +1 -1
  64. package/dist/media/properties.js +73 -124
  65. package/dist/media/properties.js.map +1 -1
  66. package/dist/mediaQualityMetrics/config.js +1 -204
  67. package/dist/mediaQualityMetrics/config.js.map +1 -1
  68. package/dist/meeting/in-meeting-actions.js +86 -2
  69. package/dist/meeting/in-meeting-actions.js.map +1 -1
  70. package/dist/meeting/index.js +3927 -2960
  71. package/dist/meeting/index.js.map +1 -1
  72. package/dist/meeting/locusMediaRequest.js +292 -0
  73. package/dist/meeting/locusMediaRequest.js.map +1 -0
  74. package/dist/meeting/muteState.js +224 -131
  75. package/dist/meeting/muteState.js.map +1 -1
  76. package/dist/meeting/request.js +260 -196
  77. package/dist/meeting/request.js.map +1 -1
  78. package/dist/meeting/util.js +601 -417
  79. package/dist/meeting/util.js.map +1 -1
  80. package/dist/meeting-info/index.js +73 -7
  81. package/dist/meeting-info/index.js.map +1 -1
  82. package/dist/meeting-info/meeting-info-v2.js +192 -51
  83. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  84. package/dist/meeting-info/util.js +1 -1
  85. package/dist/meeting-info/util.js.map +1 -1
  86. package/dist/meeting-info/utilv2.js +36 -36
  87. package/dist/meeting-info/utilv2.js.map +1 -1
  88. package/dist/meetings/collection.js +39 -0
  89. package/dist/meetings/collection.js.map +1 -1
  90. package/dist/meetings/index.js +424 -116
  91. package/dist/meetings/index.js.map +1 -1
  92. package/dist/meetings/meetings.types.js +7 -0
  93. package/dist/meetings/meetings.types.js.map +1 -0
  94. package/dist/meetings/request.js +2 -0
  95. package/dist/meetings/request.js.map +1 -1
  96. package/dist/meetings/util.js +72 -6
  97. package/dist/meetings/util.js.map +1 -1
  98. package/dist/member/index.js +58 -0
  99. package/dist/member/index.js.map +1 -1
  100. package/dist/member/types.js +25 -0
  101. package/dist/member/types.js.map +1 -0
  102. package/dist/member/util.js +132 -25
  103. package/dist/member/util.js.map +1 -1
  104. package/dist/members/collection.js +10 -0
  105. package/dist/members/collection.js.map +1 -1
  106. package/dist/members/index.js +102 -6
  107. package/dist/members/index.js.map +1 -1
  108. package/dist/members/request.js +106 -38
  109. package/dist/members/request.js.map +1 -1
  110. package/dist/members/types.js +15 -0
  111. package/dist/members/types.js.map +1 -0
  112. package/dist/members/util.js +326 -232
  113. package/dist/members/util.js.map +1 -1
  114. package/dist/metrics/constants.js +16 -5
  115. package/dist/metrics/constants.js.map +1 -1
  116. package/dist/metrics/index.js +1 -446
  117. package/dist/metrics/index.js.map +1 -1
  118. package/dist/multistream/mediaRequestManager.js +228 -58
  119. package/dist/multistream/mediaRequestManager.js.map +1 -1
  120. package/dist/multistream/receiveSlot.js +29 -16
  121. package/dist/multistream/receiveSlot.js.map +1 -1
  122. package/dist/multistream/receiveSlotManager.js +39 -36
  123. package/dist/multistream/receiveSlotManager.js.map +1 -1
  124. package/dist/multistream/remoteMedia.js +44 -18
  125. package/dist/multistream/remoteMedia.js.map +1 -1
  126. package/dist/multistream/remoteMediaGroup.js +60 -3
  127. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  128. package/dist/multistream/remoteMediaManager.js +209 -59
  129. package/dist/multistream/remoteMediaManager.js.map +1 -1
  130. package/dist/multistream/sendSlotManager.js +233 -0
  131. package/dist/multistream/sendSlotManager.js.map +1 -0
  132. package/dist/reachability/clusterReachability.js +356 -0
  133. package/dist/reachability/clusterReachability.js.map +1 -0
  134. package/dist/reachability/index.js +273 -391
  135. package/dist/reachability/index.js.map +1 -1
  136. package/dist/reachability/request.js +17 -8
  137. package/dist/reachability/request.js.map +1 -1
  138. package/dist/reachability/util.js +29 -0
  139. package/dist/reachability/util.js.map +1 -0
  140. package/dist/reconnection-manager/index.js +214 -170
  141. package/dist/reconnection-manager/index.js.map +1 -1
  142. package/dist/recording-controller/index.js +21 -2
  143. package/dist/recording-controller/index.js.map +1 -1
  144. package/dist/recording-controller/util.js +9 -8
  145. package/dist/recording-controller/util.js.map +1 -1
  146. package/dist/roap/index.js +62 -35
  147. package/dist/roap/index.js.map +1 -1
  148. package/dist/roap/request.js +112 -97
  149. package/dist/roap/request.js.map +1 -1
  150. package/dist/roap/turnDiscovery.js +95 -38
  151. package/dist/roap/turnDiscovery.js.map +1 -1
  152. package/dist/rtcMetrics/constants.js +12 -0
  153. package/dist/rtcMetrics/constants.js.map +1 -0
  154. package/dist/rtcMetrics/index.js +142 -0
  155. package/dist/rtcMetrics/index.js.map +1 -0
  156. package/dist/statsAnalyzer/index.js +181 -214
  157. package/dist/statsAnalyzer/index.js.map +1 -1
  158. package/dist/statsAnalyzer/mqaUtil.js +22 -18
  159. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  160. package/dist/types/annotation/annotation.types.d.ts +42 -0
  161. package/dist/types/annotation/constants.d.ts +31 -0
  162. package/dist/types/annotation/index.d.ts +117 -0
  163. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  164. package/dist/types/breakouts/events.d.ts +8 -0
  165. package/dist/types/breakouts/utils.d.ts +14 -0
  166. package/dist/types/common/errors/no-meeting-info.d.ts +14 -0
  167. package/dist/types/common/errors/reclaim-host-role-errors.d.ts +60 -0
  168. package/dist/types/common/errors/webex-errors.d.ts +25 -1
  169. package/dist/types/common/logs/request.d.ts +2 -0
  170. package/dist/types/common/queue.d.ts +9 -7
  171. package/dist/types/config.d.ts +2 -7
  172. package/dist/types/constants.d.ts +201 -30
  173. package/dist/types/controls-options-manager/enums.d.ts +11 -1
  174. package/dist/types/controls-options-manager/index.d.ts +17 -1
  175. package/dist/types/controls-options-manager/types.d.ts +43 -0
  176. package/dist/types/controls-options-manager/util.d.ts +1 -7
  177. package/dist/types/index.d.ts +6 -4
  178. package/dist/types/interpretation/collection.d.ts +5 -0
  179. package/dist/types/interpretation/index.d.ts +5 -0
  180. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  181. package/dist/types/locus-info/index.d.ts +57 -4
  182. package/dist/types/locus-info/parser.d.ts +66 -6
  183. package/dist/types/media/index.d.ts +2 -0
  184. package/dist/types/media/properties.d.ts +34 -48
  185. package/dist/types/mediaQualityMetrics/config.d.ts +0 -128
  186. package/dist/types/meeting/in-meeting-actions.d.ts +86 -2
  187. package/dist/types/meeting/index.d.ts +506 -512
  188. package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
  189. package/dist/types/meeting/muteState.d.ts +93 -25
  190. package/dist/types/meeting/request.d.ts +72 -43
  191. package/dist/types/meeting/util.d.ts +101 -1
  192. package/dist/types/meeting-info/index.d.ts +13 -1
  193. package/dist/types/meeting-info/meeting-info-v2.d.ts +31 -1
  194. package/dist/types/meetings/collection.d.ts +17 -0
  195. package/dist/types/meetings/index.d.ts +91 -21
  196. package/dist/types/meetings/meetings.types.d.ts +4 -0
  197. package/dist/types/member/index.d.ts +14 -0
  198. package/dist/types/member/types.d.ts +32 -0
  199. package/dist/types/members/collection.d.ts +5 -0
  200. package/dist/types/members/index.d.ts +35 -2
  201. package/dist/types/members/request.d.ts +73 -9
  202. package/dist/types/members/types.d.ts +25 -0
  203. package/dist/types/members/util.d.ts +214 -1
  204. package/dist/types/metrics/constants.d.ts +15 -4
  205. package/dist/types/metrics/index.d.ts +4 -111
  206. package/dist/types/multistream/mediaRequestManager.d.ts +72 -5
  207. package/dist/types/multistream/receiveSlot.d.ts +13 -11
  208. package/dist/types/multistream/receiveSlotManager.d.ts +14 -4
  209. package/dist/types/multistream/remoteMedia.d.ts +8 -29
  210. package/dist/types/multistream/remoteMediaGroup.d.ts +0 -9
  211. package/dist/types/multistream/remoteMediaManager.d.ts +46 -2
  212. package/dist/types/multistream/sendSlotManager.d.ts +61 -0
  213. package/dist/types/reachability/clusterReachability.d.ts +109 -0
  214. package/dist/types/reachability/index.d.ts +60 -95
  215. package/dist/types/reachability/request.d.ts +7 -3
  216. package/dist/types/reachability/util.d.ts +8 -0
  217. package/dist/types/reconnection-manager/index.d.ts +19 -0
  218. package/dist/types/recording-controller/index.d.ts +15 -1
  219. package/dist/types/recording-controller/util.d.ts +5 -4
  220. package/dist/types/roap/index.d.ts +2 -1
  221. package/dist/types/roap/request.d.ts +15 -11
  222. package/dist/types/roap/turnDiscovery.d.ts +21 -3
  223. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  224. package/dist/types/rtcMetrics/index.d.ts +54 -0
  225. package/dist/types/statsAnalyzer/index.d.ts +29 -11
  226. package/dist/types/webinar/collection.d.ts +16 -0
  227. package/dist/types/webinar/index.d.ts +5 -0
  228. package/dist/webinar/collection.js +44 -0
  229. package/dist/webinar/collection.js.map +1 -0
  230. package/dist/webinar/index.js +69 -0
  231. package/dist/webinar/index.js.map +1 -0
  232. package/package.json +22 -19
  233. package/src/annotation/annotation.types.ts +50 -0
  234. package/src/annotation/constants.ts +36 -0
  235. package/src/annotation/index.ts +328 -0
  236. package/src/breakouts/README.md +42 -12
  237. package/src/breakouts/breakout.ts +67 -9
  238. package/src/breakouts/edit-lock-error.ts +25 -0
  239. package/src/breakouts/events.ts +56 -0
  240. package/src/breakouts/index.ts +592 -20
  241. package/src/breakouts/utils.ts +42 -0
  242. package/src/common/errors/no-meeting-info.ts +24 -0
  243. package/src/common/errors/reclaim-host-role-errors.ts +134 -0
  244. package/src/common/errors/webex-errors.ts +44 -2
  245. package/src/common/logs/logger-proxy.ts +1 -1
  246. package/src/common/logs/request.ts +5 -1
  247. package/src/common/queue.ts +22 -8
  248. package/src/config.ts +4 -9
  249. package/src/constants.ts +224 -20
  250. package/src/controls-options-manager/enums.ts +12 -0
  251. package/src/controls-options-manager/index.ts +116 -21
  252. package/src/controls-options-manager/types.ts +59 -0
  253. package/src/controls-options-manager/util.ts +294 -14
  254. package/src/index.ts +40 -0
  255. package/src/interpretation/README.md +60 -0
  256. package/src/interpretation/collection.ts +19 -0
  257. package/src/interpretation/index.ts +332 -0
  258. package/src/interpretation/siLanguage.ts +18 -0
  259. package/src/locus-info/controlsUtils.ts +108 -0
  260. package/src/locus-info/index.ts +413 -59
  261. package/src/locus-info/infoUtils.ts +10 -2
  262. package/src/locus-info/mediaSharesUtils.ts +64 -0
  263. package/src/locus-info/parser.ts +258 -47
  264. package/src/locus-info/selfUtils.ts +81 -5
  265. package/src/media/index.ts +102 -122
  266. package/src/media/properties.ts +87 -110
  267. package/src/mediaQualityMetrics/config.ts +0 -135
  268. package/src/meeting/in-meeting-actions.ts +171 -3
  269. package/src/meeting/index.ts +3276 -2555
  270. package/src/meeting/locusMediaRequest.ts +313 -0
  271. package/src/meeting/muteState.ts +223 -136
  272. package/src/meeting/request.ts +177 -121
  273. package/src/meeting/util.ts +588 -394
  274. package/src/meeting-info/index.ts +81 -8
  275. package/src/meeting-info/meeting-info-v2.ts +170 -14
  276. package/src/meeting-info/util.ts +1 -1
  277. package/src/meeting-info/utilv2.ts +23 -23
  278. package/src/meetings/collection.ts +33 -0
  279. package/src/meetings/index.ts +454 -125
  280. package/src/meetings/meetings.types.ts +12 -0
  281. package/src/meetings/request.ts +2 -0
  282. package/src/meetings/util.ts +80 -11
  283. package/src/member/index.ts +58 -0
  284. package/src/member/types.ts +38 -0
  285. package/src/member/util.ts +141 -25
  286. package/src/members/collection.ts +8 -0
  287. package/src/members/index.ts +134 -8
  288. package/src/members/request.ts +97 -17
  289. package/src/members/types.ts +29 -0
  290. package/src/members/util.ts +333 -240
  291. package/src/metrics/constants.ts +15 -4
  292. package/src/metrics/index.ts +1 -469
  293. package/src/multistream/mediaRequestManager.ts +277 -82
  294. package/src/multistream/receiveSlot.ts +31 -17
  295. package/src/multistream/receiveSlotManager.ts +34 -24
  296. package/src/multistream/remoteMedia.ts +27 -2
  297. package/src/multistream/remoteMediaGroup.ts +59 -0
  298. package/src/multistream/remoteMediaManager.ts +148 -30
  299. package/src/multistream/sendSlotManager.ts +170 -0
  300. package/src/reachability/clusterReachability.ts +320 -0
  301. package/src/reachability/index.ts +236 -342
  302. package/src/reachability/request.ts +17 -8
  303. package/src/reachability/util.ts +24 -0
  304. package/src/reconnection-manager/index.ts +128 -106
  305. package/src/recording-controller/index.ts +20 -3
  306. package/src/recording-controller/util.ts +26 -9
  307. package/src/roap/index.ts +63 -32
  308. package/src/roap/request.ts +100 -104
  309. package/src/roap/turnDiscovery.ts +48 -26
  310. package/src/rtcMetrics/constants.ts +3 -0
  311. package/src/rtcMetrics/index.ts +124 -0
  312. package/src/statsAnalyzer/index.ts +218 -289
  313. package/src/statsAnalyzer/mqaUtil.ts +28 -30
  314. package/src/webinar/collection.ts +31 -0
  315. package/src/webinar/index.ts +62 -0
  316. package/test/integration/spec/converged-space-meetings.js +60 -3
  317. package/test/integration/spec/journey.js +320 -261
  318. package/test/integration/spec/space-meeting.js +76 -3
  319. package/test/unit/spec/annotation/index.ts +418 -0
  320. package/test/unit/spec/breakouts/breakout.ts +118 -28
  321. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  322. package/test/unit/spec/breakouts/events.ts +89 -0
  323. package/test/unit/spec/breakouts/index.ts +1395 -69
  324. package/test/unit/spec/breakouts/utils.js +52 -1
  325. package/test/unit/spec/common/queue.js +31 -2
  326. package/test/unit/spec/controls-options-manager/index.js +163 -0
  327. package/test/unit/spec/controls-options-manager/util.js +576 -60
  328. package/test/unit/spec/fixture/locus.js +1 -0
  329. package/test/unit/spec/interpretation/collection.ts +15 -0
  330. package/test/unit/spec/interpretation/index.ts +589 -0
  331. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  332. package/test/unit/spec/locus-info/controlsUtils.js +316 -43
  333. package/test/unit/spec/locus-info/index.js +1304 -33
  334. package/test/unit/spec/locus-info/infoUtils.js +37 -15
  335. package/test/unit/spec/locus-info/lib/SeqCmp.json +16 -0
  336. package/test/unit/spec/locus-info/mediaSharesUtils.ts +32 -0
  337. package/test/unit/spec/locus-info/parser.js +116 -35
  338. package/test/unit/spec/locus-info/selfConstant.js +27 -4
  339. package/test/unit/spec/locus-info/selfUtils.js +208 -17
  340. package/test/unit/spec/media/index.ts +120 -37
  341. package/test/unit/spec/media/properties.ts +2 -2
  342. package/test/unit/spec/meeting/in-meeting-actions.ts +85 -3
  343. package/test/unit/spec/meeting/index.js +5849 -2014
  344. package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
  345. package/test/unit/spec/meeting/muteState.js +402 -213
  346. package/test/unit/spec/meeting/request.js +483 -49
  347. package/test/unit/spec/meeting/utils.js +679 -64
  348. package/test/unit/spec/meeting-info/index.js +300 -0
  349. package/test/unit/spec/meeting-info/meetinginfov2.js +526 -5
  350. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  351. package/test/unit/spec/meetings/collection.js +26 -0
  352. package/test/unit/spec/meetings/index.js +1231 -212
  353. package/test/unit/spec/meetings/utils.js +202 -2
  354. package/test/unit/spec/member/index.js +61 -6
  355. package/test/unit/spec/member/util.js +510 -34
  356. package/test/unit/spec/members/index.js +432 -1
  357. package/test/unit/spec/members/request.js +206 -27
  358. package/test/unit/spec/members/utils.js +210 -0
  359. package/test/unit/spec/metrics/index.js +1 -50
  360. package/test/unit/spec/multistream/mediaRequestManager.ts +776 -162
  361. package/test/unit/spec/multistream/receiveSlot.ts +28 -20
  362. package/test/unit/spec/multistream/receiveSlotManager.ts +32 -30
  363. package/test/unit/spec/multistream/remoteMedia.ts +30 -0
  364. package/test/unit/spec/multistream/remoteMediaGroup.ts +266 -0
  365. package/test/unit/spec/multistream/remoteMediaManager.ts +326 -0
  366. package/test/unit/spec/multistream/sendSlotManager.ts +242 -0
  367. package/test/unit/spec/reachability/clusterReachability.ts +279 -0
  368. package/test/unit/spec/reachability/index.ts +486 -13
  369. package/test/unit/spec/reachability/request.js +68 -0
  370. package/test/unit/spec/reachability/util.ts +40 -0
  371. package/test/unit/spec/reconnection-manager/index.js +117 -11
  372. package/test/unit/spec/recording-controller/index.js +294 -218
  373. package/test/unit/spec/recording-controller/util.js +223 -96
  374. package/test/unit/spec/roap/index.ts +174 -63
  375. package/test/unit/spec/roap/request.ts +226 -85
  376. package/test/unit/spec/roap/turnDiscovery.ts +76 -34
  377. package/test/unit/spec/rtcMetrics/index.ts +93 -0
  378. package/test/unit/spec/stats-analyzer/index.js +231 -7
  379. package/test/unit/spec/webinar/collection.ts +13 -0
  380. package/test/unit/spec/webinar/index.ts +60 -0
  381. package/test/utils/integrationTestUtils.js +46 -0
  382. package/test/utils/testUtils.js +0 -52
  383. package/dist/meeting/effectsState.js +0 -262
  384. package/dist/meeting/effectsState.js.map +0 -1
  385. package/dist/metrics/config.js +0 -289
  386. package/dist/metrics/config.js.map +0 -1
  387. package/dist/types/meeting/effectsState.d.ts +0 -42
  388. package/dist/types/metrics/config.d.ts +0 -169
  389. package/src/index.js +0 -16
  390. package/src/meeting/effectsState.ts +0 -211
  391. package/src/metrics/config.ts +0 -485
  392. package/test/unit/spec/meeting/effectsState.js +0 -285
@@ -1,14 +1,25 @@
1
+ import SortedQueue from '../common/queue';
2
+ type LocusDeltaDto = {
3
+ url: string;
4
+ baseSequence: {
5
+ rangeStart: number;
6
+ rangeEnd: number;
7
+ entries: number[];
8
+ };
9
+ sequence: {
10
+ rangeStart: number;
11
+ rangeEnd: number;
12
+ entries: number[];
13
+ };
14
+ syncUrl: string;
15
+ };
1
16
  /**
2
17
  * Locus Delta Parser
3
18
  * @private
4
19
  * https://sqbu-github.cisco.com/WebExSquared/cloud-apps/wiki/Locus-Delta-Events
5
20
  */
6
21
  export default class Parser {
7
- static status: {
8
- IDLE: string;
9
- PAUSED: string;
10
- WORKING: string;
11
- };
22
+ status: 'IDLE' | 'PAUSED' | 'WORKING' | 'BLOCKED';
12
23
  static loci: {
13
24
  EQ: string;
14
25
  GT: string;
@@ -16,14 +27,24 @@ export default class Parser {
16
27
  DESYNC: string;
17
28
  USE_INCOMING: string;
18
29
  USE_CURRENT: string;
30
+ WAIT: string;
19
31
  ERROR: string;
32
+ LOCUS_URL_CHANGED: string;
20
33
  };
21
- queue: any;
34
+ queue: SortedQueue<LocusDeltaDto>;
22
35
  workingCopy: any;
36
+ syncTimer?: ReturnType<typeof setTimeout>;
23
37
  /**
24
38
  * @constructs Parser
25
39
  */
26
40
  constructor();
41
+ /**
42
+ * Returns a debug string representing a locus delta - useful for logging
43
+ *
44
+ * @param {LocusDeltaDto} locus Locus delta
45
+ * @returns {string}
46
+ */
47
+ static locus2string(locus: LocusDeltaDto): string;
27
48
  /**
28
49
  * Checks if two sequences overlap in time,
29
50
  * the sequence with the higher minimum value is greater.
@@ -80,6 +101,21 @@ export default class Parser {
80
101
  * @returns {string} loci comparison state
81
102
  */
82
103
  private static compareDelta;
104
+ /**
105
+ * Compares Locus sequences - it should be called only for full Locus DTOs, not deltas
106
+ *
107
+ * @param {Types~Locus} current Current working copy
108
+ * @param {Types~Locus} incomingFullDto New Full Locus DTO
109
+ * @returns {string} either Parser.loci.USE_INCOMING or Parser.loci.USE_CURRENT
110
+ */
111
+ static compareFullDtoSequence(current: any, incomingFullDto: any): string;
112
+ /**
113
+ * Returns true if the incoming full locus DTO is newer than the current working copy
114
+ *
115
+ * @param {Types~Locus} incomingFullDto New Full Locus DTO
116
+ * @returns {string} either Parser.loci.USE_INCOMING or Parser.loci.USE_CURRENT
117
+ */
118
+ isNewFullLocus(incomingFullDto: any): boolean;
83
119
  /**
84
120
  * Compares Locus sequences
85
121
  * @param {Types~Locus} current Current working copy
@@ -190,6 +226,29 @@ export default class Parser {
190
226
  * @returns {undefined}
191
227
  */
192
228
  pause(): void;
229
+ /**
230
+ * Triggers a sync with Locus
231
+ *
232
+ * @param {string} reason used just for logging
233
+ * @returns {undefined}
234
+ */
235
+ private triggerSync;
236
+ /**
237
+ * Starts a timer with a random delay. When that timer expires we will do a sync.
238
+ *
239
+ * The main purpose of this timer is to handle a case when we get some out-of-order deltas,
240
+ * so we start waiting to receive the missing delta. If that delta never arrives, this timer
241
+ * will trigger a sync with Locus.
242
+ *
243
+ * @returns {undefined}
244
+ */
245
+ private startSyncTimer;
246
+ /**
247
+ * Stops the timer for triggering a sync
248
+ *
249
+ * @returns {undefined}
250
+ */
251
+ private stopSyncTimer;
193
252
  /**
194
253
  * Processes next locus delta in the queue,
195
254
  * continues until the queue is empty
@@ -210,3 +269,4 @@ export default class Parser {
210
269
  */
211
270
  static getDebugMessage(debugCode: string, comparison: string): any;
212
271
  }
272
+ export {};
@@ -1,6 +1,8 @@
1
1
  /*!
2
2
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
3
3
  */
4
+ import { type MultistreamConnectionConfig } from '@webex/internal-media-core';
5
+ export type BundlePolicy = MultistreamConnectionConfig['bundlePolicy'];
4
6
  /**
5
7
  * MediaDirection
6
8
  * @typedef {Object} MediaDirection
@@ -1,25 +1,34 @@
1
+ import { LocalCameraStream, LocalMicrophoneStream, LocalDisplayStream, LocalSystemAudioStream, RemoteStream } from '@webex/media-helpers';
2
+ export type MediaDirection = {
3
+ sendAudio: boolean;
4
+ sendVideo: boolean;
5
+ sendShare: boolean;
6
+ receiveAudio: boolean;
7
+ receiveVideo: boolean;
8
+ receiveShare: boolean;
9
+ };
1
10
  /**
2
11
  * @class MediaProperties
3
12
  */
4
13
  export default class MediaProperties {
5
- audioTrack: any;
6
- localQualityLevel: any;
7
- mediaDirection: any;
14
+ audioStream?: LocalMicrophoneStream;
15
+ mediaDirection: MediaDirection;
8
16
  mediaSettings: any;
9
17
  webrtcMediaConnection: any;
10
- remoteAudioTrack: any;
18
+ remoteAudioStream: RemoteStream;
11
19
  remoteQualityLevel: any;
12
- remoteShare: any;
13
- remoteVideoTrack: any;
14
- shareTrack: any;
20
+ remoteShareStream: RemoteStream;
21
+ remoteVideoStream: RemoteStream;
22
+ shareVideoStream?: LocalDisplayStream;
23
+ shareAudioStream?: LocalSystemAudioStream;
15
24
  videoDeviceId: any;
16
- videoTrack: any;
25
+ videoStream?: LocalCameraStream;
17
26
  namespace: string;
18
27
  /**
19
28
  * @param {Object} [options] -- to auto construct
20
29
  * @returns {MediaProperties}
21
30
  */
22
- constructor(options?: any);
31
+ constructor();
23
32
  /**
24
33
  * Retrieves the preferred video input device
25
34
  * @returns {Object|null}
@@ -28,24 +37,24 @@ export default class MediaProperties {
28
37
  setMediaDirection(mediaDirection: any): void;
29
38
  setMediaSettings(type: any, values: any): void;
30
39
  setMediaPeerConnection(mediaPeerConnection: any): void;
31
- setLocalVideoTrack(videoTrack: any): void;
32
- setLocalAudioTrack(audioTrack: any): void;
33
- setLocalQualityLevel(localQualityLevel: any): void;
34
- setLocalShareTrack(shareTrack: any): void;
40
+ setLocalVideoStream(videoStream?: LocalCameraStream): void;
41
+ setLocalAudioStream(audioStream?: LocalMicrophoneStream): void;
42
+ setLocalShareVideoStream(shareVideoStream?: LocalDisplayStream): void;
43
+ setLocalShareAudioStream(shareAudioStream?: LocalSystemAudioStream): void;
35
44
  setRemoteQualityLevel(remoteQualityLevel: any): void;
36
- setRemoteShare(remoteShare: any): void;
45
+ setRemoteShareStream(remoteShareStream: RemoteStream): void;
37
46
  /**
38
- * Sets the remote audio track
39
- * @param {MediaTrack} remoteAudioTrack MediaTrack to save
47
+ * Sets the remote audio stream
48
+ * @param {RemoteStream} remoteAudioStream RemoteStream to save
40
49
  * @returns {void}
41
50
  */
42
- setRemoteAudioTrack(remoteAudioTrack: any): void;
51
+ setRemoteAudioStream(remoteAudioStream: RemoteStream): void;
43
52
  /**
44
- * Sets the remote video track
45
- * @param {MediaTrack} remoteVideoTrack MediaTrack to save
53
+ * Sets the remote video stream
54
+ * @param {RemoteStream} remoteVideoStream RemoteStream to save
46
55
  * @returns {void}
47
56
  */
48
- setRemoteVideoTrack(remoteVideoTrack: any): void;
57
+ setRemoteVideoStream(remoteVideoStream: RemoteStream): void;
49
58
  /**
50
59
  * Stores the preferred video input device
51
60
  * @param {string} deviceId Preferred video input device
@@ -53,45 +62,22 @@ export default class MediaProperties {
53
62
  */
54
63
  setVideoDeviceId(deviceId: string): void;
55
64
  unsetPeerConnection(): void;
56
- unsetLocalVideoTrack(): void;
57
- unsetLocalShareTrack(): void;
58
- unsetLocalAudioTrack(): void;
59
- /**
60
- * Removes remote stream from class instance
61
- * @deprecated after v1.89.3
62
- * @returns {void}
63
- */
64
- unsetRemoteStream(): void;
65
65
  /**
66
66
  * Removes both remote audio and video from class instance
67
67
  * @returns {void}
68
68
  */
69
69
  unsetRemoteMedia(): void;
70
- unsetRemoteShare(): void;
71
- unsetLocalVideoTracks(): void;
70
+ unsetRemoteShareStream(): void;
72
71
  /**
73
- * Removes remote stream and remote share from class instance
74
- * @deprecated after v1.89.3
72
+ * Unsets all remote streams
75
73
  * @returns {void}
76
74
  */
77
75
  unsetRemoteStreams(): void;
78
76
  /**
79
- * Unsets all remote tracks
80
- * @returns {void}
81
- */
82
- unsetRemoteTracks(): void;
83
- unsetShareStreams(): void;
84
- /**
85
- * Removes both local and remote video stream from class instance
86
- * @deprecated after v1.89.3
87
- * @returns {void}
88
- */
89
- unsetMediaStreams(): void;
90
- /**
91
- * Removes both local and remote video stream from class instance
92
- * @returns {void}
77
+ * Returns if we have at least one local share stream or not.
78
+ * @returns {Boolean}
93
79
  */
94
- unsetMediaTracks(): void;
80
+ hasLocalShareStream(): boolean;
95
81
  /**
96
82
  * Waits for the webrtc media connection to be connected.
97
83
  *
@@ -235,131 +235,3 @@ export declare const emptyVideoTransmit: {
235
235
  transmittedWidth: number;
236
236
  }[];
237
237
  };
238
- export declare const emptyVideoShareReceive: {
239
- common: {
240
- common: {
241
- direction: string;
242
- isMain: boolean;
243
- mariFecEnabled: boolean;
244
- mariQosEnabled: boolean;
245
- multistreamEnabled: boolean;
246
- };
247
- dtlsBitrate: number;
248
- dtlsPackets: number;
249
- fecBitrate: number;
250
- fecPackets: number;
251
- maxBitrate: number;
252
- mediaHopByHopLost: number;
253
- rtcpBitrate: number;
254
- rtcpPackets: number;
255
- rtpBitrate: number;
256
- rtpHopByHopLost: number;
257
- rtpPackets: number;
258
- rtpRecovered: number;
259
- rtxBitrate: number;
260
- rtxPackets: number;
261
- srtcpUnprotectErrors: number;
262
- srtpUnprotectErrors: number;
263
- stunBitrate: number;
264
- stunPackets: number;
265
- transportType: string;
266
- };
267
- streams: {
268
- common: {
269
- codec: string;
270
- concealedFrames: number;
271
- csi: any[];
272
- maxConcealRunLength: number;
273
- optimalBitrate: number;
274
- optimalFrameRate: number;
275
- receivedBitrate: number;
276
- receivedFrameRate: number;
277
- renderedFrameRate: number;
278
- requestedBitrate: number;
279
- requestedFrameRate: number;
280
- rtpEndToEndLost: number;
281
- rtpJitter: number;
282
- rtpPackets: number;
283
- ssci: number;
284
- };
285
- h264CodecProfile: string;
286
- isActiveSpeaker: boolean;
287
- optimalFrameSize: number;
288
- receivedFrameSize: number;
289
- receivedHeight: number;
290
- receivedKeyFrames: number;
291
- receivedKeyFramesForRequest: number;
292
- receivedKeyFramesSourceChange: number;
293
- receivedKeyFramesUnknown: number;
294
- receivedWidth: number;
295
- requestedFrameSize: number;
296
- requestedKeyFrames: number;
297
- }[];
298
- };
299
- export declare const emptyVideoShareTransmit: {
300
- common: {
301
- availableBitrate: number;
302
- common: {
303
- direction: string;
304
- isMain: boolean;
305
- mariFecEnabled: boolean;
306
- mariQosEnabled: boolean;
307
- multistreamEnabled: boolean;
308
- };
309
- dtlsBitrate: number;
310
- dtlsPackets: number;
311
- fecBitrate: number;
312
- fecPackets: number;
313
- maxBitrate: number;
314
- queueDelay: number;
315
- remoteJitter: number;
316
- remoteLossRate: number;
317
- remoteReceiveRate: number;
318
- roundTripTime: number;
319
- rtcpBitrate: number;
320
- rtcpPackets: number;
321
- rtpBitrate: number;
322
- rtpPackets: number;
323
- rtxBitrate: number;
324
- rtxPackets: number;
325
- stunBitrate: number;
326
- stunPackets: number;
327
- transportType: string;
328
- };
329
- streams: {
330
- common: {
331
- codec: string;
332
- csi: any[];
333
- duplicateSsci: number;
334
- requestedBitrate: number;
335
- requestedFrames: number;
336
- rtpPackets: number;
337
- ssci: number;
338
- transmittedBitrate: number;
339
- transmittedFrameRate: number;
340
- };
341
- h264CodecProfile: string;
342
- isAvatar: boolean;
343
- isHardwareEncoded: boolean;
344
- localConfigurationChanges: number;
345
- maxFrameQp: number;
346
- maxNoiseLevel: number;
347
- minRegionQp: number;
348
- remoteConfigurationChanges: number;
349
- requestedFrameSize: number;
350
- requestedKeyFrames: number;
351
- transmittedFrameSize: number;
352
- transmittedHeight: number;
353
- transmittedKeyFrames: number;
354
- transmittedKeyFramesClient: number;
355
- transmittedKeyFramesConfigurationChange: number;
356
- transmittedKeyFramesFeedback: number;
357
- transmittedKeyFramesLocalDrop: number;
358
- transmittedKeyFramesOtherLayer: number;
359
- transmittedKeyFramesPeriodic: number;
360
- transmittedKeyFramesSceneChange: number;
361
- transmittedKeyFramesStartup: number;
362
- transmittedKeyFramesUnknown: number;
363
- transmittedWidth: number;
364
- }[];
365
- };
@@ -14,7 +14,11 @@ interface IInMeetingActions {
14
14
  canUnsetMuteOnEntry?: boolean;
15
15
  canSetDisallowUnmute?: boolean;
16
16
  canUnsetDisallowUnmute?: boolean;
17
+ canSetMuted?: boolean;
18
+ canUnsetMuted?: boolean;
17
19
  canAssignHost?: boolean;
20
+ canSetPresenter?: boolean;
21
+ canUnsetPresenter?: boolean;
18
22
  canStartRecording?: boolean;
19
23
  canPauseRecording?: boolean;
20
24
  canResumeRecording?: boolean;
@@ -27,13 +31,51 @@ interface IInMeetingActions {
27
31
  canStartTranscribing?: boolean;
28
32
  canStopTranscribing?: boolean;
29
33
  isClosedCaptionActive?: boolean;
34
+ isSaveTranscriptsEnabled?: boolean;
30
35
  isWebexAssistantActive?: boolean;
31
36
  canViewCaptionPanel?: boolean;
32
37
  isRealTimeTranslationEnabled?: boolean;
33
38
  canSelectSpokenLanguages?: boolean;
34
39
  waitingForOthersToJoin?: boolean;
35
- canEnableReactions?: boolean;
36
40
  canSendReactions?: boolean;
41
+ canManageBreakout?: boolean;
42
+ canBroadcastMessageToBreakout?: boolean;
43
+ canAdmitLobbyToBreakout?: boolean;
44
+ isBreakoutPreassignmentsEnabled?: boolean;
45
+ canUserAskForHelp?: boolean;
46
+ canUserRenameSelfAndObserved?: boolean;
47
+ canUserRenameOthers?: boolean;
48
+ canMuteAll?: boolean;
49
+ canUnmuteAll?: boolean;
50
+ canEnableHardMute?: boolean;
51
+ canDisableHardMute?: boolean;
52
+ canEnableMuteOnEntry?: boolean;
53
+ canDisableMuteOnEntry?: boolean;
54
+ canEnableReactions?: boolean;
55
+ canDisableReactions?: boolean;
56
+ canEnableReactionDisplayNames?: boolean;
57
+ canDisableReactionDisplayNames?: boolean;
58
+ canUpdateShareControl?: boolean;
59
+ canEnableViewTheParticipantsList?: boolean;
60
+ canDisableViewTheParticipantsList?: boolean;
61
+ canEnableRaiseHand?: boolean;
62
+ canDisableRaiseHand?: boolean;
63
+ canEnableVideo?: boolean;
64
+ canDisableVideo?: boolean;
65
+ canShareFile?: boolean;
66
+ canShareApplication?: boolean;
67
+ canShareCamera?: boolean;
68
+ canShareDesktop?: boolean;
69
+ canShareContent?: boolean;
70
+ canTransferFile?: boolean;
71
+ canChat?: boolean;
72
+ canDoVideo?: boolean;
73
+ canAnnotate?: boolean;
74
+ canUseVoip?: boolean;
75
+ supportHQV?: boolean;
76
+ supportHDV?: boolean;
77
+ canShareWhiteBoard?: boolean;
78
+ enforceVirtualBackground?: boolean;
37
79
  }
38
80
  /**
39
81
  * @class InMeetingActions
@@ -50,9 +92,13 @@ export default class InMeetingActions implements IInMeetingActions {
50
92
  canResumeRecording: any;
51
93
  canStopRecording: any;
52
94
  canSetMuteOnEntry: any;
95
+ canSetPresenter: any;
96
+ canUnsetPresenter: any;
53
97
  canUnsetMuteOnEntry: any;
54
98
  canSetDisallowUnmute: any;
55
99
  canUnsetDisallowUnmute: any;
100
+ canSetMuted: any;
101
+ canUnsetMuted: any;
56
102
  canRaiseHand: any;
57
103
  canLowerAllHands: any;
58
104
  canLowerSomeoneElsesHand: any;
@@ -61,13 +107,51 @@ export default class InMeetingActions implements IInMeetingActions {
61
107
  canStartTranscribing: any;
62
108
  canStopTranscribing: any;
63
109
  isClosedCaptionActive: any;
110
+ isSaveTranscriptsEnabled: any;
64
111
  isWebexAssistantActive: any;
65
112
  canViewCaptionPanel: any;
66
113
  isRealTimeTranslationEnabled: any;
67
114
  canSelectSpokenLanguages: any;
68
115
  waitingForOthersToJoin: any;
69
- canEnableReactions: any;
70
116
  canSendReactions: any;
117
+ canManageBreakout: any;
118
+ canBroadcastMessageToBreakout: any;
119
+ canAdmitLobbyToBreakout: any;
120
+ isBreakoutPreassignmentsEnabled: any;
121
+ canUserAskForHelp: any;
122
+ canUserRenameSelfAndObserved: any;
123
+ canUserRenameOthers: any;
124
+ canMuteAll: any;
125
+ canUnmuteAll: any;
126
+ canEnableHardMute: any;
127
+ canDisableHardMute: any;
128
+ canEnableMuteOnEntry: any;
129
+ canDisableMuteOnEntry: any;
130
+ canEnableReactions: any;
131
+ canDisableReactions: any;
132
+ canEnableReactionDisplayNames: any;
133
+ canDisableReactionDisplayNames: any;
134
+ canUpdateShareControl: any;
135
+ canEnableViewTheParticipantsList: any;
136
+ canDisableViewTheParticipantsList: any;
137
+ canEnableRaiseHand: any;
138
+ canDisableRaiseHand: any;
139
+ canEnableVideo: any;
140
+ canDisableVideo: any;
141
+ canShareFile: any;
142
+ canShareApplication: any;
143
+ canShareCamera: any;
144
+ canShareDesktop: any;
145
+ canShareContent: any;
146
+ canTransferFile: any;
147
+ canChat: any;
148
+ canDoVideo: any;
149
+ canAnnotate: any;
150
+ canUseVoip: any;
151
+ supportHQV: any;
152
+ enforceVirtualBackground: any;
153
+ supportHDV: any;
154
+ canShareWhiteBoard: any;
71
155
  /**
72
156
  * Returns all meeting action options
73
157
  * @returns {Object}