@webex/plugin-meetings 3.0.0-beta.26 → 3.0.0-beta.261

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 (361) 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 +114 -14
  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 +841 -19
  15. package/dist/breakouts/index.js.map +1 -1
  16. package/dist/breakouts/request.js +78 -0
  17. package/dist/breakouts/request.js.map +1 -0
  18. package/dist/breakouts/utils.js +67 -0
  19. package/dist/breakouts/utils.js.map +1 -0
  20. package/dist/common/errors/webex-errors.js +28 -7
  21. package/dist/common/errors/webex-errors.js.map +1 -1
  22. package/dist/common/logs/logger-proxy.js +1 -1
  23. package/dist/common/logs/logger-proxy.js.map +1 -1
  24. package/dist/common/queue.js +24 -9
  25. package/dist/common/queue.js.map +1 -1
  26. package/dist/config.js +5 -10
  27. package/dist/config.js.map +1 -1
  28. package/dist/constants.js +196 -28
  29. package/dist/constants.js.map +1 -1
  30. package/dist/controls-options-manager/enums.js +14 -2
  31. package/dist/controls-options-manager/enums.js.map +1 -1
  32. package/dist/controls-options-manager/index.js +109 -15
  33. package/dist/controls-options-manager/index.js.map +1 -1
  34. package/dist/controls-options-manager/types.js +7 -0
  35. package/dist/controls-options-manager/types.js.map +1 -0
  36. package/dist/controls-options-manager/util.js +309 -18
  37. package/dist/controls-options-manager/util.js.map +1 -1
  38. package/dist/index.js +112 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/interpretation/collection.js +23 -0
  41. package/dist/interpretation/collection.js.map +1 -0
  42. package/dist/interpretation/index.js +366 -0
  43. package/dist/interpretation/index.js.map +1 -0
  44. package/dist/interpretation/siLanguage.js +25 -0
  45. package/dist/interpretation/siLanguage.js.map +1 -0
  46. package/dist/locus-info/controlsUtils.js +91 -2
  47. package/dist/locus-info/controlsUtils.js.map +1 -1
  48. package/dist/locus-info/index.js +381 -62
  49. package/dist/locus-info/index.js.map +1 -1
  50. package/dist/locus-info/infoUtils.js +7 -1
  51. package/dist/locus-info/infoUtils.js.map +1 -1
  52. package/dist/locus-info/mediaSharesUtils.js +43 -1
  53. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  54. package/dist/locus-info/parser.js +224 -63
  55. package/dist/locus-info/parser.js.map +1 -1
  56. package/dist/locus-info/selfUtils.js +89 -14
  57. package/dist/locus-info/selfUtils.js.map +1 -1
  58. package/dist/media/index.js +58 -116
  59. package/dist/media/index.js.map +1 -1
  60. package/dist/media/properties.js +60 -121
  61. package/dist/media/properties.js.map +1 -1
  62. package/dist/meeting/in-meeting-actions.js +82 -2
  63. package/dist/meeting/in-meeting-actions.js.map +1 -1
  64. package/dist/meeting/index.js +3022 -2795
  65. package/dist/meeting/index.js.map +1 -1
  66. package/dist/meeting/locusMediaRequest.js +292 -0
  67. package/dist/meeting/locusMediaRequest.js.map +1 -0
  68. package/dist/meeting/muteState.js +230 -124
  69. package/dist/meeting/muteState.js.map +1 -1
  70. package/dist/meeting/request.js +256 -196
  71. package/dist/meeting/request.js.map +1 -1
  72. package/dist/meeting/util.js +601 -417
  73. package/dist/meeting/util.js.map +1 -1
  74. package/dist/meeting-info/index.js +70 -7
  75. package/dist/meeting-info/index.js.map +1 -1
  76. package/dist/meeting-info/meeting-info-v2.js +189 -51
  77. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  78. package/dist/meeting-info/util.js +1 -1
  79. package/dist/meeting-info/util.js.map +1 -1
  80. package/dist/meeting-info/utilv2.js +36 -36
  81. package/dist/meeting-info/utilv2.js.map +1 -1
  82. package/dist/meetings/collection.js +22 -0
  83. package/dist/meetings/collection.js.map +1 -1
  84. package/dist/meetings/index.js +372 -90
  85. package/dist/meetings/index.js.map +1 -1
  86. package/dist/meetings/meetings.types.js +7 -0
  87. package/dist/meetings/meetings.types.js.map +1 -0
  88. package/dist/meetings/request.js +2 -0
  89. package/dist/meetings/request.js.map +1 -1
  90. package/dist/meetings/util.js +88 -1
  91. package/dist/meetings/util.js.map +1 -1
  92. package/dist/member/index.js +49 -0
  93. package/dist/member/index.js.map +1 -1
  94. package/dist/member/types.js +25 -0
  95. package/dist/member/types.js.map +1 -0
  96. package/dist/member/util.js +121 -25
  97. package/dist/member/util.js.map +1 -1
  98. package/dist/members/collection.js +10 -0
  99. package/dist/members/collection.js.map +1 -1
  100. package/dist/members/index.js +86 -5
  101. package/dist/members/index.js.map +1 -1
  102. package/dist/members/request.js +106 -38
  103. package/dist/members/request.js.map +1 -1
  104. package/dist/members/types.js +15 -0
  105. package/dist/members/types.js.map +1 -0
  106. package/dist/members/util.js +316 -233
  107. package/dist/members/util.js.map +1 -1
  108. package/dist/metrics/constants.js +10 -5
  109. package/dist/metrics/constants.js.map +1 -1
  110. package/dist/metrics/index.js +1 -468
  111. package/dist/metrics/index.js.map +1 -1
  112. package/dist/multistream/mediaRequestManager.js +238 -49
  113. package/dist/multistream/mediaRequestManager.js.map +1 -1
  114. package/dist/multistream/receiveSlot.js +49 -16
  115. package/dist/multistream/receiveSlot.js.map +1 -1
  116. package/dist/multistream/receiveSlotManager.js +52 -34
  117. package/dist/multistream/receiveSlotManager.js.map +1 -1
  118. package/dist/multistream/remoteMedia.js +44 -18
  119. package/dist/multistream/remoteMedia.js.map +1 -1
  120. package/dist/multistream/remoteMediaGroup.js +60 -3
  121. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  122. package/dist/multistream/remoteMediaManager.js +209 -59
  123. package/dist/multistream/remoteMediaManager.js.map +1 -1
  124. package/dist/multistream/sendSlotManager.js +233 -0
  125. package/dist/multistream/sendSlotManager.js.map +1 -0
  126. package/dist/reachability/index.js +161 -57
  127. package/dist/reachability/index.js.map +1 -1
  128. package/dist/reachability/request.js +17 -8
  129. package/dist/reachability/request.js.map +1 -1
  130. package/dist/reconnection-manager/index.js +199 -154
  131. package/dist/reconnection-manager/index.js.map +1 -1
  132. package/dist/recording-controller/index.js +21 -2
  133. package/dist/recording-controller/index.js.map +1 -1
  134. package/dist/recording-controller/util.js +9 -8
  135. package/dist/recording-controller/util.js.map +1 -1
  136. package/dist/roap/index.js +23 -29
  137. package/dist/roap/index.js.map +1 -1
  138. package/dist/roap/request.js +112 -97
  139. package/dist/roap/request.js.map +1 -1
  140. package/dist/roap/turnDiscovery.js +96 -36
  141. package/dist/roap/turnDiscovery.js.map +1 -1
  142. package/dist/rtcMetrics/constants.js +12 -0
  143. package/dist/rtcMetrics/constants.js.map +1 -0
  144. package/dist/rtcMetrics/index.js +117 -0
  145. package/dist/rtcMetrics/index.js.map +1 -0
  146. package/dist/statsAnalyzer/index.js +51 -34
  147. package/dist/statsAnalyzer/index.js.map +1 -1
  148. package/dist/statsAnalyzer/mqaUtil.js +6 -6
  149. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  150. package/dist/types/annotation/annotation.types.d.ts +42 -0
  151. package/dist/types/annotation/constants.d.ts +31 -0
  152. package/dist/types/annotation/index.d.ts +117 -0
  153. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  154. package/dist/types/breakouts/events.d.ts +8 -0
  155. package/dist/types/breakouts/request.d.ts +22 -0
  156. package/dist/types/breakouts/utils.d.ts +15 -0
  157. package/dist/types/common/errors/webex-errors.d.ts +13 -1
  158. package/dist/types/common/queue.d.ts +9 -7
  159. package/dist/types/config.d.ts +1 -6
  160. package/dist/types/constants.d.ts +155 -21
  161. package/dist/types/controls-options-manager/enums.d.ts +11 -1
  162. package/dist/types/controls-options-manager/index.d.ts +17 -1
  163. package/dist/types/controls-options-manager/types.d.ts +43 -0
  164. package/dist/types/controls-options-manager/util.d.ts +1 -7
  165. package/dist/types/index.d.ts +6 -4
  166. package/dist/types/interpretation/collection.d.ts +5 -0
  167. package/dist/types/interpretation/index.d.ts +5 -0
  168. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  169. package/dist/types/locus-info/index.d.ts +57 -4
  170. package/dist/types/locus-info/parser.d.ts +65 -6
  171. package/dist/types/media/index.d.ts +2 -0
  172. package/dist/types/media/properties.d.ts +34 -48
  173. package/dist/types/meeting/in-meeting-actions.d.ts +82 -2
  174. package/dist/types/meeting/index.d.ts +344 -506
  175. package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
  176. package/dist/types/meeting/muteState.d.ts +99 -23
  177. package/dist/types/meeting/request.d.ts +72 -43
  178. package/dist/types/meeting/util.d.ts +101 -1
  179. package/dist/types/meeting-info/index.d.ts +13 -1
  180. package/dist/types/meeting-info/meeting-info-v2.d.ts +31 -1
  181. package/dist/types/meetings/collection.d.ts +8 -0
  182. package/dist/types/meetings/index.d.ts +86 -12
  183. package/dist/types/meetings/meetings.types.d.ts +4 -0
  184. package/dist/types/member/index.d.ts +13 -0
  185. package/dist/types/member/types.d.ts +32 -0
  186. package/dist/types/members/collection.d.ts +5 -0
  187. package/dist/types/members/index.d.ts +35 -2
  188. package/dist/types/members/request.d.ts +73 -9
  189. package/dist/types/members/types.d.ts +24 -0
  190. package/dist/types/members/util.d.ts +209 -1
  191. package/dist/types/metrics/constants.d.ts +9 -4
  192. package/dist/types/metrics/index.d.ts +4 -119
  193. package/dist/types/multistream/mediaRequestManager.d.ts +73 -5
  194. package/dist/types/multistream/receiveSlot.d.ts +16 -12
  195. package/dist/types/multistream/receiveSlotManager.d.ts +19 -4
  196. package/dist/types/multistream/remoteMedia.d.ts +8 -29
  197. package/dist/types/multistream/remoteMediaGroup.d.ts +0 -9
  198. package/dist/types/multistream/remoteMediaManager.d.ts +46 -2
  199. package/dist/types/multistream/sendSlotManager.d.ts +61 -0
  200. package/dist/types/reachability/index.d.ts +44 -7
  201. package/dist/types/reachability/request.d.ts +7 -3
  202. package/dist/types/reconnection-manager/index.d.ts +9 -0
  203. package/dist/types/recording-controller/index.d.ts +15 -1
  204. package/dist/types/recording-controller/util.d.ts +5 -4
  205. package/dist/types/roap/request.d.ts +15 -11
  206. package/dist/types/roap/turnDiscovery.d.ts +18 -1
  207. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  208. package/dist/types/rtcMetrics/index.d.ts +47 -0
  209. package/dist/types/statsAnalyzer/index.d.ts +6 -1
  210. package/package.json +23 -20
  211. package/src/annotation/annotation.types.ts +50 -0
  212. package/src/annotation/constants.ts +36 -0
  213. package/src/annotation/index.ts +328 -0
  214. package/src/breakouts/README.md +44 -14
  215. package/src/breakouts/breakout.ts +87 -9
  216. package/src/breakouts/edit-lock-error.ts +25 -0
  217. package/src/breakouts/events.ts +56 -0
  218. package/src/breakouts/index.ts +710 -10
  219. package/src/breakouts/request.ts +55 -0
  220. package/src/breakouts/utils.ts +57 -0
  221. package/src/common/errors/webex-errors.ts +27 -2
  222. package/src/common/logs/logger-proxy.ts +1 -1
  223. package/src/common/queue.ts +22 -8
  224. package/src/config.ts +4 -9
  225. package/src/constants.ts +178 -18
  226. package/src/controls-options-manager/enums.ts +12 -0
  227. package/src/controls-options-manager/index.ts +116 -21
  228. package/src/controls-options-manager/types.ts +59 -0
  229. package/src/controls-options-manager/util.ts +294 -14
  230. package/src/index.ts +40 -0
  231. package/src/interpretation/README.md +60 -0
  232. package/src/interpretation/collection.ts +19 -0
  233. package/src/interpretation/index.ts +332 -0
  234. package/src/interpretation/siLanguage.ts +18 -0
  235. package/src/locus-info/controlsUtils.ts +108 -0
  236. package/src/locus-info/index.ts +412 -59
  237. package/src/locus-info/infoUtils.ts +10 -2
  238. package/src/locus-info/mediaSharesUtils.ts +48 -0
  239. package/src/locus-info/parser.ts +231 -39
  240. package/src/locus-info/selfUtils.ts +81 -5
  241. package/src/media/index.ts +100 -122
  242. package/src/media/properties.ts +70 -108
  243. package/src/meeting/in-meeting-actions.ts +163 -3
  244. package/src/meeting/index.ts +2471 -2306
  245. package/src/meeting/locusMediaRequest.ts +313 -0
  246. package/src/meeting/muteState.ts +229 -131
  247. package/src/meeting/request.ts +172 -121
  248. package/src/meeting/util.ts +588 -394
  249. package/src/meeting-info/index.ts +79 -8
  250. package/src/meeting-info/meeting-info-v2.ts +168 -14
  251. package/src/meeting-info/util.ts +1 -1
  252. package/src/meeting-info/utilv2.ts +23 -23
  253. package/src/meetings/collection.ts +20 -0
  254. package/src/meetings/index.ts +414 -108
  255. package/src/meetings/meetings.types.ts +12 -0
  256. package/src/meetings/request.ts +2 -0
  257. package/src/meetings/util.ts +103 -4
  258. package/src/member/index.ts +49 -0
  259. package/src/member/types.ts +38 -0
  260. package/src/member/util.ts +127 -25
  261. package/src/members/collection.ts +8 -0
  262. package/src/members/index.ts +107 -6
  263. package/src/members/request.ts +97 -17
  264. package/src/members/types.ts +28 -0
  265. package/src/members/util.ts +319 -240
  266. package/src/metrics/constants.ts +9 -4
  267. package/src/metrics/index.ts +1 -490
  268. package/src/multistream/mediaRequestManager.ts +289 -79
  269. package/src/multistream/receiveSlot.ts +55 -18
  270. package/src/multistream/receiveSlotManager.ts +46 -24
  271. package/src/multistream/remoteMedia.ts +27 -2
  272. package/src/multistream/remoteMediaGroup.ts +59 -0
  273. package/src/multistream/remoteMediaManager.ts +148 -30
  274. package/src/multistream/sendSlotManager.ts +170 -0
  275. package/src/reachability/index.ts +165 -37
  276. package/src/reachability/request.ts +17 -8
  277. package/src/reconnection-manager/index.ts +81 -54
  278. package/src/recording-controller/index.ts +20 -3
  279. package/src/recording-controller/util.ts +26 -9
  280. package/src/roap/index.ts +23 -30
  281. package/src/roap/request.ts +100 -104
  282. package/src/roap/turnDiscovery.ts +51 -25
  283. package/src/rtcMetrics/constants.ts +3 -0
  284. package/src/rtcMetrics/index.ts +100 -0
  285. package/src/statsAnalyzer/index.ts +73 -35
  286. package/src/statsAnalyzer/mqaUtil.ts +8 -10
  287. package/test/integration/spec/converged-space-meetings.js +233 -0
  288. package/test/integration/spec/journey.js +320 -261
  289. package/test/integration/spec/space-meeting.js +76 -3
  290. package/test/unit/spec/annotation/index.ts +418 -0
  291. package/test/unit/spec/breakouts/breakout.ts +142 -24
  292. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  293. package/test/unit/spec/breakouts/events.ts +89 -0
  294. package/test/unit/spec/breakouts/index.ts +1545 -48
  295. package/test/unit/spec/breakouts/request.ts +104 -0
  296. package/test/unit/spec/breakouts/utils.js +72 -0
  297. package/test/unit/spec/common/queue.js +31 -2
  298. package/test/unit/spec/controls-options-manager/index.js +163 -0
  299. package/test/unit/spec/controls-options-manager/util.js +576 -60
  300. package/test/unit/spec/fixture/locus.js +1 -0
  301. package/test/unit/spec/interpretation/collection.ts +15 -0
  302. package/test/unit/spec/interpretation/index.ts +589 -0
  303. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  304. package/test/unit/spec/locus-info/controlsUtils.js +316 -43
  305. package/test/unit/spec/locus-info/index.js +1283 -33
  306. package/test/unit/spec/locus-info/infoUtils.js +37 -15
  307. package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
  308. package/test/unit/spec/locus-info/parser.js +62 -22
  309. package/test/unit/spec/locus-info/selfConstant.js +27 -4
  310. package/test/unit/spec/locus-info/selfUtils.js +208 -17
  311. package/test/unit/spec/media/index.ts +104 -37
  312. package/test/unit/spec/meeting/in-meeting-actions.ts +81 -3
  313. package/test/unit/spec/meeting/index.js +4095 -1913
  314. package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
  315. package/test/unit/spec/meeting/muteState.js +408 -208
  316. package/test/unit/spec/meeting/request.js +440 -45
  317. package/test/unit/spec/meeting/utils.js +679 -64
  318. package/test/unit/spec/meeting-info/index.js +293 -0
  319. package/test/unit/spec/meeting-info/meetinginfov2.js +517 -5
  320. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  321. package/test/unit/spec/meetings/collection.js +14 -0
  322. package/test/unit/spec/meetings/index.js +941 -151
  323. package/test/unit/spec/meetings/utils.js +206 -2
  324. package/test/unit/spec/member/index.js +58 -4
  325. package/test/unit/spec/member/util.js +479 -35
  326. package/test/unit/spec/members/index.js +319 -1
  327. package/test/unit/spec/members/request.js +206 -27
  328. package/test/unit/spec/members/utils.js +184 -0
  329. package/test/unit/spec/metrics/index.js +1 -50
  330. package/test/unit/spec/multistream/mediaRequestManager.ts +803 -162
  331. package/test/unit/spec/multistream/receiveSlot.ts +72 -13
  332. package/test/unit/spec/multistream/receiveSlotManager.ts +58 -28
  333. package/test/unit/spec/multistream/remoteMedia.ts +30 -0
  334. package/test/unit/spec/multistream/remoteMediaGroup.ts +266 -0
  335. package/test/unit/spec/multistream/remoteMediaManager.ts +326 -0
  336. package/test/unit/spec/multistream/sendSlotManager.ts +242 -0
  337. package/test/unit/spec/reachability/index.ts +343 -9
  338. package/test/unit/spec/reachability/request.js +68 -0
  339. package/test/unit/spec/reconnection-manager/index.js +84 -9
  340. package/test/unit/spec/recording-controller/index.js +294 -218
  341. package/test/unit/spec/recording-controller/util.js +223 -96
  342. package/test/unit/spec/roap/index.ts +31 -51
  343. package/test/unit/spec/roap/request.ts +203 -85
  344. package/test/unit/spec/roap/turnDiscovery.ts +48 -13
  345. package/test/unit/spec/rtcMetrics/index.ts +68 -0
  346. package/test/unit/spec/stats-analyzer/index.js +29 -2
  347. package/test/utils/constants.js +9 -0
  348. package/test/utils/integrationTestUtils.js +46 -0
  349. package/test/utils/testUtils.js +0 -45
  350. package/test/utils/webex-config.js +4 -0
  351. package/test/utils/webex-test-users.js +6 -3
  352. package/dist/meeting/effectsState.js +0 -262
  353. package/dist/meeting/effectsState.js.map +0 -1
  354. package/dist/metrics/config.js +0 -299
  355. package/dist/metrics/config.js.map +0 -1
  356. package/dist/types/meeting/effectsState.d.ts +0 -42
  357. package/dist/types/metrics/config.d.ts +0 -178
  358. package/src/index.js +0 -16
  359. package/src/meeting/effectsState.ts +0 -211
  360. package/src/metrics/config.ts +0 -495
  361. package/test/unit/spec/meeting/effectsState.js +0 -285
