@webex/plugin-meetings 2.59.1 → 2.59.3-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. package/.eslintrc.js +6 -6
  2. package/LICENSE +1 -1
  3. package/README.md +1204 -1204
  4. package/UPGRADING.md +287 -287
  5. package/babel.config.js +3 -3
  6. package/browsers.js +108 -108
  7. package/dist/common/browser-detection.d.ts +9 -9
  8. package/dist/common/browser-detection.js.map +1 -1
  9. package/dist/common/collection.d.ts +48 -48
  10. package/dist/common/collection.js +43 -43
  11. package/dist/common/collection.js.map +1 -1
  12. package/dist/common/config.d.ts +2 -2
  13. package/dist/common/config.js.map +1 -1
  14. package/dist/common/errors/captcha-error.d.ts +15 -15
  15. package/dist/common/errors/captcha-error.js +7 -7
  16. package/dist/common/errors/captcha-error.js.map +1 -1
  17. package/dist/common/errors/intent-to-join.d.ts +16 -16
  18. package/dist/common/errors/intent-to-join.js +7 -7
  19. package/dist/common/errors/intent-to-join.js.map +1 -1
  20. package/dist/common/errors/join-meeting.d.ts +17 -17
  21. package/dist/common/errors/join-meeting.js +8 -8
  22. package/dist/common/errors/join-meeting.js.map +1 -1
  23. package/dist/common/errors/media.d.ts +15 -15
  24. package/dist/common/errors/media.js +7 -7
  25. package/dist/common/errors/media.js.map +1 -1
  26. package/dist/common/errors/parameter.d.ts +15 -15
  27. package/dist/common/errors/parameter.js +7 -7
  28. package/dist/common/errors/parameter.js.map +1 -1
  29. package/dist/common/errors/password-error.d.ts +15 -15
  30. package/dist/common/errors/password-error.js +7 -7
  31. package/dist/common/errors/password-error.js.map +1 -1
  32. package/dist/common/errors/permission.d.ts +14 -14
  33. package/dist/common/errors/permission.js +6 -6
  34. package/dist/common/errors/permission.js.map +1 -1
  35. package/dist/common/errors/reconnection-in-progress.d.ts +9 -9
  36. package/dist/common/errors/reconnection-in-progress.js +6 -6
  37. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  38. package/dist/common/errors/reconnection.d.ts +15 -15
  39. package/dist/common/errors/reconnection.js +7 -7
  40. package/dist/common/errors/reconnection.js.map +1 -1
  41. package/dist/common/errors/stats.d.ts +15 -15
  42. package/dist/common/errors/stats.js +7 -7
  43. package/dist/common/errors/stats.js.map +1 -1
  44. package/dist/common/errors/webex-errors.d.ts +81 -81
  45. package/dist/common/errors/webex-errors.js +42 -42
  46. package/dist/common/errors/webex-errors.js.map +1 -1
  47. package/dist/common/errors/webex-meetings-error.d.ts +20 -20
  48. package/dist/common/errors/webex-meetings-error.js +12 -12
  49. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  50. package/dist/common/events/events-scope.d.ts +17 -17
  51. package/dist/common/events/events-scope.js +10 -10
  52. package/dist/common/events/events-scope.js.map +1 -1
  53. package/dist/common/events/events.d.ts +12 -12
  54. package/dist/common/events/events.js +4 -4
  55. package/dist/common/events/events.js.map +1 -1
  56. package/dist/common/events/trigger-proxy.d.ts +2 -2
  57. package/dist/common/events/trigger-proxy.js.map +1 -1
  58. package/dist/common/events/util.d.ts +2 -2
  59. package/dist/common/events/util.js.map +1 -1
  60. package/dist/common/logs/logger-config.d.ts +2 -2
  61. package/dist/common/logs/logger-config.js.map +1 -1
  62. package/dist/common/logs/logger-proxy.d.ts +2 -2
  63. package/dist/common/logs/logger-proxy.js.map +1 -1
  64. package/dist/common/logs/request.d.ts +34 -34
  65. package/dist/common/logs/request.js +18 -18
  66. package/dist/common/logs/request.js.map +1 -1
  67. package/dist/common/queue.d.ts +32 -32
  68. package/dist/common/queue.js +18 -18
  69. package/dist/common/queue.js.map +1 -1
  70. package/dist/config.d.ts +73 -73
  71. package/dist/config.js.map +1 -1
  72. package/dist/constants.d.ts +924 -924
  73. package/dist/constants.js +9 -9
  74. package/dist/constants.js.map +1 -1
  75. package/dist/controls-options-manager/constants.d.ts +4 -4
  76. package/dist/controls-options-manager/constants.js.map +1 -1
  77. package/dist/controls-options-manager/enums.d.ts +5 -5
  78. package/dist/controls-options-manager/enums.js.map +1 -1
  79. package/dist/controls-options-manager/index.d.ts +120 -120
  80. package/dist/controls-options-manager/index.js +81 -81
  81. package/dist/controls-options-manager/index.js.map +1 -1
  82. package/dist/controls-options-manager/util.d.ts +7 -7
  83. package/dist/controls-options-manager/util.js.map +1 -1
  84. package/dist/index.d.ts +4 -4
  85. package/dist/index.js.map +1 -1
  86. package/dist/locus-info/controlsUtils.d.ts +2 -2
  87. package/dist/locus-info/controlsUtils.js +21 -21
  88. package/dist/locus-info/controlsUtils.js.map +1 -1
  89. package/dist/locus-info/embeddedAppsUtils.d.ts +2 -2
  90. package/dist/locus-info/embeddedAppsUtils.js +14 -14
  91. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  92. package/dist/locus-info/fullState.d.ts +2 -2
  93. package/dist/locus-info/fullState.js.map +1 -1
  94. package/dist/locus-info/hostUtils.d.ts +2 -2
  95. package/dist/locus-info/hostUtils.js +19 -19
  96. package/dist/locus-info/hostUtils.js.map +1 -1
  97. package/dist/locus-info/index.d.ts +269 -269
  98. package/dist/locus-info/index.js +180 -180
  99. package/dist/locus-info/index.js.map +1 -1
  100. package/dist/locus-info/infoUtils.d.ts +2 -2
  101. package/dist/locus-info/infoUtils.js.map +1 -1
  102. package/dist/locus-info/mediaSharesUtils.d.ts +2 -2
  103. package/dist/locus-info/mediaSharesUtils.js +50 -50
  104. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  105. package/dist/locus-info/parser.d.ts +212 -212
  106. package/dist/locus-info/parser.js +136 -136
  107. package/dist/locus-info/parser.js.map +1 -1
  108. package/dist/locus-info/selfUtils.d.ts +2 -2
  109. package/dist/locus-info/selfUtils.js +52 -52
  110. package/dist/locus-info/selfUtils.js.map +1 -1
  111. package/dist/media/index.d.ts +32 -32
  112. package/dist/media/index.js +145 -145
  113. package/dist/media/index.js.map +1 -1
  114. package/dist/media/properties.d.ts +108 -108
  115. package/dist/media/properties.js +49 -49
  116. package/dist/media/properties.js.map +1 -1
  117. package/dist/media/util.d.ts +2 -2
  118. package/dist/media/util.js.map +1 -1
  119. package/dist/mediaQualityMetrics/config.d.ts +233 -233
  120. package/dist/mediaQualityMetrics/config.js.map +1 -1
  121. package/dist/meeting/effectsState.d.ts +42 -42
  122. package/dist/meeting/effectsState.js +24 -24
  123. package/dist/meeting/effectsState.js.map +1 -1
  124. package/dist/meeting/in-meeting-actions.d.ts +79 -79
  125. package/dist/meeting/in-meeting-actions.js +11 -11
  126. package/dist/meeting/in-meeting-actions.js.map +1 -1
  127. package/dist/meeting/index.d.ts +1621 -1621
  128. package/dist/meeting/index.js +1502 -1505
  129. package/dist/meeting/index.js.map +1 -1
  130. package/dist/meeting/muteState.d.ts +116 -116
  131. package/dist/meeting/muteState.js +85 -85
  132. package/dist/meeting/muteState.js.map +1 -1
  133. package/dist/meeting/request.d.ts +255 -255
  134. package/dist/meeting/request.js +141 -141
  135. package/dist/meeting/request.js.map +1 -1
  136. package/dist/meeting/state.d.ts +9 -9
  137. package/dist/meeting/state.js +30 -30
  138. package/dist/meeting/state.js.map +1 -1
  139. package/dist/meeting/util.d.ts +2 -2
  140. package/dist/meeting/util.js.map +1 -1
  141. package/dist/meeting-info/collection.d.ts +20 -20
  142. package/dist/meeting-info/collection.js +11 -11
  143. package/dist/meeting-info/collection.js.map +1 -1
  144. package/dist/meeting-info/index.d.ts +57 -57
  145. package/dist/meeting-info/index.js +50 -50
  146. package/dist/meeting-info/index.js.map +1 -1
  147. package/dist/meeting-info/meeting-info-v2.d.ts +93 -93
  148. package/dist/meeting-info/meeting-info-v2.js +52 -52
  149. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  150. package/dist/meeting-info/request.d.ts +22 -22
  151. package/dist/meeting-info/request.js +14 -14
  152. package/dist/meeting-info/request.js.map +1 -1
  153. package/dist/meeting-info/util.d.ts +2 -2
  154. package/dist/meeting-info/util.js +9 -9
  155. package/dist/meeting-info/util.js.map +1 -1
  156. package/dist/meeting-info/utilv2.d.ts +2 -2
  157. package/dist/meeting-info/utilv2.js +20 -20
  158. package/dist/meeting-info/utilv2.js.map +1 -1
  159. package/dist/meetings/collection.d.ts +23 -23
  160. package/dist/meetings/collection.js +14 -14
  161. package/dist/meetings/collection.js.map +1 -1
  162. package/dist/meetings/index.d.ts +296 -296
  163. package/dist/meetings/index.js +259 -259
  164. package/dist/meetings/index.js.map +1 -1
  165. package/dist/meetings/request.d.ts +27 -27
  166. package/dist/meetings/request.js +15 -15
  167. package/dist/meetings/request.js.map +1 -1
  168. package/dist/meetings/util.d.ts +18 -18
  169. package/dist/meetings/util.js +29 -29
  170. package/dist/meetings/util.js.map +1 -1
  171. package/dist/member/index.d.ts +147 -147
  172. package/dist/member/index.js +214 -214
  173. package/dist/member/index.js.map +1 -1
  174. package/dist/member/member.types.d.ts +11 -11
  175. package/dist/member/member.types.js.map +1 -1
  176. package/dist/member/util.d.ts +2 -2
  177. package/dist/member/util.js +60 -60
  178. package/dist/member/util.js.map +1 -1
  179. package/dist/members/collection.d.ts +24 -24
  180. package/dist/members/collection.js +11 -11
  181. package/dist/members/collection.js.map +1 -1
  182. package/dist/members/index.d.ts +298 -298
  183. package/dist/members/index.js +275 -275
  184. package/dist/members/index.js.map +1 -1
  185. package/dist/members/request.d.ts +50 -50
  186. package/dist/members/request.js +27 -27
  187. package/dist/members/request.js.map +1 -1
  188. package/dist/members/util.d.ts +2 -2
  189. package/dist/members/util.js +21 -21
  190. package/dist/members/util.js.map +1 -1
  191. package/dist/metrics/config.d.ts +169 -169
  192. package/dist/metrics/config.js.map +1 -1
  193. package/dist/metrics/constants.d.ts +57 -57
  194. package/dist/metrics/constants.js.map +1 -1
  195. package/dist/metrics/index.d.ts +152 -152
  196. package/dist/metrics/index.js +90 -90
  197. package/dist/metrics/index.js.map +1 -1
  198. package/dist/networkQualityMonitor/index.d.ts +70 -70
  199. package/dist/networkQualityMonitor/index.js +65 -65
  200. package/dist/networkQualityMonitor/index.js.map +1 -1
  201. package/dist/peer-connection-manager/index.d.ts +6 -6
  202. package/dist/peer-connection-manager/index.js +87 -87
  203. package/dist/peer-connection-manager/index.js.map +1 -1
  204. package/dist/peer-connection-manager/util.d.ts +6 -6
  205. package/dist/peer-connection-manager/util.js +9 -9
  206. package/dist/peer-connection-manager/util.js.map +1 -1
  207. package/dist/personal-meeting-room/index.d.ts +47 -47
  208. package/dist/personal-meeting-room/index.js +67 -67
  209. package/dist/personal-meeting-room/index.js.map +1 -1
  210. package/dist/personal-meeting-room/request.d.ts +14 -14
  211. package/dist/personal-meeting-room/request.js +7 -7
  212. package/dist/personal-meeting-room/request.js.map +1 -1
  213. package/dist/personal-meeting-room/util.d.ts +2 -2
  214. package/dist/personal-meeting-room/util.js.map +1 -1
  215. package/dist/reachability/index.d.ts +139 -139
  216. package/dist/reachability/index.js +110 -110
  217. package/dist/reachability/index.js.map +1 -1
  218. package/dist/reachability/request.d.ts +35 -35
  219. package/dist/reachability/request.js +15 -15
  220. package/dist/reachability/request.js.map +1 -1
  221. package/dist/reactions/reactions.d.ts +4 -4
  222. package/dist/reactions/reactions.js.map +1 -1
  223. package/dist/reactions/reactions.type.d.ts +32 -32
  224. package/dist/reactions/reactions.type.js.map +1 -1
  225. package/dist/reconnection-manager/index.d.ts +112 -112
  226. package/dist/reconnection-manager/index.js +112 -112
  227. package/dist/reconnection-manager/index.js.map +1 -1
  228. package/dist/recording-controller/enums.d.ts +7 -7
  229. package/dist/recording-controller/enums.js.map +1 -1
  230. package/dist/recording-controller/index.d.ts +193 -193
  231. package/dist/recording-controller/index.js +127 -127
  232. package/dist/recording-controller/index.js.map +1 -1
  233. package/dist/recording-controller/util.d.ts +13 -13
  234. package/dist/recording-controller/util.js.map +1 -1
  235. package/dist/roap/collection.d.ts +10 -10
  236. package/dist/roap/collection.js.map +1 -1
  237. package/dist/roap/handler.d.ts +47 -47
  238. package/dist/roap/handler.js +27 -27
  239. package/dist/roap/handler.js.map +1 -1
  240. package/dist/roap/index.d.ts +116 -116
  241. package/dist/roap/index.js +111 -111
  242. package/dist/roap/index.js.map +1 -1
  243. package/dist/roap/request.d.ts +35 -35
  244. package/dist/roap/request.js +17 -17
  245. package/dist/roap/request.js.map +1 -1
  246. package/dist/roap/state.d.ts +9 -9
  247. package/dist/roap/state.js +14 -14
  248. package/dist/roap/state.js.map +1 -1
  249. package/dist/roap/turnDiscovery.d.ts +67 -67
  250. package/dist/roap/turnDiscovery.js +46 -46
  251. package/dist/roap/turnDiscovery.js.map +1 -1
  252. package/dist/roap/util.d.ts +2 -2
  253. package/dist/roap/util.js.map +1 -1
  254. package/dist/statsAnalyzer/global.d.ts +126 -126
  255. package/dist/statsAnalyzer/global.js.map +1 -1
  256. package/dist/statsAnalyzer/index.d.ts +190 -190
  257. package/dist/statsAnalyzer/index.js +128 -128
  258. package/dist/statsAnalyzer/index.js.map +1 -1
  259. package/dist/statsAnalyzer/mqaUtil.d.ts +22 -22
  260. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  261. package/dist/transcription/index.d.ts +64 -64
  262. package/dist/transcription/index.js +42 -42
  263. package/dist/transcription/index.js.map +1 -1
  264. package/internal-README.md +172 -172
  265. package/jest.config.js +3 -3
  266. package/package.json +22 -21
  267. package/process +1 -1
  268. package/src/common/browser-detection.ts +39 -39
  269. package/src/common/collection.ts +94 -94
  270. package/src/common/config.ts +9 -9
  271. package/src/common/errors/captcha-error.ts +25 -25
  272. package/src/common/errors/intent-to-join.ts +27 -27
  273. package/src/common/errors/join-meeting.ts +32 -32
  274. package/src/common/errors/media.ts +25 -25
  275. package/src/common/errors/parameter.ts +33 -33
  276. package/src/common/errors/password-error.ts +25 -25
  277. package/src/common/errors/permission.ts +24 -24
  278. package/src/common/errors/reconnection-in-progress.ts +8 -8
  279. package/src/common/errors/reconnection.ts +25 -25
  280. package/src/common/errors/stats.ts +25 -25
  281. package/src/common/errors/webex-errors.ts +140 -140
  282. package/src/common/errors/webex-meetings-error.ts +35 -35
  283. package/src/common/events/events-scope.ts +30 -30
  284. package/src/common/events/events.ts +25 -25
  285. package/src/common/events/trigger-proxy.ts +25 -25
  286. package/src/common/events/util.ts +39 -39
  287. package/src/common/logs/logger-config.ts +8 -8
  288. package/src/common/logs/logger-proxy.ts +44 -44
  289. package/src/common/logs/request.ts +65 -65
  290. package/src/common/queue.ts +50 -50
  291. package/src/config.ts +96 -96
  292. package/src/constants.ts +1121 -1121
  293. package/src/controls-options-manager/constants.ts +5 -5
  294. package/src/controls-options-manager/enums.ts +6 -6
  295. package/src/controls-options-manager/index.ts +183 -183
  296. package/src/controls-options-manager/util.ts +20 -20
  297. package/src/index.js +15 -15
  298. package/src/locus-info/controlsUtils.ts +112 -112
  299. package/src/locus-info/embeddedAppsUtils.ts +57 -57
  300. package/src/locus-info/fullState.ts +69 -69
  301. package/src/locus-info/hostUtils.ts +60 -60
  302. package/src/locus-info/index.ts +1303 -1303
  303. package/src/locus-info/infoUtils.ts +101 -101
  304. package/src/locus-info/mediaSharesUtils.ts +173 -173
  305. package/src/locus-info/parser.ts +680 -680
  306. package/src/locus-info/selfUtils.ts +428 -428
  307. package/src/media/index.ts +675 -675
  308. package/src/media/properties.ts +313 -313
  309. package/src/media/util.ts +37 -37
  310. package/src/mediaQualityMetrics/config.ts +382 -382
  311. package/src/meeting/effectsState.ts +209 -209
  312. package/src/meeting/in-meeting-actions.ts +153 -153
  313. package/src/meeting/index.ts +6537 -6543
  314. package/src/meeting/muteState.ts +365 -365
  315. package/src/meeting/request.ts +810 -810
  316. package/src/meeting/state.ts +194 -194
  317. package/src/meeting/util.ts +530 -530
  318. package/src/meeting-info/collection.ts +41 -41
  319. package/src/meeting-info/index.ts +137 -137
  320. package/src/meeting-info/meeting-info-v2.ts +273 -273
  321. package/src/meeting-info/request.ts +46 -46
  322. package/src/meeting-info/util.ts +314 -314
  323. package/src/meeting-info/utilv2.ts +324 -324
  324. package/src/meetings/collection.ts +43 -43
  325. package/src/meetings/index.ts +1128 -1128
  326. package/src/meetings/request.ts +81 -81
  327. package/src/meetings/util.ts +181 -181
  328. package/src/member/index.ts +446 -446
  329. package/src/member/member.types.ts +13 -13
  330. package/src/member/util.ts +286 -286
  331. package/src/members/collection.ts +40 -40
  332. package/src/members/index.ts +900 -900
  333. package/src/members/request.ts +175 -175
  334. package/src/members/util.ts +260 -260
  335. package/src/metrics/config.ts +485 -485
  336. package/src/metrics/constants.ts +61 -61
  337. package/src/metrics/index.ts +543 -543
  338. package/src/networkQualityMonitor/index.ts +211 -211
  339. package/src/peer-connection-manager/index.ts +847 -847
  340. package/src/peer-connection-manager/util.ts +119 -119
  341. package/src/personal-meeting-room/index.ts +157 -157
  342. package/src/personal-meeting-room/request.ts +48 -48
  343. package/src/personal-meeting-room/util.ts +49 -49
  344. package/src/reachability/index.ts +478 -478
  345. package/src/reachability/request.ts +81 -81
  346. package/src/reactions/reactions.ts +104 -104
  347. package/src/reactions/reactions.type.ts +36 -36
  348. package/src/reconnection-manager/index.ts +622 -622
  349. package/src/recording-controller/enums.ts +8 -8
  350. package/src/recording-controller/index.ts +315 -315
  351. package/src/recording-controller/util.ts +58 -58
  352. package/src/roap/collection.ts +62 -62
  353. package/src/roap/handler.ts +294 -294
  354. package/src/roap/index.ts +413 -413
  355. package/src/roap/request.ts +229 -229
  356. package/src/roap/state.ts +156 -156
  357. package/src/roap/turnDiscovery.ts +283 -283
  358. package/src/roap/util.ts +100 -100
  359. package/src/statsAnalyzer/global.ts +128 -128
  360. package/src/statsAnalyzer/index.ts +1266 -1266
  361. package/src/statsAnalyzer/mqaUtil.ts +290 -290
  362. package/src/transcription/index.ts +154 -154
  363. package/test/integration/spec/journey.js +941 -941
  364. package/test/integration/spec/space-meeting.js +457 -457
  365. package/test/integration/spec/transcription.js +55 -55
  366. package/test/unit/spec/common/browser-detection.js +119 -119
  367. package/test/unit/spec/common/queue.js +69 -69
  368. package/test/unit/spec/controls-options-manager/index.js +123 -123
  369. package/test/unit/spec/controls-options-manager/util.js +65 -65
  370. package/test/unit/spec/fixture/locus.js +406 -406
  371. package/test/unit/spec/locus-info/controlsUtils.js +82 -82
  372. package/test/unit/spec/locus-info/embeddedAppsUtils.js +104 -104
  373. package/test/unit/spec/locus-info/index.js +1272 -1272
  374. package/test/unit/spec/locus-info/infoUtils.js +138 -138
  375. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +975 -975
  376. package/test/unit/spec/locus-info/lib/SeqCmp.json +522 -522
  377. package/test/unit/spec/locus-info/lib/selfConstant.js +286 -286
  378. package/test/unit/spec/locus-info/parser.js +298 -298
  379. package/test/unit/spec/locus-info/selfUtils.js +185 -185
  380. package/test/unit/spec/media/properties.ts +305 -305
  381. package/test/unit/spec/meeting/effectsState.js +281 -281
  382. package/test/unit/spec/meeting/in-meeting-actions.ts +90 -90
  383. package/test/unit/spec/meeting/index.js +5227 -5227
  384. package/test/unit/spec/meeting/muteState.js +430 -430
  385. package/test/unit/spec/meeting/request.js +317 -317
  386. package/test/unit/spec/meeting/utils.js +319 -319
  387. package/test/unit/spec/meeting-info/meetinginfov2.js +376 -376
  388. package/test/unit/spec/meeting-info/request.js +64 -64
  389. package/test/unit/spec/meeting-info/util.js +37 -37
  390. package/test/unit/spec/meeting-info/utilv2.js +330 -330
  391. package/test/unit/spec/meetings/collection.js +52 -52
  392. package/test/unit/spec/meetings/index.js +1375 -1375
  393. package/test/unit/spec/meetings/utils.js +66 -66
  394. package/test/unit/spec/member/index.js +47 -47
  395. package/test/unit/spec/member/util.js +80 -80
  396. package/test/unit/spec/members/index.js +364 -364
  397. package/test/unit/spec/members/request.js +200 -200
  398. package/test/unit/spec/members/utils.js +42 -42
  399. package/test/unit/spec/metrics/index.js +111 -111
  400. package/test/unit/spec/networkQualityMonitor/index.js +99 -99
  401. package/test/unit/spec/peerconnection-manager/index.js +218 -218
  402. package/test/unit/spec/peerconnection-manager/utils.js +49 -49
  403. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +388 -388
  404. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +29 -29
  405. package/test/unit/spec/reachability/index.ts +50 -50
  406. package/test/unit/spec/reconnection-manager/index.js +206 -206
  407. package/test/unit/spec/recording-controller/index.js +230 -230
  408. package/test/unit/spec/recording-controller/util.js +101 -101
  409. package/test/unit/spec/roap/index.ts +128 -128
  410. package/test/unit/spec/roap/turnDiscovery.ts +372 -372
  411. package/test/unit/spec/roap/util.js +30 -30
  412. package/test/unit/spec/stats-analyzer/index.js +287 -287
  413. package/test/utils/cmr.js +104 -104
  414. package/test/utils/testUtils.js +287 -287
  415. package/test/utils/webex-config.js +77 -77
  416. package/test/utils/webex-test-users.js +82 -82
  417. package/tsconfig.json +5 -5
