@webex/plugin-meetings 3.0.0-beta.11 → 3.0.0-beta.111

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 (512) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/annotation/annotation.types.js +7 -0
  4. package/dist/annotation/annotation.types.js.map +1 -0
  5. package/dist/annotation/constants.js +48 -0
  6. package/dist/annotation/constants.js.map +1 -0
  7. package/dist/annotation/index.js +357 -0
  8. package/dist/annotation/index.js.map +1 -0
  9. package/dist/breakouts/breakout.js +176 -0
  10. package/dist/breakouts/breakout.js.map +1 -0
  11. package/dist/breakouts/collection.js +23 -0
  12. package/dist/breakouts/collection.js.map +1 -0
  13. package/dist/breakouts/edit-lock-error.js +52 -0
  14. package/dist/breakouts/edit-lock-error.js.map +1 -0
  15. package/dist/breakouts/events.js +43 -0
  16. package/dist/breakouts/events.js.map +1 -0
  17. package/dist/breakouts/index.js +944 -0
  18. package/dist/breakouts/index.js.map +1 -0
  19. package/dist/breakouts/request.js +78 -0
  20. package/dist/breakouts/request.js.map +1 -0
  21. package/dist/breakouts/utils.js +67 -0
  22. package/dist/breakouts/utils.js.map +1 -0
  23. package/dist/common/browser-detection.js +1 -20
  24. package/dist/common/browser-detection.js.map +1 -1
  25. package/dist/common/collection.js +5 -20
  26. package/dist/common/collection.js.map +1 -1
  27. package/dist/common/config.js +0 -7
  28. package/dist/common/config.js.map +1 -1
  29. package/dist/common/errors/captcha-error.js +5 -26
  30. package/dist/common/errors/captcha-error.js.map +1 -1
  31. package/dist/common/errors/intent-to-join.js +5 -26
  32. package/dist/common/errors/intent-to-join.js.map +1 -1
  33. package/dist/common/errors/join-meeting.js +6 -27
  34. package/dist/common/errors/join-meeting.js.map +1 -1
  35. package/dist/common/errors/media.js +5 -26
  36. package/dist/common/errors/media.js.map +1 -1
  37. package/dist/common/errors/parameter.js +5 -33
  38. package/dist/common/errors/parameter.js.map +1 -1
  39. package/dist/common/errors/password-error.js +5 -26
  40. package/dist/common/errors/password-error.js.map +1 -1
  41. package/dist/common/errors/permission.js +4 -25
  42. package/dist/common/errors/permission.js.map +1 -1
  43. package/dist/common/errors/reconnection-in-progress.js +0 -17
  44. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  45. package/dist/common/errors/reconnection.js +5 -26
  46. package/dist/common/errors/reconnection.js.map +1 -1
  47. package/dist/common/errors/stats.js +5 -26
  48. package/dist/common/errors/stats.js.map +1 -1
  49. package/dist/common/errors/webex-errors.js +6 -41
  50. package/dist/common/errors/webex-errors.js.map +1 -1
  51. package/dist/common/errors/webex-meetings-error.js +1 -24
  52. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  53. package/dist/common/events/events-scope.js +0 -22
  54. package/dist/common/events/events-scope.js.map +1 -1
  55. package/dist/common/events/events.js +0 -23
  56. package/dist/common/events/events.js.map +1 -1
  57. package/dist/common/events/trigger-proxy.js +0 -12
  58. package/dist/common/events/trigger-proxy.js.map +1 -1
  59. package/dist/common/events/util.js +0 -15
  60. package/dist/common/events/util.js.map +1 -1
  61. package/dist/common/logs/logger-config.js +0 -4
  62. package/dist/common/logs/logger-config.js.map +1 -1
  63. package/dist/common/logs/logger-proxy.js +1 -8
  64. package/dist/common/logs/logger-proxy.js.map +1 -1
  65. package/dist/common/logs/request.js +35 -61
  66. package/dist/common/logs/request.js.map +1 -1
  67. package/dist/common/queue.js +4 -14
  68. package/dist/common/queue.js.map +1 -1
  69. package/dist/config.js +6 -6
  70. package/dist/config.js.map +1 -1
  71. package/dist/constants.js +193 -53
  72. package/dist/constants.js.map +1 -1
  73. package/dist/controls-options-manager/constants.js +14 -0
  74. package/dist/controls-options-manager/constants.js.map +1 -0
  75. package/dist/controls-options-manager/enums.js +27 -0
  76. package/dist/controls-options-manager/enums.js.map +1 -0
  77. package/dist/controls-options-manager/index.js +297 -0
  78. package/dist/controls-options-manager/index.js.map +1 -0
  79. package/dist/controls-options-manager/types.js +7 -0
  80. package/dist/controls-options-manager/types.js.map +1 -0
  81. package/dist/controls-options-manager/util.js +286 -0
  82. package/dist/controls-options-manager/util.js.map +1 -0
  83. package/dist/index.js +72 -17
  84. package/dist/index.js.map +1 -1
  85. package/dist/locus-info/controlsUtils.js +94 -29
  86. package/dist/locus-info/controlsUtils.js.map +1 -1
  87. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  88. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  89. package/dist/locus-info/fullState.js +0 -15
  90. package/dist/locus-info/fullState.js.map +1 -1
  91. package/dist/locus-info/hostUtils.js +4 -12
  92. package/dist/locus-info/hostUtils.js.map +1 -1
  93. package/dist/locus-info/index.js +383 -212
  94. package/dist/locus-info/index.js.map +1 -1
  95. package/dist/locus-info/infoUtils.js +0 -38
  96. package/dist/locus-info/infoUtils.js.map +1 -1
  97. package/dist/locus-info/mediaSharesUtils.js +12 -38
  98. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  99. package/dist/locus-info/parser.js +88 -123
  100. package/dist/locus-info/parser.js.map +1 -1
  101. package/dist/locus-info/selfUtils.js +99 -91
  102. package/dist/locus-info/selfUtils.js.map +1 -1
  103. package/dist/media/index.js +62 -147
  104. package/dist/media/index.js.map +1 -1
  105. package/dist/media/properties.js +71 -117
  106. package/dist/media/properties.js.map +1 -1
  107. package/dist/media/util.js +2 -9
  108. package/dist/media/util.js.map +1 -1
  109. package/dist/mediaQualityMetrics/config.js +505 -495
  110. package/dist/mediaQualityMetrics/config.js.map +1 -1
  111. package/dist/meeting/in-meeting-actions.js +67 -14
  112. package/dist/meeting/in-meeting-actions.js.map +1 -1
  113. package/dist/meeting/index.js +2477 -2417
  114. package/dist/meeting/index.js.map +1 -1
  115. package/dist/meeting/muteState.js +252 -113
  116. package/dist/meeting/muteState.js.map +1 -1
  117. package/dist/meeting/request.js +296 -289
  118. package/dist/meeting/request.js.map +1 -1
  119. package/dist/meeting/request.type.js +7 -0
  120. package/dist/meeting/request.type.js.map +1 -0
  121. package/dist/meeting/state.js +21 -31
  122. package/dist/meeting/state.js.map +1 -1
  123. package/dist/meeting/util.js +58 -217
  124. package/dist/meeting/util.js.map +1 -1
  125. package/dist/meeting-info/collection.js +3 -25
  126. package/dist/meeting-info/collection.js.map +1 -1
  127. package/dist/meeting-info/index.js +10 -33
  128. package/dist/meeting-info/index.js.map +1 -1
  129. package/dist/meeting-info/meeting-info-v2.js +278 -281
  130. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  131. package/dist/meeting-info/request.js +1 -16
  132. package/dist/meeting-info/request.js.map +1 -1
  133. package/dist/meeting-info/util.js +98 -183
  134. package/dist/meeting-info/util.js.map +1 -1
  135. package/dist/meeting-info/utilv2.js +155 -232
  136. package/dist/meeting-info/utilv2.js.map +1 -1
  137. package/dist/meetings/collection.js +24 -20
  138. package/dist/meetings/collection.js.map +1 -1
  139. package/dist/meetings/index.js +675 -593
  140. package/dist/meetings/index.js.map +1 -1
  141. package/dist/meetings/request.js +23 -42
  142. package/dist/meetings/request.js.map +1 -1
  143. package/dist/meetings/util.js +177 -155
  144. package/dist/meetings/util.js.map +1 -1
  145. package/dist/member/index.js +89 -88
  146. package/dist/member/index.js.map +1 -1
  147. package/dist/member/types.js +15 -0
  148. package/dist/member/types.js.map +1 -0
  149. package/dist/member/util.js +101 -69
  150. package/dist/member/util.js.map +1 -1
  151. package/dist/members/collection.js +12 -12
  152. package/dist/members/collection.js.map +1 -1
  153. package/dist/members/index.js +162 -204
  154. package/dist/members/index.js.map +1 -1
  155. package/dist/members/request.js +58 -53
  156. package/dist/members/request.js.map +1 -1
  157. package/dist/members/types.js +15 -0
  158. package/dist/members/types.js.map +1 -0
  159. package/dist/members/util.js +107 -44
  160. package/dist/members/util.js.map +1 -1
  161. package/dist/metrics/config.js +50 -16
  162. package/dist/metrics/config.js.map +1 -1
  163. package/dist/metrics/constants.js +3 -7
  164. package/dist/metrics/constants.js.map +1 -1
  165. package/dist/metrics/index.js +93 -162
  166. package/dist/metrics/index.js.map +1 -1
  167. package/dist/multistream/mediaRequestManager.js +167 -50
  168. package/dist/multistream/mediaRequestManager.js.map +1 -1
  169. package/dist/multistream/receiveSlot.js +58 -65
  170. package/dist/multistream/receiveSlot.js.map +1 -1
  171. package/dist/multistream/receiveSlotManager.js +74 -93
  172. package/dist/multistream/receiveSlotManager.js.map +1 -1
  173. package/dist/multistream/remoteMedia.js +55 -74
  174. package/dist/multistream/remoteMedia.js.map +1 -1
  175. package/dist/multistream/remoteMediaGroup.js +6 -40
  176. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  177. package/dist/multistream/remoteMediaManager.js +466 -442
  178. package/dist/multistream/remoteMediaManager.js.map +1 -1
  179. package/dist/networkQualityMonitor/index.js +32 -59
  180. package/dist/networkQualityMonitor/index.js.map +1 -1
  181. package/dist/personal-meeting-room/index.js +10 -45
  182. package/dist/personal-meeting-room/index.js.map +1 -1
  183. package/dist/personal-meeting-room/request.js +2 -33
  184. package/dist/personal-meeting-room/request.js.map +1 -1
  185. package/dist/personal-meeting-room/util.js +0 -13
  186. package/dist/personal-meeting-room/util.js.map +1 -1
  187. package/dist/reachability/index.js +190 -199
  188. package/dist/reachability/index.js.map +1 -1
  189. package/dist/reachability/request.js +14 -23
  190. package/dist/reachability/request.js.map +1 -1
  191. package/dist/reactions/constants.js +13 -0
  192. package/dist/reactions/constants.js.map +1 -0
  193. package/dist/reactions/reactions.js +2 -4
  194. package/dist/reactions/reactions.js.map +1 -1
  195. package/dist/reactions/reactions.type.js +19 -23
  196. package/dist/reactions/reactions.type.js.map +1 -1
  197. package/dist/reconnection-manager/index.js +326 -465
  198. package/dist/reconnection-manager/index.js.map +1 -1
  199. package/dist/recording-controller/enums.js +17 -0
  200. package/dist/recording-controller/enums.js.map +1 -0
  201. package/dist/recording-controller/index.js +343 -0
  202. package/dist/recording-controller/index.js.map +1 -0
  203. package/dist/recording-controller/util.js +63 -0
  204. package/dist/recording-controller/util.js.map +1 -0
  205. package/dist/roap/index.js +38 -67
  206. package/dist/roap/index.js.map +1 -1
  207. package/dist/roap/request.js +143 -134
  208. package/dist/roap/request.js.map +1 -1
  209. package/dist/roap/turnDiscovery.js +149 -101
  210. package/dist/roap/turnDiscovery.js.map +1 -1
  211. package/dist/statsAnalyzer/global.js +1 -95
  212. package/dist/statsAnalyzer/global.js.map +1 -1
  213. package/dist/statsAnalyzer/index.js +369 -461
  214. package/dist/statsAnalyzer/index.js.map +1 -1
  215. package/dist/statsAnalyzer/mqaUtil.js +144 -94
  216. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  217. package/dist/transcription/index.js +13 -45
  218. package/dist/transcription/index.js.map +1 -1
  219. package/dist/types/annotation/annotation.types.d.ts +34 -0
  220. package/dist/types/annotation/constants.d.ts +31 -0
  221. package/dist/types/annotation/index.d.ts +124 -0
  222. package/dist/types/breakouts/breakout.d.ts +8 -0
  223. package/dist/types/breakouts/collection.d.ts +5 -0
  224. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  225. package/dist/types/breakouts/events.d.ts +2 -0
  226. package/dist/types/breakouts/index.d.ts +5 -0
  227. package/dist/types/breakouts/request.d.ts +22 -0
  228. package/dist/types/breakouts/utils.d.ts +15 -0
  229. package/dist/types/common/browser-detection.d.ts +9 -0
  230. package/dist/types/common/collection.d.ts +48 -0
  231. package/dist/types/common/config.d.ts +2 -0
  232. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  233. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  234. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  235. package/dist/types/common/errors/media.d.ts +15 -0
  236. package/dist/types/common/errors/parameter.d.ts +15 -0
  237. package/dist/types/common/errors/password-error.d.ts +15 -0
  238. package/dist/types/common/errors/permission.d.ts +14 -0
  239. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  240. package/dist/types/common/errors/reconnection.d.ts +15 -0
  241. package/dist/types/common/errors/stats.d.ts +15 -0
  242. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  243. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  244. package/dist/types/common/events/events-scope.d.ts +17 -0
  245. package/dist/types/common/events/events.d.ts +12 -0
  246. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  247. package/dist/types/common/events/util.d.ts +2 -0
  248. package/dist/types/common/logs/logger-config.d.ts +2 -0
  249. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  250. package/dist/types/common/logs/request.d.ts +34 -0
  251. package/dist/types/common/queue.d.ts +32 -0
  252. package/dist/types/config.d.ts +78 -0
  253. package/dist/types/constants.d.ts +984 -0
  254. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  255. package/dist/types/controls-options-manager/enums.d.ts +15 -0
  256. package/dist/types/controls-options-manager/index.d.ts +136 -0
  257. package/dist/types/controls-options-manager/types.d.ts +43 -0
  258. package/dist/types/controls-options-manager/util.d.ts +1 -0
  259. package/dist/types/index.d.ts +7 -0
  260. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  261. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  262. package/dist/types/locus-info/fullState.d.ts +2 -0
  263. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  264. package/dist/types/locus-info/index.d.ts +315 -0
  265. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  266. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  267. package/dist/types/locus-info/parser.d.ts +212 -0
  268. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  269. package/dist/types/media/index.d.ts +34 -0
  270. package/dist/types/media/properties.d.ts +108 -0
  271. package/dist/types/media/util.d.ts +2 -0
  272. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  273. package/dist/types/meeting/in-meeting-actions.d.ts +137 -0
  274. package/dist/types/meeting/index.d.ts +1753 -0
  275. package/dist/types/meeting/muteState.d.ts +185 -0
  276. package/dist/types/meeting/request.d.ts +275 -0
  277. package/dist/types/meeting/request.type.d.ts +11 -0
  278. package/dist/types/meeting/state.d.ts +9 -0
  279. package/dist/types/meeting/util.d.ts +2 -0
  280. package/dist/types/meeting-info/collection.d.ts +20 -0
  281. package/dist/types/meeting-info/index.d.ts +57 -0
  282. package/dist/types/meeting-info/meeting-info-v2.d.ts +115 -0
  283. package/dist/types/meeting-info/request.d.ts +22 -0
  284. package/dist/types/meeting-info/util.d.ts +2 -0
  285. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  286. package/dist/types/meetings/collection.d.ts +31 -0
  287. package/dist/types/meetings/index.d.ts +345 -0
  288. package/dist/types/meetings/request.d.ts +27 -0
  289. package/dist/types/meetings/util.d.ts +18 -0
  290. package/dist/types/member/index.d.ts +157 -0
  291. package/dist/types/member/types.d.ts +21 -0
  292. package/dist/types/member/util.d.ts +2 -0
  293. package/dist/types/members/collection.d.ts +29 -0
  294. package/dist/types/members/index.d.ts +353 -0
  295. package/dist/types/members/request.d.ts +69 -0
  296. package/dist/types/members/types.d.ts +24 -0
  297. package/dist/types/members/util.d.ts +2 -0
  298. package/dist/types/metrics/config.d.ts +195 -0
  299. package/dist/types/metrics/constants.d.ts +54 -0
  300. package/dist/types/metrics/index.d.ts +169 -0
  301. package/dist/types/multistream/mediaRequestManager.d.ts +101 -0
  302. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  303. package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
  304. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  305. package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
  306. package/dist/types/multistream/remoteMediaManager.d.ts +263 -0
  307. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  308. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  309. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  310. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  311. package/dist/types/reachability/index.d.ts +152 -0
  312. package/dist/types/reachability/request.d.ts +37 -0
  313. package/dist/types/reactions/constants.d.ts +3 -0
  314. package/dist/types/reactions/reactions.d.ts +4 -0
  315. package/dist/types/reactions/reactions.type.d.ts +52 -0
  316. package/dist/types/reconnection-manager/index.d.ts +126 -0
  317. package/dist/types/recording-controller/enums.d.ts +7 -0
  318. package/dist/types/recording-controller/index.d.ts +193 -0
  319. package/dist/types/recording-controller/util.d.ts +13 -0
  320. package/dist/types/roap/index.d.ts +77 -0
  321. package/dist/types/roap/request.d.ts +38 -0
  322. package/dist/types/roap/turnDiscovery.d.ts +88 -0
  323. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  324. package/dist/types/statsAnalyzer/index.d.ts +200 -0
  325. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  326. package/dist/types/transcription/index.d.ts +64 -0
  327. package/internal-README.md +7 -6
  328. package/package.json +28 -21
  329. package/src/annotation/annotation.types.ts +41 -0
  330. package/src/annotation/constants.ts +36 -0
  331. package/src/annotation/index.ts +339 -0
  332. package/src/breakouts/README.md +220 -0
  333. package/src/breakouts/breakout.ts +141 -0
  334. package/src/breakouts/collection.ts +19 -0
  335. package/src/breakouts/edit-lock-error.ts +25 -0
  336. package/src/breakouts/events.ts +37 -0
  337. package/src/breakouts/index.ts +835 -0
  338. package/src/breakouts/request.ts +55 -0
  339. package/src/breakouts/utils.ts +57 -0
  340. package/src/common/browser-detection.ts +9 -6
  341. package/src/common/collection.ts +3 -1
  342. package/src/common/errors/captcha-error.ts +6 -6
  343. package/src/common/errors/intent-to-join.ts +6 -6
  344. package/src/common/errors/join-meeting.ts +12 -8
  345. package/src/common/errors/media.ts +6 -6
  346. package/src/common/errors/parameter.ts +9 -6
  347. package/src/common/errors/password-error.ts +6 -6
  348. package/src/common/errors/permission.ts +5 -5
  349. package/src/common/errors/reconnection.ts +6 -6
  350. package/src/common/errors/stats.ts +6 -6
  351. package/src/common/errors/webex-errors.ts +7 -5
  352. package/src/common/errors/webex-meetings-error.ts +1 -1
  353. package/src/common/events/events-scope.ts +5 -1
  354. package/src/common/events/events.ts +5 -1
  355. package/src/common/events/trigger-proxy.ts +8 -3
  356. package/src/common/events/util.ts +1 -2
  357. package/src/common/logs/logger-proxy.ts +21 -10
  358. package/src/common/logs/request.ts +11 -8
  359. package/src/config.ts +16 -12
  360. package/src/constants.ts +141 -6
  361. package/src/controls-options-manager/constants.ts +5 -0
  362. package/src/controls-options-manager/enums.ts +18 -0
  363. package/src/controls-options-manager/index.ts +278 -0
  364. package/src/controls-options-manager/types.ts +59 -0
  365. package/src/controls-options-manager/util.ts +274 -0
  366. package/src/index.ts +33 -0
  367. package/src/locus-info/controlsUtils.ts +145 -24
  368. package/src/locus-info/fullState.ts +15 -11
  369. package/src/locus-info/hostUtils.ts +4 -3
  370. package/src/locus-info/index.ts +326 -55
  371. package/src/locus-info/infoUtils.ts +12 -4
  372. package/src/locus-info/mediaSharesUtils.ts +4 -4
  373. package/src/locus-info/parser.ts +46 -68
  374. package/src/locus-info/selfUtils.ts +187 -56
  375. package/src/media/index.ts +142 -172
  376. package/src/media/properties.ts +43 -36
  377. package/src/media/util.ts +1 -1
  378. package/src/mediaQualityMetrics/config.ts +380 -378
  379. package/src/meeting/in-meeting-actions.ts +139 -3
  380. package/src/meeting/index.ts +2674 -1543
  381. package/src/meeting/muteState.ts +271 -68
  382. package/src/meeting/request.ts +231 -135
  383. package/src/meeting/request.type.ts +13 -0
  384. package/src/meeting/state.ts +45 -30
  385. package/src/meeting/util.ts +119 -110
  386. package/src/meeting-info/collection.ts +2 -1
  387. package/src/meeting-info/index.ts +32 -30
  388. package/src/meeting-info/meeting-info-v2.ts +201 -113
  389. package/src/meeting-info/request.ts +9 -3
  390. package/src/meeting-info/util.ts +54 -46
  391. package/src/meeting-info/utilv2.ts +70 -55
  392. package/src/meetings/collection.ts +21 -1
  393. package/src/meetings/index.ts +749 -437
  394. package/src/meetings/request.ts +29 -25
  395. package/src/meetings/util.ts +122 -33
  396. package/src/member/index.ts +95 -49
  397. package/src/member/types.ts +24 -0
  398. package/src/member/util.ts +106 -13
  399. package/src/members/collection.ts +8 -1
  400. package/src/members/index.ts +281 -129
  401. package/src/members/request.ts +87 -14
  402. package/src/members/types.ts +28 -0
  403. package/src/members/util.ts +140 -49
  404. package/src/metrics/config.ts +302 -90
  405. package/src/metrics/constants.ts +1 -6
  406. package/src/metrics/index.ts +124 -95
  407. package/src/multistream/mediaRequestManager.ts +203 -45
  408. package/src/multistream/receiveSlot.ts +69 -26
  409. package/src/multistream/receiveSlotManager.ts +62 -38
  410. package/src/multistream/remoteMedia.ts +30 -4
  411. package/src/multistream/remoteMediaGroup.ts +4 -3
  412. package/src/multistream/remoteMediaManager.ts +230 -66
  413. package/src/networkQualityMonitor/index.ts +24 -27
  414. package/src/personal-meeting-room/index.ts +12 -16
  415. package/src/personal-meeting-room/request.ts +10 -3
  416. package/src/personal-meeting-room/util.ts +3 -3
  417. package/src/reachability/index.ts +131 -79
  418. package/src/reachability/request.ts +43 -34
  419. package/src/reactions/constants.ts +4 -0
  420. package/src/reactions/reactions.ts +8 -8
  421. package/src/reactions/reactions.type.ts +31 -5
  422. package/src/reconnection-manager/index.ts +193 -111
  423. package/src/recording-controller/enums.ts +8 -0
  424. package/src/recording-controller/index.ts +315 -0
  425. package/src/recording-controller/util.ts +58 -0
  426. package/src/roap/index.ts +63 -51
  427. package/src/roap/request.ts +86 -53
  428. package/src/roap/turnDiscovery.ts +105 -46
  429. package/src/statsAnalyzer/global.ts +8 -104
  430. package/src/statsAnalyzer/index.ts +624 -376
  431. package/src/statsAnalyzer/mqaUtil.ts +203 -90
  432. package/src/transcription/index.ts +34 -32
  433. package/test/integration/spec/converged-space-meetings.js +177 -0
  434. package/test/integration/spec/journey.js +670 -466
  435. package/test/integration/spec/space-meeting.js +320 -204
  436. package/test/integration/spec/transcription.js +7 -8
  437. package/test/unit/spec/annotation/index.ts +435 -0
  438. package/test/unit/spec/breakouts/breakout.ts +184 -0
  439. package/test/unit/spec/breakouts/collection.ts +15 -0
  440. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  441. package/test/unit/spec/breakouts/events.ts +77 -0
  442. package/test/unit/spec/breakouts/index.ts +1542 -0
  443. package/test/unit/spec/breakouts/request.ts +104 -0
  444. package/test/unit/spec/breakouts/utils.js +72 -0
  445. package/test/unit/spec/common/browser-detection.js +9 -28
  446. package/test/unit/spec/controls-options-manager/index.js +287 -0
  447. package/test/unit/spec/controls-options-manager/util.js +504 -0
  448. package/test/unit/spec/fixture/locus.js +93 -90
  449. package/test/unit/spec/locus-info/controlsUtils.js +289 -32
  450. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  451. package/test/unit/spec/locus-info/index.js +585 -5
  452. package/test/unit/spec/locus-info/infoUtils.js +26 -33
  453. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  454. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  455. package/test/unit/spec/locus-info/parser.js +3 -9
  456. package/test/unit/spec/locus-info/selfConstant.js +110 -103
  457. package/test/unit/spec/locus-info/selfUtils.js +236 -12
  458. package/test/unit/spec/media/index.ts +104 -8
  459. package/test/unit/spec/media/properties.ts +9 -9
  460. package/test/unit/spec/meeting/in-meeting-actions.ts +66 -3
  461. package/test/unit/spec/meeting/index.js +2934 -946
  462. package/test/unit/spec/meeting/muteState.js +368 -70
  463. package/test/unit/spec/meeting/request.js +194 -44
  464. package/test/unit/spec/meeting/utils.js +146 -165
  465. package/test/unit/spec/meeting-info/meetinginfov2.js +333 -74
  466. package/test/unit/spec/meeting-info/request.js +7 -9
  467. package/test/unit/spec/meeting-info/util.js +11 -12
  468. package/test/unit/spec/meeting-info/utilv2.js +131 -74
  469. package/test/unit/spec/meetings/collection.js +15 -1
  470. package/test/unit/spec/meetings/index.js +1052 -329
  471. package/test/unit/spec/meetings/utils.js +163 -14
  472. package/test/unit/spec/member/index.js +24 -1
  473. package/test/unit/spec/member/util.js +383 -32
  474. package/test/unit/spec/members/index.js +402 -54
  475. package/test/unit/spec/members/request.js +76 -20
  476. package/test/unit/spec/members/utils.js +191 -4
  477. package/test/unit/spec/metrics/index.js +104 -20
  478. package/test/unit/spec/multistream/mediaRequestManager.ts +650 -105
  479. package/test/unit/spec/multistream/receiveSlot.ts +76 -17
  480. package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
  481. package/test/unit/spec/multistream/remoteMedia.ts +32 -2
  482. package/test/unit/spec/multistream/remoteMediaGroup.ts +5 -5
  483. package/test/unit/spec/multistream/remoteMediaManager.ts +549 -65
  484. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  485. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  486. package/test/unit/spec/reachability/index.ts +176 -27
  487. package/test/unit/spec/reachability/request.js +66 -0
  488. package/test/unit/spec/reconnection-manager/index.js +62 -31
  489. package/test/unit/spec/recording-controller/index.js +231 -0
  490. package/test/unit/spec/recording-controller/util.js +102 -0
  491. package/test/unit/spec/roap/index.ts +21 -16
  492. package/test/unit/spec/roap/request.ts +217 -0
  493. package/test/unit/spec/roap/turnDiscovery.ts +93 -49
  494. package/test/unit/spec/stats-analyzer/index.js +116 -60
  495. package/test/utils/cmr.js +44 -42
  496. package/test/utils/constants.js +9 -0
  497. package/test/utils/integrationTestUtils.js +64 -0
  498. package/test/utils/testUtils.js +63 -99
  499. package/test/utils/webex-config.js +22 -18
  500. package/test/utils/webex-test-users.js +57 -50
  501. package/tsconfig.json +6 -0
  502. package/dist/media/internal-media-core-wrapper.js +0 -22
  503. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  504. package/dist/meeting/effectsState.js +0 -334
  505. package/dist/meeting/effectsState.js.map +0 -1
  506. package/dist/multistream/multistreamMedia.js +0 -116
  507. package/dist/multistream/multistreamMedia.js.map +0 -1
  508. package/src/index.js +0 -15
  509. package/src/media/internal-media-core-wrapper.ts +0 -9
  510. package/src/meeting/effectsState.ts +0 -211
  511. package/src/multistream/multistreamMedia.ts +0 -92
  512. package/test/unit/spec/meeting/effectsState.js +0 -291
