@webex/plugin-meetings 3.0.0-beta.28 → 3.0.0-beta.280

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