@@ -1,14 +1,25 @@
1
+ /// <reference types="node" />
2
+ import SortedQueue from '../common/queue';
3
+ type LocusDeltaDto = {
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,23 @@ 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;
20
32
  };
21
- queue: any;
33
+ queue: SortedQueue<LocusDeltaDto>;
22
34
  workingCopy: any;
35
+ syncTimer: null | number | NodeJS.Timeout;
23
36
  /**
24
37
  * @constructs Parser
25
38
  */
26
39
  constructor();
40
+ /**
41
+ * Returns a debug string representing a locus delta - useful for logging
42
+ *
43
+ * @param {LocusDeltaDto} locus Locus delta
44
+ * @returns {string}
45
+ */
46
+ static locus2string(locus: LocusDeltaDto): string;
27
47
  /**
28
48
  * Checks if two sequences overlap in time,
29
49
  * the sequence with the higher minimum value is greater.
@@ -80,6 +100,21 @@ export default class Parser {
80
100
  * @returns {string} loci comparison state
81
101
  */
82
102
  private static compareDelta;
103
+ /**
104
+ * Compares Locus sequences - it should be called only for full Locus DTOs, not deltas
105
+ *
106
+ * @param {Types~Locus} current Current working copy
107
+ * @param {Types~Locus} incomingFullDto New Full Locus DTO
108
+ * @returns {string} either Parser.loci.USE_INCOMING or Parser.loci.USE_CURRENT
109
+ */
110
+ static compareFullDtoSequence(current: any, incomingFullDto: any): string;
111
+ /**
112
+ * Returns true if the incoming full locus DTO is newer than the current working copy
113
+ *
114
+ * @param {Types~Locus} incomingFullDto New Full Locus DTO
115
+ * @returns {string} either Parser.loci.USE_INCOMING or Parser.loci.USE_CURRENT
116
+ */
117
+ isNewFullLocus(incomingFullDto: any): boolean;
83
118
  /**
84
119
  * Compares Locus sequences
85
120
  * @param {Types~Locus} current Current working copy
@@ -190,6 +225,29 @@ export default class Parser {
190
225
  * @returns {undefined}
191
226
  */