@@ -1,92 +1,66 @@
1
1
  "use strict";
2
2
 
3
3
  var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
4
-
5
- var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
6
-
4
+ var _Object$keys2 = require("@babel/runtime-corejs2/core-js/object/keys");
7
5
  var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
8
-
9
6
  var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
10
-
11
7
  var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
12
-
13
8
  var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
14
-
15
9
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
16
-
17
10
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
18
-
19
11
  _Object$defineProperty(exports, "__esModule", {
20
12
  value: true
21
13
  });
22
-
23
- exports.default = exports.MeetingInfoV2PasswordError = exports.MeetingInfoV2CaptchaError = exports.MeetingInfoV2AdhocMeetingError = void 0;
24
-
14
+ exports.default = exports.MeetingInfoV2PolicyError = exports.MeetingInfoV2PasswordError = exports.MeetingInfoV2CaptchaError = exports.MeetingInfoV2AdhocMeetingError = void 0;
15
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
25
16
  var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
26
-
27
17
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
28
-
29
18
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
30
-
31
19
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
32
-
33
20
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
34
-
35
21
  var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
36
-
37
22
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
38
-
39
23
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
40
-
41
24
  var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/wrapNativeSuper"));
42
-
43
25
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
44
-
26
+ var _difference2 = _interopRequireDefault(require("lodash/difference"));
45
27
  var _constants = require("../constants");
