@webex/plugin-meetings 3.0.0-beta.4 → 3.0.0-beta.40

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 (498) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/breakouts/breakout.js +137 -0
  4. package/dist/breakouts/breakout.js.map +1 -0
  5. package/dist/breakouts/collection.js +23 -0
  6. package/dist/breakouts/collection.js.map +1 -0
  7. package/dist/breakouts/edit-lock-error.js +52 -0
  8. package/dist/breakouts/edit-lock-error.js.map +1 -0
  9. package/dist/breakouts/index.js +546 -0
  10. package/dist/breakouts/index.js.map +1 -0
  11. package/dist/breakouts/request.js +78 -0
  12. package/dist/breakouts/request.js.map +1 -0
  13. package/dist/breakouts/utils.js +48 -0
  14. package/dist/breakouts/utils.js.map +1 -0
  15. package/dist/common/browser-detection.js +1 -20
  16. package/dist/common/browser-detection.js.map +1 -1
  17. package/dist/common/collection.js +5 -20
  18. package/dist/common/collection.js.map +1 -1
  19. package/dist/common/config.js +0 -7
  20. package/dist/common/config.js.map +1 -1
  21. package/dist/common/errors/captcha-error.js +10 -24
  22. package/dist/common/errors/captcha-error.js.map +1 -1
  23. package/dist/common/errors/intent-to-join.js +11 -24
  24. package/dist/common/errors/intent-to-join.js.map +1 -1
  25. package/dist/common/errors/join-meeting.js +12 -25
  26. package/dist/common/errors/join-meeting.js.map +1 -1
  27. package/dist/common/errors/media.js +10 -24
  28. package/dist/common/errors/media.js.map +1 -1
  29. package/dist/common/errors/parameter.js +5 -33
  30. package/dist/common/errors/parameter.js.map +1 -1
  31. package/dist/common/errors/password-error.js +10 -24
  32. package/dist/common/errors/password-error.js.map +1 -1
  33. package/dist/common/errors/permission.js +9 -23
  34. package/dist/common/errors/permission.js.map +1 -1
  35. package/dist/common/errors/reconnection-in-progress.js +0 -17
  36. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  37. package/dist/common/errors/reconnection.js +10 -24
  38. package/dist/common/errors/reconnection.js.map +1 -1
  39. package/dist/common/errors/stats.js +10 -24
  40. package/dist/common/errors/stats.js.map +1 -1
  41. package/dist/common/errors/webex-errors.js +6 -41
  42. package/dist/common/errors/webex-errors.js.map +1 -1
  43. package/dist/common/errors/webex-meetings-error.js +5 -25
  44. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  45. package/dist/common/events/events-scope.js +0 -22
  46. package/dist/common/events/events-scope.js.map +1 -1
  47. package/dist/common/events/events.js +0 -23
  48. package/dist/common/events/events.js.map +1 -1
  49. package/dist/common/events/trigger-proxy.js +0 -12
  50. package/dist/common/events/trigger-proxy.js.map +1 -1
  51. package/dist/common/events/util.js +0 -15
  52. package/dist/common/events/util.js.map +1 -1
  53. package/dist/common/logs/logger-config.js +0 -4
  54. package/dist/common/logs/logger-config.js.map +1 -1
  55. package/dist/common/logs/logger-proxy.js +1 -8
  56. package/dist/common/logs/logger-proxy.js.map +1 -1
  57. package/dist/common/logs/request.js +37 -60
  58. package/dist/common/logs/request.js.map +1 -1
  59. package/dist/common/queue.js +4 -14
  60. package/dist/common/queue.js.map +1 -1
  61. package/dist/config.js +6 -6
  62. package/dist/config.js.map +1 -1
  63. package/dist/constants.js +109 -49
  64. package/dist/constants.js.map +1 -1
  65. package/dist/controls-options-manager/constants.js +14 -0
  66. package/dist/controls-options-manager/constants.js.map +1 -0
  67. package/dist/controls-options-manager/enums.js +15 -0
  68. package/dist/controls-options-manager/enums.js.map +1 -0
  69. package/dist/controls-options-manager/index.js +203 -0
  70. package/dist/controls-options-manager/index.js.map +1 -0
  71. package/dist/controls-options-manager/util.js +28 -0
  72. package/dist/controls-options-manager/util.js.map +1 -0
  73. package/dist/index.js +11 -18
  74. package/dist/index.js.map +1 -1
  75. package/dist/locus-info/controlsUtils.js +12 -29
  76. package/dist/locus-info/controlsUtils.js.map +1 -1
  77. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  78. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  79. package/dist/locus-info/fullState.js +0 -15
  80. package/dist/locus-info/fullState.js.map +1 -1
  81. package/dist/locus-info/hostUtils.js +4 -12
  82. package/dist/locus-info/hostUtils.js.map +1 -1
  83. package/dist/locus-info/index.js +186 -192
  84. package/dist/locus-info/index.js.map +1 -1
  85. package/dist/locus-info/infoUtils.js +3 -37
  86. package/dist/locus-info/infoUtils.js.map +1 -1
  87. package/dist/locus-info/mediaSharesUtils.js +12 -38
  88. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  89. package/dist/locus-info/parser.js +92 -118
  90. package/dist/locus-info/parser.js.map +1 -1
  91. package/dist/locus-info/selfUtils.js +34 -91
  92. package/dist/locus-info/selfUtils.js.map +1 -1
  93. package/dist/media/index.js +66 -153
  94. package/dist/media/index.js.map +1 -1
  95. package/dist/media/properties.js +83 -117
  96. package/dist/media/properties.js.map +1 -1
  97. package/dist/media/util.js +2 -9
  98. package/dist/media/util.js.map +1 -1
  99. package/dist/mediaQualityMetrics/config.js +505 -495
  100. package/dist/mediaQualityMetrics/config.js.map +1 -1
  101. package/dist/meeting/in-meeting-actions.js +13 -14
  102. package/dist/meeting/in-meeting-actions.js.map +1 -1
  103. package/dist/meeting/index.js +2141 -2210
  104. package/dist/meeting/index.js.map +1 -1
  105. package/dist/meeting/muteState.js +59 -82
  106. package/dist/meeting/muteState.js.map +1 -1
  107. package/dist/meeting/request.js +308 -264
  108. package/dist/meeting/request.js.map +1 -1
  109. package/dist/meeting/request.type.js +7 -0
  110. package/dist/meeting/request.type.js.map +1 -0
  111. package/dist/meeting/state.js +21 -31
  112. package/dist/meeting/state.js.map +1 -1
  113. package/dist/meeting/util.js +45 -217
  114. package/dist/meeting/util.js.map +1 -1
  115. package/dist/meeting-info/collection.js +6 -25
  116. package/dist/meeting-info/collection.js.map +1 -1
  117. package/dist/meeting-info/index.js +14 -32
  118. package/dist/meeting-info/index.js.map +1 -1
  119. package/dist/meeting-info/meeting-info-v2.js +193 -268
  120. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  121. package/dist/meeting-info/request.js +3 -15
  122. package/dist/meeting-info/request.js.map +1 -1
  123. package/dist/meeting-info/util.js +98 -183
  124. package/dist/meeting-info/util.js.map +1 -1
  125. package/dist/meeting-info/utilv2.js +137 -228
  126. package/dist/meeting-info/utilv2.js.map +1 -1
  127. package/dist/meetings/collection.js +5 -20
  128. package/dist/meetings/collection.js.map +1 -1
  129. package/dist/meetings/index.js +490 -560
  130. package/dist/meetings/index.js.map +1 -1
  131. package/dist/meetings/request.js +24 -41
  132. package/dist/meetings/request.js.map +1 -1
  133. package/dist/meetings/util.js +116 -155
  134. package/dist/meetings/util.js.map +1 -1
  135. package/dist/member/index.js +78 -86
  136. package/dist/member/index.js.map +1 -1
  137. package/dist/member/util.js +31 -68
  138. package/dist/member/util.js.map +1 -1
  139. package/dist/members/collection.js +3 -12
  140. package/dist/members/collection.js.map +1 -1
  141. package/dist/members/index.js +95 -200
  142. package/dist/members/index.js.map +1 -1
  143. package/dist/members/request.js +16 -39
  144. package/dist/members/request.js.map +1 -1
  145. package/dist/members/util.js +9 -38
  146. package/dist/members/util.js.map +1 -1
  147. package/dist/metrics/config.js +1 -13
  148. package/dist/metrics/config.js.map +1 -1
  149. package/dist/metrics/constants.js +1 -6
  150. package/dist/metrics/constants.js.map +1 -1
  151. package/dist/metrics/index.js +54 -156
  152. package/dist/metrics/index.js.map +1 -1
  153. package/dist/multistream/mediaRequestManager.js +74 -52
  154. package/dist/multistream/mediaRequestManager.js.map +1 -1
  155. package/dist/multistream/receiveSlot.js +48 -65
  156. package/dist/multistream/receiveSlot.js.map +1 -1
  157. package/dist/multistream/receiveSlotManager.js +60 -82
  158. package/dist/multistream/receiveSlotManager.js.map +1 -1
  159. package/dist/multistream/remoteMedia.js +60 -76
  160. package/dist/multistream/remoteMedia.js.map +1 -1
  161. package/dist/multistream/remoteMediaGroup.js +6 -40
  162. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  163. package/dist/multistream/remoteMediaManager.js +360 -413
  164. package/dist/multistream/remoteMediaManager.js.map +1 -1
  165. package/dist/networkQualityMonitor/index.js +40 -59
  166. package/dist/networkQualityMonitor/index.js.map +1 -1
  167. package/dist/personal-meeting-room/index.js +21 -45
  168. package/dist/personal-meeting-room/index.js.map +1 -1
  169. package/dist/personal-meeting-room/request.js +1 -31
  170. package/dist/personal-meeting-room/request.js.map +1 -1
  171. package/dist/personal-meeting-room/util.js +0 -13
  172. package/dist/personal-meeting-room/util.js.map +1 -1
  173. package/dist/reachability/index.js +147 -183
  174. package/dist/reachability/index.js.map +1 -1
  175. package/dist/reachability/request.js +15 -23
  176. package/dist/reachability/request.js.map +1 -1
  177. package/dist/reactions/constants.js +13 -0
  178. package/dist/reactions/constants.js.map +1 -0
  179. package/dist/reactions/reactions.js +109 -0
  180. package/dist/reactions/reactions.js.map +1 -0
  181. package/dist/reactions/reactions.type.js +36 -0
  182. package/dist/reactions/reactions.type.js.map +1 -0
  183. package/dist/reconnection-manager/index.js +322 -456
  184. package/dist/reconnection-manager/index.js.map +1 -1
  185. package/dist/recording-controller/enums.js +17 -0
  186. package/dist/recording-controller/enums.js.map +1 -0
  187. package/dist/recording-controller/index.js +343 -0
  188. package/dist/recording-controller/index.js.map +1 -0
  189. package/dist/recording-controller/util.js +63 -0
  190. package/dist/recording-controller/util.js.map +1 -0
  191. package/dist/roap/index.js +48 -70
  192. package/dist/roap/index.js.map +1 -1
  193. package/dist/roap/request.js +143 -131
  194. package/dist/roap/request.js.map +1 -1
  195. package/dist/roap/turnDiscovery.js +91 -98
  196. package/dist/roap/turnDiscovery.js.map +1 -1
  197. package/dist/statsAnalyzer/global.js +1 -95
  198. package/dist/statsAnalyzer/global.js.map +1 -1
  199. package/dist/statsAnalyzer/index.js +361 -449
  200. package/dist/statsAnalyzer/index.js.map +1 -1
  201. package/dist/statsAnalyzer/mqaUtil.js +137 -81
  202. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  203. package/dist/transcription/index.js +22 -47
  204. package/dist/transcription/index.js.map +1 -1
  205. package/dist/types/breakouts/breakout.d.ts +8 -0
  206. package/dist/types/breakouts/collection.d.ts +5 -0
  207. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  208. package/dist/types/breakouts/index.d.ts +5 -0
  209. package/dist/types/breakouts/request.d.ts +22 -0
  210. package/dist/types/breakouts/utils.d.ts +8 -0
  211. package/dist/types/common/browser-detection.d.ts +9 -0
  212. package/dist/types/common/collection.d.ts +48 -0
  213. package/dist/types/common/config.d.ts +2 -0
  214. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  215. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  216. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  217. package/dist/types/common/errors/media.d.ts +15 -0
  218. package/dist/types/common/errors/parameter.d.ts +15 -0
  219. package/dist/types/common/errors/password-error.d.ts +15 -0
  220. package/dist/types/common/errors/permission.d.ts +14 -0
  221. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  222. package/dist/types/common/errors/reconnection.d.ts +15 -0
  223. package/dist/types/common/errors/stats.d.ts +15 -0
  224. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  225. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  226. package/dist/types/common/events/events-scope.d.ts +17 -0
  227. package/dist/types/common/events/events.d.ts +12 -0
  228. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  229. package/dist/types/common/events/util.d.ts +2 -0
  230. package/dist/types/common/logs/logger-config.d.ts +2 -0
  231. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  232. package/dist/types/common/logs/request.d.ts +34 -0
  233. package/dist/types/common/queue.d.ts +32 -0
  234. package/dist/types/config.d.ts +77 -0
  235. package/dist/types/constants.d.ts +916 -0
  236. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  237. package/dist/types/controls-options-manager/enums.d.ts +5 -0
  238. package/dist/types/controls-options-manager/index.d.ts +120 -0
  239. package/dist/types/controls-options-manager/util.d.ts +7 -0
  240. package/dist/types/index.d.ts +6 -0
  241. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  242. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  243. package/dist/types/locus-info/fullState.d.ts +2 -0
  244. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  245. package/dist/types/locus-info/index.d.ts +269 -0
  246. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  247. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  248. package/dist/types/locus-info/parser.d.ts +212 -0
  249. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  250. package/dist/types/media/index.d.ts +32 -0
  251. package/dist/types/media/properties.d.ts +108 -0
  252. package/dist/types/media/util.d.ts +2 -0
  253. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  254. package/dist/types/meeting/in-meeting-actions.d.ts +83 -0
  255. package/dist/types/meeting/index.d.ts +1699 -0
  256. package/dist/types/meeting/muteState.d.ts +116 -0
  257. package/dist/types/meeting/request.d.ts +271 -0
  258. package/dist/types/meeting/request.type.d.ts +11 -0
  259. package/dist/types/meeting/state.d.ts +9 -0
  260. package/dist/types/meeting/util.d.ts +2 -0
  261. package/dist/types/meeting-info/collection.d.ts +20 -0
  262. package/dist/types/meeting-info/index.d.ts +57 -0
  263. package/dist/types/meeting-info/meeting-info-v2.d.ts +93 -0
  264. package/dist/types/meeting-info/request.d.ts +22 -0
  265. package/dist/types/meeting-info/util.d.ts +2 -0
  266. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  267. package/dist/types/meetings/collection.d.ts +23 -0
  268. package/dist/types/meetings/index.d.ts +297 -0
  269. package/dist/types/meetings/request.d.ts +27 -0
  270. package/dist/types/meetings/util.d.ts +18 -0
  271. package/dist/types/member/index.d.ts +146 -0
  272. package/dist/types/member/util.d.ts +2 -0
  273. package/dist/types/members/collection.d.ts +24 -0
  274. package/dist/types/members/index.d.ts +320 -0
  275. package/dist/types/members/request.d.ts +50 -0
  276. package/dist/types/members/util.d.ts +2 -0
  277. package/dist/types/metrics/config.d.ts +169 -0
  278. package/dist/types/metrics/constants.d.ts +53 -0
  279. package/dist/types/metrics/index.d.ts +152 -0
  280. package/dist/types/multistream/mediaRequestManager.d.ts +51 -0
  281. package/dist/types/multistream/receiveSlot.d.ts +64 -0
  282. package/dist/types/multistream/receiveSlotManager.d.ts +46 -0
  283. package/dist/types/multistream/remoteMedia.d.ts +100 -0
  284. package/dist/types/multistream/remoteMediaGroup.d.ts +56 -0
  285. package/dist/types/multistream/remoteMediaManager.d.ts +241 -0
  286. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  287. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  288. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  289. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  290. package/dist/types/reachability/index.d.ts +140 -0
  291. package/dist/types/reachability/request.d.ts +37 -0
  292. package/dist/types/reactions/constants.d.ts +3 -0
  293. package/dist/types/reactions/reactions.d.ts +4 -0
  294. package/dist/types/reactions/reactions.type.d.ts +52 -0
  295. package/dist/types/reconnection-manager/index.d.ts +117 -0
  296. package/dist/types/recording-controller/enums.d.ts +7 -0
  297. package/dist/types/recording-controller/index.d.ts +193 -0
  298. package/dist/types/recording-controller/util.d.ts +13 -0
  299. package/dist/types/roap/index.d.ts +77 -0
  300. package/dist/types/roap/request.d.ts +38 -0
  301. package/dist/types/roap/turnDiscovery.d.ts +74 -0
  302. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  303. package/dist/types/statsAnalyzer/index.d.ts +195 -0
  304. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  305. package/dist/types/transcription/index.d.ts +64 -0
  306. package/internal-README.md +7 -6
  307. package/package.json +27 -21
  308. package/src/breakouts/README.md +199 -0
  309. package/src/breakouts/breakout.ts +130 -0
  310. package/src/breakouts/collection.ts +19 -0
  311. package/src/breakouts/edit-lock-error.ts +25 -0
  312. package/src/breakouts/index.ts +504 -0
  313. package/src/breakouts/request.ts +55 -0
  314. package/src/breakouts/utils.ts +39 -0
  315. package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
  316. package/src/common/collection.ts +9 -7
  317. package/src/common/{config.js → config.ts} +1 -1
  318. package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
  319. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
  320. package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
  321. package/src/common/errors/{media.js → media.ts} +11 -7
  322. package/src/common/errors/parameter.ts +11 -7
  323. package/src/common/errors/{password-error.js → password-error.ts} +11 -7
  324. package/src/common/errors/{permission.js → permission.ts} +10 -6
  325. package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
  326. package/src/common/errors/{stats.js → stats.ts} +11 -7
  327. package/src/common/errors/{webex-errors.js → webex-errors.ts} +8 -7
  328. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
  329. package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
  330. package/src/common/events/{events.js → events.ts} +5 -1
  331. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
  332. package/src/common/events/{util.js → util.ts} +2 -3
  333. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  334. package/src/common/logs/logger-proxy.ts +44 -0
  335. package/src/common/logs/{request.js → request.ts} +22 -9
  336. package/src/common/queue.ts +1 -2
  337. package/src/{config.js → config.ts} +17 -12
  338. package/src/constants.ts +62 -5
  339. package/src/controls-options-manager/constants.ts +5 -0
  340. package/src/controls-options-manager/enums.ts +6 -0
  341. package/src/controls-options-manager/index.ts +183 -0
  342. package/src/controls-options-manager/util.ts +20 -0
  343. package/src/index.js +4 -1
  344. package/src/locus-info/controlsUtils.ts +114 -0
  345. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  346. package/src/locus-info/{fullState.js → fullState.ts} +16 -12
  347. package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
  348. package/src/locus-info/{index.js → index.ts} +150 -66
  349. package/src/locus-info/{infoUtils.js → infoUtils.ts} +19 -8
  350. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +17 -17
  351. package/src/locus-info/{parser.js → parser.ts} +67 -79
  352. package/src/locus-info/{selfUtils.js → selfUtils.ts} +123 -68
  353. package/src/media/{index.js → index.ts} +182 -173
  354. package/src/media/{properties.js → properties.ts} +60 -37
  355. package/src/media/{util.js → util.ts} +2 -2
  356. package/src/mediaQualityMetrics/config.ts +384 -0
  357. package/src/meeting/in-meeting-actions.ts +31 -3
  358. package/src/meeting/{index.js → index.ts} +2512 -1579
  359. package/src/meeting/{muteState.js → muteState.ts} +95 -49
  360. package/src/meeting/{request.js → request.ts} +326 -142
  361. package/src/meeting/request.type.ts +13 -0
  362. package/src/meeting/{state.js → state.ts} +50 -35
  363. package/src/meeting/{util.js → util.ts} +117 -119
  364. package/src/meeting-info/{collection.js → collection.ts} +6 -2
  365. package/src/meeting-info/{index.js → index.ts} +42 -36
  366. package/src/meeting-info/meeting-info-v2.ts +273 -0
  367. package/src/meeting-info/{request.js → request.ts} +14 -4
  368. package/src/meeting-info/{util.js → util.ts} +60 -51
  369. package/src/meeting-info/{utilv2.js → utilv2.ts} +65 -58
  370. package/src/meetings/{collection.js → collection.ts} +6 -3
  371. package/src/meetings/index.ts +1159 -0
  372. package/src/meetings/{request.js → request.ts} +32 -25
  373. package/src/meetings/{util.js → util.ts} +58 -32
  374. package/src/member/{index.js → index.ts} +102 -56
  375. package/src/member/{util.js → util.ts} +52 -25
  376. package/src/members/{collection.js → collection.ts} +2 -2
  377. package/src/members/{index.js → index.ts} +221 -142
  378. package/src/members/{request.js → request.ts} +60 -16
  379. package/src/members/{util.js → util.ts} +50 -48
  380. package/src/metrics/{config.js → config.ts} +253 -92
  381. package/src/metrics/{constants.js → constants.ts} +0 -6
  382. package/src/metrics/{index.js → index.ts} +105 -94
  383. package/src/multistream/mediaRequestManager.ts +101 -39
  384. package/src/multistream/receiveSlot.ts +62 -26
  385. package/src/multistream/receiveSlotManager.ts +35 -21
  386. package/src/multistream/remoteMedia.ts +38 -5
  387. package/src/multistream/remoteMediaGroup.ts +4 -3
  388. package/src/multistream/remoteMediaManager.ts +152 -36
  389. package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
  390. package/src/personal-meeting-room/{index.js → index.ts} +28 -19
  391. package/src/personal-meeting-room/{request.js → request.ts} +13 -4
  392. package/src/personal-meeting-room/{util.js → util.ts} +4 -4
  393. package/src/reachability/{index.js → index.ts} +109 -85
  394. package/src/reachability/request.ts +46 -35
  395. package/src/reactions/constants.ts +4 -0
  396. package/src/reactions/reactions.ts +104 -0
  397. package/src/reactions/reactions.type.ts +62 -0
  398. package/src/reconnection-manager/{index.js → index.ts} +196 -103
  399. package/src/recording-controller/enums.ts +8 -0
  400. package/src/recording-controller/index.ts +315 -0
  401. package/src/recording-controller/util.ts +58 -0
  402. package/src/roap/{index.js → index.ts} +77 -60
  403. package/src/roap/request.ts +172 -0
  404. package/src/roap/turnDiscovery.ts +81 -41
  405. package/src/statsAnalyzer/global.ts +37 -0
  406. package/src/statsAnalyzer/index.ts +1234 -0
  407. package/src/statsAnalyzer/mqaUtil.ts +293 -0
  408. package/src/transcription/{index.js → index.ts} +46 -39
  409. package/test/integration/spec/converged-space-meetings.js +176 -0
  410. package/test/integration/spec/journey.js +665 -464
  411. package/test/integration/spec/space-meeting.js +320 -206
  412. package/test/integration/spec/transcription.js +7 -8
  413. package/test/unit/spec/breakouts/breakout.ts +147 -0
  414. package/test/unit/spec/breakouts/collection.ts +15 -0
  415. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  416. package/test/unit/spec/breakouts/index.ts +707 -0
  417. package/test/unit/spec/breakouts/request.ts +104 -0
  418. package/test/unit/spec/breakouts/utils.js +47 -0
  419. package/test/unit/spec/common/browser-detection.js +9 -28
  420. package/test/unit/spec/controls-options-manager/index.js +124 -0
  421. package/test/unit/spec/controls-options-manager/util.js +66 -0
  422. package/test/unit/spec/fixture/locus.js +92 -90
  423. package/test/unit/spec/locus-info/controlsUtils.js +25 -5
  424. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  425. package/test/unit/spec/locus-info/index.js +104 -2
  426. package/test/unit/spec/locus-info/infoUtils.js +41 -32
  427. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  428. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  429. package/test/unit/spec/locus-info/parser.js +3 -9
  430. package/test/unit/spec/locus-info/selfConstant.js +97 -103
  431. package/test/unit/spec/locus-info/selfUtils.js +105 -12
  432. package/test/unit/spec/media/index.ts +39 -53
  433. package/test/unit/spec/media/properties.ts +9 -9
  434. package/test/unit/spec/meeting/in-meeting-actions.ts +13 -2
  435. package/test/unit/spec/meeting/index.js +2253 -811
  436. package/test/unit/spec/meeting/muteState.js +74 -55
  437. package/test/unit/spec/meeting/request.js +141 -43
  438. package/test/unit/spec/meeting/utils.js +106 -171
  439. package/test/unit/spec/meeting-info/meetinginfov2.js +100 -73
  440. package/test/unit/spec/meeting-info/request.js +7 -9
  441. package/test/unit/spec/meeting-info/util.js +11 -12
  442. package/test/unit/spec/meeting-info/utilv2.js +110 -74
  443. package/test/unit/spec/meetings/collection.js +1 -1
  444. package/test/unit/spec/meetings/index.js +439 -257
  445. package/test/unit/spec/meetings/utils.js +14 -12
  446. package/test/unit/spec/member/index.js +0 -1
  447. package/test/unit/spec/member/util.js +31 -7
  448. package/test/unit/spec/members/index.js +104 -54
  449. package/test/unit/spec/members/request.js +29 -20
  450. package/test/unit/spec/members/utils.js +8 -5
  451. package/test/unit/spec/metrics/index.js +16 -21
  452. package/test/unit/spec/multistream/mediaRequestManager.ts +318 -64
  453. package/test/unit/spec/multistream/receiveSlot.ts +68 -17
  454. package/test/unit/spec/multistream/receiveSlotManager.ts +41 -13
  455. package/test/unit/spec/multistream/remoteMedia.ts +38 -2
  456. package/test/unit/spec/multistream/remoteMediaGroup.ts +5 -5
  457. package/test/unit/spec/multistream/remoteMediaManager.ts +412 -65
  458. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  459. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  460. package/test/unit/spec/reachability/index.ts +70 -27
  461. package/test/unit/spec/reachability/request.js +66 -0
  462. package/test/unit/spec/reconnection-manager/index.js +58 -30
  463. package/test/unit/spec/recording-controller/index.js +231 -0
  464. package/test/unit/spec/recording-controller/util.js +102 -0
  465. package/test/unit/spec/roap/index.ts +12 -8
  466. package/test/unit/spec/roap/request.ts +217 -0
  467. package/test/unit/spec/roap/turnDiscovery.ts +72 -49
  468. package/test/unit/spec/stats-analyzer/index.js +86 -57
  469. package/test/utils/cmr.js +44 -42
  470. package/test/utils/constants.js +9 -0
  471. package/test/utils/testUtils.js +98 -77
  472. package/test/utils/webex-config.js +22 -18
  473. package/test/utils/webex-test-users.js +57 -50
  474. package/tsconfig.json +6 -0
  475. package/dist/media/internal-media-core-wrapper.js +0 -22
  476. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  477. package/dist/meeting/effectsState.js +0 -327
  478. package/dist/meeting/effectsState.js.map +0 -1
  479. package/dist/multistream/multistreamMedia.js +0 -116
  480. package/dist/multistream/multistreamMedia.js.map +0 -1
  481. package/dist/peer-connection-manager/util.js +0 -124
  482. package/dist/peer-connection-manager/util.js.map +0 -1
  483. package/src/common/logs/logger-proxy.js +0 -33
  484. package/src/locus-info/controlsUtils.js +0 -102
  485. package/src/media/internal-media-core-wrapper.ts +0 -9
  486. package/src/mediaQualityMetrics/config.js +0 -382
  487. package/src/meeting/effectsState.js +0 -205
  488. package/src/meeting-info/meeting-info-v2.js +0 -255
  489. package/src/meetings/index.js +0 -1015
  490. package/src/multistream/multistreamMedia.ts +0 -92
  491. package/src/peer-connection-manager/util.ts +0 -117
  492. package/src/roap/request.js +0 -127
  493. package/src/statsAnalyzer/global.js +0 -133
  494. package/src/statsAnalyzer/index.js +0 -1006
  495. package/src/statsAnalyzer/mqaUtil.js +0 -173
  496. package/test/unit/spec/meeting/effectsState.js +0 -291
  497. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
  498. /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,39 @@
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} message // message to log
25
+ * @returns {object}
26
+ */
27
+ export const boServiceErrorHandler = (error: any, message: string): any => {
28
+ const errorCode = error?.body?.errorCode;
29
+ const {EDIT_LOCK_TOKEN_MISMATCH} = BREAKOUTS.ERROR_CODE;
30
+ switch (errorCode) {
31
+ case EDIT_LOCK_TOKEN_MISMATCH:
32
+ LoggerProxy.logger.info(message);
33
+
34
+ return new BreakoutEditLockedError('Edit lock token mismatch', error);
35
+
36
+ default:
37
+ return error;
38
+ }
39
+ };
@@ -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,14 +57,16 @@ 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.
@@ -82,7 +85,6 @@ class NoMediaEstablishedYetError extends WebexMeetingsError {
82
85
  export {NoMediaEstablishedYetError};
83
86
  WebExMeetingsErrors[NoMediaEstablishedYetError.CODE] = NoMediaEstablishedYetError;
84
87
 
85
-
86
88
  /**
87
89
  * @class UserInLobbyError
88
90
  * @classdesc Raised whenever the user is in lobby and not joined yet.
@@ -101,7 +103,6 @@ class UserInLobbyError extends WebexMeetingsError {
101
103
  export {UserInLobbyError};
102
104
  WebExMeetingsErrors[UserInLobbyError.CODE] = UserInLobbyError;
103
105
 
104
-
105
106
  /**
106
107
  * @class IceGatheringFailed
107
108
  * @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
 
@@ -1,5 +1,4 @@
1
-
2
- const LoggerConfig = {};
1
+ const LoggerConfig: any = {};
3
2
 
4
3
  LoggerConfig.set = (options) => {
5
4
  LoggerConfig.verboseEvents = options.verboseEvents;