@@ -33,8 +33,8 @@ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (
33
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; }
34
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); }; }
35
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; } }
36
- /**
37
- * @class MeetingRequest
36
+ /**
37
+ * @class MeetingRequest
38
38
  */
39
39
  var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
40
40
  (0, _inherits2.default)(MeetingRequest, _StatelessWebexPlugin);
@@ -51,20 +51,20 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
51
51
  return _this;
52
52
  }
53
53
 
54
- /**
55
- * Make a network request to join a meeting
56
- * @param {Object} options
57
- * @param {String} options.sipUri
58
- * @param {String} options.deviceUrl
59
- * @param {String} options.locusUrl
60
- * @param {String} options.resourceId,
61
- * @param {String} options.correlationId
62
- * @param {boolean} options.ensureConversation
63
- * @param {boolean} options.moderator
64
- * @param {boolean} options.pin
65
- * @param {boolean} options.moveToResource
66
- * @param {Object} options.roapMessage
67
- * @returns {Promise}
54
+ /**
55
+ * Make a network request to join a meeting
56
+ * @param {Object} options
57
+ * @param {String} options.sipUri
58
+ * @param {String} options.deviceUrl
59
+ * @param {String} options.locusUrl
60
+ * @param {String} options.resourceId,
61
+ * @param {String} options.correlationId
62
+ * @param {boolean} options.ensureConversation
63
+ * @param {boolean} options.moderator
64
+ * @param {boolean} options.pin
65
+ * @param {boolean} options.moveToResource
66
+ * @param {Object} options.roapMessage
67
+ * @returns {Promise}
68
68
  */
