@webex/plugin-meetings 3.0.0-beta.18 → 3.0.0-beta.180

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 (410) hide show
  1. package/README.md +45 -7
  2. package/dist/annotation/annotation.types.js +7 -0
  3. package/dist/annotation/annotation.types.js.map +1 -0
  4. package/dist/annotation/constants.js +49 -0
  5. package/dist/annotation/constants.js.map +1 -0
  6. package/dist/annotation/index.js +342 -0
  7. package/dist/annotation/index.js.map +1 -0
  8. package/dist/breakouts/breakout.js +114 -14
  9. package/dist/breakouts/breakout.js.map +1 -1
  10. package/dist/breakouts/edit-lock-error.js +52 -0
  11. package/dist/breakouts/edit-lock-error.js.map +1 -0
  12. package/dist/breakouts/events.js +45 -0
  13. package/dist/breakouts/events.js.map +1 -0
  14. package/dist/breakouts/index.js +841 -19
  15. package/dist/breakouts/index.js.map +1 -1
  16. package/dist/breakouts/request.js +78 -0
  17. package/dist/breakouts/request.js.map +1 -0
  18. package/dist/breakouts/utils.js +67 -0
  19. package/dist/breakouts/utils.js.map +1 -0
  20. package/dist/common/errors/webex-errors.js +3 -2
  21. package/dist/common/errors/webex-errors.js.map +1 -1
  22. package/dist/common/logs/logger-proxy.js +1 -1
  23. package/dist/common/logs/logger-proxy.js.map +1 -1
  24. package/dist/config.js +3 -8
  25. package/dist/config.js.map +1 -1
  26. package/dist/constants.js +172 -30
  27. package/dist/constants.js.map +1 -1
  28. package/dist/controls-options-manager/constants.js +14 -0
  29. package/dist/controls-options-manager/constants.js.map +1 -0
  30. package/dist/controls-options-manager/enums.js +27 -0
  31. package/dist/controls-options-manager/enums.js.map +1 -0
  32. package/dist/controls-options-manager/index.js +297 -0
  33. package/dist/controls-options-manager/index.js.map +1 -0
  34. package/dist/controls-options-manager/types.js +7 -0
  35. package/dist/controls-options-manager/types.js.map +1 -0
  36. package/dist/controls-options-manager/util.js +300 -0
  37. package/dist/controls-options-manager/util.js.map +1 -0
  38. package/dist/index.js +107 -0
  39. package/dist/index.js.map +1 -1
  40. package/dist/interpretation/collection.js +23 -0
  41. package/dist/interpretation/collection.js.map +1 -0
  42. package/dist/interpretation/index.js +352 -0
  43. package/dist/interpretation/index.js.map +1 -0
  44. package/dist/interpretation/siLanguage.js +25 -0
  45. package/dist/interpretation/siLanguage.js.map +1 -0
  46. package/dist/locus-info/controlsUtils.js +91 -2
  47. package/dist/locus-info/controlsUtils.js.map +1 -1
  48. package/dist/locus-info/index.js +302 -41
  49. package/dist/locus-info/index.js.map +1 -1
  50. package/dist/locus-info/mediaSharesUtils.js +43 -1
  51. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  52. package/dist/locus-info/parser.js +1 -1
  53. package/dist/locus-info/parser.js.map +1 -1
  54. package/dist/locus-info/selfUtils.js +89 -14
  55. package/dist/locus-info/selfUtils.js.map +1 -1
  56. package/dist/media/index.js +39 -134
  57. package/dist/media/index.js.map +1 -1
  58. package/dist/media/properties.js +29 -90
  59. package/dist/media/properties.js.map +1 -1
  60. package/dist/mediaQualityMetrics/config.js +505 -493
  61. package/dist/mediaQualityMetrics/config.js.map +1 -1
  62. package/dist/meeting/in-meeting-actions.js +76 -2
  63. package/dist/meeting/in-meeting-actions.js.map +1 -1
  64. package/dist/meeting/index.js +2610 -2465
  65. package/dist/meeting/index.js.map +1 -1
  66. package/dist/meeting/locusMediaRequest.js +291 -0
  67. package/dist/meeting/locusMediaRequest.js.map +1 -0
  68. package/dist/meeting/muteState.js +229 -124
  69. package/dist/meeting/muteState.js.map +1 -1
  70. package/dist/meeting/request.js +189 -146
  71. package/dist/meeting/request.js.map +1 -1
  72. package/dist/meeting/util.js +478 -414
  73. package/dist/meeting/util.js.map +1 -1
  74. package/dist/meeting-info/index.js +48 -7
  75. package/dist/meeting-info/index.js.map +1 -1
  76. package/dist/meeting-info/meeting-info-v2.js +171 -51
  77. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  78. package/dist/meeting-info/utilv2.js +20 -5
  79. package/dist/meeting-info/utilv2.js.map +1 -1
  80. package/dist/meetings/collection.js +22 -0
  81. package/dist/meetings/collection.js.map +1 -1
  82. package/dist/meetings/index.js +350 -65
  83. package/dist/meetings/index.js.map +1 -1
  84. package/dist/meetings/meetings.types.js +7 -0
  85. package/dist/meetings/meetings.types.js.map +1 -0
  86. package/dist/meetings/request.js +2 -0
  87. package/dist/meetings/request.js.map +1 -1
  88. package/dist/meetings/util.js +88 -1
  89. package/dist/meetings/util.js.map +1 -1
  90. package/dist/member/index.js +49 -0
  91. package/dist/member/index.js.map +1 -1
  92. package/dist/member/types.js +25 -0
  93. package/dist/member/types.js.map +1 -0
  94. package/dist/member/util.js +98 -2
  95. package/dist/member/util.js.map +1 -1
  96. package/dist/members/collection.js +10 -0
  97. package/dist/members/collection.js.map +1 -1
  98. package/dist/members/index.js +86 -5
  99. package/dist/members/index.js.map +1 -1
  100. package/dist/members/request.js +106 -38
  101. package/dist/members/request.js.map +1 -1
  102. package/dist/members/types.js +15 -0
  103. package/dist/members/types.js.map +1 -0
  104. package/dist/members/util.js +316 -233
  105. package/dist/members/util.js.map +1 -1
  106. package/dist/metrics/constants.js +3 -5
  107. package/dist/metrics/constants.js.map +1 -1
  108. package/dist/metrics/index.js +1 -468
  109. package/dist/metrics/index.js.map +1 -1
  110. package/dist/multistream/mediaRequestManager.js +238 -49
  111. package/dist/multistream/mediaRequestManager.js.map +1 -1
  112. package/dist/multistream/receiveSlot.js +49 -16
  113. package/dist/multistream/receiveSlot.js.map +1 -1
  114. package/dist/multistream/receiveSlotManager.js +48 -30
  115. package/dist/multistream/receiveSlotManager.js.map +1 -1
  116. package/dist/multistream/remoteMedia.js +44 -18
  117. package/dist/multistream/remoteMedia.js.map +1 -1
  118. package/dist/multistream/remoteMediaGroup.js +60 -3
  119. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  120. package/dist/multistream/remoteMediaManager.js +173 -59
  121. package/dist/multistream/remoteMediaManager.js.map +1 -1
  122. package/dist/networkQualityMonitor/index.js +4 -2
  123. package/dist/networkQualityMonitor/index.js.map +1 -1
  124. package/dist/reachability/index.js +72 -27
  125. package/dist/reachability/index.js.map +1 -1
  126. package/dist/reachability/request.js +12 -5
  127. package/dist/reachability/request.js.map +1 -1
  128. package/dist/reactions/reactions.js +2 -2
  129. package/dist/reactions/reactions.js.map +1 -1
  130. package/dist/reactions/reactions.type.js +18 -18
  131. package/dist/reactions/reactions.type.js.map +1 -1
  132. package/dist/reconnection-manager/index.js +196 -155
  133. package/dist/reconnection-manager/index.js.map +1 -1
  134. package/dist/recording-controller/index.js +21 -1
  135. package/dist/recording-controller/index.js.map +1 -1
  136. package/dist/recording-controller/util.js +9 -8
  137. package/dist/recording-controller/util.js.map +1 -1
  138. package/dist/roap/index.js +21 -29
  139. package/dist/roap/index.js.map +1 -1
  140. package/dist/roap/request.js +110 -89
  141. package/dist/roap/request.js.map +1 -1
  142. package/dist/roap/turnDiscovery.js +93 -36
  143. package/dist/roap/turnDiscovery.js.map +1 -1
  144. package/dist/statsAnalyzer/global.js +1 -93
  145. package/dist/statsAnalyzer/global.js.map +1 -1
  146. package/dist/statsAnalyzer/index.js +326 -311
  147. package/dist/statsAnalyzer/index.js.map +1 -1
  148. package/dist/statsAnalyzer/mqaUtil.js +90 -53
  149. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  150. package/dist/types/annotation/annotation.types.d.ts +42 -0
  151. package/dist/types/annotation/constants.d.ts +31 -0
  152. package/dist/types/annotation/index.d.ts +117 -0
  153. package/dist/types/breakouts/breakout.d.ts +8 -0
  154. package/dist/types/breakouts/collection.d.ts +5 -0
  155. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  156. package/dist/types/breakouts/events.d.ts +8 -0
  157. package/dist/types/breakouts/index.d.ts +5 -0
  158. package/dist/types/breakouts/request.d.ts +22 -0
  159. package/dist/types/breakouts/utils.d.ts +15 -0
  160. package/dist/types/common/browser-detection.d.ts +9 -0
  161. package/dist/types/common/collection.d.ts +48 -0
  162. package/dist/types/common/config.d.ts +2 -0
  163. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  164. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  165. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  166. package/dist/types/common/errors/media.d.ts +15 -0
  167. package/dist/types/common/errors/parameter.d.ts +15 -0
  168. package/dist/types/common/errors/password-error.d.ts +15 -0
  169. package/dist/types/common/errors/permission.d.ts +14 -0
  170. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  171. package/dist/types/common/errors/reconnection.d.ts +15 -0
  172. package/dist/types/common/errors/stats.d.ts +15 -0
  173. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  174. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  175. package/dist/types/common/events/events-scope.d.ts +17 -0
  176. package/dist/types/common/events/events.d.ts +12 -0
  177. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  178. package/dist/types/common/events/util.d.ts +2 -0
  179. package/dist/types/common/logs/logger-config.d.ts +2 -0
  180. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  181. package/dist/types/common/logs/request.d.ts +34 -0
  182. package/dist/types/common/queue.d.ts +32 -0
  183. package/dist/types/config.d.ts +72 -0
  184. package/dist/types/constants.d.ts +1016 -0
  185. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  186. package/dist/types/controls-options-manager/enums.d.ts +15 -0
  187. package/dist/types/controls-options-manager/index.d.ts +136 -0
  188. package/dist/types/controls-options-manager/types.d.ts +43 -0
  189. package/dist/types/controls-options-manager/util.d.ts +1 -0
  190. package/dist/types/index.d.ts +7 -0
  191. package/dist/types/interpretation/collection.d.ts +5 -0
  192. package/dist/types/interpretation/index.d.ts +5 -0
  193. package/dist/types/interpretation/siLanguage.d.ts +5 -0
  194. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  195. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  196. package/dist/types/locus-info/fullState.d.ts +2 -0
  197. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  198. package/dist/types/locus-info/index.d.ts +315 -0
  199. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  200. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  201. package/dist/types/locus-info/parser.d.ts +212 -0
  202. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  203. package/dist/types/media/index.d.ts +34 -0
  204. package/dist/types/media/properties.d.ts +93 -0
  205. package/dist/types/media/util.d.ts +2 -0
  206. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  207. package/dist/types/meeting/in-meeting-actions.d.ts +149 -0
  208. package/dist/types/meeting/index.d.ts +1467 -0
  209. package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
  210. package/dist/types/meeting/muteState.d.ts +184 -0
  211. package/dist/types/meeting/request.d.ts +270 -0
  212. package/dist/types/meeting/request.type.d.ts +11 -0
  213. package/dist/types/meeting/state.d.ts +9 -0
  214. package/dist/types/meeting/util.d.ts +77 -0
  215. package/dist/types/meeting-info/collection.d.ts +20 -0
  216. package/dist/types/meeting-info/index.d.ts +62 -0
  217. package/dist/types/meeting-info/meeting-info-v2.d.ts +122 -0
  218. package/dist/types/meeting-info/request.d.ts +22 -0
  219. package/dist/types/meeting-info/util.d.ts +2 -0
  220. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  221. package/dist/types/meetings/collection.d.ts +31 -0
  222. package/dist/types/meetings/index.d.ts +365 -0
  223. package/dist/types/meetings/meetings.types.d.ts +4 -0
  224. package/dist/types/meetings/request.d.ts +27 -0
  225. package/dist/types/meetings/util.d.ts +18 -0
  226. package/dist/types/member/index.d.ts +159 -0
  227. package/dist/types/member/types.d.ts +32 -0
  228. package/dist/types/member/util.d.ts +2 -0
  229. package/dist/types/members/collection.d.ts +29 -0
  230. package/dist/types/members/index.d.ts +353 -0
  231. package/dist/types/members/request.d.ts +114 -0
  232. package/dist/types/members/types.d.ts +24 -0
  233. package/dist/types/members/util.d.ts +210 -0
  234. package/dist/types/metrics/constants.d.ts +55 -0
  235. package/dist/types/metrics/index.d.ts +45 -0
  236. package/dist/types/multistream/mediaRequestManager.d.ts +118 -0
  237. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  238. package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
  239. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  240. package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
  241. package/dist/types/multistream/remoteMediaManager.d.ts +277 -0
  242. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  243. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  244. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  245. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  246. package/dist/types/reachability/index.d.ts +152 -0
  247. package/dist/types/reachability/request.d.ts +37 -0
  248. package/dist/types/reactions/constants.d.ts +3 -0
  249. package/dist/types/reactions/reactions.d.ts +4 -0
  250. package/dist/types/reactions/reactions.type.d.ts +52 -0
  251. package/dist/types/reconnection-manager/index.d.ts +126 -0
  252. package/dist/types/recording-controller/enums.d.ts +7 -0
  253. package/dist/types/recording-controller/index.d.ts +208 -0
  254. package/dist/types/recording-controller/util.d.ts +14 -0
  255. package/dist/types/roap/index.d.ts +77 -0
  256. package/dist/types/roap/request.d.ts +36 -0
  257. package/dist/types/roap/turnDiscovery.d.ts +91 -0
  258. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  259. package/dist/types/statsAnalyzer/index.d.ts +200 -0
  260. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  261. package/dist/types/transcription/index.d.ts +64 -0
  262. package/package.json +26 -23
  263. package/src/annotation/annotation.types.ts +50 -0
  264. package/src/annotation/constants.ts +36 -0
  265. package/src/annotation/index.ts +328 -0
  266. package/src/breakouts/README.md +44 -14
  267. package/src/breakouts/breakout.ts +87 -9
  268. package/src/breakouts/edit-lock-error.ts +25 -0
  269. package/src/breakouts/events.ts +56 -0
  270. package/src/breakouts/index.ts +710 -10
  271. package/src/breakouts/request.ts +55 -0
  272. package/src/breakouts/utils.ts +57 -0
  273. package/src/common/errors/webex-errors.ts +6 -2
  274. package/src/common/logs/logger-proxy.ts +1 -1
  275. package/src/config.ts +2 -7
  276. package/src/constants.ts +157 -21
  277. package/src/controls-options-manager/constants.ts +5 -0
  278. package/src/controls-options-manager/enums.ts +18 -0
  279. package/src/controls-options-manager/index.ts +278 -0
  280. package/src/controls-options-manager/types.ts +59 -0
  281. package/src/controls-options-manager/util.ts +286 -0
  282. package/src/index.ts +39 -0
  283. package/src/interpretation/README.md +60 -0
  284. package/src/interpretation/collection.ts +19 -0
  285. package/src/interpretation/index.ts +318 -0
  286. package/src/interpretation/siLanguage.ts +18 -0
  287. package/src/locus-info/controlsUtils.ts +108 -0
  288. package/src/locus-info/index.ts +316 -38
  289. package/src/locus-info/mediaSharesUtils.ts +48 -0
  290. package/src/locus-info/parser.ts +1 -1
  291. package/src/locus-info/selfUtils.ts +81 -5
  292. package/src/media/index.ts +77 -142
  293. package/src/media/properties.ts +49 -90
  294. package/src/mediaQualityMetrics/config.ts +379 -377
  295. package/src/meeting/in-meeting-actions.ts +151 -3
  296. package/src/meeting/index.ts +1919 -2002
  297. package/src/meeting/locusMediaRequest.ts +309 -0
  298. package/src/meeting/muteState.ts +228 -132
  299. package/src/meeting/request.ts +96 -65
  300. package/src/meeting/util.ts +464 -396
  301. package/src/meeting-info/index.ts +54 -8
  302. package/src/meeting-info/meeting-info-v2.ts +148 -14
  303. package/src/meeting-info/utilv2.ts +13 -3
  304. package/src/meetings/collection.ts +20 -0
  305. package/src/meetings/index.ts +386 -84
  306. package/src/meetings/meetings.types.ts +12 -0
  307. package/src/meetings/request.ts +2 -0
  308. package/src/meetings/util.ts +103 -4
  309. package/src/member/index.ts +49 -0
  310. package/src/member/types.ts +38 -0
  311. package/src/member/util.ts +103 -0
  312. package/src/members/collection.ts +8 -0
  313. package/src/members/index.ts +107 -6
  314. package/src/members/request.ts +97 -17
  315. package/src/members/types.ts +28 -0
  316. package/src/members/util.ts +319 -240
  317. package/src/metrics/constants.ts +2 -4
  318. package/src/metrics/index.ts +1 -490
  319. package/src/multistream/mediaRequestManager.ts +289 -79
  320. package/src/multistream/receiveSlot.ts +55 -18
  321. package/src/multistream/receiveSlotManager.ts +42 -20
  322. package/src/multistream/remoteMedia.ts +28 -2
  323. package/src/multistream/remoteMediaGroup.ts +59 -0
  324. package/src/multistream/remoteMediaManager.ts +113 -32
  325. package/src/networkQualityMonitor/index.ts +6 -6
  326. package/src/reachability/index.ts +62 -15
  327. package/src/reachability/request.ts +10 -5
  328. package/src/reactions/reactions.ts +4 -4
  329. package/src/reactions/reactions.type.ts +3 -3
  330. package/src/reconnection-manager/index.ts +68 -43
  331. package/src/recording-controller/index.ts +20 -2
  332. package/src/recording-controller/util.ts +26 -9
  333. package/src/roap/index.ts +21 -30
  334. package/src/roap/request.ts +101 -95
  335. package/src/roap/turnDiscovery.ts +47 -25
  336. package/src/statsAnalyzer/global.ts +1 -94
  337. package/src/statsAnalyzer/index.ts +376 -386
  338. package/src/statsAnalyzer/mqaUtil.ts +100 -99
  339. package/test/integration/spec/converged-space-meetings.js +233 -0
  340. package/test/integration/spec/journey.js +336 -259
  341. package/test/integration/spec/space-meeting.js +77 -4
  342. package/test/unit/spec/annotation/index.ts +418 -0
  343. package/test/unit/spec/breakouts/breakout.ts +142 -24
  344. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  345. package/test/unit/spec/breakouts/events.ts +89 -0
  346. package/test/unit/spec/breakouts/index.ts +1545 -48
  347. package/test/unit/spec/breakouts/request.ts +104 -0
  348. package/test/unit/spec/breakouts/utils.js +72 -0
  349. package/test/unit/spec/controls-options-manager/index.js +287 -0
  350. package/test/unit/spec/controls-options-manager/util.js +518 -0
  351. package/test/unit/spec/fixture/locus.js +1 -0
  352. package/test/unit/spec/interpretation/collection.ts +15 -0
  353. package/test/unit/spec/interpretation/index.ts +570 -0
  354. package/test/unit/spec/interpretation/siLanguage.ts +28 -0
  355. package/test/unit/spec/locus-info/controlsUtils.js +316 -43
  356. package/test/unit/spec/locus-info/index.js +707 -22
  357. package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
  358. package/test/unit/spec/locus-info/selfConstant.js +27 -4
  359. package/test/unit/spec/locus-info/selfUtils.js +208 -17
  360. package/test/unit/spec/media/index.ts +129 -23
  361. package/test/unit/spec/meeting/in-meeting-actions.ts +75 -3
  362. package/test/unit/spec/meeting/index.js +2728 -1397
  363. package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
  364. package/test/unit/spec/meeting/muteState.js +370 -208
  365. package/test/unit/spec/meeting/request.js +338 -43
  366. package/test/unit/spec/meeting/utils.js +378 -55
  367. package/test/unit/spec/meeting-info/index.js +181 -0
  368. package/test/unit/spec/meeting-info/meetinginfov2.js +383 -5
  369. package/test/unit/spec/meeting-info/utilv2.js +21 -0
  370. package/test/unit/spec/meetings/collection.js +14 -0
  371. package/test/unit/spec/meetings/index.js +846 -121
  372. package/test/unit/spec/meetings/utils.js +206 -2
  373. package/test/unit/spec/member/index.js +58 -4
  374. package/test/unit/spec/member/util.js +415 -33
  375. package/test/unit/spec/members/index.js +320 -1
  376. package/test/unit/spec/members/request.js +206 -27
  377. package/test/unit/spec/members/utils.js +184 -0
  378. package/test/unit/spec/metrics/index.js +1 -50
  379. package/test/unit/spec/multistream/mediaRequestManager.ts +803 -162
  380. package/test/unit/spec/multistream/receiveSlot.ts +72 -13
  381. package/test/unit/spec/multistream/receiveSlotManager.ts +58 -28
  382. package/test/unit/spec/multistream/remoteMedia.ts +30 -0
  383. package/test/unit/spec/multistream/remoteMediaGroup.ts +266 -0
  384. package/test/unit/spec/multistream/remoteMediaManager.ts +318 -0
  385. package/test/unit/spec/networkQualityMonitor/index.js +4 -4
  386. package/test/unit/spec/reachability/index.ts +125 -8
  387. package/test/unit/spec/reachability/request.js +66 -0
  388. package/test/unit/spec/reconnection-manager/index.js +59 -6
  389. package/test/unit/spec/recording-controller/index.js +294 -218
  390. package/test/unit/spec/recording-controller/util.js +223 -96
  391. package/test/unit/spec/roap/index.ts +26 -51
  392. package/test/unit/spec/roap/request.ts +196 -85
  393. package/test/unit/spec/roap/turnDiscovery.ts +30 -7
  394. package/test/unit/spec/stats-analyzer/index.js +92 -41
  395. package/test/utils/constants.js +9 -0
  396. package/test/utils/integrationTestUtils.js +46 -0
  397. package/test/utils/testUtils.js +0 -45
  398. package/test/utils/webex-config.js +4 -0
  399. package/test/utils/webex-test-users.js +6 -3
  400. package/dist/meeting/effectsState.js +0 -262
  401. package/dist/meeting/effectsState.js.map +0 -1
  402. package/dist/metrics/config.js +0 -299
  403. package/dist/metrics/config.js.map +0 -1
  404. package/dist/multistream/multistreamMedia.js +0 -110
  405. package/dist/multistream/multistreamMedia.js.map +0 -1
  406. package/src/index.js +0 -15
  407. package/src/meeting/effectsState.ts +0 -211
  408. package/src/metrics/config.ts +0 -495
  409. package/src/multistream/multistreamMedia.ts +0 -97
  410. package/test/unit/spec/meeting/effectsState.js +0 -285
