@webex/plugin-meetings 3.0.0-beta.2 → 3.0.0-beta.200

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 (576) hide show
  1. package/README.md +45 -7
  2. package/UPGRADING.md +9 -9
  3. package/browsers.js +19 -24
  4. package/dist/annotation/annotation.types.js +7 -0
  5. package/dist/annotation/annotation.types.js.map +1 -0
  6. package/dist/annotation/constants.js +49 -0
  7. package/dist/annotation/constants.js.map +1 -0
  8. package/dist/annotation/index.js +342 -0
  9. package/dist/annotation/index.js.map +1 -0
  10. package/dist/breakouts/breakout.js +216 -0
  11. package/dist/breakouts/breakout.js.map +1 -0
  12. package/dist/breakouts/collection.js +23 -0
  13. package/dist/breakouts/collection.js.map +1 -0
  14. package/dist/breakouts/edit-lock-error.js +52 -0
  15. package/dist/breakouts/edit-lock-error.js.map +1 -0
  16. package/dist/breakouts/events.js +45 -0
  17. package/dist/breakouts/events.js.map +1 -0
  18. package/dist/breakouts/index.js +1048 -0
  19. package/dist/breakouts/index.js.map +1 -0
  20. package/dist/breakouts/request.js +78 -0
  21. package/dist/breakouts/request.js.map +1 -0
  22. package/dist/breakouts/utils.js +67 -0
  23. package/dist/breakouts/utils.js.map +1 -0
  24. package/dist/common/browser-detection.js +1 -20
  25. package/dist/common/browser-detection.js.map +1 -1
  26. package/dist/common/collection.js +5 -20
  27. package/dist/common/collection.js.map +1 -1
  28. package/dist/common/config.js +0 -7
  29. package/dist/common/config.js.map +1 -1
  30. package/dist/common/errors/captcha-error.js +10 -24
  31. package/dist/common/errors/captcha-error.js.map +1 -1
  32. package/dist/common/errors/intent-to-join.js +11 -24
  33. package/dist/common/errors/intent-to-join.js.map +1 -1
  34. package/dist/common/errors/join-meeting.js +12 -25
  35. package/dist/common/errors/join-meeting.js.map +1 -1
  36. package/dist/common/errors/media.js +10 -24
  37. package/dist/common/errors/media.js.map +1 -1
  38. package/dist/common/errors/parameter.js +5 -33
  39. package/dist/common/errors/parameter.js.map +1 -1
  40. package/dist/common/errors/password-error.js +10 -24
  41. package/dist/common/errors/password-error.js.map +1 -1
  42. package/dist/common/errors/permission.js +9 -23
  43. package/dist/common/errors/permission.js.map +1 -1
  44. package/dist/common/errors/reconnection-in-progress.js +0 -17
  45. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  46. package/dist/common/errors/reconnection.js +10 -24
  47. package/dist/common/errors/reconnection.js.map +1 -1
  48. package/dist/common/errors/stats.js +10 -24
  49. package/dist/common/errors/stats.js.map +1 -1
  50. package/dist/common/errors/webex-errors.js +9 -43
  51. package/dist/common/errors/webex-errors.js.map +1 -1
  52. package/dist/common/errors/webex-meetings-error.js +5 -25
  53. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  54. package/dist/common/events/events-scope.js +0 -22
  55. package/dist/common/events/events-scope.js.map +1 -1
  56. package/dist/common/events/events.js +0 -23
  57. package/dist/common/events/events.js.map +1 -1
  58. package/dist/common/events/trigger-proxy.js +0 -12
  59. package/dist/common/events/trigger-proxy.js.map +1 -1
  60. package/dist/common/events/util.js +0 -15
  61. package/dist/common/events/util.js.map +1 -1
  62. package/dist/common/logs/logger-config.js +0 -4
  63. package/dist/common/logs/logger-config.js.map +1 -1
  64. package/dist/common/logs/logger-proxy.js +1 -8
  65. package/dist/common/logs/logger-proxy.js.map +1 -1
  66. package/dist/common/logs/request.js +37 -60
  67. package/dist/common/logs/request.js.map +1 -1
  68. package/dist/common/queue.js +28 -23
  69. package/dist/common/queue.js.map +1 -1
  70. package/dist/config.js +8 -13
  71. package/dist/config.js.map +1 -1
  72. package/dist/constants.js +250 -66
  73. package/dist/constants.js.map +1 -1
  74. package/dist/controls-options-manager/constants.js +14 -0
  75. package/dist/controls-options-manager/constants.js.map +1 -0
  76. package/dist/controls-options-manager/enums.js +27 -0
  77. package/dist/controls-options-manager/enums.js.map +1 -0
  78. package/dist/controls-options-manager/index.js +297 -0
  79. package/dist/controls-options-manager/index.js.map +1 -0
  80. package/dist/controls-options-manager/types.js +7 -0
  81. package/dist/controls-options-manager/types.js.map +1 -0
  82. package/dist/controls-options-manager/util.js +319 -0
  83. package/dist/controls-options-manager/util.js.map +1 -0
  84. package/dist/index.js +108 -17
  85. package/dist/index.js.map +1 -1
  86. package/dist/interpretation/collection.js +23 -0
  87. package/dist/interpretation/collection.js.map +1 -0
  88. package/dist/interpretation/index.js +366 -0
  89. package/dist/interpretation/index.js.map +1 -0
  90. package/dist/interpretation/siLanguage.js +25 -0
  91. package/dist/interpretation/siLanguage.js.map +1 -0
  92. package/dist/locus-info/controlsUtils.js +101 -29
  93. package/dist/locus-info/controlsUtils.js.map +1 -1
  94. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  95. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  96. package/dist/locus-info/fullState.js +0 -15
  97. package/dist/locus-info/fullState.js.map +1 -1
  98. package/dist/locus-info/hostUtils.js +4 -12
  99. package/dist/locus-info/hostUtils.js.map +1 -1
  100. package/dist/locus-info/index.js +532 -240
  101. package/dist/locus-info/index.js.map +1 -1
  102. package/dist/locus-info/infoUtils.js +3 -37
  103. package/dist/locus-info/infoUtils.js.map +1 -1
  104. package/dist/locus-info/mediaSharesUtils.js +54 -38
  105. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  106. package/dist/locus-info/parser.js +284 -154
  107. package/dist/locus-info/parser.js.map +1 -1
  108. package/dist/locus-info/selfUtils.js +110 -92
  109. package/dist/locus-info/selfUtils.js.map +1 -1
  110. package/dist/media/index.js +95 -226
  111. package/dist/media/index.js.map +1 -1
  112. package/dist/media/properties.js +99 -194
  113. package/dist/media/properties.js.map +1 -1
  114. package/dist/media/util.js +2 -9
  115. package/dist/media/util.js.map +1 -1
  116. package/dist/mediaQualityMetrics/config.js +505 -495
  117. package/dist/mediaQualityMetrics/config.js.map +1 -1
  118. package/dist/meeting/in-meeting-actions.js +83 -14
  119. package/dist/meeting/in-meeting-actions.js.map +1 -1
  120. package/dist/meeting/index.js +3478 -3563
  121. package/dist/meeting/index.js.map +1 -1
  122. package/dist/meeting/locusMediaRequest.js +291 -0
  123. package/dist/meeting/locusMediaRequest.js.map +1 -0
  124. package/dist/meeting/muteState.js +247 -183
  125. package/dist/meeting/muteState.js.map +1 -1
  126. package/dist/meeting/request.js +344 -344
  127. package/dist/meeting/request.js.map +1 -1
  128. package/dist/meeting/request.type.js +7 -0
  129. package/dist/meeting/request.type.js.map +1 -0
  130. package/dist/meeting/state.js +21 -31
  131. package/dist/meeting/state.js.map +1 -1
  132. package/dist/meeting/util.js +529 -588
  133. package/dist/meeting/util.js.map +1 -1
  134. package/dist/meeting-info/collection.js +6 -25
  135. package/dist/meeting-info/collection.js.map +1 -1
  136. package/dist/meeting-info/index.js +62 -39
  137. package/dist/meeting-info/index.js.map +1 -1
  138. package/dist/meeting-info/meeting-info-v2.js +328 -283
  139. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  140. package/dist/meeting-info/request.js +3 -15
  141. package/dist/meeting-info/request.js.map +1 -1
  142. package/dist/meeting-info/util.js +98 -183
  143. package/dist/meeting-info/util.js.map +1 -1
  144. package/dist/meeting-info/utilv2.js +156 -232
  145. package/dist/meeting-info/utilv2.js.map +1 -1
  146. package/dist/meetings/collection.js +26 -19
  147. package/dist/meetings/collection.js.map +1 -1
  148. package/dist/meetings/index.js +795 -574
  149. package/dist/meetings/index.js.map +1 -1
  150. package/dist/meetings/meetings.types.js +7 -0
  151. package/dist/meetings/meetings.types.js.map +1 -0
  152. package/dist/meetings/request.js +26 -41
  153. package/dist/meetings/request.js.map +1 -1
  154. package/dist/meetings/util.js +186 -155
  155. package/dist/meetings/util.js.map +1 -1
  156. package/dist/member/index.js +126 -85
  157. package/dist/member/index.js.map +1 -1
  158. package/dist/member/types.js +25 -0
  159. package/dist/member/types.js.map +1 -0
  160. package/dist/member/util.js +147 -88
  161. package/dist/member/util.js.map +1 -1
  162. package/dist/members/collection.js +13 -12
  163. package/dist/members/collection.js.map +1 -1
  164. package/dist/members/index.js +178 -204
  165. package/dist/members/index.js.map +1 -1
  166. package/dist/members/request.js +113 -68
  167. package/dist/members/request.js.map +1 -1
  168. package/dist/members/types.js +15 -0
  169. package/dist/members/types.js.map +1 -0
  170. package/dist/members/util.js +314 -260
  171. package/dist/members/util.js.map +1 -1
  172. package/dist/metrics/constants.js +4 -7
  173. package/dist/metrics/constants.js.map +1 -1
  174. package/dist/metrics/index.js +11 -558
  175. package/dist/metrics/index.js.map +1 -1
  176. package/dist/multistream/mediaRequestManager.js +264 -50
  177. package/dist/multistream/mediaRequestManager.js.map +1 -1
  178. package/dist/multistream/receiveSlot.js +58 -65
  179. package/dist/multistream/receiveSlot.js.map +1 -1
  180. package/dist/multistream/receiveSlotManager.js +76 -95
  181. package/dist/multistream/receiveSlotManager.js.map +1 -1
  182. package/dist/multistream/remoteMedia.js +62 -76
  183. package/dist/multistream/remoteMedia.js.map +1 -1
  184. package/dist/multistream/remoteMediaGroup.js +66 -43
  185. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  186. package/dist/multistream/remoteMediaManager.js +502 -442
  187. package/dist/multistream/remoteMediaManager.js.map +1 -1
  188. package/dist/networkQualityMonitor/index.js +40 -59
  189. package/dist/networkQualityMonitor/index.js.map +1 -1
  190. package/dist/personal-meeting-room/index.js +21 -45
  191. package/dist/personal-meeting-room/index.js.map +1 -1
  192. package/dist/personal-meeting-room/request.js +1 -31
  193. package/dist/personal-meeting-room/request.js.map +1 -1
  194. package/dist/personal-meeting-room/util.js +0 -13
  195. package/dist/personal-meeting-room/util.js.map +1 -1
  196. package/dist/reachability/index.js +192 -191
  197. package/dist/reachability/index.js.map +1 -1
  198. package/dist/reachability/request.js +15 -23
  199. package/dist/reachability/request.js.map +1 -1
  200. package/dist/reactions/constants.js +13 -0
  201. package/dist/reactions/constants.js.map +1 -0
  202. package/dist/reactions/reactions.js +109 -0
  203. package/dist/reactions/reactions.js.map +1 -0
  204. package/dist/reactions/reactions.type.js +36 -0
  205. package/dist/reactions/reactions.type.js.map +1 -0
  206. package/dist/reconnection-manager/index.js +384 -476
  207. package/dist/reconnection-manager/index.js.map +1 -1
  208. package/dist/recording-controller/enums.js +17 -0
  209. package/dist/recording-controller/enums.js.map +1 -0
  210. package/dist/recording-controller/index.js +363 -0
  211. package/dist/recording-controller/index.js.map +1 -0
  212. package/dist/recording-controller/util.js +64 -0
  213. package/dist/recording-controller/util.js.map +1 -0
  214. package/dist/roap/index.js +58 -91
  215. package/dist/roap/index.js.map +1 -1
  216. package/dist/roap/request.js +137 -135
  217. package/dist/roap/request.js.map +1 -1
  218. package/dist/roap/turnDiscovery.js +148 -100
  219. package/dist/roap/turnDiscovery.js.map +1 -1
  220. package/dist/rtcMetrics/constants.js +12 -0
  221. package/dist/rtcMetrics/constants.js.map +1 -0
  222. package/dist/rtcMetrics/index.js +115 -0
  223. package/dist/rtcMetrics/index.js.map +1 -0
  224. package/dist/statsAnalyzer/global.js +1 -95
  225. package/dist/statsAnalyzer/global.js.map +1 -1
  226. package/dist/statsAnalyzer/index.js +385 -460
  227. package/dist/statsAnalyzer/index.js.map +1 -1
  228. package/dist/statsAnalyzer/mqaUtil.js +143 -87
  229. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  230. package/dist/transcription/index.js +22 -47
  231. package/dist/transcription/index.js.map +1 -1
  232. package/dist/types/annotation/annotation.types.d.ts +42 -0
  233. package/dist/types/annotation/constants.d.ts +31 -0
  234. package/dist/types/annotation/index.d.ts +117 -0
  235. package/dist/types/breakouts/breakout.d.ts +8 -0
  236. package/dist/types/breakouts/collection.d.ts +5 -0
  237. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  238. package/dist/types/breakouts/events.d.ts +8 -0
  239. package/dist/types/breakouts/index.d.ts +5 -0
  240. package/dist/types/breakouts/request.d.ts +22 -0
  241. package/dist/types/breakouts/utils.d.ts +15 -0
  242. package/dist/types/common/browser-detection.d.ts +9 -0
  243. package/dist/types/common/collection.d.ts +48 -0
  244. package/dist/types/common/config.d.ts +2 -0
  245. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  246. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  247. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  248. package/dist/types/common/errors/media.d.ts +15 -0
  249. package/dist/types/common/errors/parameter.d.ts +15 -0
  250. package/dist/types/common/errors/password-error.d.ts +15 -0
  251. package/dist/types/common/errors/permission.d.ts +14 -0
  252. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  253. package/dist/types/common/errors/reconnection.d.ts +15 -0
  254. package/dist/types/common/errors/stats.d.ts +15 -0
  255. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  256. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  257. package/dist/types/common/events/events-scope.d.ts +17 -0
  258. package/dist/types/common/events/events.d.ts +12 -0
  259. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  260. package/dist/types/common/events/util.d.ts +2 -0
  261. package/dist/types/common/logs/logger-config.d.ts +2 -0
  262. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  263. package/dist/types/common/logs/request.d.ts +34 -0
  264. package/dist/types/common/queue.d.ts +34 -0
  265. package/dist/types/config.d.ts +72 -0
  266. package/dist/types/constants.d.ts +1016 -0
  267. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  268. package/dist/types/controls-options-manager/enums.d.ts +15 -0
  269. package/dist/types/controls-options-manager/index.d.ts +136 -0
  270. package/dist/types/controls-options-manager/types.d.ts +43 -0
  271. package/dist/types/controls-options-manager/util.d.ts +1 -0
  272. package/dist/types/index.d.ts +7 -0
  273. package/dist/types/interpretation/collection.d.ts +5 -0
  274. package/dist/types/interpretation/index.d.ts +5 -0
  275. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  276. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  277. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  278. package/dist/types/locus-info/fullState.d.ts +2 -0
  279. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  280. package/dist/types/locus-info/index.d.ts +322 -0
  281. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  282. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  283. package/dist/types/locus-info/parser.d.ts +271 -0
  284. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  285. package/dist/types/media/index.d.ts +34 -0
  286. package/dist/types/media/properties.d.ts +93 -0
  287. package/dist/types/media/util.d.ts +2 -0
  288. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  289. package/dist/types/meeting/in-meeting-actions.d.ts +153 -0
  290. package/dist/types/meeting/index.d.ts +1471 -0
  291. package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
  292. package/dist/types/meeting/muteState.d.ts +184 -0
  293. package/dist/types/meeting/request.d.ts +257 -0
  294. package/dist/types/meeting/request.type.d.ts +11 -0
  295. package/dist/types/meeting/state.d.ts +9 -0
  296. package/dist/types/meeting/util.d.ts +78 -0
  297. package/dist/types/meeting-info/collection.d.ts +20 -0
  298. package/dist/types/meeting-info/index.d.ts +62 -0
  299. package/dist/types/meeting-info/meeting-info-v2.d.ts +122 -0
  300. package/dist/types/meeting-info/request.d.ts +22 -0
  301. package/dist/types/meeting-info/util.d.ts +2 -0
  302. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  303. package/dist/types/meetings/collection.d.ts +31 -0
  304. package/dist/types/meetings/index.d.ts +367 -0
  305. package/dist/types/meetings/meetings.types.d.ts +4 -0
  306. package/dist/types/meetings/request.d.ts +27 -0
  307. package/dist/types/meetings/util.d.ts +18 -0
  308. package/dist/types/member/index.d.ts +159 -0
  309. package/dist/types/member/types.d.ts +32 -0
  310. package/dist/types/member/util.d.ts +2 -0
  311. package/dist/types/members/collection.d.ts +29 -0
  312. package/dist/types/members/index.d.ts +353 -0
  313. package/dist/types/members/request.d.ts +114 -0
  314. package/dist/types/members/types.d.ts +24 -0
  315. package/dist/types/members/util.d.ts +210 -0
  316. package/dist/types/metrics/constants.d.ts +55 -0
  317. package/dist/types/metrics/index.d.ts +45 -0
  318. package/dist/types/multistream/mediaRequestManager.d.ts +118 -0
  319. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  320. package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
  321. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  322. package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
  323. package/dist/types/multistream/remoteMediaManager.d.ts +277 -0
  324. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  325. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  326. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  327. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  328. package/dist/types/reachability/index.d.ts +152 -0
  329. package/dist/types/reachability/request.d.ts +37 -0
  330. package/dist/types/reactions/constants.d.ts +3 -0
  331. package/dist/types/reactions/reactions.d.ts +4 -0
  332. package/dist/types/reactions/reactions.type.d.ts +52 -0
  333. package/dist/types/reconnection-manager/index.d.ts +126 -0
  334. package/dist/types/recording-controller/enums.d.ts +7 -0
  335. package/dist/types/recording-controller/index.d.ts +208 -0
  336. package/dist/types/recording-controller/util.d.ts +14 -0
  337. package/dist/types/roap/index.d.ts +77 -0
  338. package/dist/types/roap/request.d.ts +36 -0
  339. package/dist/types/roap/turnDiscovery.d.ts +91 -0
  340. package/dist/types/rtcMetrics/constants.d.ts +4 -0
  341. package/dist/types/rtcMetrics/index.d.ts +46 -0
  342. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  343. package/dist/types/statsAnalyzer/index.d.ts +200 -0
  344. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  345. package/dist/types/transcription/index.d.ts +64 -0
  346. package/internal-README.md +7 -6
  347. package/package.json +29 -21
  348. package/src/annotation/annotation.types.ts +50 -0
  349. package/src/annotation/constants.ts +36 -0
  350. package/src/annotation/index.ts +328 -0
  351. package/src/breakouts/README.md +220 -0
  352. package/src/breakouts/breakout.ts +188 -0
  353. package/src/breakouts/collection.ts +19 -0
  354. package/src/breakouts/edit-lock-error.ts +25 -0
  355. package/src/breakouts/events.ts +56 -0
  356. package/src/breakouts/index.ts +925 -0
  357. package/src/breakouts/request.ts +55 -0
  358. package/src/breakouts/utils.ts +57 -0
  359. package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
  360. package/src/common/collection.ts +9 -7
  361. package/src/common/{config.js → config.ts} +1 -1
  362. package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
  363. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
  364. package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
  365. package/src/common/errors/{media.js → media.ts} +11 -7
  366. package/src/common/errors/parameter.ts +11 -7
  367. package/src/common/errors/{password-error.js → password-error.ts} +11 -7
  368. package/src/common/errors/{permission.js → permission.ts} +10 -6
  369. package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
  370. package/src/common/errors/{stats.js → stats.ts} +11 -7
  371. package/src/common/errors/{webex-errors.js → webex-errors.ts} +14 -9
  372. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
  373. package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
  374. package/src/common/events/{events.js → events.ts} +5 -1
  375. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
  376. package/src/common/events/{util.js → util.ts} +2 -3
  377. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  378. package/src/common/logs/logger-proxy.ts +44 -0
  379. package/src/common/logs/{request.js → request.ts} +22 -9
  380. package/src/common/queue.ts +22 -9
  381. package/src/{config.js → config.ts} +17 -17
  382. package/src/constants.ts +197 -22
  383. package/src/controls-options-manager/constants.ts +5 -0
  384. package/src/controls-options-manager/enums.ts +18 -0
  385. package/src/controls-options-manager/index.ts +278 -0
  386. package/src/controls-options-manager/types.ts +59 -0
  387. package/src/controls-options-manager/util.ts +300 -0
  388. package/src/index.ts +39 -0
  389. package/src/interpretation/README.md +60 -0
  390. package/src/interpretation/collection.ts +19 -0
  391. package/src/interpretation/index.ts +332 -0
  392. package/src/interpretation/siLanguage.ts +18 -0
  393. package/src/locus-info/controlsUtils.ts +222 -0
  394. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  395. package/src/locus-info/{fullState.js → fullState.ts} +16 -12
  396. package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
  397. package/src/locus-info/{index.js → index.ts} +518 -111
  398. package/src/locus-info/{infoUtils.js → infoUtils.ts} +19 -8
  399. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +65 -17
  400. package/src/locus-info/{parser.js → parser.ts} +271 -98
  401. package/src/locus-info/{selfUtils.js → selfUtils.ts} +199 -68
  402. package/src/media/index.ts +456 -0
  403. package/src/media/{properties.js → properties.ts} +80 -102
  404. package/src/media/{util.js → util.ts} +2 -2
  405. package/src/mediaQualityMetrics/config.ts +384 -0
  406. package/src/meeting/in-meeting-actions.ts +171 -3
  407. package/src/meeting/index.ts +7070 -0
  408. package/src/meeting/locusMediaRequest.ts +309 -0
  409. package/src/meeting/muteState.ts +450 -0
  410. package/src/meeting/{request.js → request.ts} +354 -214
  411. package/src/meeting/request.type.ts +13 -0
  412. package/src/meeting/{state.js → state.ts} +50 -35
  413. package/src/meeting/util.ts +615 -0
  414. package/src/meeting-info/{collection.js → collection.ts} +6 -2
  415. package/src/meeting-info/index.ts +183 -0
  416. package/src/meeting-info/meeting-info-v2.ts +407 -0
  417. package/src/meeting-info/{request.js → request.ts} +14 -4
  418. package/src/meeting-info/{util.js → util.ts} +60 -51
  419. package/src/meeting-info/{utilv2.js → utilv2.ts} +77 -60
  420. package/src/meetings/{collection.js → collection.ts} +26 -3
  421. package/src/meetings/index.ts +1467 -0
  422. package/src/meetings/meetings.types.ts +12 -0
  423. package/src/meetings/{request.js → request.ts} +34 -25
  424. package/src/meetings/{util.js → util.ts} +137 -36
  425. package/src/member/{index.js → index.ts} +151 -56
  426. package/src/member/types.ts +38 -0
  427. package/src/member/util.ts +383 -0
  428. package/src/members/{collection.js → collection.ts} +10 -2
  429. package/src/members/{index.js → index.ts} +323 -145
  430. package/src/members/request.ts +255 -0
  431. package/src/members/types.ts +28 -0
  432. package/src/members/util.ts +339 -0
  433. package/src/metrics/{constants.js → constants.ts} +2 -6
  434. package/src/metrics/index.ts +73 -0
  435. package/src/multistream/mediaRequestManager.ts +337 -61
  436. package/src/multistream/receiveSlot.ts +69 -26
  437. package/src/multistream/receiveSlotManager.ts +66 -42
  438. package/src/multistream/remoteMedia.ts +40 -5
  439. package/src/multistream/remoteMediaGroup.ts +63 -3
  440. package/src/multistream/remoteMediaManager.ts +263 -66
  441. package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
  442. package/src/personal-meeting-room/{index.js → index.ts} +28 -19
  443. package/src/personal-meeting-room/{request.js → request.ts} +13 -4
  444. package/src/personal-meeting-room/{util.js → util.ts} +4 -4
  445. package/src/reachability/{index.js → index.ts} +157 -94
  446. package/src/reachability/request.ts +46 -35
  447. package/src/reactions/constants.ts +4 -0
  448. package/src/reactions/reactions.ts +104 -0
  449. package/src/reactions/reactions.type.ts +62 -0
  450. package/src/reconnection-manager/{index.js → index.ts} +254 -136
  451. package/src/recording-controller/enums.ts +8 -0
  452. package/src/recording-controller/index.ts +333 -0
  453. package/src/recording-controller/util.ts +75 -0
  454. package/src/roap/{index.js → index.ts} +86 -78
  455. package/src/roap/request.ts +163 -0
  456. package/src/roap/turnDiscovery.ts +111 -49
  457. package/src/rtcMetrics/constants.ts +3 -0
  458. package/src/rtcMetrics/index.ts +96 -0
  459. package/src/statsAnalyzer/global.ts +37 -0
  460. package/src/statsAnalyzer/index.ts +1272 -0
  461. package/src/statsAnalyzer/mqaUtil.ts +291 -0
  462. package/src/transcription/{index.js → index.ts} +46 -39
  463. package/test/integration/spec/converged-space-meetings.js +233 -0
  464. package/test/integration/spec/journey.js +804 -526
  465. package/test/integration/spec/space-meeting.js +391 -204
  466. package/test/integration/spec/transcription.js +7 -8
  467. package/test/unit/spec/annotation/index.ts +418 -0
  468. package/test/unit/spec/breakouts/breakout.ts +237 -0
  469. package/test/unit/spec/breakouts/collection.ts +15 -0
  470. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  471. package/test/unit/spec/breakouts/events.ts +89 -0
  472. package/test/unit/spec/breakouts/index.ts +1790 -0
  473. package/test/unit/spec/breakouts/request.ts +104 -0
  474. package/test/unit/spec/breakouts/utils.js +72 -0
  475. package/test/unit/spec/common/browser-detection.js +9 -28
  476. package/test/unit/spec/common/queue.js +31 -2
  477. package/test/unit/spec/controls-options-manager/index.js +287 -0
  478. package/test/unit/spec/controls-options-manager/util.js +582 -0
  479. package/test/unit/spec/fixture/locus.js +93 -90
  480. package/test/unit/spec/interpretation/collection.ts +15 -0
  481. package/test/unit/spec/interpretation/index.ts +589 -0
  482. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  483. package/test/unit/spec/locus-info/controlsUtils.js +325 -32
  484. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  485. package/test/unit/spec/locus-info/index.js +1176 -18
  486. package/test/unit/spec/locus-info/infoUtils.js +41 -32
  487. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  488. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  489. package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
  490. package/test/unit/spec/locus-info/parser.js +65 -31
  491. package/test/unit/spec/locus-info/selfConstant.js +120 -103
  492. package/test/unit/spec/locus-info/selfUtils.js +296 -12
  493. package/test/unit/spec/media/index.ts +162 -68
  494. package/test/unit/spec/media/properties.ts +9 -9
  495. package/test/unit/spec/meeting/in-meeting-actions.ts +82 -3
  496. package/test/unit/spec/meeting/index.js +4569 -1773
  497. package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
  498. package/test/unit/spec/meeting/muteState.js +382 -211
  499. package/test/unit/spec/meeting/request.js +444 -78
  500. package/test/unit/spec/meeting/utils.js +517 -192
  501. package/test/unit/spec/meeting-info/index.js +181 -0
  502. package/test/unit/spec/meeting-info/meetinginfov2.js +481 -76
  503. package/test/unit/spec/meeting-info/request.js +7 -9
  504. package/test/unit/spec/meeting-info/util.js +11 -12
  505. package/test/unit/spec/meeting-info/utilv2.js +131 -74
  506. package/test/unit/spec/meetings/collection.js +15 -1
  507. package/test/unit/spec/meetings/index.js +1254 -330
  508. package/test/unit/spec/meetings/utils.js +220 -14
  509. package/test/unit/spec/member/index.js +58 -5
  510. package/test/unit/spec/member/util.js +494 -26
  511. package/test/unit/spec/members/index.js +423 -55
  512. package/test/unit/spec/members/request.js +228 -40
  513. package/test/unit/spec/members/utils.js +191 -4
  514. package/test/unit/spec/metrics/index.js +12 -66
  515. package/test/unit/spec/multistream/mediaRequestManager.ts +1013 -106
  516. package/test/unit/spec/multistream/receiveSlot.ts +77 -18
  517. package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
  518. package/test/unit/spec/multistream/remoteMedia.ts +40 -2
  519. package/test/unit/spec/multistream/remoteMediaGroup.ts +271 -5
  520. package/test/unit/spec/multistream/remoteMediaManager.ts +730 -65
  521. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  522. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  523. package/test/unit/spec/reachability/index.ts +176 -27
  524. package/test/unit/spec/reachability/request.js +66 -0
  525. package/test/unit/spec/reconnection-manager/index.js +155 -9
  526. package/test/unit/spec/recording-controller/index.js +307 -0
  527. package/test/unit/spec/recording-controller/util.js +229 -0
  528. package/test/unit/spec/roap/index.ts +28 -52
  529. package/test/unit/spec/roap/request.ts +225 -0
  530. package/test/unit/spec/roap/turnDiscovery.ts +92 -50
  531. package/test/unit/spec/rtcMetrics/index.ts +60 -0
  532. package/test/unit/spec/stats-analyzer/index.js +116 -60
  533. package/test/utils/cmr.js +44 -42
  534. package/test/utils/constants.js +9 -0
  535. package/test/utils/integrationTestUtils.js +46 -0
  536. package/test/utils/testUtils.js +63 -99
  537. package/test/utils/webex-config.js +22 -18
  538. package/test/utils/webex-test-users.js +57 -50
  539. package/tsconfig.json +6 -0
  540. package/dist/media/internal-media-core-wrapper.js +0 -22
  541. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  542. package/dist/meeting/effectsState.js +0 -327
  543. package/dist/meeting/effectsState.js.map +0 -1
  544. package/dist/metrics/config.js +0 -301
  545. package/dist/metrics/config.js.map +0 -1
  546. package/dist/multistream/multistreamMedia.js +0 -116
  547. package/dist/multistream/multistreamMedia.js.map +0 -1
  548. package/dist/peer-connection-manager/util.js +0 -124
  549. package/dist/peer-connection-manager/util.js.map +0 -1
  550. package/src/common/logs/logger-proxy.js +0 -33
  551. package/src/index.js +0 -15
  552. package/src/locus-info/controlsUtils.js +0 -102
  553. package/src/media/index.js +0 -459
  554. package/src/media/internal-media-core-wrapper.ts +0 -9
  555. package/src/mediaQualityMetrics/config.js +0 -382
  556. package/src/meeting/effectsState.js +0 -205
  557. package/src/meeting/index.js +0 -6284
  558. package/src/meeting/muteState.js +0 -318
  559. package/src/meeting/util.js +0 -506
  560. package/src/meeting-info/index.js +0 -131
  561. package/src/meeting-info/meeting-info-v2.js +0 -255
  562. package/src/meetings/index.js +0 -1015
  563. package/src/member/util.js +0 -254
  564. package/src/members/request.js +0 -131
  565. package/src/members/util.js +0 -258
  566. package/src/metrics/config.js +0 -324
  567. package/src/metrics/index.js +0 -530
  568. package/src/multistream/multistreamMedia.ts +0 -92
  569. package/src/peer-connection-manager/util.ts +0 -117
  570. package/src/roap/request.js +0 -127
  571. package/src/statsAnalyzer/global.js +0 -133
  572. package/src/statsAnalyzer/index.js +0 -1006
  573. package/src/statsAnalyzer/mqaUtil.js +0 -173
  574. package/test/unit/spec/meeting/effectsState.js +0 -291
  575. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
  576. /package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
