@webex/plugin-meetings 3.0.0-beta.7 → 3.0.0-beta.71

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 (506) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/breakouts/breakout.js +178 -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 +843 -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 +56 -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 +143 -52
  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 +16 -0
  68. package/dist/controls-options-manager/enums.js.map +1 -0
  69. package/dist/controls-options-manager/index.js +261 -0
  70. package/dist/controls-options-manager/index.js.map +1 -0
  71. package/dist/controls-options-manager/util.js +39 -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 +31 -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 +237 -198
  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 +80 -89
  92. package/dist/locus-info/selfUtils.js.map +1 -1
  93. package/dist/media/index.js +56 -146
  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 +31 -14
  102. package/dist/meeting/in-meeting-actions.js.map +1 -1
  103. package/dist/meeting/index.js +2225 -2244
  104. package/dist/meeting/index.js.map +1 -1
  105. package/dist/meeting/muteState.js +102 -100
  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 +63 -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 +26 -19
  128. package/dist/meetings/collection.js.map +1 -1
  129. package/dist/meetings/index.js +565 -552
  130. package/dist/meetings/index.js.map +1 -1
  131. package/dist/meetings/request.js +26 -41
  132. package/dist/meetings/request.js.map +1 -1
  133. package/dist/meetings/util.js +151 -155
  134. package/dist/meetings/util.js.map +1 -1
  135. package/dist/member/index.js +100 -85
  136. package/dist/member/index.js.map +1 -1
  137. package/dist/member/types.js +15 -0
  138. package/dist/member/types.js.map +1 -0
  139. package/dist/member/util.js +90 -68
  140. package/dist/member/util.js.map +1 -1
  141. package/dist/members/collection.js +13 -12
  142. package/dist/members/collection.js.map +1 -1
  143. package/dist/members/index.js +152 -204
  144. package/dist/members/index.js.map +1 -1
  145. package/dist/members/request.js +35 -39
  146. package/dist/members/request.js.map +1 -1
  147. package/dist/members/types.js +15 -0
  148. package/dist/members/types.js.map +1 -0
  149. package/dist/members/util.js +76 -46
  150. package/dist/members/util.js.map +1 -1
  151. package/dist/metrics/config.js +4 -14
  152. package/dist/metrics/config.js.map +1 -1
  153. package/dist/metrics/constants.js +1 -6
  154. package/dist/metrics/constants.js.map +1 -1
  155. package/dist/metrics/index.js +59 -156
  156. package/dist/metrics/index.js.map +1 -1
  157. package/dist/multistream/mediaRequestManager.js +116 -52
  158. package/dist/multistream/mediaRequestManager.js.map +1 -1
  159. package/dist/multistream/receiveSlot.js +58 -65
  160. package/dist/multistream/receiveSlot.js.map +1 -1
  161. package/dist/multistream/receiveSlotManager.js +58 -93
  162. package/dist/multistream/receiveSlotManager.js.map +1 -1
  163. package/dist/multistream/remoteMedia.js +55 -74
  164. package/dist/multistream/remoteMedia.js.map +1 -1
  165. package/dist/multistream/remoteMediaGroup.js +6 -40
  166. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  167. package/dist/multistream/remoteMediaManager.js +466 -442
  168. package/dist/multistream/remoteMediaManager.js.map +1 -1
  169. package/dist/networkQualityMonitor/index.js +40 -59
  170. package/dist/networkQualityMonitor/index.js.map +1 -1
  171. package/dist/personal-meeting-room/index.js +21 -45
  172. package/dist/personal-meeting-room/index.js.map +1 -1
  173. package/dist/personal-meeting-room/request.js +1 -31
  174. package/dist/personal-meeting-room/request.js.map +1 -1
  175. package/dist/personal-meeting-room/util.js +0 -13
  176. package/dist/personal-meeting-room/util.js.map +1 -1
  177. package/dist/reachability/index.js +192 -191
  178. package/dist/reachability/index.js.map +1 -1
  179. package/dist/reachability/request.js +15 -23
  180. package/dist/reachability/request.js.map +1 -1
  181. package/dist/reactions/constants.js +13 -0
  182. package/dist/reactions/constants.js.map +1 -0
  183. package/dist/reactions/reactions.js +109 -0
  184. package/dist/reactions/reactions.js.map +1 -0
  185. package/dist/reactions/reactions.type.js +36 -0
  186. package/dist/reactions/reactions.type.js.map +1 -0
  187. package/dist/reconnection-manager/index.js +342 -460
  188. package/dist/reconnection-manager/index.js.map +1 -1
  189. package/dist/recording-controller/enums.js +17 -0
  190. package/dist/recording-controller/enums.js.map +1 -0
  191. package/dist/recording-controller/index.js +343 -0
  192. package/dist/recording-controller/index.js.map +1 -0
  193. package/dist/recording-controller/util.js +63 -0
  194. package/dist/recording-controller/util.js.map +1 -0
  195. package/dist/roap/index.js +48 -70
  196. package/dist/roap/index.js.map +1 -1
  197. package/dist/roap/request.js +143 -131
  198. package/dist/roap/request.js.map +1 -1
  199. package/dist/roap/turnDiscovery.js +91 -98
  200. package/dist/roap/turnDiscovery.js.map +1 -1
  201. package/dist/statsAnalyzer/global.js +1 -95
  202. package/dist/statsAnalyzer/global.js.map +1 -1
  203. package/dist/statsAnalyzer/index.js +372 -455
  204. package/dist/statsAnalyzer/index.js.map +1 -1
  205. package/dist/statsAnalyzer/mqaUtil.js +143 -87
  206. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  207. package/dist/transcription/index.js +22 -47
  208. package/dist/transcription/index.js.map +1 -1
  209. package/dist/types/breakouts/breakout.d.ts +8 -0
  210. package/dist/types/breakouts/collection.d.ts +5 -0
  211. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  212. package/dist/types/breakouts/index.d.ts +5 -0
  213. package/dist/types/breakouts/request.d.ts +22 -0
  214. package/dist/types/breakouts/utils.d.ts +8 -0
  215. package/dist/types/common/browser-detection.d.ts +9 -0
  216. package/dist/types/common/collection.d.ts +48 -0
  217. package/dist/types/common/config.d.ts +2 -0
  218. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  219. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  220. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  221. package/dist/types/common/errors/media.d.ts +15 -0
  222. package/dist/types/common/errors/parameter.d.ts +15 -0
  223. package/dist/types/common/errors/password-error.d.ts +15 -0
  224. package/dist/types/common/errors/permission.d.ts +14 -0
  225. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  226. package/dist/types/common/errors/reconnection.d.ts +15 -0
  227. package/dist/types/common/errors/stats.d.ts +15 -0
  228. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  229. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  230. package/dist/types/common/events/events-scope.d.ts +17 -0
  231. package/dist/types/common/events/events.d.ts +12 -0
  232. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  233. package/dist/types/common/events/util.d.ts +2 -0
  234. package/dist/types/common/logs/logger-config.d.ts +2 -0
  235. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  236. package/dist/types/common/logs/request.d.ts +34 -0
  237. package/dist/types/common/queue.d.ts +32 -0
  238. package/dist/types/config.d.ts +77 -0
  239. package/dist/types/constants.d.ts +944 -0
  240. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  241. package/dist/types/controls-options-manager/enums.d.ts +6 -0
  242. package/dist/types/controls-options-manager/index.d.ts +128 -0
  243. package/dist/types/controls-options-manager/util.d.ts +9 -0
  244. package/dist/types/index.d.ts +6 -0
  245. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  246. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  247. package/dist/types/locus-info/fullState.d.ts +2 -0
  248. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  249. package/dist/types/locus-info/index.d.ts +276 -0
  250. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  251. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  252. package/dist/types/locus-info/parser.d.ts +212 -0
  253. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  254. package/dist/types/media/index.d.ts +32 -0
  255. package/dist/types/media/properties.d.ts +108 -0
  256. package/dist/types/media/util.d.ts +2 -0
  257. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  258. package/dist/types/meeting/in-meeting-actions.d.ts +101 -0
  259. package/dist/types/meeting/index.d.ts +1720 -0
  260. package/dist/types/meeting/muteState.d.ts +132 -0
  261. package/dist/types/meeting/request.d.ts +271 -0
  262. package/dist/types/meeting/request.type.d.ts +11 -0
  263. package/dist/types/meeting/state.d.ts +9 -0
  264. package/dist/types/meeting/util.d.ts +2 -0
  265. package/dist/types/meeting-info/collection.d.ts +20 -0
  266. package/dist/types/meeting-info/index.d.ts +57 -0
  267. package/dist/types/meeting-info/meeting-info-v2.d.ts +93 -0
  268. package/dist/types/meeting-info/request.d.ts +22 -0
  269. package/dist/types/meeting-info/util.d.ts +2 -0
  270. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  271. package/dist/types/meetings/collection.d.ts +31 -0
  272. package/dist/types/meetings/index.d.ts +315 -0
  273. package/dist/types/meetings/request.d.ts +27 -0
  274. package/dist/types/meetings/util.d.ts +18 -0
  275. package/dist/types/member/index.d.ts +156 -0
  276. package/dist/types/member/types.d.ts +21 -0
  277. package/dist/types/member/util.d.ts +2 -0
  278. package/dist/types/members/collection.d.ts +29 -0
  279. package/dist/types/members/index.d.ts +343 -0
  280. package/dist/types/members/request.d.ts +58 -0
  281. package/dist/types/members/types.d.ts +24 -0
  282. package/dist/types/members/util.d.ts +2 -0
  283. package/dist/types/metrics/config.d.ts +171 -0
  284. package/dist/types/metrics/constants.d.ts +53 -0
  285. package/dist/types/metrics/index.d.ts +152 -0
  286. package/dist/types/multistream/mediaRequestManager.d.ts +68 -0
  287. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  288. package/dist/types/multistream/receiveSlotManager.d.ts +49 -0
  289. package/dist/types/multistream/remoteMedia.d.ts +100 -0
  290. package/dist/types/multistream/remoteMediaGroup.d.ts +56 -0
  291. package/dist/types/multistream/remoteMediaManager.d.ts +263 -0
  292. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  293. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  294. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  295. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  296. package/dist/types/reachability/index.d.ts +152 -0
  297. package/dist/types/reachability/request.d.ts +37 -0
  298. package/dist/types/reactions/constants.d.ts +3 -0
  299. package/dist/types/reactions/reactions.d.ts +4 -0
  300. package/dist/types/reactions/reactions.type.d.ts +52 -0
  301. package/dist/types/reconnection-manager/index.d.ts +126 -0
  302. package/dist/types/recording-controller/enums.d.ts +7 -0
  303. package/dist/types/recording-controller/index.d.ts +193 -0
  304. package/dist/types/recording-controller/util.d.ts +13 -0
  305. package/dist/types/roap/index.d.ts +77 -0
  306. package/dist/types/roap/request.d.ts +38 -0
  307. package/dist/types/roap/turnDiscovery.d.ts +74 -0
  308. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  309. package/dist/types/statsAnalyzer/index.d.ts +195 -0
  310. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  311. package/dist/types/transcription/index.d.ts +64 -0
  312. package/internal-README.md +7 -6
  313. package/package.json +27 -21
  314. package/src/breakouts/README.md +219 -0
  315. package/src/breakouts/breakout.ts +153 -0
  316. package/src/breakouts/collection.ts +19 -0
  317. package/src/breakouts/edit-lock-error.ts +25 -0
  318. package/src/breakouts/index.ts +745 -0
  319. package/src/breakouts/request.ts +55 -0
  320. package/src/breakouts/utils.ts +44 -0
  321. package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
  322. package/src/common/collection.ts +9 -7
  323. package/src/common/{config.js → config.ts} +1 -1
  324. package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
  325. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
  326. package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
  327. package/src/common/errors/{media.js → media.ts} +11 -7
  328. package/src/common/errors/parameter.ts +11 -7
  329. package/src/common/errors/{password-error.js → password-error.ts} +11 -7
  330. package/src/common/errors/{permission.js → permission.ts} +10 -6
  331. package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
  332. package/src/common/errors/{stats.js → stats.ts} +11 -7
  333. package/src/common/errors/{webex-errors.js → webex-errors.ts} +8 -7
  334. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
  335. package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
  336. package/src/common/events/{events.js → events.ts} +5 -1
  337. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
  338. package/src/common/events/{util.js → util.ts} +2 -3
  339. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  340. package/src/common/logs/logger-proxy.ts +44 -0
  341. package/src/common/logs/{request.js → request.ts} +22 -9
  342. package/src/common/queue.ts +1 -2
  343. package/src/{config.js → config.ts} +17 -12
  344. package/src/constants.ts +92 -5
  345. package/src/controls-options-manager/constants.ts +5 -0
  346. package/src/controls-options-manager/enums.ts +7 -0
  347. package/src/controls-options-manager/index.ts +240 -0
  348. package/src/controls-options-manager/util.ts +30 -0
  349. package/src/index.js +4 -1
  350. package/src/locus-info/controlsUtils.ts +141 -0
  351. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  352. package/src/locus-info/{fullState.js → fullState.ts} +16 -12
  353. package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
  354. package/src/locus-info/{index.js → index.ts} +211 -71
  355. package/src/locus-info/{infoUtils.js → infoUtils.ts} +19 -8
  356. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +17 -17
  357. package/src/locus-info/{parser.js → parser.ts} +67 -79
  358. package/src/locus-info/{selfUtils.js → selfUtils.ts} +183 -67
  359. package/src/media/{index.js → index.ts} +179 -176
  360. package/src/media/{properties.js → properties.ts} +60 -37
  361. package/src/media/{util.js → util.ts} +2 -2
  362. package/src/mediaQualityMetrics/config.ts +384 -0
  363. package/src/meeting/in-meeting-actions.ts +67 -3
  364. package/src/meeting/{index.js → index.ts} +2605 -1605
  365. package/src/meeting/{muteState.js → muteState.ts} +138 -73
  366. package/src/meeting/{request.js → request.ts} +326 -142
  367. package/src/meeting/request.type.ts +13 -0
  368. package/src/meeting/{state.js → state.ts} +50 -35
  369. package/src/meeting/{util.js → util.ts} +131 -115
  370. package/src/meeting-info/{collection.js → collection.ts} +6 -2
  371. package/src/meeting-info/{index.js → index.ts} +42 -36
  372. package/src/meeting-info/meeting-info-v2.ts +273 -0
  373. package/src/meeting-info/{request.js → request.ts} +14 -4
  374. package/src/meeting-info/{util.js → util.ts} +60 -51
  375. package/src/meeting-info/{utilv2.js → utilv2.ts} +65 -58
  376. package/src/meetings/{collection.js → collection.ts} +26 -3
  377. package/src/meetings/index.ts +1275 -0
  378. package/src/meetings/{request.js → request.ts} +34 -25
  379. package/src/meetings/{util.js → util.ts} +99 -33
  380. package/src/member/{index.js → index.ts} +124 -56
  381. package/src/member/types.ts +24 -0
  382. package/src/member/{util.js → util.ts} +105 -25
  383. package/src/members/{collection.js → collection.ts} +10 -2
  384. package/src/members/{index.js → index.ts} +281 -144
  385. package/src/members/{request.js → request.ts} +80 -16
  386. package/src/members/types.ts +28 -0
  387. package/src/members/{util.js → util.ts} +108 -55
  388. package/src/metrics/{config.js → config.ts} +255 -92
  389. package/src/metrics/{constants.js → constants.ts} +0 -6
  390. package/src/metrics/{index.js → index.ts} +110 -94
  391. package/src/multistream/mediaRequestManager.ts +144 -40
  392. package/src/multistream/receiveSlot.ts +69 -26
  393. package/src/multistream/receiveSlotManager.ts +50 -38
  394. package/src/multistream/remoteMedia.ts +30 -4
  395. package/src/multistream/remoteMediaGroup.ts +4 -3
  396. package/src/multistream/remoteMediaManager.ts +230 -66
  397. package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
  398. package/src/personal-meeting-room/{index.js → index.ts} +28 -19
  399. package/src/personal-meeting-room/{request.js → request.ts} +13 -4
  400. package/src/personal-meeting-room/{util.js → util.ts} +4 -4
  401. package/src/reachability/{index.js → index.ts} +157 -94
  402. package/src/reachability/request.ts +46 -35
  403. package/src/reactions/constants.ts +4 -0
  404. package/src/reactions/reactions.ts +104 -0
  405. package/src/reactions/reactions.type.ts +62 -0
  406. package/src/reconnection-manager/{index.js → index.ts} +228 -120
  407. package/src/recording-controller/enums.ts +8 -0
  408. package/src/recording-controller/index.ts +315 -0
  409. package/src/recording-controller/util.ts +58 -0
  410. package/src/roap/{index.js → index.ts} +77 -60
  411. package/src/roap/request.ts +172 -0
  412. package/src/roap/turnDiscovery.ts +81 -41
  413. package/src/statsAnalyzer/global.ts +37 -0
  414. package/src/statsAnalyzer/index.ts +1242 -0
  415. package/src/statsAnalyzer/mqaUtil.ts +291 -0
  416. package/src/transcription/{index.js → index.ts} +46 -39
  417. package/test/integration/spec/converged-space-meetings.js +176 -0
  418. package/test/integration/spec/journey.js +665 -464
  419. package/test/integration/spec/space-meeting.js +320 -206
  420. package/test/integration/spec/transcription.js +7 -8
  421. package/test/unit/spec/breakouts/breakout.ts +178 -0
  422. package/test/unit/spec/breakouts/collection.ts +15 -0
  423. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  424. package/test/unit/spec/breakouts/index.ts +1252 -0
  425. package/test/unit/spec/breakouts/request.ts +104 -0
  426. package/test/unit/spec/breakouts/utils.js +54 -0
  427. package/test/unit/spec/common/browser-detection.js +9 -28
  428. package/test/unit/spec/controls-options-manager/index.js +204 -0
  429. package/test/unit/spec/controls-options-manager/util.js +86 -0
  430. package/test/unit/spec/fixture/locus.js +92 -90
  431. package/test/unit/spec/locus-info/controlsUtils.js +133 -34
  432. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  433. package/test/unit/spec/locus-info/index.js +303 -2
  434. package/test/unit/spec/locus-info/infoUtils.js +41 -32
  435. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  436. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  437. package/test/unit/spec/locus-info/parser.js +3 -9
  438. package/test/unit/spec/locus-info/selfConstant.js +101 -103
  439. package/test/unit/spec/locus-info/selfUtils.js +165 -12
  440. package/test/unit/spec/media/index.ts +72 -8
  441. package/test/unit/spec/media/properties.ts +9 -9
  442. package/test/unit/spec/meeting/in-meeting-actions.ts +29 -2
  443. package/test/unit/spec/meeting/index.js +2503 -802
  444. package/test/unit/spec/meeting/muteState.js +146 -61
  445. package/test/unit/spec/meeting/request.js +141 -43
  446. package/test/unit/spec/meeting/utils.js +135 -164
  447. package/test/unit/spec/meeting-info/meetinginfov2.js +100 -73
  448. package/test/unit/spec/meeting-info/request.js +7 -9
  449. package/test/unit/spec/meeting-info/util.js +11 -12
  450. package/test/unit/spec/meeting-info/utilv2.js +110 -74
  451. package/test/unit/spec/meetings/collection.js +15 -1
  452. package/test/unit/spec/meetings/index.js +622 -263
  453. package/test/unit/spec/meetings/utils.js +65 -14
  454. package/test/unit/spec/member/index.js +24 -1
  455. package/test/unit/spec/member/util.js +359 -32
  456. package/test/unit/spec/members/index.js +294 -54
  457. package/test/unit/spec/members/request.js +50 -20
  458. package/test/unit/spec/members/utils.js +147 -4
  459. package/test/unit/spec/metrics/index.js +16 -21
  460. package/test/unit/spec/multistream/mediaRequestManager.ts +369 -68
  461. package/test/unit/spec/multistream/receiveSlot.ts +76 -17
  462. package/test/unit/spec/multistream/receiveSlotManager.ts +60 -38
  463. package/test/unit/spec/multistream/remoteMedia.ts +32 -2
  464. package/test/unit/spec/multistream/remoteMediaGroup.ts +5 -5
  465. package/test/unit/spec/multistream/remoteMediaManager.ts +549 -65
  466. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  467. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  468. package/test/unit/spec/reachability/index.ts +176 -27
  469. package/test/unit/spec/reachability/request.js +66 -0
  470. package/test/unit/spec/reconnection-manager/index.js +58 -30
  471. package/test/unit/spec/recording-controller/index.js +231 -0
  472. package/test/unit/spec/recording-controller/util.js +102 -0
  473. package/test/unit/spec/roap/index.ts +12 -8
  474. package/test/unit/spec/roap/request.ts +217 -0
  475. package/test/unit/spec/roap/turnDiscovery.ts +72 -49
  476. package/test/unit/spec/stats-analyzer/index.js +108 -57
  477. package/test/utils/cmr.js +44 -42
  478. package/test/utils/constants.js +9 -0
  479. package/test/utils/testUtils.js +98 -77
  480. package/test/utils/webex-config.js +22 -18
  481. package/test/utils/webex-test-users.js +57 -50
  482. package/tsconfig.json +6 -0
  483. package/dist/media/internal-media-core-wrapper.js +0 -22
  484. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  485. package/dist/meeting/effectsState.js +0 -327
  486. package/dist/meeting/effectsState.js.map +0 -1
  487. package/dist/multistream/multistreamMedia.js +0 -116
  488. package/dist/multistream/multistreamMedia.js.map +0 -1
  489. package/dist/peer-connection-manager/util.js +0 -124
  490. package/dist/peer-connection-manager/util.js.map +0 -1
  491. package/src/common/logs/logger-proxy.js +0 -33
  492. package/src/locus-info/controlsUtils.js +0 -102
  493. package/src/media/internal-media-core-wrapper.ts +0 -9
  494. package/src/mediaQualityMetrics/config.js +0 -382
  495. package/src/meeting/effectsState.js +0 -205
  496. package/src/meeting-info/meeting-info-v2.js +0 -255
  497. package/src/meetings/index.js +0 -1015
  498. package/src/multistream/multistreamMedia.ts +0 -92
  499. package/src/peer-connection-manager/util.ts +0 -117
  500. package/src/roap/request.js +0 -127
  501. package/src/statsAnalyzer/global.js +0 -133
  502. package/src/statsAnalyzer/index.js +0 -1006
  503. package/src/statsAnalyzer/mqaUtil.js +0 -173
  504. package/test/unit/spec/meeting/effectsState.js +0 -291
  505. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
  506. /package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