46
-
47
28
  var _metrics = _interopRequireDefault(require("../metrics"));
48
-
29
+ var _config = require("../metrics/config");
49
30
  var _constants2 = _interopRequireDefault(require("../metrics/constants"));
50
-
51
31
  var _utilv = _interopRequireDefault(require("./utilv2"));
52
-
53
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
54
-
32
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys2(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
55
33
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
56
-
57
34
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
58
-
59
35
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
60
-
61
36
  var PASSWORD_ERROR_DEFAULT_MESSAGE = 'Password required. Call fetchMeetingInfo() with password argument';
62
37
  var CAPTCHA_ERROR_DEFAULT_MESSAGE = 'Captcha required. Call fetchMeetingInfo() with captchaInfo argument';
63
38
  var ADHOC_MEETING_DEFAULT_ERROR = 'Failed starting the adhoc meeting, Please contact support team ';
64
39
  var CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES = [423005, 423006];
40
+ var POLICY_ERROR_CODES = [403049, 403104, 403103, 403048, 403102, 403101];
41
+
65
42
  /**
66
43
  * Error to indicate that wbxappapi requires a password
67
44
  */
68
-
69
45
  var MeetingInfoV2PasswordError = /*#__PURE__*/function (_Error) {
70
46
  (0, _inherits2.default)(MeetingInfoV2PasswordError, _Error);
71
-
72
47
  var _super = _createSuper(MeetingInfoV2PasswordError);
73
-
74
48
  /**
75
- *
76
- * @constructor
77
- * @param {Number} [wbxAppApiErrorCode]
78
- * @param {Object} [meetingInfo]
79
- * @param {String} [message]
80
- */
49
+ *
50
+ * @constructor
51
+ * @param {Number} [wbxAppApiErrorCode]
52
+ * @param {Object} [meetingInfo]
53
+ * @param {String} [message]
54
+ */
81
55
  function MeetingInfoV2PasswordError(wbxAppApiErrorCode, meetingInfo) {
82
56
  var _this;
83
-
84
57
  var message = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : PASSWORD_ERROR_DEFAULT_MESSAGE;
85
58
  (0, _classCallCheck2.default)(this, MeetingInfoV2PasswordError);
86
59
  _this = _super.call(this, "".concat(message, ", code=").concat(wbxAppApiErrorCode));
87
60
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingInfo", void 0);
88
61
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sdkMessage", void 0);
89
62
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "wbxAppApiCode", void 0);
63
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "body", void 0);
90
64
  _this.name = 'MeetingInfoV2PasswordError';
91
65
  _this.sdkMessage = message;
92
66
  _this.stack = new Error().stack;
@@ -94,30 +68,23 @@ var MeetingInfoV2PasswordError = /*#__PURE__*/function (_Error) {
94
68
  _this.meetingInfo = meetingInfo;
95
69
  return _this;
96
70
  }
97
-
98
71
  return (0, _createClass2.default)(MeetingInfoV2PasswordError);
99
72
  }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