@@ -0,0 +1,55 @@
1
+ import {StatelessWebexPlugin} from '@webex/webex-core';
2
+ import LoggerProxy from '../common/logs/logger-proxy';
3
+ import {getBroadcastRoles} from './utils';
4
+ import {HTTP_VERBS} from '../constants';
5
+
6
+ /**
7
+ * @class BreakoutRequest
8
+ */
9
+ export default class BreakoutRequest extends StatelessWebexPlugin {
10
+ /**
11
+ * Broadcast message to all breakout session's participants
12
+ * @param {String} url
13
+ * @param {String} message
14
+ * @param {Object} options
15
+ * @param {string} groupId
16
+ * @param {string} sessionId
17
+ * @returns {Promise}
18
+ */
19
+ broadcast({
20
+ url,
21
+ message,
22
+ options,
23
+ groupId,
24
+ sessionId,
25
+ }: {
26
+ url: string;
27
+ message: string;
28
+ options?: object;
29
+ groupId: string;
30
+ sessionId?: string;
31
+ }) {
32
+ const roles = getBroadcastRoles(options);
33
+ const params = {
34
+ id: groupId,
35
+ recipientRoles: roles.length ? roles : undefined,
36
+ sessions: sessionId ? [{id: sessionId}] : undefined,
37
+ };
38
+
39
+ // @ts-ignore
40
+ return this.request({
41
+ method: HTTP_VERBS.POST,
42
+ uri: `${url}/message`,
43
+ body: {
44
+ message,
45
+ groups: [params],
46
+ },
47
+ }).catch((error) => {
48
+ if (error.body && error.body.errorCode === 201409036 && error.statusCode === 409) {
49
+ LoggerProxy.logger.info(`Breakouts#broadcast --> no joined participants`);
50
+ } else {
51
+ throw error;
52
+ }
53
+ });
54
+ }
55
+ }
@@ -0,0 +1,57 @@
1
+ // eslint-disable-next-line import/prefer-default-export
2
+ import LoggerProxy from '../common/logs/logger-proxy';
3
+ import BreakoutEditLockedError from './edit-lock-error';
4
+ import {BREAKOUTS} from '../constants';
5
+
6
+ export const getBroadcastRoles = (options): string[] => {
7
+ const recipientRoles = [];
8
+ if (!options || (!options.cohosts && !options.presenters)) {
9
+ return recipientRoles;
10
+ }
11
+ if (options.cohosts) {
12
+ recipientRoles.push('COHOST');
13
+ }
14
+ if (options.presenters) {
15
+ recipientRoles.push('PRESENTER');
16
+ }
17
+
18
+ return recipientRoles;
19
+ };
20
+
21
+ /**
22
+ * Deals with all kinds of errors of breakout service
23
+ * @param {object} error // one of the breakout service error
24
+ * @param {string} position // position of the error occur
25
+ * @returns {object}
26
+ */
27
+ export const boServiceErrorHandler = (error: any, position: string): any => {
28
+ const errorCode = error?.body?.errorCode;
29
+ const {EDIT_LOCK_TOKEN_MISMATCH, EDIT_NOT_AUTHORIZED} = BREAKOUTS.ERROR_CODE;
30
+ let throwError;
31
+ switch (errorCode) {
32
+ case EDIT_LOCK_TOKEN_MISMATCH:
33
+ throwError = new BreakoutEditLockedError('Edit lock token mismatch', error);
34
+ break;
35
+ case EDIT_NOT_AUTHORIZED:
36
+ throwError = new BreakoutEditLockedError('Not authorized to interact with edit lock', error);
37
+ break;
38
+ default:
39
+ throwError = error;
40
+ }
41
+ LoggerProxy.logger.info(`${position} --> ${throwError?.message}`);
42
+
43
+ return throwError;
44
+ };
45
+
46
+ /**
47
+ *
48
+ * @param {object} breakout
49
+ * @param {string} newSessionType
50
+ * @returns {boolean}
51
+ */
52
+ export const isSessionTypeChangedFromSessionToMain = (breakout, newSessionType) => {
53
+ return (
54
+ breakout.previous('sessionType') === BREAKOUTS.SESSION_TYPES.BREAKOUT &&
55
+ newSessionType === BREAKOUTS.SESSION_TYPES.MAIN
56
+ );
57
+ };
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/no-var-requires */
2
+
1
3
  import bowser from 'bowser';