@@ -16,6 +16,7 @@ var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/pr
16
16
  var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
17
17
  var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
18
18
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
19
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectWithoutProperties"));
19
20
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
20
21
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
21
22
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
@@ -29,6 +30,8 @@ var _webexCore = require("@webex/webex-core");
29
30
  var _common = require("@webex/common");
30
31
  var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
31
32
  var _constants = require("../constants");
33
+ var _util = _interopRequireDefault(require("./util"));
34
+ var _excluded = ["meeting"];
32
35
  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; }
33
36
  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
37
  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); }; }
@@ -39,11 +42,56 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_R
39
42
  var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
40
43
  (0, _inherits2.default)(MeetingRequest, _StatelessWebexPlugin);
41
44
  var _super = _createSuper(MeetingRequest);
45
+ /**
46
+ * Constructor
47
+ * @param {Object} attrs
48
+ * @param {Object} options
49
+ */
42
50
  function MeetingRequest(attrs, options) {
43
51
  var _this;
44
52
  (0, _classCallCheck2.default)(this, MeetingRequest);
45
- _this = _super.call(this, attrs, options);
53
+ var meeting = attrs.meeting,
54
+ otherAttrs = (0, _objectWithoutProperties2.default)(attrs, _excluded);
55
+ _this = _super.call(this, otherAttrs, options);
46
56
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "changeVideoLayoutDebounced", void 0);
57
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingRef", void 0);
58
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusDeltaRequest", void 0);
59
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getJoinCookie", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
60
+ var joinCookieRaw, joinCookie;
61
+ return _regenerator.default.wrap(function _callee$(_context) {
62
+ while (1) switch (_context.prev = _context.next) {
63
+ case 0:
64
+ _context.next = 2;
65
+ return _this.webex.boundedStorage.get(_constants.REACHABILITY.namespace, _constants.REACHABILITY.localStorageJoinCookie).catch(function () {});
66
+ case 2:
67
+ joinCookieRaw = _context.sent;
68
+ if (!joinCookieRaw) {
69
+ _context.next = 13;
70
+ break;
71
+ }
72
+ _context.prev = 4;
73
+ joinCookie = JSON.parse(joinCookieRaw);
74
+ if (!joinCookie) {
75
+ _context.next = 8;
76
+ break;
77
+ }
78
+ return _context.abrupt("return", joinCookie);
79
+ case 8:
80
+ _context.next = 13;
81
+ break;
82
+ case 10:
83
+ _context.prev = 10;
84
+ _context.t0 = _context["catch"](4);
85
+ _loggerProxy.default.logger.error("MeetingRequest#constructor --> Error in parsing join cookie data: ".concat(_context.t0));
86
+ case 13:
87
+ return _context.abrupt("return", null);
88
+ case 14:
89
+ case "end":
90
+ return _context.stop();
91
+ }
92
+ }, _callee, null, [[4, 10]]);
93
+ })));
94
+ _this.locusDeltaRequest = _util.default.generateLocusDeltaRequest(meeting);
47
95
  _this.changeVideoLayoutDebounced = (0, _debounce2.default)(_this.changeVideoLayout, 2000, {
48
96
  leading: true,
49
97
  trailing: true
@@ -52,32 +100,44 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
52
100
  }
53
101
 
54
102
  /**
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
- * @param {boolean} options.breakoutsSupported
68
- * @returns {Promise}
103
+ * Returns joinCookie from boundedStorage if present.
104
+ * @returns {Object} joinCookie
69
105
  */
70
106
  (0, _createClass2.default)(MeetingRequest, [{
71
107
  key: "joinMeeting",
72
- value: function () {
73
- var _joinMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(options) {
74
- var asResourceOccupant, inviteeAddress, meetingNumber, permissionToken, deviceUrl, locusUrl, resourceId, correlationId, ensureConversation, moderator, pin, moveToResource, roapMessage, preferTranscoding, breakoutsSupported, url, body;
75
- return _regenerator.default.wrap(function _callee$(_context) {
76
- while (1) switch (_context.prev = _context.next) {
108
+ value:
109
+ /**
110
+ * Make a network request to join a meeting
111
+ * @param {Object} options
112
+ * @param {String} options.sipUri
113
+ * @param {String} options.deviceUrl
114
+ * @param {String} options.locusUrl
115
+ * @param {String} options.resourceId,
116
+ * @param {String} options.correlationId
117
+ * @param {boolean} options.ensureConversation
118
+ * @param {boolean} options.moderator
119
+ * @param {boolean} options.pin
120
+ * @param {boolean} options.moveToResource
121
+ * @param {Object} options.roapMessage
122
+ * @param {boolean} options.breakoutsSupported
123
+ * @param {String} options.locale,
124
+ * @param {Array} options.deviceCapabilities
125
+ * @param {boolean} options.liveAnnotationSupported
126
+ * @returns {Promise}
127
+ */
128
+ function () {
129
+ var _joinMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(options) {
130
+ var asResourceOccupant, inviteeAddress, meetingNumber, permissionToken, deviceUrl, locusUrl, resourceId, correlationId, ensureConversation, moderator, pin, moveToResource, roapMessage, preferTranscoding, breakoutsSupported, locale, _options$deviceCapabi, deviceCapabilities, liveAnnotationSupported, url, joinCookie, body;
131
+ return _regenerator.default.wrap(function _callee2$(_context2) {
132
+ while (1) switch (_context2.prev = _context2.next) {
77
133
  case 0:
78
- asResourceOccupant = options.asResourceOccupant, inviteeAddress = options.inviteeAddress, meetingNumber = options.meetingNumber, permissionToken = options.permissionToken, deviceUrl = options.deviceUrl, locusUrl = options.locusUrl, resourceId = options.resourceId, correlationId = options.correlationId, ensureConversation = options.ensureConversation, moderator = options.moderator, pin = options.pin, moveToResource = options.moveToResource, roapMessage = options.roapMessage, preferTranscoding = options.preferTranscoding, breakoutsSupported = options.breakoutsSupported;
134
+ asResourceOccupant = options.asResourceOccupant, inviteeAddress = options.inviteeAddress, meetingNumber = options.meetingNumber, permissionToken = options.permissionToken, deviceUrl = options.deviceUrl, locusUrl = options.locusUrl, resourceId = options.resourceId, correlationId = options.correlationId, ensureConversation = options.ensureConversation, moderator = options.moderator, pin = options.pin, moveToResource = options.moveToResource, roapMessage = options.roapMessage, preferTranscoding = options.preferTranscoding, breakoutsSupported = options.breakoutsSupported, locale = options.locale, _options$deviceCapabi = options.deviceCapabilities, deviceCapabilities = _options$deviceCapabi === void 0 ? [] : _options$deviceCapabi, liveAnnotationSupported = options.liveAnnotationSupported;
79
135
  _loggerProxy.default.logger.info('Meeting:request#joinMeeting --> Joining a meeting', correlationId);
80
136
  url = '';
137
+ _context2.next = 5;
138
+ return this.getJoinCookie();
139
+ case 5:
140
+ joinCookie = _context2.sent;
81
141
  body = {
82
142
  asResourceOccupant: asResourceOccupant,
83
143
  device: {
@@ -93,13 +153,24 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
93
153
  ensureConversation: ensureConversation || false,
94
154
  supportsNativeLobby: 1,
95
155
  clientMediaPreferences: {
96
- preferTranscoding: preferTranscoding !== null && preferTranscoding !== void 0 ? preferTranscoding : true
156
+ preferTranscoding: preferTranscoding !== null && preferTranscoding !== void 0 ? preferTranscoding : true,
157
+ joinCookie: joinCookie
97
158
  }
98
159
  };
99
160
  if (breakoutsSupported) {
100
- body.deviceCapabilities = [_constants.BREAKOUTS.BREAKOUTS_SUPPORTED];
161
+ deviceCapabilities.push(_constants.BREAKOUTS.BREAKOUTS_SUPPORTED);
162
+ }
163
+ if (liveAnnotationSupported) {
164
+ deviceCapabilities.push(_constants.ANNOTATION.ANNOTATION_ON_SHARE_SUPPORTED);
165
+ }
166
+ if (locale) {
167
+ body.locale = locale;
101
168
  }
102
169
 
170
+ // add deviceCapabilities prop
171
+ if (deviceCapabilities.length) {
172
+ body.deviceCapabilities = deviceCapabilities;
173
+ }
103
174
  // @ts-ignore
104
175
  if (this.webex.meetings.clientRegion) {
105
176
  // @ts-ignore
@@ -117,34 +188,34 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
117
188
  body.pin = pin;
118
189
  }
119
190
  if (!locusUrl) {
120
- _context.next = 13;
191
+ _context2.next = 19;
121
192
  break;
122
193
  }
123
194
  url = "".concat(locusUrl, "/").concat(_constants.PARTICIPANT);
124
- _context.next = 25;
195
+ _context2.next = 31;
125
196
  break;
126
- case 13:
197
+ case 19:
127
198
  if (!(inviteeAddress || meetingNumber)) {
128
- _context.next = 25;
199
+ _context2.next = 31;
129
200
  break;
130
201
  }
131
- _context.prev = 14;
132
- _context.next = 17;
202
+ _context2.prev = 20;
203
+ _context2.next = 23;
133
204
  return this.webex.internal.services.waitForCatalog('postauth');
134
- case 17:
205
+ case 23:
135
206
  // @ts-ignore
136
207
  url = "".concat(this.webex.internal.services.get('locus'), "/").concat(_constants.LOCI, "/").concat(_constants.CALL);
137
208
  body.invitee = {
138
209
  address: inviteeAddress || "wbxmn:".concat(meetingNumber)
139
210
  };
140
- _context.next = 25;
211
+ _context2.next = 31;
141
212
  break;
142
- case 21:
143
- _context.prev = 21;
144
- _context.t0 = _context["catch"](14);
145
- _loggerProxy.default.logger.error("Meeting:request#joinMeeting Error Joining ".concat(inviteeAddress || meetingNumber, " --> ").concat(_context.t0));
146
- throw _context.t0;
147
- case 25:
213
+ case 27:
214
+ _context2.prev = 27;
215
+ _context2.t0 = _context2["catch"](20);
216
+ _loggerProxy.default.logger.error("Meeting:request#joinMeeting Error Joining ".concat(inviteeAddress || meetingNumber, " --> ").concat(_context2.t0));
217
+ throw _context2.t0;
218
+ case 31:
148
219
  // TODO: -- this will be resolved in SDK request
149
220
  url = url.concat("?".concat(_constants.ALTERNATE_REDIRECT_TRUE));
150
221
  if (resourceId === inviteeAddress) {
@@ -157,16 +228,16 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
157
228
  }
158
229
 
159
230
  /// @ts-ignore
160
- return _context.abrupt("return", this.request({
231
+ return _context2.abrupt("return", this.request({
161
232
  method: _constants.HTTP_VERBS.POST,
162
233
  uri: url,
163
234
  body: body
164
235
  }));
165
- case 29:
236
+ case 35:
166
237
  case "end":
167
- return _context.stop();
238
+ return _context2.stop();
168
239
  }
169
- }, _callee, this, [[14, 21]]);
240
+ }, _callee2, this, [[20, 27]]);
170
241
  }));
171
242
  function joinMeeting(_x) {
172
243
  return _joinMeeting.apply(this, arguments);
@@ -183,9 +254,9 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
183
254
  */
184
255
  }, {
185
256
  key: "refreshCaptcha",
186
- value: function refreshCaptcha(_ref) {
187
- var captchaRefreshUrl = _ref.captchaRefreshUrl,
188
- captchaId = _ref.captchaId;
257
+ value: function refreshCaptcha(_ref2) {
258
+ var captchaRefreshUrl = _ref2.captchaRefreshUrl,
259
+ captchaId = _ref2.captchaId;
189
260
  var body = {
190
261
  captchaId: captchaId
191
262
  };
@@ -213,11 +284,11 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
213
284
  */
214
285
  }, {
215
286
  key: "dialIn",
216
- value: function dialIn(_ref2) {
217
- var locusUrl = _ref2.locusUrl,
218
- dialInUrl = _ref2.dialInUrl,
219
- clientUrl = _ref2.clientUrl,
220
- correlationId = _ref2.correlationId;
287
+ value: function dialIn(_ref3) {
288
+ var locusUrl = _ref3.locusUrl,
289
+ dialInUrl = _ref3.dialInUrl,
290
+ clientUrl = _ref3.clientUrl,
291
+ correlationId = _ref3.correlationId;
221
292
  _loggerProxy.default.logger.info('Meeting:request#dialIn --> Provisioning a dial in device', correlationId);
222
293
  var uri = "".concat(locusUrl, "/").concat(_constants.PARTICIPANT);
223
294
  var body = {
@@ -231,7 +302,7 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
231
302
  };
232
303
 
233
304
  // @ts-ignore
234
- return this.request({
305
+ return this.locusDeltaRequest({
235
306
  method: _constants.HTTP_VERBS.POST,
236
307
  uri: uri,
237
308
  body: body
@@ -254,12 +325,12 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
254
325
  */
255
326
  }, {
256
327
  key: "dialOut",
257
- value: function dialOut(_ref3) {
258
- var locusUrl = _ref3.locusUrl,
259
- dialOutUrl = _ref3.dialOutUrl,
260
- phoneNumber = _ref3.phoneNumber,
261
- clientUrl = _ref3.clientUrl,
262
- correlationId = _ref3.correlationId;
328
+ value: function dialOut(_ref4) {
329
+ var locusUrl = _ref4.locusUrl,
330
+ dialOutUrl = _ref4.dialOutUrl,
331
+ phoneNumber = _ref4.phoneNumber,
332
+ clientUrl = _ref4.clientUrl,
333
+ correlationId = _ref4.correlationId;
263
334
  _loggerProxy.default.logger.info('Meeting:request#dialOut --> Provisioning a dial out device', correlationId);
264
335
  var uri = "".concat(locusUrl, "/").concat(_constants.PARTICIPANT);
265
336
  var body = {
@@ -274,7 +345,7 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
274
345
  };
275
346
 
276
347
  // @ts-ignore
277
- return this.request({
348
+ return this.locusDeltaRequest({
278
349
  method: _constants.HTTP_VERBS.POST,
279
350
  uri: uri,
280
351
  body: body
@@ -356,11 +427,11 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
356
427
  */
357
428
  }, {
358
429
  key: "disconnectPhoneAudio",
359
- value: function disconnectPhoneAudio(_ref4) {
360
- var locusUrl = _ref4.locusUrl,
361
- phoneUrl = _ref4.phoneUrl,
362
- correlationId = _ref4.correlationId,
363
- selfId = _ref4.selfId;
430
+ value: function disconnectPhoneAudio(_ref5) {
431
+ var locusUrl = _ref5.locusUrl,
432
+ phoneUrl = _ref5.phoneUrl,
433
+ correlationId = _ref5.correlationId,
434
+ selfId = _ref5.selfId;
364
435
  _loggerProxy.default.logger.info("Meeting:request#disconnectPhoneAudio --> request phone ".concat(phoneUrl, " to leave"), correlationId);
365
436
  var uri = "".concat(locusUrl, "/").concat(_constants.PARTICIPANT, "/").concat(selfId, "/").concat(_constants.LEAVE);
366
437
  var body = {
@@ -372,7 +443,7 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
372
443
  };
373
444
 
374
445
  // @ts-ignore
375
- return this.request({
446
+ return this.locusDeltaRequest({
376
447
  method: _constants.HTTP_VERBS.PUT,
377
448
  uri: uri,
378
449
  body: body
@@ -394,12 +465,12 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
394
465
  */
395
466
  }, {
396
467
  key: "leaveMeeting",
397
- value: function leaveMeeting(_ref5) {
398
- var locusUrl = _ref5.locusUrl,
399
- selfId = _ref5.selfId,
400
- url = _ref5.deviceUrl,
401
- resourceId = _ref5.resourceId,
402
- correlationId = _ref5.correlationId;
468
+ value: function leaveMeeting(_ref6) {
469
+ var locusUrl = _ref6.locusUrl,
470
+ selfId = _ref6.selfId,
471
+ url = _ref6.deviceUrl,
472
+ resourceId = _ref6.resourceId,
473
+ correlationId = _ref6.correlationId;
403
474
  _loggerProxy.default.logger.info('Meeting:request#leaveMeeting --> Leaving a meeting', correlationId);
404
475
  var uri = "".concat(locusUrl, "/").concat(_constants.PARTICIPANT, "/").concat(selfId, "/").concat(_constants.LEAVE);
405
476
  var body = {
@@ -411,9 +482,7 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
411
482
  usingResource: resourceId || null,
412
483
  correlationId: correlationId
413
484
  };
414
-
415
- // @ts-ignore
416
- return this.request({
485
+ return this.locusDeltaRequest({
417
486
  method: _constants.HTTP_VERBS.PUT,
418
487
  uri: uri,
419
488
  body: body
@@ -440,14 +509,19 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
440
509
  },
441
510
  correlationId: options.correlationId
442
511
  };
443
-
444
- // @ts-ignore
445
- return this.request({
512
+ return this.locusDeltaRequest({
446
513
  method: _constants.HTTP_VERBS.PUT,
447
514
  uri: uri,
448
515
  body: body
449
516
  });
450
517
  }
518
+
519
+ /**
520
+ * Makes a network request to lock the meeting
521
+ * @param {Object} options
522
+ * @param {Boolean} options.lock Whether it is locked or not
523
+ * @returns {Promise}
524
+ */
451
525
  }, {
452
526
  key: "lockMeeting",
453
527
  value: function lockMeeting(options) {
@@ -457,9 +531,7 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
457
531
  locked: options.lock
458
532
  }
459
533
  };
460
-
461
- // @ts-ignore
462
- return this.request({
534
+ return this.locusDeltaRequest({
463
535
  method: _constants.HTTP_VERBS.PATCH,
464
536
  uri: uri,
465
537
  body: body
@@ -487,48 +559,7 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
487
559
  }, options.reason && {
488
560
  reason: options.reason
489
561
  });
490
-
491
- // @ts-ignore
492
- return this.request({
493
- method: _constants.HTTP_VERBS.PUT,
494
- uri: uri,
495
- body: body
496
- });
497
- }
498
-
499
- /**
500
- * Toggle remote audio and/or video
501
- * @param {Object} options options for toggling
502
- * @param {String} options.selfId Locus self id??
503
- * @param {String} options.locusUrl Locus url
504
- * @param {String} options.deviceUrl Url of a device
505
- * @param {String} options.resourceId Populated if you are paired to a device
506
- * @param {String} options.localMedias local sdps
507
- * @param {Boolean} options.preferTranscoding false for multistream (Homer), true for transcoded media (Edonus)
508
- * @returns {Promise}
509
- */
510
- }, {
511
- key: "remoteAudioVideoToggle",
512
- value: function remoteAudioVideoToggle(options) {
513
- var _options$preferTransc;
514
- var uri = "".concat(options.locusUrl, "/").concat(_constants.PARTICIPANT, "/").concat(options.selfId, "/").concat(_constants.MEDIA);
515
- var body = {
516
- device: {
517
- // @ts-ignore
518
- deviceType: this.config.meetings.deviceType,
519
- url: options.deviceUrl
520
- },
521
- usingResource: options.resourceId || null,
522
- correlationId: options.correlationId,
523
- respOnlySdp: true,
524
- localMedias: options.localMedias,
525
- clientMediaPreferences: {
526
- preferTranscoding: (_options$preferTransc = options.preferTranscoding) !== null && _options$preferTransc !== void 0 ? _options$preferTransc : true
527
- }
528
- };
529
-
530
- // @ts-ignore
531
- return this.request({
562
+ return this.locusDeltaRequest({
532
563
  method: _constants.HTTP_VERBS.PUT,
533
564
  uri: uri,
534
565
  body: body
@@ -576,6 +607,9 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
576
607
  if (options !== null && options !== void 0 && options.resourceToken) {
577
608
  body.resourceToken = options === null || options === void 0 ? void 0 : options.resourceToken;
578
609
  }
610
+ if (options !== null && options !== void 0 && options.annotationInfo) {
611
+ body.annotation = options === null || options === void 0 ? void 0 : options.annotationInfo;
612
+ }
579
613
 
580
614
  // @ts-ignore
581
615
  return this.request({
@@ -595,12 +629,12 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
595
629
  */
596
630
  }, {
597
631
  key: "sendDTMF",
598
- value: function sendDTMF(_ref6) {
599
- var locusUrl = _ref6.locusUrl,
600
- deviceUrl = _ref6.deviceUrl,
601
- tones = _ref6.tones;
632
+ value: function sendDTMF(_ref7) {
633
+ var locusUrl = _ref7.locusUrl,
634
+ deviceUrl = _ref7.deviceUrl,
635
+ tones = _ref7.tones;
602
636
  // @ts-ignore
603
- return this.request({
637
+ return this.locusDeltaRequest({
604
638
  method: _constants.HTTP_VERBS.POST,
605
639
  uri: "".concat(locusUrl, "/").concat(_constants.SEND_DTMF_ENDPOINT),
606
640
  body: {
@@ -629,12 +663,12 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
629
663
  */
630
664
  }, {
631
665
  key: "changeVideoLayout",
632
- value: function changeVideoLayout(_ref7) {
633
- var locusUrl = _ref7.locusUrl,
634
- deviceUrl = _ref7.deviceUrl,
635
- layoutType = _ref7.layoutType,
636
- main = _ref7.main,
637
- content = _ref7.content;
666
+ value: function changeVideoLayout(_ref8) {
667
+ var locusUrl = _ref8.locusUrl,
668
+ deviceUrl = _ref8.deviceUrl,
669
+ layoutType = _ref8.layoutType,
670
+ main = _ref8.main,
671
+ content = _ref8.content;
638
672
  // send main/content renderInfo only if both width and height are specified
639
673
  if (main && (!main.width || !main.height)) {
640
674
  return _promise.default.reject(new Error("Both width and height must be specified. One of them is missing for main: ".concat((0, _stringify.default)(main))));
@@ -658,7 +692,7 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
658
692
  } : undefined;
659
693
 
660
694
  // @ts-ignore
661
- return this.request({
695
+ return this.locusDeltaRequest({
662
696
  method: _constants.HTTP_VERBS.PUT,
663
697
  uri: "".concat(locusUrl, "/").concat(_constants.CONTROLS),
664
698
  body: {
@@ -679,12 +713,12 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
679
713
  */
680
714
  }, {
681
715
  key: "endMeetingForAll",
682
- value: function endMeetingForAll(_ref8) {
683
- var locusUrl = _ref8.locusUrl;
716
+ value: function endMeetingForAll(_ref9) {
717
+ var locusUrl = _ref9.locusUrl;
684
718
  var uri = "".concat(locusUrl, "/").concat(_constants.END);
685
719
 
686
720
  // @ts-ignore
687
- return this.request({
721
+ return this.locusDeltaRequest({
688
722
  method: _constants.HTTP_VERBS.POST,
689
723
  uri: uri
690
724
  });
@@ -698,8 +732,8 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
698
732
  */
699
733
  }, {
700
734
  key: "keepAlive",
701
- value: function keepAlive(_ref9) {
702
- var keepAliveUrl = _ref9.keepAliveUrl;
735
+ value: function keepAlive(_ref10) {
736
+ var keepAliveUrl = _ref10.keepAliveUrl;
703
737
  // @ts-ignore
704
738
  return this.request({
705
739
  method: _constants.HTTP_VERBS.GET,
@@ -717,10 +751,10 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
717
751
  */
718
752
  }, {
719
753
  key: "sendReaction",
720
- value: function sendReaction(_ref10) {
721
- var reactionChannelUrl = _ref10.reactionChannelUrl,
722
- reaction = _ref10.reaction,
723
- participantId = _ref10.participantId;
754
+ value: function sendReaction(_ref11) {
755
+ var reactionChannelUrl = _ref11.reactionChannelUrl,
756
+ reaction = _ref11.reaction,
757
+ participantId = _ref11.participantId;
724
758
  var uri = reactionChannelUrl;
725
759
 
726
760
  // @ts-ignore
@@ -744,14 +778,14 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
744
778
  */
745
779
  }, {
746
780
  key: "toggleReactions",
747
- value: function toggleReactions(_ref11) {
748
- var enable = _ref11.enable,
749
- locusUrl = _ref11.locusUrl,
750
- requestingParticipantId = _ref11.requestingParticipantId;
781
+ value: function toggleReactions(_ref12) {
782
+ var enable = _ref12.enable,
783
+ locusUrl = _ref12.locusUrl,
784
+ requestingParticipantId = _ref12.requestingParticipantId;
751
785
  var uri = "".concat(locusUrl, "/").concat(_constants.CONTROLS);
752
786
 
753
787
  // @ts-ignore
754
- return this.request({
788
+ return this.locusDeltaRequest({
755
789
  method: _constants.HTTP_VERBS.PUT,
756
790
  uri: uri,
757
791
  body: {
@@ -762,6 +796,15 @@ var MeetingRequest = /*#__PURE__*/function (_StatelessWebexPlugin) {
762
796
  }
763
797
  });
764
798
  }
799
+ }, {
800
+ key: "getLocusStatusByUrl",
801
+ value: function getLocusStatusByUrl(locusUrl) {
802
+ // @ts-ignore
803
+ return this.request({
804
+ method: _constants.HTTP_VERBS.GET,
805
+ uri: locusUrl
806
+ });
807
+ }
765
808
  }]);
766
809
  return MeetingRequest;
767
810
  }(_webexCore.StatelessWebexPlugin);