@@ -1,78 +1,52 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
5
4
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
6
-
7
5
  _Object$defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
-
11
8
  exports.default = void 0;
12
-
13
9
  var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
14
-
15
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
16
-
17
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
18
-
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
19
13
  var _includes2 = _interopRequireDefault(require("lodash/includes"));
20
-
21
14
  var _util = _interopRequireDefault(require("util"));
22
-
23
15
  var _uuid = _interopRequireDefault(require("uuid"));
24
-
25
16
  var _window = _interopRequireDefault(require("global/window"));
26
-
27
17
  var _ipAnonymize = _interopRequireDefault(require("ip-anonymize"));
28
-
18
+ var _internalPluginMetrics = require("@webex/internal-plugin-metrics");
29
19
  var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
30
-
31
20
  var _constants = require("../constants");
32
-
33
21
  var _browserDetection = _interopRequireDefault(require("../common/browser-detection"));
34
-
35
22
  var _config = require("./config");
36
-
37
23
  /*!
38
24
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
39
25
  */
40
- var OSMap = {
41
- 'Chrome OS': _config.OS_NAME.chrome,
42
- macOS: _config.OS_NAME.MAC,
43
- Windows: _config.OS_NAME.WINDOWS,
44
- iOS: _config.OS_NAME.IOS,
45
- Android: _config.OS_NAME.ANDROID,
46
- Linux: _config.OS_NAME.LINUX
47
- };
48
26
 