192
227
  pause(): void;
228
+ /**
229
+ * Triggers a sync with Locus
230
+ *
231
+ * @param {string} reason used just for logging
232
+ * @returns {undefined}
233
+ */
234
+ private triggerSync;
235
+ /**
236
+ * Starts a timer with a random delay. When that timer expires we will do a sync.
237
+ *
238
+ * The main purpose of this timer is to handle a case when we get some out-of-order deltas,
239
+ * so we start waiting to receive the missing delta. If that delta never arrives, this timer
240
+ * will trigger a sync with Locus.
241
+ *
242
+ * @returns {undefined}
243
+ */
244
+ private startSyncTimer;
245
+ /**
246
+ * Stops the timer for triggering a sync
247
+ *
248
+ * @returns {undefined}
249
+ */
250
+ private stopSyncTimer;
193
251
  /**
194
252
  * Processes next locus delta in the queue,
195
253
  * continues until the queue is empty
@@ -210,3 +268,4 @@ export default class Parser {
210
268
  */
211
269
  static getDebugMessage(debugCode: string, comparison: string): any;
212
270
  }
271
+ 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
  *
@@ -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,49 @@ 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
+ canDoVideo?: boolean;
72
+ canAnnotate?: boolean;
73
+ canUseVoip?: boolean;
74
+ supportHQV?: boolean;
75
+ supportHDV?: boolean;
76
+ canShareWhiteBoard?: boolean;
37
77
  }