2
4
  import {memoize} from 'lodash';
3
5
  import window from 'global/window';
@@ -9,7 +11,7 @@ const mockDetectionObject = {
9
11
  /* eslint-enable global-require */
10
12
  getBrowserName: () => '',
11
13
  getBrowserVersion: () => '',
12
- isBrowser: () => false
14
+ isBrowser: () => false,
13
15
  };
14
16
 
15
17
  const createDetectionObject = (results) => {
@@ -26,11 +28,12 @@ const createDetectionObject = (results) => {
26
28
  getOSVersion,
27
29
  getBrowserName,
28
30
  getBrowserVersion,
29
- isBrowser
31
+ isBrowser,
30
32
  };
31
33
  };
32
34
 
33
- export default memoize((agent) => (agent || window.navigator?.userAgent ?
34
- createDetectionObject(bowser.getParser(agent || window.navigator.userAgent)) :
35
- mockDetectionObject
36
- ));
35
+ export default memoize((agent?: any) =>
36
+ agent || window.navigator?.userAgent
37
+ ? createDetectionObject(bowser.getParser(agent || window.navigator.userAgent))
38
+ : mockDetectionObject
39
+ );
@@ -13,7 +13,7 @@ export default class Collection {
13
13
  * @param {String} property
14
14
  * @memberof Collection
15
15
  */
16
- constructor(property) {
16
+ constructor(property: string) {
17
17
  if (!property || !isString(property)) {
18
18
  throw new ParameterError('Collection expects a string to use as a property name.');
19
19
  }
@@ -41,8 +41,10 @@ export default class Collection {
41
41
  * @public
42
42
  * @memberof Collection
43
43
  */
44
- get(id) {
45
- return this[this.propertyName] && this[this.propertyName][id] ? this[this.propertyName][id] : null;
44
+ public get(id: string) {
45
+ return this[this.propertyName] && this[this.propertyName][id]
46
+ ? this[this.propertyName][id]
47
+ : null;
46
48
  }
47
49
 
48
50
  /**
@@ -52,7 +54,7 @@ export default class Collection {
52
54
  * @public
53
55
  * @memberof Collection
54
56
  */
55
- set(id, value) {
57
+ public set(id: string, value: any) {
56
58
  this[this.propertyName][id] = value;
57
59
 
58
60
  return this.get(id);
@@ -65,7 +67,7 @@ export default class Collection {
65
67
  * @public
66
68
  * @memberof Collection
67
69
  */
68
- delete(id) {
70
+ public delete(id: string) {
69
71
  delete this[this.propertyName][id];
70
72
  }
71
73
 
@@ -74,7 +76,7 @@ export default class Collection {
74
76
  * @public
75
77
  * @memberof Collection
76
78
  */
77
- getAll() {
79
+ public getAll() {
78
80
  return this[this.propertyName];
79
81
  }
80
82
 
@@ -84,7 +86,7 @@ export default class Collection {
84
86
  * @public
85
87
  * @memberof Collection
86
88
  */
87
- setAll(set) {
89
+ public setAll(set: object) {
88
90
  this[this.propertyName] = set;
89
91
 
90
92
  return this.getAll();
@@ -1,4 +1,4 @@
1
- const StaticConfig = {};
1
+ const StaticConfig: any = {};
2
2
 
3
3
  StaticConfig.set = (options) => {
4
4
  const values = {};
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify captcha related errors
5
5
  */
6
6
  export default class CaptchaError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.CAPTCHA.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.CAPTCHA.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.CAPTCHA.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.CAPTCHA.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.CAPTCHA.CODE;
20
24
  }
21
25
  }
@@ -4,18 +4,23 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify the intent to join for unclaimed PMR scenarios
5
5
  */
6
6
  export default class IntentToJoinError extends Error {
7
+ code: any;
8
+ error: any;
9
+ joinIntentRequired: any;
10
+ sdkMessage: any;
11
+
7
12
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE, error = null) {
13
+ *
14
+ * @constructor
15
+ * @param {String} [message]
16
+ * @param {Object} [error]
17
+ */
18
+ constructor(message: string = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE, error: any = null) {
14
19
  super(message);
15
20
  this.name = ERROR_DICTIONARY.INTENT_TO_JOIN.NAME;
16
21
  this.sdkMessage = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE;
17
22
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
23
+ this.stack = error ? error.stack : new Error().stack;
19
24
  this.joinIntentRequired = true;
20
25
  this.code = ERROR_DICTIONARY.INTENT_TO_JOIN.CODE;
21
26
  }
@@ -4,19 +4,28 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify a join meeting error
5
5
  */
6
6
  export default class JoinMeetingError extends Error {
7
+ code: any;
8
+ error: any;
9
+ joinOptions: any;
10
+ sdkMessage: any;
11
+
7
12
  /**
8
- *
9
- * @constructor
10
- * @param {Object} [options]
11
- * @param {String} [message]
12
- * @param {Object} [error]
13
- */
14
- constructor(options = {}, message = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE, error = null) {
13
+ *
14
+ * @constructor
15
+ * @param {Object} [options]
16
+ * @param {String} [message]
17
+ * @param {Object} [error]
18
+ */
19
+ constructor(
20
+ options: object = {},
21
+ message: string = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE,
22
+ error: any = null
23
+ ) {
15
24
  super(message);
16
25
  this.name = ERROR_DICTIONARY.JOIN_MEETING.NAME;
17
26
  this.sdkMessage = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE;
18
27
  this.error = error;
19
- this.stack = error ? error.stack : (new Error()).stack;
28
+ this.stack = error ? error.stack : new Error().stack;
20
29
  this.joinOptions = options;
21
30
  this.code = ERROR_DICTIONARY.JOIN_MEETING.CODE;
22
31
  }
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object for media errors
5
5
  */
6
6
  export default class MediaError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.MEDIA.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.MEDIA.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.RECONNECTION.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.MEDIA.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.RECONNECTION.CODE;
20
24
  }
21
25
  }
@@ -1,4 +1,4 @@
1
- import * as MEETINGCONSTANTS from '../../constants';
1
+ import * as MEETINGCONSTANTS from '../../constants';
2
2
 
3
3
  /**
4
4
  * Extended Error object for general parameter errors
@@ -7,13 +7,17 @@ export default class ParameterError extends Error {
7
7
  sdkMessage: string;
8
8
  error: null;
9
9
  code: number;
10
+
10
11
  /**
11
- *
12
- * @constructor
13
- * @param {String} [message]
14
- * @param {Object} [error]
15
- */
16
- constructor(message = MEETINGCONSTANTS.ERROR_DICTIONARY.PARAMETER.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(
18
+ message: string = MEETINGCONSTANTS.ERROR_DICTIONARY.PARAMETER.MESSAGE,
19
+ error: any = null
20
+ ) {
17
21
  super(message);
18
22
 
19
23
  if (Error.captureStackTrace) {
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify password related errors
5
5
  */
6
6
  export default class PasswordError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.PASSWORD.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.PASSWORD.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.PASSWORD.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.PASSWORD.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.PASSWORD.CODE;
20
24
  }
21
25
  }
@@ -4,17 +4,21 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object for general parameter errors
5
5
  */
6
6
  export default class PermissionError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- * @constructor
9
- * @param {String} [message]
10
- * @param {Object} [error]
11
- */
12
- constructor(message = ERROR_DICTIONARY.PERMISSION.MESSAGE, error = null) {
12
+ * @constructor
13
+ * @param {String} [message]
14
+ * @param {Object} [error]
15
+ */
16
+ constructor(message: string = ERROR_DICTIONARY.PERMISSION.MESSAGE, error: any = null) {
13
17
  super(message);
14
18
  this.name = ERROR_DICTIONARY.PERMISSION.NAME;
15
19
  this.sdkMessage = ERROR_DICTIONARY.PERMISSION.MESSAGE;
16
20
  this.error = error;
17
- this.stack = error ? error.stack : (new Error()).stack;
21
+ this.stack = error ? error.stack : new Error().stack;
18
22
  this.code = ERROR_DICTIONARY.PERMISSION.CODE;
19
23
  }
20
24
  }
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object to signify the intent to join for unclaimed PMR scenarios
5
5
  */
6
6
  export default class ReconnectionError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.RECONNECTION.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.RECONNECTION.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.RECONNECTION.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.RECONNECTION.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.RECONNECTION.CODE;
20
24
  }
21
25
  }
@@ -4,18 +4,22 @@ import {ERROR_DICTIONARY} from '../../constants';
4
4
  * Extended Error object for Stats Errors
5
5
  */
6
6
  export default class StatsError extends Error {
7
+ code: any;
8
+ error: any;
9
+ sdkMessage: any;
10
+
7
11
  /**
8
- *
9
- * @constructor
10
- * @param {String} [message]
11
- * @param {Object} [error]
12
- */
13
- constructor(message = ERROR_DICTIONARY.STATS.MESSAGE, error = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(message: string = ERROR_DICTIONARY.STATS.MESSAGE, error: any = null) {
14
18
  super(message);
15
19
  this.name = ERROR_DICTIONARY.STATS.NAME;
16
20
  this.sdkMessage = ERROR_DICTIONARY.STATS.MESSAGE;
17
21
  this.error = error;
18
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
19
23
  this.code = ERROR_DICTIONARY.STATS.CODE;
20
24
  }
21
25
  }
@@ -5,7 +5,6 @@
5
5
  // 3) Any errors we generate from the SDK can be split into various categories
6
6
  // Parameter validation, user action, connection, media specific(They can have different range)
7
7
 
8
-
9
8
  // TODO: all the errors from the server need to be captured
10
9
 
11
10
  // add a way to log and send metrics if needed
@@ -20,11 +19,13 @@ const WebExMeetingsErrors = {};
20
19
  * @param {string} [message] - Error message
21
20
  * @returns {WebexMeetingsError}
22
21
  */
23
- export function createMeetingsError(code, message) {
22
+ export function createMeetingsError(code?: number, message?: string) {
24
23
  code = typeof code === 'number' ? code : 0;
25
24
  message = typeof message === 'string' && message ? message : 'Unknown error';
26
25
 
27
- return WebExMeetingsErrors[code] ? new WebExMeetingsErrors[code]() : new WebexMeetingsError(code, message);
26
+ return WebExMeetingsErrors[code]
27
+ ? new WebExMeetingsErrors[code]()
28
+ : new WebexMeetingsError(code, message);
28
29
  }
29
30
 
30
31
  /**
@@ -56,33 +57,38 @@ class UserNotJoinedError extends WebexMeetingsError {
56
57
  static CODE = 30102;
57
58
 
58
59
  constructor() {
59
- super(UserNotJoinedError.CODE, 'User currently not in meeting. Please join a meeting before adding media.');
60
+ super(
61
+ UserNotJoinedError.CODE,
62
+ 'User currently not in meeting. Please join a meeting before adding media.'
63
+ );
60
64
  }
61
65
  }
62
66
 
63
67
  export {UserNotJoinedError};
64
68
  WebExMeetingsErrors[UserNotJoinedError.CODE] = UserNotJoinedError;
65
69
 
66
-
67
70
  /**
68
71
  * @class NoMediaEstablishedYetError
69
72
  * @classdesc Raised whenever the user has not established media yet.
70
73
  * @extends WebexMeetingsError
71
74
  * @property {number} code - 30103
72
- * @property {string} message - 'User has not established media yet'
75
+ * @property {string} message - error message
73
76
  */
74
77
  class NoMediaEstablishedYetError extends WebexMeetingsError {
75
78
  static CODE = 30103;
76
79
 
80
+ // eslint-disable-next-line require-jsdoc
77
81
  constructor() {
78
- super(NoMediaEstablishedYetError.CODE, 'User has not established media yet');
82
+ super(
83
+ NoMediaEstablishedYetError.CODE,
84
+ 'Webrtc media connection is missing, call addMedia() first'
85
+ );
79
86
  }
80
87
  }
81
88
 
82
89
  export {NoMediaEstablishedYetError};
83
90
  WebExMeetingsErrors[NoMediaEstablishedYetError.CODE] = NoMediaEstablishedYetError;
84
91
 
85
-
86
92
  /**
87
93
  * @class UserInLobbyError
88
94
  * @classdesc Raised whenever the user is in lobby and not joined yet.
@@ -101,7 +107,6 @@ class UserInLobbyError extends WebexMeetingsError {
101
107
  export {UserInLobbyError};
102
108
  WebExMeetingsErrors[UserInLobbyError.CODE] = UserInLobbyError;
103
109
 
104
-
105
110
  /**
106
111
  * @class IceGatheringFailed
107
112
  * @classdesc Raised whenever ice gathering fails.
@@ -3,6 +3,8 @@
3
3
  * @property {number} code - Error code
4
4
  */
5
5
  export default class WebexMeetingsError extends Error {
6
+ code: any;
7
+
6
8
  /**
7
9
  * Creates a new {@link WebexMeetingsError}
8
10
  * @param {number} code - Error code
@@ -10,14 +12,14 @@ export default class WebexMeetingsError extends Error {
10
12
  * @param {string} [fileName] - Name of the script file where error was generated
11
13
  * @param {number} [lineNumber] - Line number of the script file where error was generated
12
14
  */
13
- constructor(code, ...args) {
15
+ constructor(code: number, ...args: any[]) {
14
16
  super(...args);
15
17
 
16
18
  this.name = 'WebexMeetingsError';
17
19
 
18
20
  Object.defineProperty(this, 'code', {
19
21
  value: code,
20
- enumerable: true
22
+ enumerable: true,
21
23
  });
22
24
  }
23
25
 
@@ -18,8 +18,12 @@ export default class EventsScope extends ChildEmitter {
18
18
  * @param {*} args
19
19
  * @returns {Function}
20
20
  */
21
- emit(scope, eventName, args) {
22
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${eventName}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''}`);
21
+ emit(scope: any, eventName: any, args: any) {
22
+ LoggerProxy.logger.debug(
23
+ `${EventsUtil.getScopeLog(scope)}event#${eventName}${
24
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''
25
+ }`
26
+ );
23
27
 
24
28
  return super.emit(eventName, args);
25
29
  }
@@ -12,7 +12,11 @@ import EventsUtil from './util';
12
12
  */
13
13
  class Events extends EventEmitter {
14
14
  emit(scope, eventName, args) {
15
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${eventName}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''}`);
15
+ LoggerProxy.logger.debug(
16
+ `${EventsUtil.getScopeLog(scope)}event#${eventName}${
17
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''
18
+ }`
19
+ );
16
20
 
17
21
  return super.emit(eventName, args);
18
22
  }
@@ -1,19 +1,23 @@
1
-
2
1
  import LoggerProxy from '../logs/logger-proxy';
3
2
  import LoggerConfig from '../logs/logger-config';
4
3
  import ParameterError from '../errors/parameter';
5
4
 
6
5
  import EventsUtil from './util';
7
6
 
8
-
9
- const TriggerProxy = {};
7
+ const TriggerProxy: any = {};
10
8
 
11
9
  TriggerProxy.trigger = (instance, scope, trigger, payload) => {
12
10
  if (!instance || !instance.trigger) {
13
- throw new ParameterError('Instance to trigger from must be defined and have a trigger function.');
11
+ throw new ParameterError(
12
+ 'Instance to trigger from must be defined and have a trigger function.'
13
+ );
14
14
  }
15
15
 
16
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${trigger}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(payload)}` : ''}`);
16
+ LoggerProxy.logger.debug(
17
+ `${EventsUtil.getScopeLog(scope)}event#${trigger}${
18
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(payload)}` : ''
19
+ }`
20
+ );
17
21
 
18
22
  return instance.trigger(trigger, payload);
19
23
  };
@@ -2,15 +2,14 @@ import {inspect} from 'util';
2
2
 
3
3
  import LoggerProxy from '../logs/logger-proxy';
4
4
 
5
- const EventsUtil = {};
5
+ const EventsUtil: any = {};
6
6
 
7
7
  EventsUtil.getEventLog = (args) => {
8
8
  let argString = '';
9
9
 
10
10
  try {
11
11
  argString = inspect(args);
12
- }
13
- catch (e) {
12
+ } catch (e) {
14
13
  LoggerProxy.logger.warn(`Events:util#getEventLog --> ${e}`);
15
14
  }
16
15