100
73
  /**
101
74
  * Error generating a adhoc space meeting
102
75
  */
103
-
104
-
105
76
  exports.MeetingInfoV2PasswordError = MeetingInfoV2PasswordError;
106
-
107
77
  var MeetingInfoV2AdhocMeetingError = /*#__PURE__*/function (_Error2) {
108
78
  (0, _inherits2.default)(MeetingInfoV2AdhocMeetingError, _Error2);
109
-
110
79
  var _super2 = _createSuper(MeetingInfoV2AdhocMeetingError);
111
-
112
80
  /**
113
- *
114
- * @constructor
115
- * @param {Number} [wbxAppApiErrorCode]
116
- * @param {String} [message]
117
- */
81
+ *
82
+ * @constructor
83
+ * @param {Number} [wbxAppApiErrorCode]
84
+ * @param {String} [message]
85
+ */
118
86
  function MeetingInfoV2AdhocMeetingError(wbxAppApiErrorCode) {
119
87
  var _this2;
120
-
121
88
  var message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ADHOC_MEETING_DEFAULT_ERROR;
122
89
  (0, _classCallCheck2.default)(this, MeetingInfoV2AdhocMeetingError);
123
90
  _this2 = _super2.call(this, "".concat(message, ", code=").concat(wbxAppApiErrorCode));
@@ -129,76 +96,95 @@ var MeetingInfoV2AdhocMeetingError = /*#__PURE__*/function (_Error2) {
129
96
  _this2.wbxAppApiCode = wbxAppApiErrorCode;
130
97
  return _this2;
131
98
  }
132
-
133
99
  return (0, _createClass2.default)(MeetingInfoV2AdhocMeetingError);
134
100
  }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
135
101
  /**
136
- * Error to indicate that preferred webex site not present to start adhoc meeting
137
- */
138
-
139
-
102
+ * Error preventing join because of a meeting policy
103
+ */
140
104
  exports.MeetingInfoV2AdhocMeetingError = MeetingInfoV2AdhocMeetingError;
141
-
142
- var MeetingInfoV2CaptchaError = /*#__PURE__*/function (_Error3) {
143
- (0, _inherits2.default)(MeetingInfoV2CaptchaError, _Error3);
144
-
145
- var _super3 = _createSuper(MeetingInfoV2CaptchaError);
146
-
105
+ var MeetingInfoV2PolicyError = /*#__PURE__*/function (_Error3) {
106
+ (0, _inherits2.default)(MeetingInfoV2PolicyError, _Error3);
107
+ var _super3 = _createSuper(MeetingInfoV2PolicyError);
147
108
  /**
148
- *
149
- * @constructor
150
- * @param {Number} [wbxAppApiErrorCode]
151
- * @param {Object} [captchaInfo]
152
- * @param {String} [message]
153
- */
154
- function MeetingInfoV2CaptchaError(wbxAppApiErrorCode, captchaInfo) {
109
+ *
110
+ * @constructor
111
+ * @param {Number} [wbxAppApiErrorCode]
112
+ * @param {Object} [meetingInfo]
113
+ * @param {String} [message]
114
+ */
115
+ function MeetingInfoV2PolicyError(wbxAppApiErrorCode, meetingInfo, message) {
155
116
  var _this3;
156
-
157
- var message = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : CAPTCHA_ERROR_DEFAULT_MESSAGE;
158
- (0, _classCallCheck2.default)(this, MeetingInfoV2CaptchaError);
117
+ (0, _classCallCheck2.default)(this, MeetingInfoV2PolicyError);
159
118
  _this3 = _super3.call(this, "".concat(message, ", code=").concat(wbxAppApiErrorCode));
160
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this3), "captchaInfo", void 0);
161
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this3), "isPasswordRequired", void 0);
119
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this3), "meetingInfo", void 0);
162
120
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this3), "sdkMessage", void 0);
163
121
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this3), "wbxAppApiCode", void 0);
164
- _this3.name = 'MeetingInfoV2PasswordError';
122
+ _this3.name = 'MeetingInfoV2AdhocMeetingError';
165
123
  _this3.sdkMessage = message;