49
27
  var _BrowserDetection = (0, _browserDetection.default)(),
50
- getOSName = _BrowserDetection.getOSName,
51
- getOSVersion = _BrowserDetection.getOSVersion,
52
- getBrowserName = _BrowserDetection.getBrowserName,
53
- getBrowserVersion = _BrowserDetection.getBrowserVersion; // Apply a CIDR /28 format to the IPV4 and /96 to the IPV6 addresses
54
- // For reference : https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing
55
-
28
+ getOSName = _BrowserDetection.getOSName,
29
+ getOSVersion = _BrowserDetection.getOSVersion,
30
+ getBrowserName = _BrowserDetection.getBrowserName,
31
+ getBrowserVersion = _BrowserDetection.getBrowserVersion;
56
32
 
33
+ // Apply a CIDR /28 format to the IPV4 and /96 to the IPV6 addresses
34
+ // For reference : https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing
57
35
  var anonymizeIPAddress = function anonymizeIPAddress(localIp) {
58
36
  return (0, _ipAnonymize.default)(localIp, 28, 96);
59
37
  };
60
-
61
38
  var triggerTimers = function triggerTimers(_ref) {
62
39
  var event = _ref.event,
63
- meeting = _ref.meeting,
64
- data = _ref.data;
65
-
40
+ meeting = _ref.meeting,
41
+ data = _ref.data;
66
42
  switch (event) {
67
43
  case _config.eventType.CALL_INITIATED:
68
44
  meeting.setStartCallInitiateJoinReq();
69
45
  break;
70
-
71
46
  case _config.eventType.LOCUS_JOIN_REQUEST:
72
47
  meeting.setEndCallInitiateJoinReq();
73
48
  meeting.setStartJoinReqResp();
74
49
  break;
75
-
76
50
  case _config.eventType.LOCUS_JOIN_RESPONSE:
77
51
  meeting.setEndJoinReqResp();
78
52
  meeting.setStartSetupDelay(_config.mediaType.AUDIO);
@@ -80,44 +54,41 @@ var triggerTimers = function triggerTimers(_ref) {
80
54
  meeting.setStartSendingMediaDelay(_config.mediaType.AUDIO);
81
55
  meeting.setStartSendingMediaDelay(_config.mediaType.VIDEO);
82
56
  break;
83
-
84
57
  case _config.eventType.RECEIVING_MEDIA_START:
85
58
  meeting.setEndSetupDelay(data.mediaType);
86
59
  break;
87
-
88
60
  case _config.eventType.SENDING_MEDIA_START:
89
61
  meeting.setEndSendingMediaDelay(data.mediaType);
90
62
  break;
91
-
92
63
  case _config.eventType.LOCAL_SDP_GENERATED:
93
64
  meeting.setStartLocalSDPGenRemoteSDPRecvDelay();
94
65
  break;
95
-
96
66
  case _config.eventType.REMOTE_SDP_RECEIVED:
97
67
  meeting.setEndLocalSDPGenRemoteSDPRecvDelay();
98
68
  break;
99
-
100
69
  default:
101
70
  break;
102
71
  }
103
72
  };
73
+
104
74
  /**
105
75
  * @description Metrics handles all the call metrics events
106
76
  * @export
107
77
  * @class Metrics
108
78
  */
109
-
110
-
111
79
  var Metrics = /*#__PURE__*/function () {
112
80
  /**
113
- * Create Metrics Object
114
- * @constructor
115
- * @public
116
- * @memberof Meetings
117
- */
81
+ * Create Metrics Object
82
+ * @constructor
83
+ * @public
84
+ * @memberof Meetings
85
+ */
118
86
  function Metrics() {
119
87
  (0, _classCallCheck2.default)(this, Metrics);
120
-
88
+ (0, _defineProperty2.default)(this, "_events", void 0);
89
+ (0, _defineProperty2.default)(this, "keys", void 0);
90
+ (0, _defineProperty2.default)(this, "meetingCollection", void 0);
91
+ (0, _defineProperty2.default)(this, "webex", void 0);
121
92
  if (!Metrics.instance) {
122
93
  /**
123
94
  * @instance
@@ -127,20 +98,18 @@ var Metrics = /*#__PURE__*/function () {
127
98
  */
128
99
  this._events = [];
129
100
  /**
130
- * @instance
131
- * @type {MeetingCollection}
132
- * @private
133
- * @memberof Metrics
134
- */
135
-
101
+ * @instance
102
+ * @type {MeetingCollection}
103
+ * @private
104
+ * @memberof Metrics
105
+ */
136
106
  this.meetingCollection = null;
137
107
  /**
138
- * @instance
139
- * @type {MeetingCollection}
140
- * @private
141
- * @memberof Metrics
142
- */
143
-
108
+ * @instance
109
+ * @type {MeetingCollection}
110
+ * @private
111
+ * @memberof Metrics
112
+ */
144
113
  this.keys = (0, _values.default)(_config.eventType);
145
114
  /**
146
115
  * @instance
@@ -148,12 +117,13 @@ var Metrics = /*#__PURE__*/function () {
148
117
  * @private
149
118
  * @memberof Metrics
150
119
  */
151
-
152
120
  Metrics.instance = this;
153
121
  }
154
122
 
123
+ // eslint-disable-next-line no-constructor-return
155
124
  return Metrics.instance;
156
125
  }
126
+
157
127
  /**
158
128
  * Initializes the Metrics singleton with a meeting Collection.
159
129
  *
@@ -162,14 +132,13 @@ var Metrics = /*#__PURE__*/function () {
162
132
  *
163
133
  * @returns {void}
164
134
  */
165
-
166
-
167
135
  (0, _createClass2.default)(Metrics, [{
168
136
  key: "initialSetup",
169
137
  value: function initialSetup(meetingCollection, webex) {
170
138
  this.meetingCollection = meetingCollection;
171
139
  this.webex = webex;
172
140
  }
141
+
173
142
  /**
174
143
  * poste Meeting event metrics
175
144
  * @param {object} options {meetingId/meeting} as a json object
@@ -179,32 +148,26 @@ var Metrics = /*#__PURE__*/function () {
179
148
  * @param {object} options.event
180
149
  * @returns {object} null
181
150
  */
182
-
183
151
  }, {
184
152
  key: "postEvent",
185
153
  value: function postEvent(options) {
186
154
  var meetingId = options.meetingId,
187
- _options$data = options.data,
188
- data = _options$data === void 0 ? {} : _options$data,
189
- event = options.event;
155
+ _options$data = options.data,
156
+ data = _options$data === void 0 ? {} : _options$data,
157
+ event = options.event;
190
158
  var meeting = options.meeting;
191
-
192
159
  if (this.keys.indexOf(event) === -1) {
193
160
  _loggerProxy.default.logger.error("Metrics:index#postEvent --> Event ".concat(event, " doesn't exist in dictionary"));
194
161
  }
195
-
196
162
  if (!meeting && meetingId) {
197
163
  meeting = this.meetingCollection.get(meetingId);
198
164
  options.meeting = meeting;
199
165
  }
200
-
201
166
  if (meeting) {
202
167
  triggerTimers(options);
203
-
204
168
  if (!meeting.callEvents) {
205
169
  meeting.callEvents = [];
206
170
  }
207
-
208
171
  if (event === _config.eventType.MEDIA_QUALITY) {
209
172
  data.event = event;
210
173
  meeting.sendMediaQualityAnalyzerMetrics(data);
@@ -217,17 +180,18 @@ var Metrics = /*#__PURE__*/function () {
217
180
  _loggerProxy.default.logger.info("Metrics:index#postEvent --> Event received for meetingId:".concat(meetingId, ", but meeting not found in collection."));
218
181
  }
219
182
  }
183
+
220
184
  /**
221
185
  * Docs for Call analyzer metrics
222
- * https://sqbu-github.cisco.com/WebExSquared/call-analyzer/wiki
223
- * https://sqbu-github.cisco.com/WebExSquared/event-dictionary/blob/master/diagnostic-events.raml
224
- */
186
+ * https://sqbu-github.cisco.com/WebExSquared/call-analyzer/wiki
187
+ * https://sqbu-github.cisco.com/WebExSquared/event-dictionary/blob/master/diagnostic-events.raml
188
+ */
225
189
 
190
+ // eslint-disable-next-line @typescript-eslint/no-shadow
226
191
  }, {
227
192
  key: "initPayload",
228
193
  value: function initPayload(eventType, identifiers, options) {
229
194
  var _this$webex$meetings$, _this$webex$meetings$2;
230
-
231
195
  var payload = {
232
196
  eventId: _uuid.default.v4(),
233
197
  version: 1,
@@ -241,7 +205,7 @@ var Metrics = /*#__PURE__*/function () {
241
205
  localNetworkPrefix: anonymizeIPAddress((_this$webex$meetings$ = this.webex.meetings.geoHintInfo) === null || _this$webex$meetings$ === void 0 ? void 0 : _this$webex$meetings$.clientAddress),
242
206
  osVersion: getOSVersion() || 'unknown',
243
207
  subClientType: options.subClientType,
244
- os: this.getOsName(),
208
+ os: (0, _internalPluginMetrics.getOSNameInternal)(),
245
209
  browser: getBrowserName(),
246
210
  browserVersion: getBrowserVersion()
247
211
  }
@@ -258,63 +222,46 @@ var Metrics = /*#__PURE__*/function () {
258
222
  webClientDomain: _window.default.location.hostname
259
223
  }
260
224
  }
261
- }; // TODO: more options should be checked and some of them should be mandatory in certain conditions
225
+ };
262
226
 
227
+ // TODO: more options should be checked and some of them should be mandatory in certain conditions
263
228
  if (options) {
264
229
  if (Object.prototype.hasOwnProperty.call(options, 'canProceed')) {
265
230
  payload.event.canProceed = options.canProceed;
266
231
  }
267
-
268
232
  if (options.errors) {
269
233
  payload.event.errors = options.errors;
270
234
  }
271
-
272
235
  if (options.mediaType) {
273
236
  payload.event.mediaType = options.mediaType;
274
237
  }
275
-
276
238
  if (options.trigger) {
277
239
  payload.event.trigger = options.trigger;
278
240
  }
279
-
280
241
  if (options.pstnAudioType) {
281
242
  payload.event.pstnAudioType = options.pstnAudioType;
282
243
  }
283
-
284
244
  if (options.mediaCapabilities) {
285
245
  payload.event.mediaCapabilities = options.mediaCapabilities;
286
246
  }
287
-
288
247
  if (options.recoveredBy) {
289
248
  payload.event.recoveredBy = options.recoveredBy;
290
249
  }
291
-
292
250
  if (options.joinTimes) {
293
251
  payload.event.joinTimes = options.joinTimes;
294
252
  }
295
-
296
253
  if (options.isRoapCallEnabled) {
297
254
  payload.event.isRoapCallEnabled = options.isRoapCallEnabled;
298
255
  }
256
+ ['breakoutMoveId', 'breakoutSessionId', 'breakoutGroupId'].forEach(function (item) {
257
+ if (options[item]) {
258
+ payload.event.identifiers[item] = options[item];
259
+ }
260
+ });
299
261
  }
300
-
301
262
  return payload;
302
263
  }
303
- /**
304
- * returns metrics friendly OS versions
305
- * @param {String} osName Os name
306
- * @returns {String}
307
- * @private
308
- * @memberof Metrics
309
- */
310
264
 
311
- }, {
312
- key: "getOsName",
313
- value: function getOsName() {
314
- var _OSMap$getOSName;
315
-
316
- return (_OSMap$getOSName = OSMap[getOSName()]) !== null && _OSMap$getOSName !== void 0 ? _OSMap$getOSName : _config.OS_NAME.OTHERS;
317
- }
318
265
  /**
319
266
  * get the payload specific for a media quality event through call analyzer
320
267
  * @param {String} eventType the event name
@@ -329,16 +276,16 @@ var Metrics = /*#__PURE__*/function () {
329
276
  * @public
330
277
  * @memberof Metrics
331
278
  */
332
-
333
279
  }, {
334
280
  key: "initMediaPayload",
335
- value: function initMediaPayload(eventType, identifiers) {
281
+ value: function initMediaPayload(
282
+ // eslint-disable-next-line @typescript-eslint/no-shadow
283
+ eventType, identifiers) {
336
284
  var _this$webex$meetings$3, _this$webex$meetings$4;
337
-
338
285
  var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
339
286
  var audioSetupDelay = options.audioSetupDelay,
340
- videoSetupDelay = options.videoSetupDelay,
341
- joinTimes = options.joinTimes;
287
+ videoSetupDelay = options.videoSetupDelay,
288
+ joinTimes = options.joinTimes;
342
289
  var payload = {
343
290
  eventId: _uuid.default.v4(),
344
291
  version: 1,
@@ -353,7 +300,7 @@ var Metrics = /*#__PURE__*/function () {
353
300
  // TODO: Only clientType: 'TEAMS_CLIENT' is whitelisted
354
301
  clientVersion: "".concat(_config.CLIENT_NAME, "/").concat(this.webex.version),
355
302
  localNetworkPrefix: anonymizeIPAddress((_this$webex$meetings$3 = this.webex.meetings.geoHintInfo) === null || _this$webex$meetings$3 === void 0 ? void 0 : _this$webex$meetings$3.clientAddress),
356
- os: this.getOsName(),
303
+ os: (0, _internalPluginMetrics.getOSNameInternal)(),
357
304
  osVersion: getOSVersion() || _config.UNKNOWN,
358
305
  subClientType: options.subClientType,
359
306
  browser: getBrowserName(),
@@ -384,6 +331,7 @@ var Metrics = /*#__PURE__*/function () {
384
331
  };
385
332
  return payload;
386
333
  }
334
+
387
335
  /**
388
336
  * This function Parses a Locus error and returns a diagnostic event payload.
389
337
  * It should keep updating from:
@@ -394,12 +342,10 @@ var Metrics = /*#__PURE__*/function () {
394
342
  * @returns {{showToUser: boolean, category: string, errorDescription: string,
395
343
  * errorCode: number, errorData: *, fatal: boolean, name: string}}
396
344
  */
397
-
398
345
  }, {
399
346
  key: "parseLocusError",
400
347
  value: function parseLocusError(err, showToUser) {
401
348
  var errorCode;
402
-
403
349
  if (err && err.statusCode && err.statusCode >= 500) {
404
350
  errorCode = 1003;
405
351
  } else if (err && err.body && err.body.errorCode) {
@@ -408,132 +354,102 @@ var Metrics = /*#__PURE__*/function () {
408
354
  case _constants.MEETING_ERRORS.FREE_USER_MAX_PARTICIPANTS_EXCEEDED:
409
355
  errorCode = 3007;
410
356
  break;
411
-
412
357
  case _constants.MEETING_ERRORS.PAID_USER_MAX_PARTICIPANTS_EXCEEDED:
413
358
  case _constants.MEETING_ERRORS.SERVICE_MAX_PARTICIPANTS_EXCEEDED:
414
359
  errorCode = 3002;
415
360
  break;
416
-
417
361
  case _constants.MEETING_ERRORS.INACTIVE:
418
362
  errorCode = 4001;
419
363
  break;
420
-
421
364
  case _constants.MEETING_ERRORS.EXCEEDED_MAX_JOINED_PARTICIPANTS:
422
365
  case _constants.MEETING_ERRORS.EXCEEDED_SERVICE_MAX_PARTICIPANTS:
423
366
  errorCode = 3001;
424
367
  break;
425
-
426
368
  case _constants.MEETING_ERRORS.MEETING_IS_LOCKED:
427
369
  errorCode = 4002;
428
370
  break;
429
-
430
371
  case _constants.MEETING_ERRORS.MEETING_IS_TERMINATING:
431
372
  errorCode = 4003;
432
373
  break;
433
-
434
374
  case _constants.MEETING_ERRORS.MEETING_REQUIRE_MODERATOR_PIN_INTENT:
435
375
  errorCode = 4004;
436
376
  break;
437
-
438
377
  case _constants.MEETING_ERRORS.MEETING_REQUIRE_MODERATOR_PIN:
439
378
  errorCode = 4005;
440
379
  break;
441
-
442
380
  case _constants.MEETING_ERRORS.MEETING_REQUIRE_MODERATOR_ROLE:
443
381
  errorCode = 4006;
444
382
  break;
445
-
446
383
  case _constants.MEETING_ERRORS.JOIN_RESTRICTED_USER:
447
384
  case _constants.MEETING_ERRORS.GET_RESTRICTED_USER:
448
385
  case _constants.MEETING_ERRORS.CREATE_MEDIA_RESTRICTED_USER:
449
386
  errorCode = 3005;
450
387
  break;
451
-
452
388
  case _constants.MEETING_ERRORS.JOIN_RESTRICTED_USER_NOT_IN_ROOM:
453
389
  errorCode = 4007;
454
390
  break;
455
-
456
391
  case _constants.MEETING_ERRORS.MEETING_NOT_FOUND:
457
392
  errorCode = 4011;
458
393
  break;
459
-
460
394
  case _constants.MEETING_ERRORS.NOT_WEBEX_SITE:
461
395
  errorCode = 4012;
462
396
  break;
463
-
464
397
  case _constants.MEETING_ERRORS.INVALID_JOIN_TIME:
465
398
  errorCode = 4013;
466
399
  break;
467
-
468
400
  case _constants.MEETING_ERRORS.PHONE_NUMBER_NOT_A_NUMBER:
469
401
  errorCode = 4016;
470
402
  break;
471
-
472
403
  case _constants.MEETING_ERRORS.PHONE_NUMBER_TOO_LONG:
473
404
  errorCode = 4017;
474
405
  break;
475
-
476
406
  case _constants.MEETING_ERRORS.INVALID_DIALABLE_KEY:
477
407
  errorCode = 4018;
478
408
  break;
479
-
480
409
  case _constants.MEETING_ERRORS.ONE_ON_ONE_TO_SELF_NOT_ALLOWED:
481
410
  errorCode = 4019;
482
411
  break;
483
-
484
412
  case _constants.MEETING_ERRORS.REMOVED_PARTICIPANT:
485
413
  errorCode = 4020;
486
414
  break;
487
-
488
415
  case _constants.MEETING_ERRORS.MEETING_LINK_NOT_FOUND:
489
416
  errorCode = 4021;
490
417
  break;
491
-
492
418
  case _constants.MEETING_ERRORS.PHONE_NUMBER_TOO_SHORT_AFTER_IDD:
493
419
  errorCode = 4022;
494
420
  break;
495
-
496
421
  case _constants.MEETING_ERRORS.INVALID_INVITEE_ADDRESS:
497
422
  errorCode = 4023;
498
423
  break;
499
-
500
424
  case _constants.MEETING_ERRORS.PMR_ACCOUNT_LOCKED:
501
425
  errorCode = 4024;
502
426
  break;
503
-
504
427
  case _constants.MEETING_ERRORS.RESOURCE_GUEST_FORBIDDEN:
505
428
  errorCode = 4025;
506
429
  break;
507
-
508
430
  case _constants.MEETING_ERRORS.PMR_ACCOUNT_SUSPENDED:
509
431
  errorCode = 4026;
510
432
  break;
511
-
512
433
  case _constants.MEETING_ERRORS.EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE:
513
434
  errorCode = 4027;
514
435
  break;
515
-
516
436
  case _constants.MEETING_ERRORS.INVALID_SINCE_OR_SEQUENCE_HASH_IN_REQUEST:
517
437
  errorCode = 1006;
518
438
  break;
519
-
520
439
  case _constants.MEETING_ERRORS.CONVERSATION_NOT_FOUND:
521
440
  errorCode = 4028;
522
441
  break;
523
-
524
442
  case _constants.MEETING_ERRORS.RECORDING_CONTROL_NOT_SUPPORTED:
525
443
  case _constants.MEETING_ERRORS.RECORDING_NOT_STARTED:
526
444
  case _constants.MEETING_ERRORS.RECORDING_NOT_ENABLED:
527
445
  errorCode = 4029;
528
446
  break;
529
-
530
447
  default:
531
448
  errorCode = 4008;
532
449
  }
533
450
  } else {
534
451
  errorCode = 4008;
535
452
  }
536
-
537
453
  return this.generateErrorPayload(errorCode, showToUser, _config.error.name.LOCUS_RESPONSE, err);
538
454
  }
539
455
  }, {
@@ -548,57 +464,46 @@ var Metrics = /*#__PURE__*/function () {
548
464
  fatal: !(0, _includes2.default)(_config.error.notFatalErrorList, errorCode),
549
465
  name: name || _config.error.name.OTHER
550
466
  };
551
-
552
467
  if (err && err.body) {
553
468
  errorPayload.errorData = err.body;
554
469
  }
555
-
556
470
  if (err && err.statusCode) {
557
471
  errorPayload.httpCode = err.statusCode;
558
472
  }
559
-
560
473
  return errorPayload;
561
474
  }
562
-
563
475
  return null;
564
476
  }
477
+
565
478
  /**
566
479
  * Returns a formated string of the user agent.
567
480
  *
568
481
  * @returns {string} formatted user agent information
569
482
  */
570
-
571
483
  }, {
572
484
  key: "userAgentToString",
573
485
  value: function userAgentToString() {
574
486
  var _this$webex$meetings, _this$webex$meetings$5;
575
-
576
487
  var userAgentOption;
577
488
  var browserInfo;
578
-
579
489
  var clientInfo = _util.default.format('client=%s', "".concat((_this$webex$meetings = this.webex.meetings) === null || _this$webex$meetings === void 0 ? void 0 : (_this$webex$meetings$5 = _this$webex$meetings.metrics) === null || _this$webex$meetings$5 === void 0 ? void 0 : _this$webex$meetings$5.clientName));
580
-
581
490
  if (['chrome', 'firefox', 'msie', 'msedge', 'safari'].indexOf(getBrowserName().toLowerCase()) !== -1) {
582
491
  browserInfo = _util.default.format('browser=%s', "".concat(getBrowserName().toLowerCase(), "/").concat(getBrowserVersion().split('.')[0]));
583
492
  }
584
-
585
493
  var osInfo = _util.default.format('os=%s', "".concat(getOSName(), "/").concat(getOSVersion().split('.')[0]));
586
-
587
494
  if (browserInfo) {
588
495
  userAgentOption = "(".concat(browserInfo);
589
496
  }
590
-
591
497
  if (osInfo) {
592
498
  userAgentOption = userAgentOption ? "".concat(userAgentOption, "; ").concat(clientInfo, "; ").concat(osInfo) : "".concat(clientInfo, "; (").concat(osInfo);
593
499
  }
594
-
595
500
  if (userAgentOption) {
596
501
  userAgentOption += ')';
597
502
  return _util.default.format('webex-js-sdk/%s %s', "".concat(process.env.NODE_ENV, "-").concat(this.webex.version), userAgentOption);
598
503
  }
599
-
600
504
  return _util.default.format('webex-js-sdk/%s', "".concat(process.env.NODE_ENV, "-").concat(this.webex.version));
601
505
  }
506
+
602
507
  /**
603
508
  * Uploads given metric to the Metrics service as an Behavioral metric.
604
509
  * Metadata about the environment such as browser, OS, SDK and their versions
@@ -614,7 +519,6 @@ var Metrics = /*#__PURE__*/function () {
614
519
  *
615
520
  * @returns {void}
616
521
  */
617
-
618
522
  }, {
619
523
  key: "sendBehavioralMetric",
620
524
  value: function sendBehavioralMetric(metricName) {
@@ -629,8 +533,7 @@ var Metrics = /*#__PURE__*/function () {
629
533
  }]);
630
534
  return Metrics;
631
535
  }(); // Export Metrics singleton ---------------------------------------------------
632
-
633
-
536
+ (0, _defineProperty2.default)(Metrics, "instance", void 0);
634
537
  var instance = new Metrics();
635
538
  var _default = instance;
636
539
  exports.default = _default;