@webex/plugin-meetings 2.60.0-next.9 → 2.60.1

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 (516) hide show
  1. package/README.md +8 -46
  2. package/dist/common/browser-detection.js +3 -2
  3. package/dist/common/browser-detection.js.map +1 -1
  4. package/dist/common/collection.js +4 -3
  5. package/dist/common/collection.js.map +1 -1
  6. package/dist/common/config.js +2 -1
  7. package/dist/common/config.js.map +1 -1
  8. package/dist/common/errors/captcha-error.js +2 -1
  9. package/dist/common/errors/captcha-error.js.map +1 -1
  10. package/dist/common/errors/intent-to-join.js +2 -1
  11. package/dist/common/errors/intent-to-join.js.map +1 -1
  12. package/dist/common/errors/join-meeting.js +2 -1
  13. package/dist/common/errors/join-meeting.js.map +1 -1
  14. package/dist/common/errors/media.js +2 -1
  15. package/dist/common/errors/media.js.map +1 -1
  16. package/dist/common/errors/parameter.js +4 -3
  17. package/dist/common/errors/parameter.js.map +1 -1
  18. package/dist/common/errors/password-error.js +2 -1
  19. package/dist/common/errors/password-error.js.map +1 -1
  20. package/dist/common/errors/permission.js +2 -1
  21. package/dist/common/errors/permission.js.map +1 -1
  22. package/dist/common/errors/{reclaim-host-role-errors.js → reclaim-host-role-error.js} +11 -7
  23. package/dist/common/errors/reclaim-host-role-error.js.map +1 -0
  24. package/dist/common/errors/reconnection-in-progress.js +2 -1
  25. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  26. package/dist/common/errors/reconnection.js +2 -1
  27. package/dist/common/errors/reconnection.js.map +1 -1
  28. package/dist/common/errors/stats.js +2 -1
  29. package/dist/common/errors/stats.js.map +1 -1
  30. package/dist/common/errors/webex-errors.d.ts +8 -20
  31. package/dist/common/errors/webex-errors.js +28 -48
  32. package/dist/common/errors/webex-errors.js.map +1 -1
  33. package/dist/common/errors/webex-meetings-error.js +2 -1
  34. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  35. package/dist/common/events/events-scope.js +2 -1
  36. package/dist/common/events/events-scope.js.map +1 -1
  37. package/dist/common/events/events.js +2 -1
  38. package/dist/common/events/events.js.map +1 -1
  39. package/dist/common/events/trigger-proxy.js +2 -1
  40. package/dist/common/events/trigger-proxy.js.map +1 -1
  41. package/dist/common/events/util.js +2 -1
  42. package/dist/common/events/util.js.map +1 -1
  43. package/dist/common/logs/logger-config.js +2 -1
  44. package/dist/common/logs/logger-config.js.map +1 -1
  45. package/dist/common/logs/logger-proxy.js +3 -2
  46. package/dist/common/logs/logger-proxy.js.map +1 -1
  47. package/dist/common/logs/request.d.ts +1 -3
  48. package/dist/common/logs/request.js +5 -8
  49. package/dist/common/logs/request.js.map +1 -1
  50. package/dist/common/queue.d.ts +7 -9
  51. package/dist/common/queue.js +9 -22
  52. package/dist/common/queue.js.map +1 -1
  53. package/dist/config.d.ts +7 -5
  54. package/dist/config.js +11 -8
  55. package/dist/config.js.map +1 -1
  56. package/dist/constants.d.ts +97 -217
  57. package/dist/constants.js +441 -416
  58. package/dist/constants.js.map +1 -1
  59. package/dist/controls-options-manager/constants.js +6 -3
  60. package/dist/controls-options-manager/constants.js.map +1 -1
  61. package/dist/controls-options-manager/enums.d.ts +1 -11
  62. package/dist/controls-options-manager/enums.js +6 -15
  63. package/dist/controls-options-manager/enums.js.map +1 -1
  64. package/dist/controls-options-manager/index.d.ts +1 -17
  65. package/dist/controls-options-manager/index.js +38 -127
  66. package/dist/controls-options-manager/index.js.map +1 -1
  67. package/dist/controls-options-manager/util.d.ts +7 -1
  68. package/dist/controls-options-manager/util.js +19 -309
  69. package/dist/controls-options-manager/util.js.map +1 -1
  70. package/dist/index.d.ts +3 -6
  71. package/dist/index.js +4 -116
  72. package/dist/index.js.map +1 -1
  73. package/dist/locus-info/controlsUtils.js +11 -100
  74. package/dist/locus-info/controlsUtils.js.map +1 -1
  75. package/dist/locus-info/embeddedAppsUtils.js +4 -3
  76. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  77. package/dist/locus-info/fullState.js +2 -1
  78. package/dist/locus-info/fullState.js.map +1 -1
  79. package/dist/locus-info/hostUtils.js +2 -1
  80. package/dist/locus-info/hostUtils.js.map +1 -1
  81. package/dist/locus-info/index.d.ts +4 -57
  82. package/dist/locus-info/index.js +84 -425
  83. package/dist/locus-info/index.js.map +1 -1
  84. package/dist/locus-info/infoUtils.js +5 -13
  85. package/dist/locus-info/infoUtils.js.map +1 -1
  86. package/dist/locus-info/mediaSharesUtils.js +3 -58
  87. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  88. package/dist/locus-info/parser.d.ts +6 -66
  89. package/dist/locus-info/parser.js +80 -253
  90. package/dist/locus-info/parser.js.map +1 -1
  91. package/dist/locus-info/selfUtils.js +13 -97
  92. package/dist/locus-info/selfUtils.js.map +1 -1
  93. package/dist/media/index.d.ts +0 -2
  94. package/dist/media/index.js +319 -107
  95. package/dist/media/index.js.map +1 -1
  96. package/dist/media/properties.d.ts +53 -38
  97. package/dist/media/properties.js +153 -96
  98. package/dist/media/properties.js.map +1 -1
  99. package/dist/media/util.js +22 -1
  100. package/dist/media/util.js.map +1 -1
  101. package/dist/mediaQualityMetrics/config.d.ts +230 -234
  102. package/dist/mediaQualityMetrics/config.js +498 -302
  103. package/dist/mediaQualityMetrics/config.js.map +1 -1
  104. package/dist/meeting/effectsState.d.ts +42 -0
  105. package/dist/meeting/effectsState.js +260 -0
  106. package/dist/meeting/effectsState.js.map +1 -0
  107. package/dist/meeting/in-meeting-actions.d.ts +0 -88
  108. package/dist/meeting/in-meeting-actions.js +3 -94
  109. package/dist/meeting/in-meeting-actions.js.map +1 -1
  110. package/dist/meeting/index.d.ts +494 -591
  111. package/dist/meeting/index.js +2969 -4707
  112. package/dist/meeting/index.js.map +1 -1
  113. package/dist/meeting/muteState.d.ts +25 -93
  114. package/dist/meeting/muteState.js +133 -224
  115. package/dist/meeting/muteState.js.map +1 -1
  116. package/dist/meeting/request.d.ts +47 -82
  117. package/dist/meeting/request.js +199 -297
  118. package/dist/meeting/request.js.map +1 -1
  119. package/dist/meeting/state.js +2 -1
  120. package/dist/meeting/state.js.map +1 -1
  121. package/dist/meeting/util.d.ts +1 -102
  122. package/dist/meeting/util.js +435 -605
  123. package/dist/meeting/util.js.map +1 -1
  124. package/dist/meeting-info/collection.js +4 -3
  125. package/dist/meeting-info/collection.js.map +1 -1
  126. package/dist/meeting-info/index.d.ts +1 -13
  127. package/dist/meeting-info/index.js +7 -74
  128. package/dist/meeting-info/index.js.map +1 -1
  129. package/dist/meeting-info/meeting-info-v2.d.ts +1 -31
  130. package/dist/meeting-info/meeting-info-v2.js +63 -200
  131. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  132. package/dist/meeting-info/request.js +2 -1
  133. package/dist/meeting-info/request.js.map +1 -1
  134. package/dist/meeting-info/util.js +3 -2
  135. package/dist/meeting-info/util.js.map +1 -1
  136. package/dist/meeting-info/utilv2.js +41 -39
  137. package/dist/meeting-info/utilv2.js.map +1 -1
  138. package/dist/meetings/collection.d.ts +0 -17
  139. package/dist/meetings/collection.js +4 -42
  140. package/dist/meetings/collection.js.map +1 -1
  141. package/dist/meetings/index.d.ts +21 -103
  142. package/dist/meetings/index.js +124 -486
  143. package/dist/meetings/index.js.map +1 -1
  144. package/dist/meetings/request.js +3 -4
  145. package/dist/meetings/request.js.map +1 -1
  146. package/dist/meetings/util.js +6 -107
  147. package/dist/meetings/util.js.map +1 -1
  148. package/dist/member/index.d.ts +1 -13
  149. package/dist/member/index.js +2 -45
  150. package/dist/member/index.js.map +1 -1
  151. package/dist/member/member.types.js +4 -3
  152. package/dist/member/member.types.js.map +1 -1
  153. package/dist/member/util.js +29 -120
  154. package/dist/member/util.js.map +1 -1
  155. package/dist/members/collection.d.ts +0 -5
  156. package/dist/members/collection.js +2 -11
  157. package/dist/members/collection.js.map +1 -1
  158. package/dist/members/index.d.ts +11 -56
  159. package/dist/members/index.js +47 -174
  160. package/dist/members/index.js.map +1 -1
  161. package/dist/members/request.d.ts +11 -67
  162. package/dist/members/request.js +54 -102
  163. package/dist/members/request.js.map +1 -1
  164. package/dist/members/types.js +4 -3
  165. package/dist/members/types.js.map +1 -1
  166. package/dist/members/util.d.ts +1 -214
  167. package/dist/members/util.js +284 -327
  168. package/dist/members/util.js.map +1 -1
  169. package/dist/metrics/config.d.ts +169 -0
  170. package/dist/metrics/config.js +289 -0
  171. package/dist/metrics/config.js.map +1 -0
  172. package/dist/metrics/constants.d.ts +6 -15
  173. package/dist/metrics/constants.js +9 -17
  174. package/dist/metrics/constants.js.map +1 -1
  175. package/dist/metrics/index.d.ts +111 -4
  176. package/dist/metrics/index.js +452 -4
  177. package/dist/metrics/index.js.map +1 -1
  178. package/dist/networkQualityMonitor/index.js +4 -5
  179. package/dist/networkQualityMonitor/index.js.map +1 -1
  180. package/dist/peer-connection-manager/index.d.ts +6 -0
  181. package/dist/peer-connection-manager/index.js +671 -0
  182. package/dist/peer-connection-manager/index.js.map +1 -0
  183. package/dist/peer-connection-manager/util.d.ts +6 -0
  184. package/dist/peer-connection-manager/util.js +110 -0
  185. package/dist/peer-connection-manager/util.js.map +1 -0
  186. package/dist/personal-meeting-room/index.js +3 -2
  187. package/dist/personal-meeting-room/index.js.map +1 -1
  188. package/dist/personal-meeting-room/request.js +3 -2
  189. package/dist/personal-meeting-room/request.js.map +1 -1
  190. package/dist/personal-meeting-room/util.js +2 -1
  191. package/dist/personal-meeting-room/util.js.map +1 -1
  192. package/dist/reachability/index.d.ts +7 -62
  193. package/dist/reachability/index.js +72 -265
  194. package/dist/reachability/index.js.map +1 -1
  195. package/dist/reachability/request.d.ts +3 -7
  196. package/dist/reachability/request.js +10 -18
  197. package/dist/reachability/request.js.map +1 -1
  198. package/dist/reactions/reactions.d.ts +2 -2
  199. package/dist/reactions/reactions.js +6 -4
  200. package/dist/reactions/reactions.js.map +1 -1
  201. package/dist/reactions/reactions.type.d.ts +3 -23
  202. package/dist/reactions/reactions.type.js +23 -21
  203. package/dist/reactions/reactions.type.js.map +1 -1
  204. package/dist/reconnection-manager/index.d.ts +8 -32
  205. package/dist/reconnection-manager/index.js +231 -282
  206. package/dist/reconnection-manager/index.js.map +1 -1
  207. package/dist/recording-controller/enums.js +5 -4
  208. package/dist/recording-controller/enums.js.map +1 -1
  209. package/dist/recording-controller/index.d.ts +1 -15
  210. package/dist/recording-controller/index.js +46 -57
  211. package/dist/recording-controller/index.js.map +1 -1
  212. package/dist/recording-controller/util.d.ts +4 -5
  213. package/dist/recording-controller/util.js +10 -10
  214. package/dist/recording-controller/util.js.map +1 -1
  215. package/dist/roap/collection.d.ts +10 -0
  216. package/dist/roap/collection.js +63 -0
  217. package/dist/roap/collection.js.map +1 -0
  218. package/dist/roap/handler.d.ts +47 -0
  219. package/dist/roap/handler.js +279 -0
  220. package/dist/roap/handler.js.map +1 -0
  221. package/dist/roap/index.d.ts +47 -9
  222. package/dist/roap/index.js +235 -101
  223. package/dist/roap/index.js.map +1 -1
  224. package/dist/roap/request.d.ts +12 -18
  225. package/dist/roap/request.js +180 -126
  226. package/dist/roap/request.js.map +1 -1
  227. package/dist/roap/state.d.ts +9 -0
  228. package/dist/roap/state.js +127 -0
  229. package/dist/roap/state.js.map +1 -0
  230. package/dist/roap/turnDiscovery.d.ts +16 -27
  231. package/dist/roap/turnDiscovery.js +105 -115
  232. package/dist/roap/turnDiscovery.js.map +1 -1
  233. package/dist/roap/util.d.ts +2 -0
  234. package/dist/roap/util.js +76 -0
  235. package/dist/roap/util.js.map +1 -0
  236. package/dist/statsAnalyzer/global.d.ts +83 -1
  237. package/dist/statsAnalyzer/global.js +85 -2
  238. package/dist/statsAnalyzer/global.js.map +1 -1
  239. package/dist/statsAnalyzer/index.d.ts +30 -28
  240. package/dist/statsAnalyzer/index.js +509 -374
  241. package/dist/statsAnalyzer/index.js.map +1 -1
  242. package/dist/statsAnalyzer/mqaUtil.d.ts +6 -8
  243. package/dist/statsAnalyzer/mqaUtil.js +83 -116
  244. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  245. package/dist/transcription/index.js +2 -1
  246. package/dist/transcription/index.js.map +1 -1
  247. package/package.json +26 -35
  248. package/src/common/errors/webex-errors.ts +12 -36
  249. package/src/common/logs/logger-proxy.ts +1 -1
  250. package/src/common/logs/request.ts +1 -5
  251. package/src/common/queue.ts +8 -22
  252. package/src/config.ts +7 -5
  253. package/src/constants.ts +97 -244
  254. package/src/controls-options-manager/enums.ts +0 -12
  255. package/src/controls-options-manager/index.ts +21 -116
  256. package/src/controls-options-manager/util.ts +14 -294
  257. package/src/index.js +15 -0
  258. package/src/locus-info/controlsUtils.ts +0 -110
  259. package/src/locus-info/index.ts +61 -449
  260. package/src/locus-info/infoUtils.ts +2 -14
  261. package/src/locus-info/mediaSharesUtils.ts +0 -64
  262. package/src/locus-info/parser.ts +47 -258
  263. package/src/locus-info/selfUtils.ts +2 -85
  264. package/src/media/index.ts +370 -153
  265. package/src/media/properties.ts +136 -106
  266. package/src/media/util.ts +21 -0
  267. package/src/mediaQualityMetrics/config.ts +377 -244
  268. package/src/meeting/effectsState.ts +209 -0
  269. package/src/meeting/in-meeting-actions.ts +0 -176
  270. package/src/meeting/index.ts +2482 -3929
  271. package/src/meeting/muteState.ts +138 -224
  272. package/src/meeting/request.ts +127 -207
  273. package/src/meeting/util.ts +423 -590
  274. package/src/meeting-info/index.ts +8 -81
  275. package/src/meeting-info/meeting-info-v2.ts +13 -163
  276. package/src/meeting-info/util.ts +1 -1
  277. package/src/meeting-info/utilv2.ts +28 -28
  278. package/src/meetings/collection.ts +0 -33
  279. package/src/meetings/index.ts +126 -486
  280. package/src/meetings/request.ts +0 -2
  281. package/src/meetings/util.ts +5 -116
  282. package/src/member/index.ts +1 -43
  283. package/src/member/util.ts +28 -125
  284. package/src/members/collection.ts +0 -8
  285. package/src/members/index.ts +52 -187
  286. package/src/members/request.ts +27 -87
  287. package/src/members/util.ts +291 -332
  288. package/src/metrics/config.ts +485 -0
  289. package/src/metrics/constants.ts +6 -15
  290. package/src/metrics/index.ts +471 -1
  291. package/src/networkQualityMonitor/index.ts +6 -6
  292. package/src/peer-connection-manager/index.ts +847 -0
  293. package/src/peer-connection-manager/util.ts +119 -0
  294. package/src/reachability/index.ts +45 -238
  295. package/src/reachability/request.ts +8 -17
  296. package/src/reactions/reactions.ts +4 -4
  297. package/src/reactions/reactions.type.ts +4 -30
  298. package/src/reconnection-manager/index.ts +156 -168
  299. package/src/recording-controller/index.ts +3 -20
  300. package/src/recording-controller/util.ts +9 -26
  301. package/src/roap/collection.ts +62 -0
  302. package/src/roap/handler.ts +294 -0
  303. package/src/roap/index.ts +241 -98
  304. package/src/roap/request.ts +148 -74
  305. package/src/roap/state.ts +156 -0
  306. package/src/roap/turnDiscovery.ts +56 -62
  307. package/src/roap/util.ts +100 -0
  308. package/src/statsAnalyzer/global.ts +84 -1
  309. package/src/statsAnalyzer/index.ts +642 -413
  310. package/src/statsAnalyzer/mqaUtil.ts +114 -111
  311. package/test/integration/spec/journey.js +264 -320
  312. package/test/integration/spec/space-meeting.js +4 -77
  313. package/test/unit/spec/common/queue.js +2 -31
  314. package/test/unit/spec/controls-options-manager/index.js +0 -163
  315. package/test/unit/spec/controls-options-manager/util.js +60 -576
  316. package/test/unit/spec/fixture/locus.js +0 -1
  317. package/test/unit/spec/locus-info/controlsUtils.js +30 -323
  318. package/test/unit/spec/locus-info/index.js +15 -1389
  319. package/test/unit/spec/locus-info/infoUtils.js +16 -54
  320. package/test/unit/spec/locus-info/lib/SeqCmp.json +0 -16
  321. package/test/unit/spec/locus-info/lib/selfConstant.js +0 -48
  322. package/test/unit/spec/locus-info/parser.js +35 -116
  323. package/test/unit/spec/locus-info/selfUtils.js +0 -275
  324. package/test/unit/spec/media/properties.ts +84 -75
  325. package/test/unit/spec/meeting/effectsState.js +281 -0
  326. package/test/unit/spec/meeting/in-meeting-actions.ts +0 -86
  327. package/test/unit/spec/meeting/index.js +3136 -8547
  328. package/test/unit/spec/meeting/muteState.js +213 -409
  329. package/test/unit/spec/meeting/request.js +42 -512
  330. package/test/unit/spec/meeting/utils.js +24 -741
  331. package/test/unit/spec/meeting-info/meetinginfov2.js +5 -527
  332. package/test/unit/spec/meeting-info/utilv2.js +0 -21
  333. package/test/unit/spec/meetings/collection.js +0 -26
  334. package/test/unit/spec/meetings/index.js +211 -1278
  335. package/test/unit/spec/meetings/utils.js +2 -202
  336. package/test/unit/spec/member/index.js +9 -32
  337. package/test/unit/spec/member/util.js +61 -499
  338. package/test/unit/spec/members/index.js +5 -394
  339. package/test/unit/spec/members/request.js +27 -206
  340. package/test/unit/spec/members/utils.js +38 -173
  341. package/test/unit/spec/metrics/index.js +50 -1
  342. package/test/unit/spec/networkQualityMonitor/index.js +4 -4
  343. package/test/unit/spec/peerconnection-manager/index.js +218 -0
  344. package/test/unit/spec/peerconnection-manager/utils.js +49 -0
  345. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +388 -0
  346. package/test/unit/spec/reachability/index.ts +24 -598
  347. package/test/unit/spec/reconnection-manager/index.js +24 -162
  348. package/test/unit/spec/recording-controller/index.js +218 -293
  349. package/test/unit/spec/recording-controller/util.js +96 -223
  350. package/test/unit/spec/roap/index.ts +76 -200
  351. package/test/unit/spec/roap/turnDiscovery.ts +48 -86
  352. package/test/unit/spec/roap/util.js +30 -0
  353. package/test/unit/spec/stats-analyzer/index.js +174 -188
  354. package/test/utils/testUtils.js +45 -0
  355. package/test/utils/webex-config.js +0 -4
  356. package/test/utils/webex-test-users.js +3 -7
  357. package/dist/annotation/annotation.types.d.ts +0 -42
  358. package/dist/annotation/annotation.types.js +0 -7
  359. package/dist/annotation/annotation.types.js.map +0 -1
  360. package/dist/annotation/constants.d.ts +0 -31
  361. package/dist/annotation/constants.js +0 -41
  362. package/dist/annotation/constants.js.map +0 -1
  363. package/dist/annotation/index.d.ts +0 -117
  364. package/dist/annotation/index.js +0 -357
  365. package/dist/annotation/index.js.map +0 -1
  366. package/dist/breakouts/breakout.d.ts +0 -8
  367. package/dist/breakouts/breakout.js +0 -215
  368. package/dist/breakouts/breakout.js.map +0 -1
  369. package/dist/breakouts/collection.d.ts +0 -5
  370. package/dist/breakouts/collection.js +0 -22
  371. package/dist/breakouts/collection.js.map +0 -1
  372. package/dist/breakouts/edit-lock-error.d.ts +0 -15
  373. package/dist/breakouts/edit-lock-error.js +0 -51
  374. package/dist/breakouts/edit-lock-error.js.map +0 -1
  375. package/dist/breakouts/events.d.ts +0 -8
  376. package/dist/breakouts/events.js +0 -44
  377. package/dist/breakouts/events.js.map +0 -1
  378. package/dist/breakouts/index.d.ts +0 -5
  379. package/dist/breakouts/index.js +0 -1047
  380. package/dist/breakouts/index.js.map +0 -1
  381. package/dist/breakouts/request.d.ts +0 -22
  382. package/dist/breakouts/request.js +0 -77
  383. package/dist/breakouts/request.js.map +0 -1
  384. package/dist/breakouts/utils.d.ts +0 -15
  385. package/dist/breakouts/utils.js +0 -64
  386. package/dist/breakouts/utils.js.map +0 -1
  387. package/dist/common/errors/no-meeting-info.d.ts +0 -14
  388. package/dist/common/errors/no-meeting-info.js +0 -50
  389. package/dist/common/errors/no-meeting-info.js.map +0 -1
  390. package/dist/common/errors/reclaim-host-role-errors.js.map +0 -1
  391. package/dist/controls-options-manager/types.d.ts +0 -43
  392. package/dist/controls-options-manager/types.js +0 -7
  393. package/dist/controls-options-manager/types.js.map +0 -1
  394. package/dist/interpretation/collection.d.ts +0 -5
  395. package/dist/interpretation/collection.js +0 -22
  396. package/dist/interpretation/collection.js.map +0 -1
  397. package/dist/interpretation/index.d.ts +0 -5
  398. package/dist/interpretation/index.js +0 -365
  399. package/dist/interpretation/index.js.map +0 -1
  400. package/dist/interpretation/siLanguage.d.ts +0 -5
  401. package/dist/interpretation/siLanguage.js +0 -24
  402. package/dist/interpretation/siLanguage.js.map +0 -1
  403. package/dist/meeting/locusMediaRequest.d.ts +0 -74
  404. package/dist/meeting/locusMediaRequest.js +0 -291
  405. package/dist/meeting/locusMediaRequest.js.map +0 -1
  406. package/dist/meeting/request.type.d.ts +0 -11
  407. package/dist/meeting/request.type.js +0 -7
  408. package/dist/meeting/request.type.js.map +0 -1
  409. package/dist/meetings/meetings.types.d.ts +0 -4
  410. package/dist/meetings/meetings.types.js +0 -7
  411. package/dist/meetings/meetings.types.js.map +0 -1
  412. package/dist/member/types.d.ts +0 -32
  413. package/dist/member/types.js +0 -23
  414. package/dist/member/types.js.map +0 -1
  415. package/dist/multistream/mediaRequestManager.d.ts +0 -118
  416. package/dist/multistream/mediaRequestManager.js +0 -344
  417. package/dist/multistream/mediaRequestManager.js.map +0 -1
  418. package/dist/multistream/receiveSlot.d.ts +0 -68
  419. package/dist/multistream/receiveSlot.js +0 -200
  420. package/dist/multistream/receiveSlot.js.map +0 -1
  421. package/dist/multistream/receiveSlotManager.d.ts +0 -56
  422. package/dist/multistream/receiveSlotManager.js +0 -174
  423. package/dist/multistream/receiveSlotManager.js.map +0 -1
  424. package/dist/multistream/remoteMedia.d.ts +0 -72
  425. package/dist/multistream/remoteMedia.js +0 -268
  426. package/dist/multistream/remoteMedia.js.map +0 -1
  427. package/dist/multistream/remoteMediaGroup.d.ts +0 -47
  428. package/dist/multistream/remoteMediaGroup.js +0 -267
  429. package/dist/multistream/remoteMediaGroup.js.map +0 -1
  430. package/dist/multistream/remoteMediaManager.d.ts +0 -285
  431. package/dist/multistream/remoteMediaManager.js +0 -1211
  432. package/dist/multistream/remoteMediaManager.js.map +0 -1
  433. package/dist/multistream/sendSlotManager.d.ts +0 -61
  434. package/dist/multistream/sendSlotManager.js +0 -236
  435. package/dist/multistream/sendSlotManager.js.map +0 -1
  436. package/dist/reactions/constants.d.ts +0 -3
  437. package/dist/reactions/constants.js +0 -12
  438. package/dist/reactions/constants.js.map +0 -1
  439. package/dist/rtcMetrics/constants.d.ts +0 -4
  440. package/dist/rtcMetrics/constants.js +0 -11
  441. package/dist/rtcMetrics/constants.js.map +0 -1
  442. package/dist/rtcMetrics/index.d.ts +0 -54
  443. package/dist/rtcMetrics/index.js +0 -140
  444. package/dist/rtcMetrics/index.js.map +0 -1
  445. package/dist/webinar/collection.d.ts +0 -16
  446. package/dist/webinar/collection.js +0 -43
  447. package/dist/webinar/collection.js.map +0 -1
  448. package/dist/webinar/index.d.ts +0 -5
  449. package/dist/webinar/index.js +0 -68
  450. package/dist/webinar/index.js.map +0 -1
  451. package/src/annotation/annotation.types.ts +0 -50
  452. package/src/annotation/constants.ts +0 -36
  453. package/src/annotation/index.ts +0 -328
  454. package/src/breakouts/README.md +0 -220
  455. package/src/breakouts/breakout.ts +0 -188
  456. package/src/breakouts/collection.ts +0 -19
  457. package/src/breakouts/edit-lock-error.ts +0 -25
  458. package/src/breakouts/events.ts +0 -56
  459. package/src/breakouts/index.ts +0 -925
  460. package/src/breakouts/request.ts +0 -55
  461. package/src/breakouts/utils.ts +0 -57
  462. package/src/common/errors/no-meeting-info.ts +0 -24
  463. package/src/controls-options-manager/types.ts +0 -59
  464. package/src/index.ts +0 -40
  465. package/src/interpretation/README.md +0 -60
  466. package/src/interpretation/collection.ts +0 -19
  467. package/src/interpretation/index.ts +0 -332
  468. package/src/interpretation/siLanguage.ts +0 -18
  469. package/src/meeting/locusMediaRequest.ts +0 -313
  470. package/src/meeting/request.type.ts +0 -13
  471. package/src/meetings/meetings.types.ts +0 -12
  472. package/src/member/types.ts +0 -38
  473. package/src/multistream/mediaRequestManager.ts +0 -440
  474. package/src/multistream/receiveSlot.ts +0 -184
  475. package/src/multistream/receiveSlotManager.ts +0 -166
  476. package/src/multistream/remoteMedia.ts +0 -254
  477. package/src/multistream/remoteMediaGroup.ts +0 -284
  478. package/src/multistream/remoteMediaManager.ts +0 -1145
  479. package/src/multistream/sendSlotManager.ts +0 -170
  480. package/src/reactions/constants.ts +0 -4
  481. package/src/rtcMetrics/constants.ts +0 -3
  482. package/src/rtcMetrics/index.ts +0 -124
  483. package/src/webinar/collection.ts +0 -31
  484. package/src/webinar/index.ts +0 -62
  485. package/test/integration/spec/converged-space-meetings.js +0 -233
  486. package/test/unit/spec/annotation/index.ts +0 -418
  487. package/test/unit/spec/breakouts/breakout.ts +0 -237
  488. package/test/unit/spec/breakouts/collection.ts +0 -15
  489. package/test/unit/spec/breakouts/edit-lock-error.ts +0 -30
  490. package/test/unit/spec/breakouts/events.ts +0 -89
  491. package/test/unit/spec/breakouts/index.ts +0 -1790
  492. package/test/unit/spec/breakouts/request.ts +0 -104
  493. package/test/unit/spec/breakouts/utils.js +0 -72
  494. package/test/unit/spec/interpretation/collection.ts +0 -15
  495. package/test/unit/spec/interpretation/index.ts +0 -589
  496. package/test/unit/spec/interpretation/siLanguage.ts +0 -28
  497. package/test/unit/spec/locus-info/mediaSharesUtils.ts +0 -32
  498. package/test/unit/spec/media/index.ts +0 -290
  499. package/test/unit/spec/meeting/locusMediaRequest.ts +0 -442
  500. package/test/unit/spec/meeting-info/index.js +0 -300
  501. package/test/unit/spec/multistream/mediaRequestManager.ts +0 -1418
  502. package/test/unit/spec/multistream/receiveSlot.ts +0 -163
  503. package/test/unit/spec/multistream/receiveSlotManager.ts +0 -203
  504. package/test/unit/spec/multistream/remoteMedia.ts +0 -255
  505. package/test/unit/spec/multistream/remoteMediaGroup.ts +0 -662
  506. package/test/unit/spec/multistream/remoteMediaManager.ts +0 -1924
  507. package/test/unit/spec/multistream/sendSlotManager.ts +0 -242
  508. package/test/unit/spec/reachability/request.js +0 -68
  509. package/test/unit/spec/roap/request.ts +0 -232
  510. package/test/unit/spec/rtcMetrics/index.ts +0 -93
  511. package/test/unit/spec/webinar/collection.ts +0 -13
  512. package/test/unit/spec/webinar/index.ts +0 -60
  513. package/test/utils/constants.js +0 -9
  514. package/test/utils/integrationTestUtils.js +0 -46
  515. /package/dist/common/errors/{reclaim-host-role-errors.d.ts → reclaim-host-role-error.d.ts} +0 -0
  516. /package/src/common/errors/{reclaim-host-role-errors.ts → reclaim-host-role-error.ts} +0 -0