166
124
  _this3.stack = new Error().stack;
167
125
  _this3.wbxAppApiCode = wbxAppApiErrorCode;
168
- _this3.isPasswordRequired = CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES.includes(wbxAppApiErrorCode);
169
- _this3.captchaInfo = captchaInfo;
126
+ _this3.meetingInfo = meetingInfo;
170
127
  return _this3;
171
128
  }
172
-
173
- return (0, _createClass2.default)(MeetingInfoV2CaptchaError);
129
+ return (0, _createClass2.default)(MeetingInfoV2PolicyError);
174
130
  }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
175
131
  /**
176
- * @class MeetingInfo
132
+ * Error to indicate that preferred webex site not present to start adhoc meeting
133
+ */
134
+ exports.MeetingInfoV2PolicyError = MeetingInfoV2PolicyError;
135
+ var MeetingInfoV2CaptchaError = /*#__PURE__*/function (_Error4) {
136
+ (0, _inherits2.default)(MeetingInfoV2CaptchaError, _Error4);
137
+ var _super4 = _createSuper(MeetingInfoV2CaptchaError);
138
+ /**
139
+ *
140
+ * @constructor
141
+ * @param {Number} [wbxAppApiErrorCode]
142
+ * @param {Object} [captchaInfo]
143
+ * @param {String} [message]
177
144
  */
178
-
179
-
145
+ function MeetingInfoV2CaptchaError(wbxAppApiErrorCode, captchaInfo) {
146
+ var _this4;
147
+ var message = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : CAPTCHA_ERROR_DEFAULT_MESSAGE;
148
+ (0, _classCallCheck2.default)(this, MeetingInfoV2CaptchaError);
149
+ _this4 = _super4.call(this, "".concat(message, ", code=").concat(wbxAppApiErrorCode));
150
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this4), "captchaInfo", void 0);
151
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this4), "isPasswordRequired", void 0);
152
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this4), "sdkMessage", void 0);
153
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this4), "wbxAppApiCode", void 0);
154
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this4), "body", void 0);
155
+ _this4.name = 'MeetingInfoV2PasswordError';
156
+ _this4.sdkMessage = message;
157
+ _this4.stack = new Error().stack;
158
+ _this4.wbxAppApiCode = wbxAppApiErrorCode;
159
+ _this4.isPasswordRequired = CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES.includes(wbxAppApiErrorCode);
160
+ _this4.captchaInfo = captchaInfo;
161
+ return _this4;
162
+ }
163
+ return (0, _createClass2.default)(MeetingInfoV2CaptchaError);
164
+ }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
165
+ /**
166
+ * @class MeetingInfo
167
+ */
180
168
  exports.MeetingInfoV2CaptchaError = MeetingInfoV2CaptchaError;