69
69
  (0, _createClass2.default)(MeetingRequest, [{
70
70
  key: "joinMeeting",
@@ -167,13 +167,13 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
167
167
  }
168
168
  return joinMeeting;
169
169
  }()
170
- /**
171
- * Send a request to refresh the captcha
172
- * @param {Object} options
173
- * @param {String} options.captchaRefreshUrl
174
- * @param {String} options.captchaId
175
- * @returns {Promise}
176
- * @private
170
+ /**
171
+ * Send a request to refresh the captcha
172
+ * @param {Object} options
173
+ * @param {String} options.captchaRefreshUrl
174
+ * @param {String} options.captchaId
175
+ * @returns {Promise}
176
+ * @private
177
177
  */
178
178
  }, {
179
179
  key: "refreshCaptcha",
@@ -195,15 +195,15 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
195
195
  });
196
196
  }
197
197
 
198
- /**
199
- * Make a network request to add a dial in device
200
- * @param {Object} options
201
- * @param {String} options.correlationId
202
- * @param {String} options.locusUrl url for the meeting
203
- * @param {String} options.dialInUrl identifier for the to-be provisioned device
204
- * @param {String} options.clientUrl identifier for the web device
205
- * @returns {Promise}
206
- * @private
198
+ /**
199
+ * Make a network request to add a dial in device
200
+ * @param {Object} options
201
+ * @param {String} options.correlationId
202
+ * @param {String} options.locusUrl url for the meeting
203
+ * @param {String} options.dialInUrl identifier for the to-be provisioned device
204
+ * @param {String} options.clientUrl identifier for the web device
205
+ * @returns {Promise}
206
+ * @private
207
207
  */
208
208
  }, {
209
209
  key: "dialIn",
@@ -235,16 +235,16 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
235
235
  });
236
236
  }
237
237
 
238
- /**
239
- * Make a network request to add a dial out device
240
- * @param {Object} options
241
- * @param {String} options.correlationId
242
- * @param {String} options.locusUrl url for the meeting
243
- * @param {String} options.dialOutUrl identifier for the to-be provisioned device
244
- * @param {String} options.phoneNumber phone number to dial out to
245
- * @param {String} options.clientUrl identifier for the web device
246
- * @returns {Promise}
247
- * @private
238
+ /**
239
+ * Make a network request to add a dial out device
240
+ * @param {Object} options
241
+ * @param {String} options.correlationId
242
+ * @param {String} options.locusUrl url for the meeting
243
+ * @param {String} options.dialOutUrl identifier for the to-be provisioned device
244
+ * @param {String} options.phoneNumber phone number to dial out to
245
+ * @param {String} options.clientUrl identifier for the web device
246
+ * @returns {Promise}
247
+ * @private
248
248
  */
249
249
  }, {
250
250
  key: "dialOut",
@@ -278,12 +278,12 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
278
278
  });
279
279
  }
280
280
 
281
- /**
282
- * Syns the missed delta event
283
- * @param {Object} options
284
- * @param {boolean} options.desync flag to get partial or whole locus object
285
- * @param {String} options.syncUrl sync url to get ht elatest locus delta
286
- * @returns {Promise}
281
+ /**
282
+ * Syns the missed delta event
283
+ * @param {Object} options
284
+ * @param {boolean} options.desync flag to get partial or whole locus object
285
+ * @param {String} options.syncUrl sync url to get ht elatest locus delta
286
+ * @returns {Promise}
287
287
  */
288
288
  }, {
289
289
  key: "syncMeeting",
@@ -309,12 +309,12 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
309
309
  });
310
310
  }
311
311
 
312
- /**
313
- * Request to get the complete locus object
314
- * @param {Object} options
315
- * @param {boolean} options.desync flag to get partial or whole locus object
316
- * @param {String} options.locusUrl sync url to get ht elatest locus delta
317
- * @returns {Promise}
312
+ /**
313
+ * Request to get the complete locus object
314
+ * @param {Object} options
315
+ * @param {boolean} options.desync flag to get partial or whole locus object
316
+ * @param {String} options.locusUrl sync url to get ht elatest locus delta
317
+ * @returns {Promise}
318
318
  */
319
319
  }, {
320
320
  key: "getFullLocus",
@@ -338,15 +338,15 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
338
338
  return _promise.default.reject();
339
339
  }
340
340
 
341
- /**
342
- * Make a network request to make a provisioned phone leave the meeting
343
- * @param {Object} options
344
- * @param {String} options.locusUrl
345
- * @param {String} options.phoneUrl
346
- * @param {String} options.correlationId
347
- * @param {String} options.selfId
348
- * @returns {Promise}
349
- * @private
341
+ /**
342
+ * Make a network request to make a provisioned phone leave the meeting
343
+ * @param {Object} options
344
+ * @param {String} options.locusUrl
345
+ * @param {String} options.phoneUrl
346
+ * @param {String} options.correlationId
347
+ * @param {String} options.selfId
348
+ * @returns {Promise}
349
+ * @private
350
350
  */
351
351
  }, {
352
352
  key: "disconnectPhoneAudio",
@@ -376,15 +376,15 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
376
376
  });
377
377
  }
378
378
 
379
- /**
380
- * Make a network request to leave a meeting
381
- * @param {Object} options
382
- * @param {Url} options.locusUrl
383
- * @param {String} options.selfId
384
- * @param {Url} options.deviceUrl
385
- * @param {String} options.resourceId,
386
- * @param {String} options.correlationId
387
- * @returns {Promise}
379
+ /**
380
+ * Make a network request to leave a meeting
381
+ * @param {Object} options
382
+ * @param {Url} options.locusUrl
383
+ * @param {String} options.selfId
384
+ * @param {Url} options.deviceUrl
385
+ * @param {String} options.resourceId,
386
+ * @param {String} options.correlationId
387
+ * @returns {Promise}
388
388
  */
389
389
  }, {
390
390
  key: "leaveMeeting",
@@ -414,13 +414,13 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
414
414
  });
415
415
  }
416
416
 
417
- /**
418
- * Make a network request to acknowledge a meeting
419
- * @param {Object} options
420
- * @param {String} options.locusUrl
421
- * @param {String} options.deviceUrl
422
- * @param {String} options.correlationId
423
- * @returns {Promise}
417
+ /**
418
+ * Make a network request to acknowledge a meeting
419
+ * @param {Object} options
420
+ * @param {String} options.locusUrl
421
+ * @param {String} options.deviceUrl
422
+ * @param {String} options.correlationId
423
+ * @returns {Promise}
424
424
  */
425
425
  }, {
426
426
  key: "acknowledgeMeeting",
@@ -460,13 +460,13 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
460
460
  });
461
461
  }
462
462
 