@@ -1,65 +1,41 @@
1
- import {ConnectionState, Event} from '@webex/internal-media-core';
2
-
3
- import {
4
- LocalCameraStream,
5
- LocalMicrophoneStream,
6
- LocalDisplayStream,
7
- LocalSystemAudioStream,
8
- RemoteStream,
9
- } from '@webex/media-helpers';
10
-
11
- import {MEETINGS, ICE_AND_DTLS_CONNECTION_TIMEOUT, QUALITY_LEVELS} from '../constants';
1
+ import {ICE_STATE, MEETINGS, PC_BAIL_TIMEOUT, QUALITY_LEVELS} from '../constants';
12
2
  import LoggerProxy from '../common/logs/logger-proxy';
13
3
 
14
- export type MediaDirection = {
15
- sendAudio: boolean;
16
- sendVideo: boolean;
17
- sendShare: boolean;
18
- receiveAudio: boolean;
19
- receiveVideo: boolean;
20
- receiveShare: boolean;
21
- };
4
+ import MediaUtil from './util';
22
5
 
23
6
  /**
24
7
  * @class MediaProperties
25
8
  */
26
9
  export default class MediaProperties {
27
- audioStream?: LocalMicrophoneStream;
28
- mediaDirection: MediaDirection;
10
+ audioTrack: any;
11
+ localQualityLevel: any;
12
+ mediaDirection: any;
29
13
  mediaSettings: any;
30
- webrtcMediaConnection: any;
31
- remoteAudioStream: RemoteStream;
14
+ peerConnection: any;
15
+ remoteAudioTrack: any;
32
16
  remoteQualityLevel: any;
33
- remoteShareStream: RemoteStream;
34
- remoteVideoStream: RemoteStream;
35
- shareVideoStream?: LocalDisplayStream;
36
- shareAudioStream?: LocalSystemAudioStream;
17
+ remoteShare: any;
18
+ remoteVideoTrack: any;
19
+ shareTrack: any;
37
20
  videoDeviceId: any;
38
- videoStream?: LocalCameraStream;
21
+ videoTrack: any;
39
22
  namespace = MEETINGS;
40
23
 
41
24
  /**
42
25
  * @param {Object} [options] -- to auto construct
43
26
  * @returns {MediaProperties}
44
27
  */
45
- constructor() {
46
- this.webrtcMediaConnection = null;
47
- this.mediaDirection = {
48
- receiveAudio: false,
49
- receiveVideo: false,
50
- receiveShare: false,
51
- sendAudio: false,
52
- sendVideo: false,
53
- sendShare: false,
54
- };
55
- this.videoStream = null;
56
- this.audioStream = null;
57
- this.shareVideoStream = null;
58
- this.shareAudioStream = null;
59
- this.remoteShareStream = undefined;
60
- this.remoteAudioStream = undefined;
61
- this.remoteVideoStream = undefined;
62
- this.remoteQualityLevel = QUALITY_LEVELS.HIGH;
28
+ constructor(options: any = {}) {
29
+ this.peerConnection = MediaUtil.createPeerConnection();
30
+ this.mediaDirection = options.mediaDirection;
31
+ this.videoTrack = options.videoTrack;
32
+ this.audioTrack = options.audioTrack;
33
+ this.shareTrack = options.shareTrack;
34
+ this.remoteShare = options.remoteShare;
35
+ this.remoteAudioTrack = options.remoteAudioTrack;
36
+ this.remoteVideoTrack = options.remoteVideoTrack;
37
+ this.localQualityLevel = options.localQualityLevel || QUALITY_LEVELS['720p'];
38
+ this.remoteQualityLevel = options.remoteQualityLevel || QUALITY_LEVELS.HIGH;
63
39
  this.mediaSettings = {};
64
40
  this.videoDeviceId = null;
65
41
  }
@@ -80,50 +56,50 @@ export default class MediaProperties {
80
56
  this.mediaSettings[type] = values;
81
57
  }
82
58
 
83
- setMediaPeerConnection(mediaPeerConnection) {
84
- this.webrtcMediaConnection = mediaPeerConnection;
59
+ setMediaPeerConnection(peerConnection) {
60
+ this.peerConnection = peerConnection;
85
61
  }
86
62
 
87
- setLocalVideoStream(videoStream?: LocalCameraStream) {
88
- this.videoStream = videoStream;
63
+ setLocalVideoTrack(videoTrack) {
64
+ this.videoTrack = videoTrack;
89
65
  }
90
66
 
91
- setLocalAudioStream(audioStream?: LocalMicrophoneStream) {
92
- this.audioStream = audioStream;
67
+ setLocalAudioTrack(audioTrack) {
68
+ this.audioTrack = audioTrack;
93
69
  }
94
70
 
95
- setLocalShareVideoStream(shareVideoStream?: LocalDisplayStream) {
96
- this.shareVideoStream = shareVideoStream;
71
+ setLocalQualityLevel(localQualityLevel) {
72
+ this.localQualityLevel = localQualityLevel;
97
73
  }
98
74
 
99
- setLocalShareAudioStream(shareAudioStream?: LocalSystemAudioStream) {
100
- this.shareAudioStream = shareAudioStream;
75
+ setLocalShareTrack(shareTrack) {
76
+ this.shareTrack = shareTrack;
101
77
  }
102
78
 
103
79
  setRemoteQualityLevel(remoteQualityLevel) {
104
80
  this.remoteQualityLevel = remoteQualityLevel;
105
81
  }
106
82
 
107
- setRemoteShareStream(remoteShareStream: RemoteStream) {
108
- this.remoteShareStream = remoteShareStream;
83
+ setRemoteShare(remoteShare) {
84
+ this.remoteShare = remoteShare;
109
85
  }
110
86
 
111
87
  /**
112
- * Sets the remote audio stream
113
- * @param {RemoteStream} remoteAudioStream RemoteStream to save
88
+ * Sets the remote audio track
89
+ * @param {MediaTrack} remoteAudioTrack MediaTrack to save
114
90
  * @returns {void}
115
91
  */
116
- setRemoteAudioStream(remoteAudioStream: RemoteStream) {
117
- this.remoteAudioStream = remoteAudioStream;
92
+ setRemoteAudioTrack(remoteAudioTrack: any) {
93
+ this.remoteAudioTrack = remoteAudioTrack;
118
94
  }
119
95
 
120
96
  /**
121
- * Sets the remote video stream
122
- * @param {RemoteStream} remoteVideoStream RemoteStream to save
97
+ * Sets the remote video track
98
+ * @param {MediaTrack} remoteVideoTrack MediaTrack to save
123
99
  * @returns {void}
124
100
  */
125
- setRemoteVideoStream(remoteVideoStream: RemoteStream) {
126
- this.remoteVideoStream = remoteVideoStream;
101
+ setRemoteVideoTrack(remoteVideoTrack: any) {
102
+ this.remoteVideoTrack = remoteVideoTrack;
127
103
  }
128
104
 
129
105
  /**
@@ -136,7 +112,36 @@ export default class MediaProperties {
136
112
  }
137
113
 
138
114
  unsetPeerConnection() {
139
- this.webrtcMediaConnection = null;
115
+ this.peerConnection = null;
116
+ }
117
+
118
+ reInitiatePeerconnection(turnServerInfo) {
119
+ this.peerConnection = MediaUtil.createPeerConnection(turnServerInfo);
120
+ }
121
+
122
+ unsetLocalVideoTrack() {
123
+ this.videoTrack = null;
124
+ }
125
+
126
+ unsetLocalShareTrack() {
127
+ this.shareTrack = null;
128
+ }
129
+
130
+ unsetLocalAudioTrack() {
131
+ this.audioTrack = null;
132
+ }
133
+
134
+ /**
135
+ * Removes remote stream from class instance
136
+ * @deprecated after v1.89.3
137
+ * @returns {void}
138
+ */
139
+ unsetRemoteStream() {
140
+ LoggerProxy.logger.warn(
141
+ 'Media:properties#unsetRemoteStream --> [DEPRECATION WARNING]: unsetRemoteStream has been deprecated after v1.89.3 (use unsetRemoteTracks instead)'
142
+ );
143
+ // unsets audio and video only
144
+ this.unsetRemoteMedia();
140
145
  }
141
146
 
142
147
  /**
@@ -144,65 +149,103 @@ export default class MediaProperties {
144
149
  * @returns {void}
145
150
  */
146
151
  unsetRemoteMedia() {
147
- this.remoteAudioStream = null;
148
- this.remoteVideoStream = null;
152
+ this.remoteAudioTrack = null;
153
+ this.remoteVideoTrack = null;
149
154
  }
150
155
 
151
- unsetRemoteShareStream() {
152
- this.remoteShareStream = null;
156
+ unsetRemoteShare() {
157
+ this.remoteShare = null;
158
+ }
159
+
160
+ unsetLocalVideoTracks() {
161
+ this.unsetLocalVideoTrack();
162
+ this.unsetLocalShareTrack();
153
163
  }
154
164
 
155
165
  /**
156
- * Unsets all remote streams
166
+ * Removes remote stream and remote share from class instance
167
+ * @deprecated after v1.89.3
157
168
  * @returns {void}
158
169
  */
159
170
  unsetRemoteStreams() {
171
+ LoggerProxy.logger.warn(
172
+ 'Media:properties#unsetRemoteStreams --> [DEPRECATION WARNING]: unsetRemoteStreams has been deprecated after v1.89.3 (use unsetRemoteTracks instead)'
173
+ );
174
+ this.unsetRemoteStream();
175
+ this.unsetRemoteShare();
176
+ }
177
+
178
+ /**
179
+ * Unsets all remote tracks
180
+ * @returns {void}
181
+ */
182
+ unsetRemoteTracks() {
160
183
  this.unsetRemoteMedia();
161
- this.unsetRemoteShareStream();
184
+ this.unsetRemoteShare();
185
+ }
186
+
187
+ unsetShareStreams() {
188
+ this.unsetLocalShareTrack();
189
+ this.unsetRemoteShare();
162
190
  }
163
191
 
164
192
  /**
165
- * Returns if we have at least one local share stream or not.
166
- * @returns {Boolean}
193
+ * Removes both local and remote video stream from class instance
194
+ * @deprecated after v1.89.3
195
+ * @returns {void}
167
196
  */
168
- hasLocalShareStream() {
169
- return !!(this.shareAudioStream || this.shareVideoStream);
197
+ unsetMediaStreams() {
198
+ LoggerProxy.logger.warn(
199
+ 'Media:properties#unsetMediaStreams --> [DEPRECATION WARNING]: unsetMediaStreams has been deprecated after v1.89.3 (use unsetMediaTracks instead)'
200
+ );
201
+ this.unsetLocalVideoTrack();
202
+ this.unsetRemoteStream();
170
203
  }
171
204
 
172
205
  /**
173
- * Waits for the webrtc media connection to be connected.
206
+ * Removes both local and remote video stream from class instance
207
+ * @returns {void}
208
+ */
209
+ unsetMediaTracks() {
210
+ this.unsetLocalVideoTrack();
211
+ this.unsetRemoteMedia();
212
+ }
213
+
214
+ /**
215
+ * Waits until ice connection is established
174
216
  *
175
217
  * @returns {Promise<void>}
176
218
  */
177
- waitForMediaConnectionConnected(): Promise<void> {
178
- const isConnected = () =>
179
- this.webrtcMediaConnection.getConnectionState() === ConnectionState.Connected;
219
+ waitForIceConnectedState() {
220
+ const isIceConnected = () =>
221
+ this.peerConnection.iceConnectionState === ICE_STATE.CONNECTED ||
222
+ this.peerConnection.iceConnectionState === ICE_STATE.COMPLETED;
180
223
 
181
- if (isConnected()) {
224
+ if (isIceConnected()) {
182
225
  return Promise.resolve();
183
226
  }
184
227
 
185
228
  return new Promise<void>((resolve, reject) => {
186
229
  let timer;
187
230
 
188
- const connectionStateListener = () => {
231
+ const iceListener = () => {
189
232
  LoggerProxy.logger.log(
190
- `Media:properties#waitForMediaConnectionConnected --> connection state: ${this.webrtcMediaConnection.getConnectionState()}`
233
+ `Media:properties#waitForIceConnectedState --> ice state: ${this.peerConnection.iceConnectionState}, conn state: ${this.peerConnection.connectionState}`
191
234
  );
192
235
 
193
- if (isConnected()) {
236
+ if (isIceConnected()) {
194
237
  clearTimeout(timer);
195
- this.webrtcMediaConnection.off(Event.CONNECTION_STATE_CHANGED, connectionStateListener);
238
+ this.peerConnection.removeEventListener('iceconnectionstatechange', iceListener);
196
239
  resolve();
197
240
  }
198
241
  };
199
242
 
200
243
  timer = setTimeout(() => {
201
- this.webrtcMediaConnection.off(Event.CONNECTION_STATE_CHANGED, connectionStateListener);
244
+ this.peerConnection.removeEventListener('iceconnectionstatechange', iceListener);
202
245
  reject();
203
- }, ICE_AND_DTLS_CONNECTION_TIMEOUT);
246
+ }, PC_BAIL_TIMEOUT);
204
247
 
205
- this.webrtcMediaConnection.on(Event.CONNECTION_STATE_CHANGED, connectionStateListener);
248
+ this.peerConnection.addEventListener('iceconnectionstatechange', iceListener);
206
249
  });
207
250
  }
208
251
 
@@ -213,12 +256,14 @@ export default class MediaProperties {
213
256
  */
214
257
  async getCurrentConnectionType() {
215
258
  // we can only get the connection type after ICE connection has been established
216
- await this.waitForMediaConnectionConnected();
259
+ await this.waitForIceConnectedState();
217
260
 
218
261
  const allStatsReports = [];
219
262
 
220
263
  try {
221
- const statsResult = await this.webrtcMediaConnection.getStats();
264
+ // eslint-disable-next-line no-await-in-loop
265
+ const statsResult = await this.peerConnection.getStats();
266
+
222
267
  statsResult.forEach((report) => allStatsReports.push(report));
223
268
  } catch (error) {
224
269
  LoggerProxy.logger.warn(
@@ -259,25 +304,10 @@ export default class MediaProperties {
259
304
 
260
305
  return true;
261
306
  }
262
- LoggerProxy.logger.warn(
263
- `Media:properties#getCurrentConnectionType --> missing localCandidate.protocol, candidateType=${localCandidate.candidateType}`
264
- );
265
307
 
266
308
  return false;
267
309
  });
268
310
 
269
- if (foundConnectionType === 'unknown') {
270
- const candidatePairStates = allStatsReports
271
- .filter((report) => report.type === 'candidate-pair')
272
- .map((report) => report.state);
273
-
274
- LoggerProxy.logger.warn(
275
- `Media:properties#getCurrentConnectionType --> all candidate pair states: ${JSON.stringify(
276
- candidatePairStates
277
- )}`
278
- );
279
- }
280
-
281
311
  return foundConnectionType;
282
312
  }
283
313
  }
package/src/media/util.ts CHANGED
@@ -1,9 +1,30 @@
1
1
  /* globals MediaStream */
2
+ import window from 'global/window';
2
3
 
4
+ import BrowserDetection from '../common/browser-detection';
3
5
  import LoggerProxy from '../common/logs/logger-proxy';
4
6
 
7
+ const {isBrowser} = BrowserDetection();
8
+
5
9
  const MediaUtil: any = {};
6
10
 
11
+ MediaUtil.createPeerConnection = (turnServerInfo) => {
12
+ const config: any = {iceServers: []};
13
+
14
+ if (turnServerInfo) {
15
+ config.iceServers.push({
16
+ urls: turnServerInfo.url,
17
+ username: turnServerInfo.username || '',
18
+ credential: turnServerInfo.password || '',
19
+ });
20
+ }
21
+ if (isBrowser('firefox')) {
22
+ config.bundlePolicy = 'max-compat';
23
+ }
24
+
25
+ return new window.RTCPeerConnection(config);
26
+ };
27
+
7
28
  MediaUtil.createMediaStream = (tracks) => {
8
29
  if (!tracks) {
9
30
  LoggerProxy.logger.error("Media:util#createMediaStream --> Tracks don't exist");