181
-
182
169
  var MeetingInfoV2 = /*#__PURE__*/function () {
183
170
  /**
184
- *
185
- * @param {WebexSDK} webex
186
- */
171
+ *
172
+ * @param {WebexSDK} webex
173
+ */
187
174
  function MeetingInfoV2(webex) {
188
175
  (0, _classCallCheck2.default)(this, MeetingInfoV2);
189
176
  (0, _defineProperty2.default)(this, "webex", void 0);
190
177
  this.webex = webex;
191
178
  }
192
- /**
193
- * converts hydra id into conversation url and persons Id
194
- * @param {String} destination one of many different types of destinations to look up info for
195
- * @param {String} [type] to match up with the destination value
196
- * @returns {Promise} destination and type
197
- * @public
198
- * @memberof MeetingInfo
199
- */
200
-
201
179
 
180
+ /**
181
+ * converts hydra id into conversation url and persons Id
182
+ * @param {String} destination one of many different types of destinations to look up info for
183
+ * @param {String} [type] to match up with the destination value
184
+ * @returns {Promise} destination and type
185
+ * @public
186
+ * @memberof MeetingInfo
187
+ */
202
188
  (0, _createClass2.default)(MeetingInfoV2, [{
203
189
  key: "fetchInfoOptions",
204
190
  value: function fetchInfoOptions(destination) {
@@ -209,230 +195,241 @@ var MeetingInfoV2 = /*#__PURE__*/function () {
209
195
  webex: this.webex
210
196
  });
211
197
  }
212
- /**
213
- * Creates adhoc space meetings for a space by fetching the conversation infomation
214
- * @param {String} conversationUrl conversationUrl to start adhoc meeting on
215
- * @returns {Promise} returns a meeting info object
216
- * @public
217
- * @memberof MeetingInfo
218
- */
219
198
 
199
+ /**
200
+ * Creates adhoc space meetings for a space by fetching the conversation infomation
201
+ * @param {String} conversationUrl conversationUrl to start adhoc meeting on
202
+ * @returns {Promise} returns a meeting info object
203
+ * @public
204
+ * @memberof MeetingInfo
205
+ */
220
206
  }, {
221
207
  key: "createAdhocSpaceMeeting",
222
208
  value: function () {
223
209
  var _createAdhocSpaceMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(conversationUrl) {
224
- var _this4 = this;
225
-
210
+ var _this5 = this;
226
211
  var getInvitees;
227
212
  return _regenerator.default.wrap(function _callee$(_context) {
228
- while (1) {
229
- switch (_context.prev = _context.next) {
230
- case 0:
231
- if (this.webex.meetings.preferredWebexSite) {
232
- _context.next = 2;
233
- break;
234
- }
235
-
236
- throw Error('No preferred webex site found');
237
-
238
- case 2:
239
- getInvitees = function getInvitees() {
240
- var particpants = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
241
- var invitees = [];
242
-
243
- if (particpants) {
244
- particpants.forEach(function (participant) {
245
- invitees.push({
246
- email: participant.emailAddress,
247
- ciUserUuid: participant.entryUUID
248
- });
213
+ while (1) switch (_context.prev = _context.next) {
214
+ case 0:
215
+ if (this.webex.meetings.preferredWebexSite) {
216
+ _context.next = 2;
217
+ break;
218
+ }
219
+ throw Error('No preferred webex site found');
220
+ case 2:
221
+ getInvitees = function getInvitees() {
222
+ var particpants = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
223
+ var invitees = [];
224
+ if (particpants) {
225
+ particpants.forEach(function (participant) {
226
+ invitees.push({
227
+ email: participant.emailAddress,
228
+ ciUserUuid: participant.entryUUID
249
229
  });
250
- }
251
-
252
- return invitees;
253
- };
254
-
255
- return _context.abrupt("return", this.webex.internal.conversation.get({
256
- url: conversationUrl
257
- }, {
258
- includeParticipants: true,
259
- disableTransform: true
260
- }).then(function (conversation) {
261
- var _conversation$partici;
262
-
263
- var body = {
264
- title: conversation.displayName,
265
- spaceUrl: conversation.url,
266
- keyUrl: conversation.encryptionKeyUrl,
267
- kroUrl: conversation.kmsResourceObjectUrl,
268
- invitees: getInvitees((_conversation$partici = conversation.participants) === null || _conversation$partici === void 0 ? void 0 : _conversation$partici.items)
269
- };
270
- var uri = _this4.webex.meetings.preferredWebexSite ? "https://".concat(_this4.webex.meetings.preferredWebexSite, "/wbxappapi/v2/meetings/spaceInstant") : '';
271
-
272
- _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_SUCCESS);
273
-
274
- return _this4.webex.request({
275
- method: _constants.HTTP_VERBS.POST,
276
- uri: uri,
277
- body: body
278
- });
279
- }).catch(function (err) {
280
- var _err$body, _err$body2;
281
-
282
- _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_FAILURE, {
283
- reason: err.message,
284
- stack: err.stack
285
230
  });
286
-
287
- throw new MeetingInfoV2AdhocMeetingError((_err$body = err.body) === null || _err$body === void 0 ? void 0 : _err$body.code, (_err$body2 = err.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.message);
288
- }));
289
-
290
- case 4:
291
- case "end":
292
- return _context.stop();
293
- }
231
+ }
232
+ return invitees;
233
+ };
234
+ return _context.abrupt("return", this.webex.internal.conversation.get({
235
+ url: conversationUrl
236
+ }, {
237
+ includeParticipants: true,
238
+ disableTransform: true
239
+ }).then(function (conversation) {
240
+ var _conversation$partici;
241
+ var body = {
242
+ title: conversation.displayName,
243
+ spaceUrl: conversation.url,
244
+ keyUrl: conversation.encryptionKeyUrl,
245
+ kroUrl: conversation.kmsResourceObjectUrl,
246
+ invitees: getInvitees((_conversation$partici = conversation.participants) === null || _conversation$partici === void 0 ? void 0 : _conversation$partici.items)
247
+ };
248
+ var uri = _this5.webex.meetings.preferredWebexSite ? "https://".concat(_this5.webex.meetings.preferredWebexSite, "/wbxappapi/v2/meetings/spaceInstant") : '';
249
+ _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_SUCCESS);
250
+ return _this5.webex.request({
251
+ method: _constants.HTTP_VERBS.POST,
252
+ uri: uri,
253
+ body: body
254
+ });
255
+ }).catch(function (err) {
256
+ var _err$body, _err$body2;
257
+ _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_FAILURE, {
258
+ reason: err.message,
259
+ stack: err.stack
260
+ });
261
+ throw new MeetingInfoV2AdhocMeetingError((_err$body = err.body) === null || _err$body === void 0 ? void 0 : _err$body.code, (_err$body2 = err.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.message);
262
+ }));
263
+ case 4:
264
+ case "end":
265
+ return _context.stop();
294
266
  }
295
267
  }, _callee, this);
296
268
  }));
297
-
298
269
  function createAdhocSpaceMeeting(_x) {
299
270
  return _createAdhocSpaceMeeting.apply(this, arguments);
300
271
  }
301
-
302
272
  return createAdhocSpaceMeeting;
303
273
  }()
304
274
  /**
305
- * Fetches meeting info from the server
306
- * @param {String} destination one of many different types of destinations to look up info for
307
- * @param {String} [type] to match up with the destination value
308
- * @param {String} password
309
- * @param {Object} captchaInfo
310
- * @param {String} captchaInfo.code
311
- * @param {String} captchaInfo.id
312
- * @returns {Promise} returns a meeting info object
313
- * @public
314
- * @memberof MeetingInfo
315
- */
316
-
275
+ * Fetches meeting info from the server
276
+ * @param {String} destination one of many different types of destinations to look up info for
277
+ * @param {String} [type] to match up with the destination value
278
+ * @param {String} password
279
+ * @param {Object} captchaInfo
280
+ * @param {String} captchaInfo.code
281
+ * @param {String} captchaInfo.id
282
+ * @param {String} installedOrgID
283
+ * @param {String} locusId
284
+ * @param {Object} extraParams
285
+ * @param {Object} options
286
+ * @returns {Promise} returns a meeting info object
287
+ * @public
288
+ * @memberof MeetingInfo
289
+ */
317
290
  }, {
318
291
  key: "fetchMeetingInfo",
319
292
  value: function () {
320
293
  var _fetchMeetingInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(destination) {
321
294
  var type,
322
- password,
323
- captchaInfo,
324
- destinationType,
325
- body,
326
- options,
327
- directURI,
328
- _args2 = arguments;
295
+ password,
296
+ captchaInfo,
297
+ installedOrgID,
298
+ locusId,
299
+ extraParams,
300
+ options,
301
+ meetingId,
302
+ destinationType,
303
+ body,
304
+ _destinationType$info,
305
+ _destinationType$info2,
306
+ err,
307
+ requestOptions,
308
+ directURI,
309
+ _args2 = arguments;
329
310
  return _regenerator.default.wrap(function _callee2$(_context2) {
330
- while (1) {
331
- switch (_context2.prev = _context2.next) {
332
- case 0:
333
- type = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : null;
334
- password = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : null;
335
- captchaInfo = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : null;
336
- _context2.next = 5;
337
- return _utilv.default.getDestinationType({
338
- destination: destination,
339
- type: type,
340
- webex: this.webex
341
- });
342
-
343
- case 5:
344
- destinationType = _context2.sent;
345
-
346
- if (!(destinationType.type === _constants._CONVERSATION_URL_ && this.webex.config.meetings.experimental.enableAdhocMeetings && this.webex.meetings.preferredWebexSite)) {
347
- _context2.next = 8;
348
- break;
349
- }
350
-
351
- return _context2.abrupt("return", this.createAdhocSpaceMeeting(destinationType.destination));
352
-
353
- case 8:
354
- _context2.next = 10;
355
- return _utilv.default.getRequestBody(_objectSpread(_objectSpread({}, destinationType), {}, {
356
- password: password,
357
- captchaInfo: captchaInfo
358
- }));
359
-
360
- case 10:
361
- body = _context2.sent;
362
- options = {
363
- method: _constants.HTTP_VERBS.POST,
364
- body: body
365
- };
366
- _context2.next = 14;
367
- return _utilv.default.getDirectMeetingInfoURI(destinationType);
368
-
369
- case 14:
370
- directURI = _context2.sent;
371
-
372
- if (directURI) {
373
- options.uri = directURI;
374
- } else {
375
- options.service = _constants.WBXAPPAPI_SERVICE;
376
- options.resource = 'meetingInfo';
311
+ while (1) switch (_context2.prev = _context2.next) {
312
+ case 0:
313
+ type = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : null;
314
+ password = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : null;
315
+ captchaInfo = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : null;
316
+ installedOrgID = _args2.length > 4 && _args2[4] !== undefined ? _args2[4] : null;
317
+ locusId = _args2.length > 5 && _args2[5] !== undefined ? _args2[5] : null;
318
+ extraParams = _args2.length > 6 && _args2[6] !== undefined ? _args2[6] : {};
319
+ options = _args2.length > 7 && _args2[7] !== undefined ? _args2[7] : {};
320
+ meetingId = options.meetingId;
321
+ _context2.next = 10;
322
+ return _utilv.default.getDestinationType({
323
+ destination: destination,
324
+ type: type,
325
+ webex: this.webex
326
+ });
327
+ case 10:
328
+ destinationType = _context2.sent;
329
+ if (!(destinationType.type === _constants._CONVERSATION_URL_ && this.webex.config.meetings.experimental.enableAdhocMeetings && this.webex.meetings.preferredWebexSite)) {
330
+ _context2.next = 13;
331
+ break;
332
+ }
333
+ return _context2.abrupt("return", this.createAdhocSpaceMeeting(destinationType.destination));
334
+ case 13:
335
+ _context2.next = 15;
336
+ return _utilv.default.getRequestBody(_objectSpread(_objectSpread({}, destinationType), {}, {
337
+ password: password,
338
+ captchaInfo: captchaInfo,
339
+ installedOrgID: installedOrgID,
340
+ locusId: locusId,
341
+ extraParams: extraParams
342
+ }));
343
+ case 15:
344
+ body = _context2.sent;
345
+ if ((0, _difference2.default)((0, _keys.default)(body), (0, _keys.default)(_constants.DEFAULT_MEETING_INFO_REQUEST_BODY)).length) {
346
+ _context2.next = 20;
347
+ break;
348
+ }
349
+ err = new Error('Not enough information to fetch meeting info');
350
+ _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_FAILURE, {
351
+ reason: err.message,
352
+ destinationType: destinationType === null || destinationType === void 0 ? void 0 : destinationType.type,
353
+ webExMeetingId: destinationType === null || destinationType === void 0 ? void 0 : (_destinationType$info = destinationType.info) === null || _destinationType$info === void 0 ? void 0 : _destinationType$info.webExMeetingId,
354
+ sipUri: destinationType === null || destinationType === void 0 ? void 0 : (_destinationType$info2 = destinationType.info) === null || _destinationType$info2 === void 0 ? void 0 : _destinationType$info2.sipUri
355
+ });
356
+ throw err;
357
+ case 20:
358
+ requestOptions = {
359
+ method: _constants.HTTP_VERBS.POST,
360
+ body: body
361
+ };
362
+ _context2.next = 23;
363
+ return _utilv.default.getDirectMeetingInfoURI(destinationType);
364
+ case 23:
365
+ directURI = _context2.sent;
366
+ if (directURI) {
367
+ requestOptions.uri = directURI;
368
+ } else {
369
+ requestOptions.service = _constants.WBXAPPAPI_SERVICE;
370
+ requestOptions.resource = 'meetingInfo';
371
+ }
372
+ return _context2.abrupt("return", this.webex.request(requestOptions).then(function (response) {
373
+ _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_SUCCESS);
374
+ return response;
375
+ }).catch(function (err) {
376
+ if (meetingId) {
377
+ _metrics.default.postEvent({
378
+ event: _config.eventType.MEETING_INFO_RESPONSE,
379
+ meetingId: meetingId,
380
+ data: {
381
+ errors: [_metrics.default.parseWebexApiError(err, true)],
382
+ meetingLookupUrl: err === null || err === void 0 ? void 0 : err.url
383
+ }
384
+ });
377
385
  }
378
-
379
- return _context2.abrupt("return", this.webex.request(options).then(function (response) {
380
- _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_SUCCESS);
381
-
382
- return response;
383
- }).catch(function (err) {
384
- if ((err === null || err === void 0 ? void 0 : err.statusCode) === 403) {
385
- var _err$body3, _err$body4, _err$body4$data;
386
-
387
- _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_PASSWORD_ERROR, {
388
- reason: err.message,
389
- stack: err.stack
390
- });
391
-
392
- throw new MeetingInfoV2PasswordError((_err$body3 = err.body) === null || _err$body3 === void 0 ? void 0 : _err$body3.code, (_err$body4 = err.body) === null || _err$body4 === void 0 ? void 0 : (_err$body4$data = _err$body4.data) === null || _err$body4$data === void 0 ? void 0 : _err$body4$data.meetingInfo);
393
- }
394
-
395
- if ((err === null || err === void 0 ? void 0 : err.statusCode) === 423) {
396
- var _err$body5;
397
-
398
- _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_CAPTCHA_ERROR, {
399
- reason: err.message,
400
- stack: err.stack
401
- });
402
-
403
- throw new MeetingInfoV2CaptchaError((_err$body5 = err.body) === null || _err$body5 === void 0 ? void 0 : _err$body5.code, {
404
- captchaId: err.body.captchaID,
405
- verificationImageURL: err.body.verificationImageURL,
406
- verificationAudioURL: err.body.verificationAudioURL,
407
- refreshURL: err.body.refreshURL
386
+ if ((err === null || err === void 0 ? void 0 : err.statusCode) === 403) {
387
+ var _err$body3, _err$body8, _err$body9, _err$body9$data;
388
+ if (POLICY_ERROR_CODES.includes((_err$body3 = err.body) === null || _err$body3 === void 0 ? void 0 : _err$body3.code)) {
389
+ var _err$body4, _err$body5, _err$body6, _err$body6$data, _err$body7;
390
+ _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_INFO_POLICY_ERROR, {
391
+ code: (_err$body4 = err.body) === null || _err$body4 === void 0 ? void 0 : _err$body4.code
408
392
  });
393
+ throw new MeetingInfoV2PolicyError((_err$body5 = err.body) === null || _err$body5 === void 0 ? void 0 : _err$body5.code, (_err$body6 = err.body) === null || _err$body6 === void 0 ? void 0 : (_err$body6$data = _err$body6.data) === null || _err$body6$data === void 0 ? void 0 : _err$body6$data.meetingInfo, (_err$body7 = err.body) === null || _err$body7 === void 0 ? void 0 : _err$body7.message);
409
394
  }
410
-
411
- _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_FAILURE, {
395
+ _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_PASSWORD_ERROR, {
412
396
  reason: err.message,
413
397
  stack: err.stack
414
398
  });
415
-
416
- throw err;
417
- }));
418
-
419
- case 17:
420
- case "end":
421
- return _context2.stop();
422
- }
399
+ throw new MeetingInfoV2PasswordError((_err$body8 = err.body) === null || _err$body8 === void 0 ? void 0 : _err$body8.code, (_err$body9 = err.body) === null || _err$body9 === void 0 ? void 0 : (_err$body9$data = _err$body9.data) === null || _err$body9$data === void 0 ? void 0 : _err$body9$data.meetingInfo);
400
+ }
401
+ if ((err === null || err === void 0 ? void 0 : err.statusCode) === 423) {
402
+ var _err$body10;
403
+ _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_CAPTCHA_ERROR, {
404
+ reason: err.message,
405
+ stack: err.stack
406
+ });
407
+ throw new MeetingInfoV2CaptchaError((_err$body10 = err.body) === null || _err$body10 === void 0 ? void 0 : _err$body10.code, {
408
+ captchaId: err.body.captchaID,
409
+ verificationImageURL: err.body.verificationImageURL,
410
+ verificationAudioURL: err.body.verificationAudioURL,
411
+ refreshURL: err.body.refreshURL
412
+ });
413
+ }
414
+ _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_FAILURE, {
415
+ reason: err.message,
416
+ stack: err.stack
417
+ });
418
+ throw err;
419
+ }));
420
+ case 26:
421
+ case "end":
422
+ return _context2.stop();
423
423
  }
424
424
  }, _callee2, this);
425
425
  }));
426
-
427
426
  function fetchMeetingInfo(_x2) {
428
427
  return _fetchMeetingInfo.apply(this, arguments);
429
428
  }
430
-
431
429
  return fetchMeetingInfo;
432
430
  }()
433
431
  }]);
434
432
  return MeetingInfoV2;
435
433
  }();
436
-
437
434
  exports.default = MeetingInfoV2;
438
435
  //# sourceMappingURL=meeting-info-v2.js.map