463
- /**
464
- * Make a network request to decline a meeting
465
- * @param {Object} options
466
- * @param {String} options.locusUrl
467
- * @param {String} options.deviceUrl
468
- * @param {String} options.reason
469
- * @returns {Promise}
463
+ /**
464
+ * Make a network request to decline a meeting
465
+ * @param {Object} options
466
+ * @param {String} options.locusUrl
467
+ * @param {String} options.deviceUrl
468
+ * @param {String} options.reason
469
+ * @returns {Promise}
470
470
  */
471
471
  }, {
472
472
  key: "declineMeeting",
@@ -490,15 +490,15 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
490
490
  });
491
491
  }
492
492
 
493
- /**
494
- * Toggle remote audio and/or video
495
- * @param {Object} options options for toggling
496
- * @param {String} options.selfId Locus self id??
497
- * @param {String} options.locusUrl Locus url
498
- * @param {String} options.deviceUrl Url of a device
499
- * @param {String} options.resourceId Populated if you are paired to a device
500
- * @param {String} options.localMedias local sdps
501
- * @returns {Promise}
493
+ /**
494
+ * Toggle remote audio and/or video
495
+ * @param {Object} options options for toggling
496
+ * @param {String} options.selfId Locus self id??
497
+ * @param {String} options.locusUrl Locus url
498
+ * @param {String} options.deviceUrl Url of a device
499
+ * @param {String} options.resourceId Populated if you are paired to a device
500
+ * @param {String} options.localMedias local sdps
501
+ * @returns {Promise}
502
502
  */
503
503
  }, {
504
504
  key: "remoteAudioVideoToggle",
@@ -528,15 +528,15 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
528
528
  });
529
529
  }
530
530
 
531
- /**
532
- * change the content floor grant
533
- * @param {Object} options options for floor grant
534
- * @param {String} options.disposition floor action (granted/released)
535
- * @param {String} options.personUrl personUrl who is requesting floor
536
- * @param {String} options.deviceUrl Url of a device
537
- * @param {String} options.resourceId Populated if you are paired to a device
538
- * @param {String} options.uri floor grant uri
539
- * @returns {Promise}
531
+ /**
532
+ * change the content floor grant
533
+ * @param {Object} options options for floor grant
534
+ * @param {String} options.disposition floor action (granted/released)
535
+ * @param {String} options.personUrl personUrl who is requesting floor
536
+ * @param {String} options.deviceUrl Url of a device
537
+ * @param {String} options.resourceId Populated if you are paired to a device
538
+ * @param {String} options.uri floor grant uri
539
+ * @returns {Promise}
540
540
  */
541
541
  }, {
542
542
  key: "changeMeetingFloor",
@@ -578,13 +578,13 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
578
578
  });
579
579
  }
580
580
 
581
- /**
582
- * Sends a request to the DTMF endpoint to send tones
583
- * @param {Object} options
584
- * @param {String} options.locusUrl
585
- * @param {String} options.deviceUrl
586
- * @param {String} options.tones a string of one or more DTMF tones to send
587
- * @returns {Promise}
581
+ /**
582
+ * Sends a request to the DTMF endpoint to send tones
583
+ * @param {Object} options
584
+ * @param {String} options.locusUrl
585
+ * @param {String} options.deviceUrl
586
+ * @param {String} options.tones a string of one or more DTMF tones to send
587
+ * @returns {Promise}
588
588
  */
589
589
  }, {
590
590
  key: "sendDTMF",
@@ -606,19 +606,19 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
606
606
  });
607
607
  }
608
608
 
609
- /**
610
- * Sends a request to the controls endpoint to set the video layout
611
- * @param {Object} options
612
- * @param {String} options.locusUrl
613
- * @param {String} options.deviceUrl
614
- * @param {String} options.layoutType a layout type that should be available in meeting constants {@link #layout_types}
615
- * @param {Object} options.main preferred dimensions for the remote main video stream
616
- * @param {Number} options.main.width preferred width of main video stream
617
- * @param {Number} options.main.height preferred height of main video stream
618
- * @param {Object} options.content preferred dimensions for the remote content share stream
619
- * @param {Number} options.content.width preferred width of content share stream
620
- * @param {Number} options.content.height preferred height of content share stream
621
- * @returns {Promise}
609
+ /**
610
+ * Sends a request to the controls endpoint to set the video layout
611
+ * @param {Object} options
612
+ * @param {String} options.locusUrl
613
+ * @param {String} options.deviceUrl
614
+ * @param {String} options.layoutType a layout type that should be available in meeting constants {@link #layout_types}
615
+ * @param {Object} options.main preferred dimensions for the remote main video stream
616
+ * @param {Number} options.main.width preferred width of main video stream
617
+ * @param {Number} options.main.height preferred height of main video stream
618
+ * @param {Object} options.content preferred dimensions for the remote content share stream
619
+ * @param {Number} options.content.width preferred width of content share stream
620
+ * @param {Number} options.content.height preferred height of content share stream
621
+ * @returns {Promise}
622
622
  */
623
623
  }, {
624
624
  key: "changeVideoLayout",
@@ -664,11 +664,11 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
664
664
  });
665
665
  }
666
666
 
667
- /**
668
- * Make a network request to end meeting for all
669
- * @param {Object} options
670
- * @param {Url} options.locusUrl
671
- * @returns {Promise}
667
+ /**
668
+ * Make a network request to end meeting for all
669
+ * @param {Object} options
670
+ * @param {Url} options.locusUrl
671
+ * @returns {Promise}
672
672
  */
673
673
  }, {
674
674
  key: "endMeetingForAll",
@@ -683,11 +683,11 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
683
683
  });
684
684
  }
685
685
 
686
- /**
687
- * Send a locus keepAlive (used in lobby)
688
- * @param {Object} options
689
- * @param {Url} options.keepAliveUrl
690
- * @returns {Promise}
686
+ /**
687
+ * Send a locus keepAlive (used in lobby)
688
+ * @param {Object} options
689
+ * @param {Url} options.keepAliveUrl
690
+ * @returns {Promise}
691
691
  */
692
692
  }, {
693
693
  key: "keepAlive",
@@ -700,13 +700,13 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
700
700
  });
701
701
  }
702
702
 
703
- /**
704
- * Make a network request to send a reaction.
705
- * @param {Object} options
706
- * @param {Url} options.reactionChannelUrl
707
- * @param {Reaction} options.reaction
708
- * @param {string} options.senderID
709
- * @returns {Promise}
703
+ /**
704
+ * Make a network request to send a reaction.
705
+ * @param {Object} options
706
+ * @param {Url} options.reactionChannelUrl
707
+ * @param {Reaction} options.reaction
708
+ * @param {string} options.senderID
709
+ * @returns {Promise}
710
710
  */