38
78
  /**
39
79
  * @class InMeetingActions
@@ -50,9 +90,13 @@ export default class InMeetingActions implements IInMeetingActions {
50
90
  canResumeRecording: any;
51
91
  canStopRecording: any;
52
92
  canSetMuteOnEntry: any;
93
+ canSetPresenter: any;
94
+ canUnsetPresenter: any;
53
95
  canUnsetMuteOnEntry: any;
54
96
  canSetDisallowUnmute: any;
55
97
  canUnsetDisallowUnmute: any;
98
+ canSetMuted: any;
99
+ canUnsetMuted: any;
56
100
  canRaiseHand: any;
57
101
  canLowerAllHands: any;
58
102
  canLowerSomeoneElsesHand: any;
@@ -61,13 +105,49 @@ export default class InMeetingActions implements IInMeetingActions {
61
105
  canStartTranscribing: any;
62
106
  canStopTranscribing: any;
63
107
  isClosedCaptionActive: any;
108
+ isSaveTranscriptsEnabled: any;
64
109
  isWebexAssistantActive: any;
65
110
  canViewCaptionPanel: any;
66
111
  isRealTimeTranslationEnabled: any;
67
112
  canSelectSpokenLanguages: any;
68
113
  waitingForOthersToJoin: any;
69
- canEnableReactions: any;
70
114
  canSendReactions: any;
115
+ canManageBreakout: any;
116
+ canBroadcastMessageToBreakout: any;
117
+ canAdmitLobbyToBreakout: any;
118
+ isBreakoutPreassignmentsEnabled: any;
119
+ canUserAskForHelp: any;
120
+ canUserRenameSelfAndObserved: any;
121
+ canUserRenameOthers: any;
122
+ canMuteAll: any;
123
+ canUnmuteAll: any;
124
+ canEnableHardMute: any;
125
+ canDisableHardMute: any;
126
+ canEnableMuteOnEntry: any;
127
+ canDisableMuteOnEntry: any;
128
+ canEnableReactions: any;
129
+ canDisableReactions: any;
130
+ canEnableReactionDisplayNames: any;
131
+ canDisableReactionDisplayNames: any;
132
+ canUpdateShareControl: any;
133
+ canEnableViewTheParticipantsList: any;
134
+ canDisableViewTheParticipantsList: any;
135
+ canEnableRaiseHand: any;
136
+ canDisableRaiseHand: any;
137
+ canEnableVideo: any;
138
+ canDisableVideo: any;
139
+ canShareFile: any;
140
+ canShareApplication: any;
141
+ canShareCamera: any;
142
+ canShareDesktop: any;
143
+ canShareContent: any;
144
+ canTransferFile: any;
145
+ canDoVideo: any;
146
+ canAnnotate: any;
147
+ canUseVoip: any;
148
+ supportHQV: any;
149
+ supportHDV: any;
150
+ canShareWhiteBoard: any;
71
151
  /**
72
152
  * Returns all meeting action options
73
153
  * @returns {Object}