711
711
  }, {
712
712
  key: "sendReaction",
@@ -1 +1 @@
1
- {"version":3,"names":["_uuid","_interopRequireDefault","require","_webexCore","_common","_loggerProxy","_constants","ownKeys","object","enumerableOnly","keys","_Object$keys","_Object$getOwnPropertySymbols","symbols","filter","sym","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","Object","forEach","key","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","_Reflect$construct","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","MeetingRequest","_StatelessWebexPlugin","_inherits2","_super","attrs","options","_this","_classCallCheck2","_assertThisInitialized2","changeVideoLayoutDebounced","_debounce2","changeVideoLayout","leading","trailing","_createClass2","value","_joinMeeting","_asyncToGenerator2","_regenerator","mark","_callee","asResourceOccupant","inviteeAddress","meetingNumber","permissionToken","deviceUrl","locusUrl","resourceId","correlationId","ensureConversation","moderator","pin","moveToResource","roapMessage","preferTranscoding","url","body","wrap","_callee$","_context","prev","next","LoggerProxy","logger","info","device","deviceType","config","meetings","usingResource","moveMediaToResource","respOnlySdp","allowMultiDevice","supportsNativeLobby","clientMediaPreferences","webex","clientRegion","countryCode","regionCode","undefined","concat","PARTICIPANT","internal","services","waitForCatalog","get","LOCI","CALL","invitee","address","t0","error","ALTERNATE_REDIRECT_TRUE","callPreferences","requestedMedia","_SLIDES_","localMedias","abrupt","request","method","HTTP_VERBS","POST","uri","stop","joinMeeting","_x","refreshCaptcha","_ref","captchaRefreshUrl","captchaId","catch","err","dialIn","_ref2","dialInUrl","clientUrl","PROVISIONAL","provisionalType","PROVISIONAL_TYPE_DIAL_IN","dialOut","_ref3","dialOutUrl","phoneNumber","PROVISIONAL_TYPE_DIAL_OUT","dialoutAddress","syncMeeting","desync","syncUrl","split","LOCUS","SYNCDEBUG","GET","getFullLocus","_promise","reject","disconnectPhoneAudio","_ref4","phoneUrl","selfId","LEAVE","PUT","leaveMeeting","_ref5","acknowledgeMeeting","ALERT","lockMeeting","CONTROLS","lock","locked","PATCH","declineMeeting","DECLINE","reason","remoteAudioVideoToggle","_options$preferTransc","MEDIA","changeMeetingFloor","floorReq","disposition","FLOOR_ACTION","GRANTED","beneficiary","personUrl","devices","requester","floor","resourceUrl","resourceToken","sendDTMF","_ref6","tones","SEND_DTMF_ENDPOINT","dtmf","uuid","v4","_ref7","layoutType","main","content","width","height","Error","_stringify","renderInfoMain","renderInfoContent","layoutParams","renderInfo","layout","type","endMeetingForAll","_ref8","END","keepAlive","_ref9","keepAliveUrl","sendReaction","_ref10","reactionChannelUrl","reaction","participantId","sender","StatelessWebexPlugin","exports"],"sources":["request.ts"],"sourcesContent":["import uuid from 'uuid';\nimport {debounce} from 'lodash';\n// @ts-ignore\nimport {StatelessWebexPlugin} from '@webex/webex-core';\n// @ts-ignore\nimport {deviceType} from '@webex/common';\n\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {\n ALERT,\n ALTERNATE_REDIRECT_TRUE,\n CALL,\n CONTROLS,\n DECLINE,\n END,\n FLOOR_ACTION,\n HTTP_VERBS,\n LEAVE,\n LOCI,\n LOCUS,\n MEDIA,\n PARTICIPANT,\n PROVISIONAL_TYPE_DIAL_IN,\n PROVISIONAL_TYPE_DIAL_OUT,\n SEND_DTMF_ENDPOINT,\n _SLIDES_,\n} from '../constants';\nimport {Reaction} from '../reactions/reactions.type';\n\n/**\n * @class MeetingRequest\n */\nexport default class MeetingRequest extends StatelessWebexPlugin {\n changeVideoLayoutDebounced: any;\n\n constructor(attrs: any, options: any) {\n super(attrs, options);\n this.changeVideoLayoutDebounced = debounce(this.changeVideoLayout, 2000, {\n leading: true,\n trailing: true,\n });\n }\n\n /**\n * Make a network request to join a meeting\n * @param {Object} options\n * @param {String} options.sipUri\n * @param {String} options.deviceUrl\n * @param {String} options.locusUrl\n * @param {String} options.resourceId,\n * @param {String} options.correlationId\n * @param {boolean} options.ensureConversation\n * @param {boolean} options.moderator\n * @param {boolean} options.pin\n * @param {boolean} options.moveToResource\n * @param {Object} options.roapMessage\n * @returns {Promise}\n */\n async joinMeeting(options: {\n sipUri: string;\n deviceUrl: string;\n locusUrl: string;\n resourceId: string;\n correlationId: string;\n ensureConversation: boolean;\n moderator: boolean;\n pin: boolean;\n moveToResource: boolean;\n roapMessage: any;\n asResourceOccupant: any;\n inviteeAddress: any;\n meetingNumber: any;\n permissionToken: any;\n preferTranscoding: any;\n }) {\n const {\n asResourceOccupant,\n inviteeAddress,\n meetingNumber,\n permissionToken,\n deviceUrl,\n locusUrl,\n resourceId,\n correlationId,\n ensureConversation,\n moderator,\n pin,\n moveToResource,\n roapMessage,\n preferTranscoding,\n } = options;\n\n LoggerProxy.logger.info('Meeting:request#joinMeeting --> Joining a meeting', correlationId);\n\n let url = '';\n\n const body: any = {\n asResourceOccupant,\n device: {\n url: deviceUrl,\n // @ts-ignore - config comes from registerPlugin\n deviceType: this.config.meetings.deviceType,\n },\n usingResource: resourceId || null,\n moveMediaToResource: (resourceId && moveToResource) || false,\n correlationId,\n respOnlySdp: true,\n allowMultiDevice: true,\n ensureConversation: ensureConversation || false,\n supportsNativeLobby: 1,\n clientMediaPreferences: {\n preferTranscoding: preferTranscoding ?? true,\n },\n };\n\n // @ts-ignore\n if (this.webex.meetings.clientRegion) {\n // @ts-ignore\n body.device.countryCode = this.webex.meetings.clientRegion.countryCode;\n // @ts-ignore\n body.device.regionCode = this.webex.meetings.clientRegion.regionCode;\n }\n\n if (moderator !== undefined) {\n body.moderator = moderator;\n }\n\n if (permissionToken) {\n body.permissionToken = permissionToken;\n }\n\n if (pin !== undefined) {\n body.pin = pin;\n }\n\n if (locusUrl) {\n url = `${locusUrl}/${PARTICIPANT}`;\n } else if (inviteeAddress || meetingNumber) {\n try {\n // @ts-ignore\n await this.webex.internal.services.waitForCatalog('postauth');\n // @ts-ignore\n url = `${this.webex.internal.services.get('locus')}/${LOCI}/${CALL}`;\n body.invitee = {\n address: inviteeAddress || `wbxmn:${meetingNumber}`,\n };\n } catch (e) {\n LoggerProxy.logger.error(\n `Meeting:request#joinMeeting Error Joining ${inviteeAddress || meetingNumber} --> ${e}`\n );\n throw e;\n }\n }\n\n // TODO: -- this will be resolved in SDK request\n url = url.concat(`?${ALTERNATE_REDIRECT_TRUE}`);\n\n if (resourceId === inviteeAddress) {\n body.callPreferences = {\n requestedMedia: [_SLIDES_],\n };\n }\n\n if (roapMessage) {\n body.localMedias = roapMessage.localMedias;\n }\n\n /// @ts-ignore\n return this.request({\n method: HTTP_VERBS.POST,\n uri: url,\n body,\n });\n }\n\n /**\n * Send a request to refresh the captcha\n * @param {Object} options\n * @param {String} options.captchaRefreshUrl\n * @param {String} options.captchaId\n * @returns {Promise}\n * @private\n */\n private refreshCaptcha({\n captchaRefreshUrl,\n captchaId,\n }: {\n captchaRefreshUrl: string;\n captchaId: string;\n }) {\n const body = {\n captchaId,\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.POST,\n uri: captchaRefreshUrl,\n body,\n }).catch((err) => {\n LoggerProxy.logger.error(`Meeting:request#refreshCaptcha --> Error: ${err}`);\n\n throw err;\n });\n }\n\n /**\n * Make a network request to add a dial in device\n * @param {Object} options\n * @param {String} options.correlationId\n * @param {String} options.locusUrl url for the meeting\n * @param {String} options.dialInUrl identifier for the to-be provisioned device\n * @param {String} options.clientUrl identifier for the web device\n * @returns {Promise}\n * @private\n */\n private dialIn({\n locusUrl,\n dialInUrl,\n clientUrl,\n correlationId,\n }: {\n correlationId: string;\n locusUrl: string;\n dialInUrl: string;\n clientUrl: string;\n }) {\n LoggerProxy.logger.info(\n 'Meeting:request#dialIn --> Provisioning a dial in device',\n correlationId\n );\n const uri = `${locusUrl}/${PARTICIPANT}`;\n\n const body = {\n device: {\n deviceType: deviceType.PROVISIONAL,\n provisionalType: PROVISIONAL_TYPE_DIAL_IN,\n url: dialInUrl,\n clientUrl,\n },\n correlationId,\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.POST,\n uri,\n body,\n }).catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:request#dialIn --> Error provisioning a dial in device, error ${err}`\n );\n\n throw err;\n });\n }\n\n /**\n * Make a network request to add a dial out device\n * @param {Object} options\n * @param {String} options.correlationId\n * @param {String} options.locusUrl url for the meeting\n * @param {String} options.dialOutUrl identifier for the to-be provisioned device\n * @param {String} options.phoneNumber phone number to dial out to\n * @param {String} options.clientUrl identifier for the web device\n * @returns {Promise}\n * @private\n */\n private dialOut({\n locusUrl,\n dialOutUrl,\n phoneNumber,\n clientUrl,\n correlationId,\n }: {\n correlationId: string;\n locusUrl: string;\n dialOutUrl: string;\n phoneNumber: string;\n clientUrl: string;\n }) {\n LoggerProxy.logger.info(\n 'Meeting:request#dialOut --> Provisioning a dial out device',\n correlationId\n );\n const uri = `${locusUrl}/${PARTICIPANT}`;\n\n const body = {\n device: {\n deviceType: deviceType.PROVISIONAL,\n provisionalType: PROVISIONAL_TYPE_DIAL_OUT,\n url: dialOutUrl,\n dialoutAddress: phoneNumber,\n clientUrl,\n },\n correlationId,\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.POST,\n uri,\n body,\n }).catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:request#dialOut --> Error provisioning a dial out device, error ${err}`\n );\n\n throw err;\n });\n }\n\n /**\n * Syns the missed delta event\n * @param {Object} options\n * @param {boolean} options.desync flag to get partial or whole locus object\n * @param {String} options.syncUrl sync url to get ht elatest locus delta\n * @returns {Promise}\n */\n syncMeeting(options: {desync: boolean; syncUrl: string}) {\n /* eslint-disable no-else-return */\n const {desync} = options;\n let {syncUrl} = options;\n\n /* istanbul ignore else */\n if (desync) {\n // check for existing URL parameters\n syncUrl = syncUrl\n .concat(syncUrl.split('?')[1] ? '&' : '?')\n .concat(`${LOCUS.SYNCDEBUG}=${desync}`);\n }\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.GET,\n uri: syncUrl,\n }) // TODO: Handle if delta sync failed . Get the full locus object\n .catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:request#syncMeeting --> Error syncing meeting, error ${err}`\n );\n\n return err;\n });\n }\n\n /**\n * Request to get the complete locus object\n * @param {Object} options\n * @param {boolean} options.desync flag to get partial or whole locus object\n * @param {String} options.locusUrl sync url to get ht elatest locus delta\n * @returns {Promise}\n */\n getFullLocus(options: {desync: boolean; locusUrl: string}) {\n let {locusUrl} = options;\n const {desync} = options;\n\n if (locusUrl) {\n if (desync) {\n locusUrl += `?${LOCUS.SYNCDEBUG}=${desync}`;\n }\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.GET,\n uri: locusUrl,\n }).catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:request#getFullLocus --> Error getting full locus, error ${err}`\n );\n\n return err;\n });\n }\n\n return Promise.reject();\n }\n\n /**\n * Make a network request to make a provisioned phone leave the meeting\n * @param {Object} options\n * @param {String} options.locusUrl\n * @param {String} options.phoneUrl\n * @param {String} options.correlationId\n * @param {String} options.selfId\n * @returns {Promise}\n * @private\n */\n private disconnectPhoneAudio({\n locusUrl,\n phoneUrl,\n correlationId,\n selfId,\n }: {\n locusUrl: string;\n phoneUrl: string;\n correlationId: string;\n selfId: string;\n }) {\n LoggerProxy.logger.info(\n `Meeting:request#disconnectPhoneAudio --> request phone ${phoneUrl} to leave`,\n correlationId\n );\n const uri = `${locusUrl}/${PARTICIPANT}/${selfId}/${LEAVE}`;\n\n const body = {\n device: {\n deviceType: deviceType.PROVISIONAL,\n url: phoneUrl,\n },\n correlationId,\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.PUT,\n uri,\n body,\n }).catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:request#disconnectPhoneAudio --> Error when requesting phone ${phoneUrl} to leave, error ${err}`\n );\n\n throw err;\n });\n }\n\n /**\n * Make a network request to leave a meeting\n * @param {Object} options\n * @param {Url} options.locusUrl\n * @param {String} options.selfId\n * @param {Url} options.deviceUrl\n * @param {String} options.resourceId,\n * @param {String} options.correlationId\n * @returns {Promise}\n */\n leaveMeeting({\n locusUrl,\n selfId,\n deviceUrl: url,\n resourceId,\n correlationId,\n }: {\n locusUrl: string;\n selfId: string;\n deviceUrl: string;\n resourceId: string;\n correlationId: string;\n }) {\n LoggerProxy.logger.info('Meeting:request#leaveMeeting --> Leaving a meeting', correlationId);\n\n const uri = `${locusUrl}/${PARTICIPANT}/${selfId}/${LEAVE}`;\n const body = {\n device: {\n // @ts-ignore\n deviceType: this.config.meetings.deviceType,\n url,\n },\n usingResource: resourceId || null,\n correlationId,\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.PUT,\n uri,\n body,\n });\n }\n\n /**\n * Make a network request to acknowledge a meeting\n * @param {Object} options\n * @param {String} options.locusUrl\n * @param {String} options.deviceUrl\n * @param {String} options.correlationId\n * @returns {Promise}\n */\n acknowledgeMeeting(options: {locusUrl: string; deviceUrl: string; correlationId: string}) {\n const uri = `${options.locusUrl}/${PARTICIPANT}/${ALERT}`;\n const body = {\n device: {\n // @ts-ignore\n deviceType: this.config.meetings.deviceType,\n url: options.deviceUrl,\n },\n correlationId: options.correlationId,\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.PUT,\n uri,\n body,\n });\n }\n\n lockMeeting(options) {\n const uri = `${options.locusUrl}/${CONTROLS}`;\n const body = {\n lock: {\n locked: options.lock,\n },\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.PATCH,\n uri,\n body,\n });\n }\n\n /**\n * Make a network request to decline a meeting\n * @param {Object} options\n * @param {String} options.locusUrl\n * @param {String} options.deviceUrl\n * @param {String} options.reason\n * @returns {Promise}\n */\n declineMeeting(options: {locusUrl: string; deviceUrl: string; reason: string}) {\n const uri = `${options.locusUrl}/${PARTICIPANT}/${DECLINE}`;\n const body = {\n device: {\n // @ts-ignore\n deviceType: this.config.meetings.deviceType,\n url: options.deviceUrl,\n },\n ...(options.reason && {reason: options.reason}),\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.PUT,\n uri,\n body,\n });\n }\n\n /**\n * Toggle remote audio and/or video\n * @param {Object} options options for toggling\n * @param {String} options.selfId Locus self id??\n * @param {String} options.locusUrl Locus url\n * @param {String} options.deviceUrl Url of a device\n * @param {String} options.resourceId Populated if you are paired to a device\n * @param {String} options.localMedias local sdps\n * @returns {Promise}\n */\n remoteAudioVideoToggle(\n options:\n | {\n selfId: string;\n locusUrl: string;\n deviceUrl: string;\n resourceId: string;\n localMedias: string;\n }\n | any\n ) {\n const uri = `${options.locusUrl}/${PARTICIPANT}/${options.selfId}/${MEDIA}`;\n const body = {\n device: {\n // @ts-ignore\n deviceType: this.config.meetings.deviceType,\n url: options.deviceUrl,\n },\n usingResource: options.resourceId || null,\n correlationId: options.correlationId,\n respOnlySdp: true,\n localMedias: options.localMedias,\n clientMediaPreferences: {\n preferTranscoding: options.preferTranscoding ?? true,\n },\n };\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.PUT,\n uri,\n body,\n });\n }\n\n /**\n * change the content floor grant\n * @param {Object} options options for floor grant\n * @param {String} options.disposition floor action (granted/released)\n * @param {String} options.personUrl personUrl who is requesting floor\n * @param {String} options.deviceUrl Url of a device\n * @param {String} options.resourceId Populated if you are paired to a device\n * @param {String} options.uri floor grant uri\n * @returns {Promise}\n */\n changeMeetingFloor(\n options:\n | {\n disposition: string;\n personUrl: string;\n deviceUrl: string;\n resourceId: string;\n uri: string;\n }\n | any\n ) {\n let floorReq: any = {disposition: options.disposition};\n\n /* istanbul ignore else */\n if (options.disposition === FLOOR_ACTION.GRANTED) {\n floorReq = {\n beneficiary: {\n url: options.personUrl,\n devices: [\n {\n // @ts-ignore\n deviceType: this.config.meetings.deviceType,\n url: options.deviceUrl,\n },\n ],\n },\n disposition: options.disposition,\n requester: {\n url: options.personUrl,\n },\n };\n }\n\n const body: any = {\n floor: floorReq,\n resourceUrl: options.resourceUrl,\n };\n\n if (options?.resourceToken) {\n body.resourceToken = options?.resourceToken;\n }\n\n // @ts-ignore\n return this.request({\n uri: options.uri,\n method: HTTP_VERBS.PUT,\n body,\n });\n }\n\n /**\n * Sends a request to the DTMF endpoint to send tones\n * @param {Object} options\n * @param {String} options.locusUrl\n * @param {String} options.deviceUrl\n * @param {String} options.tones a string of one or more DTMF tones to send\n * @returns {Promise}\n */\n sendDTMF({locusUrl, deviceUrl, tones}: {locusUrl: string; deviceUrl: string; tones: string}) {\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.POST,\n uri: `${locusUrl}/${SEND_DTMF_ENDPOINT}`,\n body: {\n deviceUrl,\n dtmf: {\n correlationId: uuid.v4(),\n tones,\n },\n },\n });\n }\n\n /**\n * Sends a request to the controls endpoint to set the video layout\n * @param {Object} options\n * @param {String} options.locusUrl\n * @param {String} options.deviceUrl\n * @param {String} options.layoutType a layout type that should be available in meeting constants {@link #layout_types}\n * @param {Object} options.main preferred dimensions for the remote main video stream\n * @param {Number} options.main.width preferred width of main video stream\n * @param {Number} options.main.height preferred height of main video stream\n * @param {Object} options.content preferred dimensions for the remote content share stream\n * @param {Number} options.content.width preferred width of content share stream\n * @param {Number} options.content.height preferred height of content share stream\n * @returns {Promise}\n */\n changeVideoLayout({\n locusUrl,\n deviceUrl,\n layoutType,\n main,\n content,\n }: {\n locusUrl: string;\n deviceUrl: string;\n layoutType: string;\n main: {\n width: number;\n height: number;\n };\n content: {\n width: number;\n height: number;\n };\n }) {\n // send main/content renderInfo only if both width and height are specified\n if (main && (!main.width || !main.height)) {\n return Promise.reject(\n new Error(\n `Both width and height must be specified. One of them is missing for main: ${JSON.stringify(\n main\n )}`\n )\n );\n }\n\n if (content && (!content.width || !content.height)) {\n return Promise.reject(\n new Error(\n `Both width and height must be specified. One of them is missing for content: ${JSON.stringify(\n content\n )}`\n )\n );\n }\n\n const renderInfoMain = main ? {width: main.width, height: main.height} : undefined;\n const renderInfoContent = content ? {width: content.width, height: content.height} : undefined;\n\n const layoutParams =\n renderInfoMain || renderInfoContent\n ? {\n renderInfo: {\n main: renderInfoMain,\n content: renderInfoContent,\n },\n }\n : undefined;\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.PUT,\n uri: `${locusUrl}/${CONTROLS}`,\n body: {\n layout: {\n deviceUrl,\n type: layoutType,\n layoutParams,\n },\n },\n });\n }\n\n /**\n * Make a network request to end meeting for all\n * @param {Object} options\n * @param {Url} options.locusUrl\n * @returns {Promise}\n */\n endMeetingForAll({locusUrl}: {locusUrl: string}) {\n const uri = `${locusUrl}/${END}`;\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.POST,\n uri,\n });\n }\n\n /**\n * Send a locus keepAlive (used in lobby)\n * @param {Object} options\n * @param {Url} options.keepAliveUrl\n * @returns {Promise}\n */\n keepAlive({keepAliveUrl}: {keepAliveUrl: string}) {\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.GET,\n uri: keepAliveUrl,\n });\n }\n\n /**\n * Make a network request to send a reaction.\n * @param {Object} options\n * @param {Url} options.reactionChannelUrl\n * @param {Reaction} options.reaction\n * @param {string} options.senderID\n * @returns {Promise}\n */\n sendReaction({\n reactionChannelUrl,\n reaction,\n participantId,\n }: {\n reactionChannelUrl: string;\n reaction: Reaction;\n participantId: string;\n }) {\n const uri = reactionChannelUrl;\n\n // @ts-ignore\n return this.request({\n method: HTTP_VERBS.POST,\n uri,\n body: {\n sender: {participantId},\n reaction,\n },\n });\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_uuid","_interopRequireDefault","require","_webexCore","_common","_loggerProxy","_constants","ownKeys","object","enumerableOnly","keys","_Object$keys","_Object$getOwnPropertySymbols","symbols","filter","sym","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","Object","forEach","key","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","_Reflect$construct","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","MeetingRequest","_StatelessWebexPlugin","_inherits2","_super","attrs","options","_this","_classCallCheck2","_assertThisInitialized2","changeVideoLayoutDebounced","_debounce2","changeVideoLayout","leading","trailing","_createClass2","value","_joinMeeting","_asyncToGenerator2","_regenerator","mark","_callee","asResourceOccupant","inviteeAddress","meetingNumber","permissionToken","deviceUrl","locusUrl","resourceId","correlationId","ensureConversation","moderator","pin","moveToResource","roapMessage","preferTranscoding","url","body","wrap","_callee$","_context","prev","next","LoggerProxy","logger","info","device","deviceType","config","meetings","usingResource","moveMediaToResource","respOnlySdp","allowMultiDevice","supportsNativeLobby","clientMediaPreferences","webex","clientRegion","countryCode","regionCode","undefined","concat","PARTICIPANT","internal","services","waitForCatalog","get","LOCI","CALL","invitee","address","t0","error","ALTERNATE_REDIRECT_TRUE","callPreferences","requestedMedia","_SLIDES_","localMedias","abrupt","request","method","HTTP_VERBS","POST","uri","stop","joinMeeting","_x","refreshCaptcha","_ref","captchaRefreshUrl","captchaId","catch","err","dialIn","_ref2","dialInUrl","clientUrl","PROVISIONAL","provisionalType","PROVISIONAL_TYPE_DIAL_IN","dialOut","_ref3","dialOutUrl","phoneNumber","PROVISIONAL_TYPE_DIAL_OUT","dialoutAddress","syncMeeting","desync","syncUrl","split","LOCUS","SYNCDEBUG","GET","getFullLocus","_promise","reject","disconnectPhoneAudio","_ref4","phoneUrl","selfId","LEAVE","PUT","leaveMeeting","_ref5","acknowledgeMeeting","ALERT","lockMeeting","CONTROLS","lock","locked","PATCH","declineMeeting","DECLINE","reason","remoteAudioVideoToggle","_options$preferTransc","MEDIA","changeMeetingFloor","floorReq","disposition","FLOOR_ACTION","GRANTED","beneficiary","personUrl","devices","requester","floor","resourceUrl","resourceToken","sendDTMF","_ref6","tones","SEND_DTMF_ENDPOINT","dtmf","uuid","v4","_ref7","layoutType","main","content","width","height","Error","_stringify","renderInfoMain","renderInfoContent","layoutParams","renderInfo","layout","type","endMeetingForAll","_ref8","END","keepAlive","_ref9","keepAliveUrl","sendReaction","_ref10","reactionChannelUrl","reaction","participantId","sender","StatelessWebexPlugin","exports"],"sources":["request.ts"],"sourcesContent":["import uuid from 'uuid';\r\nimport {debounce} from 'lodash';\r\n// @ts-ignore\r\nimport {StatelessWebexPlugin} from '@webex/webex-core';\r\n// @ts-ignore\r\nimport {deviceType} from '@webex/common';\r\n\r\nimport LoggerProxy from '../common/logs/logger-proxy';\r\nimport {\r\n ALERT,\r\n ALTERNATE_REDIRECT_TRUE,\r\n CALL,\r\n CONTROLS,\r\n DECLINE,\r\n END,\r\n FLOOR_ACTION,\r\n HTTP_VERBS,\r\n LEAVE,\r\n LOCI,\r\n LOCUS,\r\n MEDIA,\r\n PARTICIPANT,\r\n PROVISIONAL_TYPE_DIAL_IN,\r\n PROVISIONAL_TYPE_DIAL_OUT,\r\n SEND_DTMF_ENDPOINT,\r\n _SLIDES_,\r\n} from '../constants';\r\nimport {Reaction} from '../reactions/reactions.type';\r\n\r\n/**\r\n * @class MeetingRequest\r\n */\r\nexport default class MeetingRequest extends StatelessWebexPlugin {\r\n changeVideoLayoutDebounced: any;\r\n\r\n constructor(attrs: any, options: any) {\r\n super(attrs, options);\r\n this.changeVideoLayoutDebounced = debounce(this.changeVideoLayout, 2000, {\r\n leading: true,\r\n trailing: true,\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to join a meeting\r\n * @param {Object} options\r\n * @param {String} options.sipUri\r\n * @param {String} options.deviceUrl\r\n * @param {String} options.locusUrl\r\n * @param {String} options.resourceId,\r\n * @param {String} options.correlationId\r\n * @param {boolean} options.ensureConversation\r\n * @param {boolean} options.moderator\r\n * @param {boolean} options.pin\r\n * @param {boolean} options.moveToResource\r\n * @param {Object} options.roapMessage\r\n * @returns {Promise}\r\n */\r\n async joinMeeting(options: {\r\n sipUri: string;\r\n deviceUrl: string;\r\n locusUrl: string;\r\n resourceId: string;\r\n correlationId: string;\r\n ensureConversation: boolean;\r\n moderator: boolean;\r\n pin: boolean;\r\n moveToResource: boolean;\r\n roapMessage: any;\r\n asResourceOccupant: any;\r\n inviteeAddress: any;\r\n meetingNumber: any;\r\n permissionToken: any;\r\n preferTranscoding: any;\r\n }) {\r\n const {\r\n asResourceOccupant,\r\n inviteeAddress,\r\n meetingNumber,\r\n permissionToken,\r\n deviceUrl,\r\n locusUrl,\r\n resourceId,\r\n correlationId,\r\n ensureConversation,\r\n moderator,\r\n pin,\r\n moveToResource,\r\n roapMessage,\r\n preferTranscoding,\r\n } = options;\r\n\r\n LoggerProxy.logger.info('Meeting:request#joinMeeting --> Joining a meeting', correlationId);\r\n\r\n let url = '';\r\n\r\n const body: any = {\r\n asResourceOccupant,\r\n device: {\r\n url: deviceUrl,\r\n // @ts-ignore - config comes from registerPlugin\r\n deviceType: this.config.meetings.deviceType,\r\n },\r\n usingResource: resourceId || null,\r\n moveMediaToResource: (resourceId && moveToResource) || false,\r\n correlationId,\r\n respOnlySdp: true,\r\n allowMultiDevice: true,\r\n ensureConversation: ensureConversation || false,\r\n supportsNativeLobby: 1,\r\n clientMediaPreferences: {\r\n preferTranscoding: preferTranscoding ?? true,\r\n },\r\n };\r\n\r\n // @ts-ignore\r\n if (this.webex.meetings.clientRegion) {\r\n // @ts-ignore\r\n body.device.countryCode = this.webex.meetings.clientRegion.countryCode;\r\n // @ts-ignore\r\n body.device.regionCode = this.webex.meetings.clientRegion.regionCode;\r\n }\r\n\r\n if (moderator !== undefined) {\r\n body.moderator = moderator;\r\n }\r\n\r\n if (permissionToken) {\r\n body.permissionToken = permissionToken;\r\n }\r\n\r\n if (pin !== undefined) {\r\n body.pin = pin;\r\n }\r\n\r\n if (locusUrl) {\r\n url = `${locusUrl}/${PARTICIPANT}`;\r\n } else if (inviteeAddress || meetingNumber) {\r\n try {\r\n // @ts-ignore\r\n await this.webex.internal.services.waitForCatalog('postauth');\r\n // @ts-ignore\r\n url = `${this.webex.internal.services.get('locus')}/${LOCI}/${CALL}`;\r\n body.invitee = {\r\n address: inviteeAddress || `wbxmn:${meetingNumber}`,\r\n };\r\n } catch (e) {\r\n LoggerProxy.logger.error(\r\n `Meeting:request#joinMeeting Error Joining ${inviteeAddress || meetingNumber} --> ${e}`\r\n );\r\n throw e;\r\n }\r\n }\r\n\r\n // TODO: -- this will be resolved in SDK request\r\n url = url.concat(`?${ALTERNATE_REDIRECT_TRUE}`);\r\n\r\n if (resourceId === inviteeAddress) {\r\n body.callPreferences = {\r\n requestedMedia: [_SLIDES_],\r\n };\r\n }\r\n\r\n if (roapMessage) {\r\n body.localMedias = roapMessage.localMedias;\r\n }\r\n\r\n /// @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.POST,\r\n uri: url,\r\n body,\r\n });\r\n }\r\n\r\n /**\r\n * Send a request to refresh the captcha\r\n * @param {Object} options\r\n * @param {String} options.captchaRefreshUrl\r\n * @param {String} options.captchaId\r\n * @returns {Promise}\r\n * @private\r\n */\r\n private refreshCaptcha({\r\n captchaRefreshUrl,\r\n captchaId,\r\n }: {\r\n captchaRefreshUrl: string;\r\n captchaId: string;\r\n }) {\r\n const body = {\r\n captchaId,\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.POST,\r\n uri: captchaRefreshUrl,\r\n body,\r\n }).catch((err) => {\r\n LoggerProxy.logger.error(`Meeting:request#refreshCaptcha --> Error: ${err}`);\r\n\r\n throw err;\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to add a dial in device\r\n * @param {Object} options\r\n * @param {String} options.correlationId\r\n * @param {String} options.locusUrl url for the meeting\r\n * @param {String} options.dialInUrl identifier for the to-be provisioned device\r\n * @param {String} options.clientUrl identifier for the web device\r\n * @returns {Promise}\r\n * @private\r\n */\r\n private dialIn({\r\n locusUrl,\r\n dialInUrl,\r\n clientUrl,\r\n correlationId,\r\n }: {\r\n correlationId: string;\r\n locusUrl: string;\r\n dialInUrl: string;\r\n clientUrl: string;\r\n }) {\r\n LoggerProxy.logger.info(\r\n 'Meeting:request#dialIn --> Provisioning a dial in device',\r\n correlationId\r\n );\r\n const uri = `${locusUrl}/${PARTICIPANT}`;\r\n\r\n const body = {\r\n device: {\r\n deviceType: deviceType.PROVISIONAL,\r\n provisionalType: PROVISIONAL_TYPE_DIAL_IN,\r\n url: dialInUrl,\r\n clientUrl,\r\n },\r\n correlationId,\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.POST,\r\n uri,\r\n body,\r\n }).catch((err) => {\r\n LoggerProxy.logger.error(\r\n `Meeting:request#dialIn --> Error provisioning a dial in device, error ${err}`\r\n );\r\n\r\n throw err;\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to add a dial out device\r\n * @param {Object} options\r\n * @param {String} options.correlationId\r\n * @param {String} options.locusUrl url for the meeting\r\n * @param {String} options.dialOutUrl identifier for the to-be provisioned device\r\n * @param {String} options.phoneNumber phone number to dial out to\r\n * @param {String} options.clientUrl identifier for the web device\r\n * @returns {Promise}\r\n * @private\r\n */\r\n private dialOut({\r\n locusUrl,\r\n dialOutUrl,\r\n phoneNumber,\r\n clientUrl,\r\n correlationId,\r\n }: {\r\n correlationId: string;\r\n locusUrl: string;\r\n dialOutUrl: string;\r\n phoneNumber: string;\r\n clientUrl: string;\r\n }) {\r\n LoggerProxy.logger.info(\r\n 'Meeting:request#dialOut --> Provisioning a dial out device',\r\n correlationId\r\n );\r\n const uri = `${locusUrl}/${PARTICIPANT}`;\r\n\r\n const body = {\r\n device: {\r\n deviceType: deviceType.PROVISIONAL,\r\n provisionalType: PROVISIONAL_TYPE_DIAL_OUT,\r\n url: dialOutUrl,\r\n dialoutAddress: phoneNumber,\r\n clientUrl,\r\n },\r\n correlationId,\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.POST,\r\n uri,\r\n body,\r\n }).catch((err) => {\r\n LoggerProxy.logger.error(\r\n `Meeting:request#dialOut --> Error provisioning a dial out device, error ${err}`\r\n );\r\n\r\n throw err;\r\n });\r\n }\r\n\r\n /**\r\n * Syns the missed delta event\r\n * @param {Object} options\r\n * @param {boolean} options.desync flag to get partial or whole locus object\r\n * @param {String} options.syncUrl sync url to get ht elatest locus delta\r\n * @returns {Promise}\r\n */\r\n syncMeeting(options: {desync: boolean; syncUrl: string}) {\r\n /* eslint-disable no-else-return */\r\n const {desync} = options;\r\n let {syncUrl} = options;\r\n\r\n /* istanbul ignore else */\r\n if (desync) {\r\n // check for existing URL parameters\r\n syncUrl = syncUrl\r\n .concat(syncUrl.split('?')[1] ? '&' : '?')\r\n .concat(`${LOCUS.SYNCDEBUG}=${desync}`);\r\n }\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.GET,\r\n uri: syncUrl,\r\n }) // TODO: Handle if delta sync failed . Get the full locus object\r\n .catch((err) => {\r\n LoggerProxy.logger.error(\r\n `Meeting:request#syncMeeting --> Error syncing meeting, error ${err}`\r\n );\r\n\r\n return err;\r\n });\r\n }\r\n\r\n /**\r\n * Request to get the complete locus object\r\n * @param {Object} options\r\n * @param {boolean} options.desync flag to get partial or whole locus object\r\n * @param {String} options.locusUrl sync url to get ht elatest locus delta\r\n * @returns {Promise}\r\n */\r\n getFullLocus(options: {desync: boolean; locusUrl: string}) {\r\n let {locusUrl} = options;\r\n const {desync} = options;\r\n\r\n if (locusUrl) {\r\n if (desync) {\r\n locusUrl += `?${LOCUS.SYNCDEBUG}=${desync}`;\r\n }\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.GET,\r\n uri: locusUrl,\r\n }).catch((err) => {\r\n LoggerProxy.logger.error(\r\n `Meeting:request#getFullLocus --> Error getting full locus, error ${err}`\r\n );\r\n\r\n return err;\r\n });\r\n }\r\n\r\n return Promise.reject();\r\n }\r\n\r\n /**\r\n * Make a network request to make a provisioned phone leave the meeting\r\n * @param {Object} options\r\n * @param {String} options.locusUrl\r\n * @param {String} options.phoneUrl\r\n * @param {String} options.correlationId\r\n * @param {String} options.selfId\r\n * @returns {Promise}\r\n * @private\r\n */\r\n private disconnectPhoneAudio({\r\n locusUrl,\r\n phoneUrl,\r\n correlationId,\r\n selfId,\r\n }: {\r\n locusUrl: string;\r\n phoneUrl: string;\r\n correlationId: string;\r\n selfId: string;\r\n }) {\r\n LoggerProxy.logger.info(\r\n `Meeting:request#disconnectPhoneAudio --> request phone ${phoneUrl} to leave`,\r\n correlationId\r\n );\r\n const uri = `${locusUrl}/${PARTICIPANT}/${selfId}/${LEAVE}`;\r\n\r\n const body = {\r\n device: {\r\n deviceType: deviceType.PROVISIONAL,\r\n url: phoneUrl,\r\n },\r\n correlationId,\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.PUT,\r\n uri,\r\n body,\r\n }).catch((err) => {\r\n LoggerProxy.logger.error(\r\n `Meeting:request#disconnectPhoneAudio --> Error when requesting phone ${phoneUrl} to leave, error ${err}`\r\n );\r\n\r\n throw err;\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to leave a meeting\r\n * @param {Object} options\r\n * @param {Url} options.locusUrl\r\n * @param {String} options.selfId\r\n * @param {Url} options.deviceUrl\r\n * @param {String} options.resourceId,\r\n * @param {String} options.correlationId\r\n * @returns {Promise}\r\n */\r\n leaveMeeting({\r\n locusUrl,\r\n selfId,\r\n deviceUrl: url,\r\n resourceId,\r\n correlationId,\r\n }: {\r\n locusUrl: string;\r\n selfId: string;\r\n deviceUrl: string;\r\n resourceId: string;\r\n correlationId: string;\r\n }) {\r\n LoggerProxy.logger.info('Meeting:request#leaveMeeting --> Leaving a meeting', correlationId);\r\n\r\n const uri = `${locusUrl}/${PARTICIPANT}/${selfId}/${LEAVE}`;\r\n const body = {\r\n device: {\r\n // @ts-ignore\r\n deviceType: this.config.meetings.deviceType,\r\n url,\r\n },\r\n usingResource: resourceId || null,\r\n correlationId,\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.PUT,\r\n uri,\r\n body,\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to acknowledge a meeting\r\n * @param {Object} options\r\n * @param {String} options.locusUrl\r\n * @param {String} options.deviceUrl\r\n * @param {String} options.correlationId\r\n * @returns {Promise}\r\n */\r\n acknowledgeMeeting(options: {locusUrl: string; deviceUrl: string; correlationId: string}) {\r\n const uri = `${options.locusUrl}/${PARTICIPANT}/${ALERT}`;\r\n const body = {\r\n device: {\r\n // @ts-ignore\r\n deviceType: this.config.meetings.deviceType,\r\n url: options.deviceUrl,\r\n },\r\n correlationId: options.correlationId,\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.PUT,\r\n uri,\r\n body,\r\n });\r\n }\r\n\r\n lockMeeting(options) {\r\n const uri = `${options.locusUrl}/${CONTROLS}`;\r\n const body = {\r\n lock: {\r\n locked: options.lock,\r\n },\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.PATCH,\r\n uri,\r\n body,\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to decline a meeting\r\n * @param {Object} options\r\n * @param {String} options.locusUrl\r\n * @param {String} options.deviceUrl\r\n * @param {String} options.reason\r\n * @returns {Promise}\r\n */\r\n declineMeeting(options: {locusUrl: string; deviceUrl: string; reason: string}) {\r\n const uri = `${options.locusUrl}/${PARTICIPANT}/${DECLINE}`;\r\n const body = {\r\n device: {\r\n // @ts-ignore\r\n deviceType: this.config.meetings.deviceType,\r\n url: options.deviceUrl,\r\n },\r\n ...(options.reason && {reason: options.reason}),\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.PUT,\r\n uri,\r\n body,\r\n });\r\n }\r\n\r\n /**\r\n * Toggle remote audio and/or video\r\n * @param {Object} options options for toggling\r\n * @param {String} options.selfId Locus self id??\r\n * @param {String} options.locusUrl Locus url\r\n * @param {String} options.deviceUrl Url of a device\r\n * @param {String} options.resourceId Populated if you are paired to a device\r\n * @param {String} options.localMedias local sdps\r\n * @returns {Promise}\r\n */\r\n remoteAudioVideoToggle(\r\n options:\r\n | {\r\n selfId: string;\r\n locusUrl: string;\r\n deviceUrl: string;\r\n resourceId: string;\r\n localMedias: string;\r\n }\r\n | any\r\n ) {\r\n const uri = `${options.locusUrl}/${PARTICIPANT}/${options.selfId}/${MEDIA}`;\r\n const body = {\r\n device: {\r\n // @ts-ignore\r\n deviceType: this.config.meetings.deviceType,\r\n url: options.deviceUrl,\r\n },\r\n usingResource: options.resourceId || null,\r\n correlationId: options.correlationId,\r\n respOnlySdp: true,\r\n localMedias: options.localMedias,\r\n clientMediaPreferences: {\r\n preferTranscoding: options.preferTranscoding ?? true,\r\n },\r\n };\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.PUT,\r\n uri,\r\n body,\r\n });\r\n }\r\n\r\n /**\r\n * change the content floor grant\r\n * @param {Object} options options for floor grant\r\n * @param {String} options.disposition floor action (granted/released)\r\n * @param {String} options.personUrl personUrl who is requesting floor\r\n * @param {String} options.deviceUrl Url of a device\r\n * @param {String} options.resourceId Populated if you are paired to a device\r\n * @param {String} options.uri floor grant uri\r\n * @returns {Promise}\r\n */\r\n changeMeetingFloor(\r\n options:\r\n | {\r\n disposition: string;\r\n personUrl: string;\r\n deviceUrl: string;\r\n resourceId: string;\r\n uri: string;\r\n }\r\n | any\r\n ) {\r\n let floorReq: any = {disposition: options.disposition};\r\n\r\n /* istanbul ignore else */\r\n if (options.disposition === FLOOR_ACTION.GRANTED) {\r\n floorReq = {\r\n beneficiary: {\r\n url: options.personUrl,\r\n devices: [\r\n {\r\n // @ts-ignore\r\n deviceType: this.config.meetings.deviceType,\r\n url: options.deviceUrl,\r\n },\r\n ],\r\n },\r\n disposition: options.disposition,\r\n requester: {\r\n url: options.personUrl,\r\n },\r\n };\r\n }\r\n\r\n const body: any = {\r\n floor: floorReq,\r\n resourceUrl: options.resourceUrl,\r\n };\r\n\r\n if (options?.resourceToken) {\r\n body.resourceToken = options?.resourceToken;\r\n }\r\n\r\n // @ts-ignore\r\n return this.request({\r\n uri: options.uri,\r\n method: HTTP_VERBS.PUT,\r\n body,\r\n });\r\n }\r\n\r\n /**\r\n * Sends a request to the DTMF endpoint to send tones\r\n * @param {Object} options\r\n * @param {String} options.locusUrl\r\n * @param {String} options.deviceUrl\r\n * @param {String} options.tones a string of one or more DTMF tones to send\r\n * @returns {Promise}\r\n */\r\n sendDTMF({locusUrl, deviceUrl, tones}: {locusUrl: string; deviceUrl: string; tones: string}) {\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.POST,\r\n uri: `${locusUrl}/${SEND_DTMF_ENDPOINT}`,\r\n body: {\r\n deviceUrl,\r\n dtmf: {\r\n correlationId: uuid.v4(),\r\n tones,\r\n },\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Sends a request to the controls endpoint to set the video layout\r\n * @param {Object} options\r\n * @param {String} options.locusUrl\r\n * @param {String} options.deviceUrl\r\n * @param {String} options.layoutType a layout type that should be available in meeting constants {@link #layout_types}\r\n * @param {Object} options.main preferred dimensions for the remote main video stream\r\n * @param {Number} options.main.width preferred width of main video stream\r\n * @param {Number} options.main.height preferred height of main video stream\r\n * @param {Object} options.content preferred dimensions for the remote content share stream\r\n * @param {Number} options.content.width preferred width of content share stream\r\n * @param {Number} options.content.height preferred height of content share stream\r\n * @returns {Promise}\r\n */\r\n changeVideoLayout({\r\n locusUrl,\r\n deviceUrl,\r\n layoutType,\r\n main,\r\n content,\r\n }: {\r\n locusUrl: string;\r\n deviceUrl: string;\r\n layoutType: string;\r\n main: {\r\n width: number;\r\n height: number;\r\n };\r\n content: {\r\n width: number;\r\n height: number;\r\n };\r\n }) {\r\n // send main/content renderInfo only if both width and height are specified\r\n if (main && (!main.width || !main.height)) {\r\n return Promise.reject(\r\n new Error(\r\n `Both width and height must be specified. One of them is missing for main: ${JSON.stringify(\r\n main\r\n )}`\r\n )\r\n );\r\n }\r\n\r\n if (content && (!content.width || !content.height)) {\r\n return Promise.reject(\r\n new Error(\r\n `Both width and height must be specified. One of them is missing for content: ${JSON.stringify(\r\n content\r\n )}`\r\n )\r\n );\r\n }\r\n\r\n const renderInfoMain = main ? {width: main.width, height: main.height} : undefined;\r\n const renderInfoContent = content ? {width: content.width, height: content.height} : undefined;\r\n\r\n const layoutParams =\r\n renderInfoMain || renderInfoContent\r\n ? {\r\n renderInfo: {\r\n main: renderInfoMain,\r\n content: renderInfoContent,\r\n },\r\n }\r\n : undefined;\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.PUT,\r\n uri: `${locusUrl}/${CONTROLS}`,\r\n body: {\r\n layout: {\r\n deviceUrl,\r\n type: layoutType,\r\n layoutParams,\r\n },\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to end meeting for all\r\n * @param {Object} options\r\n * @param {Url} options.locusUrl\r\n * @returns {Promise}\r\n */\r\n endMeetingForAll({locusUrl}: {locusUrl: string}) {\r\n const uri = `${locusUrl}/${END}`;\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.POST,\r\n uri,\r\n });\r\n }\r\n\r\n /**\r\n * Send a locus keepAlive (used in lobby)\r\n * @param {Object} options\r\n * @param {Url} options.keepAliveUrl\r\n * @returns {Promise}\r\n */\r\n keepAlive({keepAliveUrl}: {keepAliveUrl: string}) {\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.GET,\r\n uri: keepAliveUrl,\r\n });\r\n }\r\n\r\n /**\r\n * Make a network request to send a reaction.\r\n * @param {Object} options\r\n * @param {Url} options.reactionChannelUrl\r\n * @param {Reaction} options.reaction\r\n * @param {string} options.senderID\r\n * @returns {Promise}\r\n */\r\n sendReaction({\r\n reactionChannelUrl,\r\n reaction,\r\n participantId,\r\n }: {\r\n reactionChannelUrl: string;\r\n reaction: Reaction;\r\n participantId: string;\r\n }) {\r\n const uri = reactionChannelUrl;\r\n\r\n // @ts-ignore\r\n return this.request({\r\n method: HTTP_VERBS.POST,\r\n uri,\r\n body: {\r\n sender: {participantId},\r\n reaction,\r\n },\r\n });\r\n }\r\n}\r\n"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- declare const MeetingStateMachine: {
2
- /**
3
- * Initializes the StateMachine for the meeting
4
- * @param {Meeting} meetingRef A reference to a meeting instance
5
- * @returns {StateMachine}
6
- */
7
- create(meetingRef: any): any;
8
- };
9
- export default MeetingStateMachine;
1
+ declare const MeetingStateMachine: {
2
+ /**
3
+ * Initializes the StateMachine for the meeting
4
+ * @param {Meeting} meetingRef A reference to a meeting instance
5
+ * @returns {StateMachine}
6
+ */
7
+ create(meetingRef: any): any;
8
+ };
9
+ export default MeetingStateMachine;