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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (512) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/annotation/annotation.types.js +7 -0
  4. package/dist/annotation/annotation.types.js.map +1 -0
  5. package/dist/annotation/constants.js +48 -0
  6. package/dist/annotation/constants.js.map +1 -0
  7. package/dist/annotation/index.js +357 -0
  8. package/dist/annotation/index.js.map +1 -0
  9. package/dist/breakouts/breakout.js +176 -0
  10. package/dist/breakouts/breakout.js.map +1 -0
  11. package/dist/breakouts/collection.js +23 -0
  12. package/dist/breakouts/collection.js.map +1 -0
  13. package/dist/breakouts/edit-lock-error.js +52 -0
  14. package/dist/breakouts/edit-lock-error.js.map +1 -0
  15. package/dist/breakouts/events.js +43 -0
  16. package/dist/breakouts/events.js.map +1 -0
  17. package/dist/breakouts/index.js +944 -0
  18. package/dist/breakouts/index.js.map +1 -0
  19. package/dist/breakouts/request.js +78 -0
  20. package/dist/breakouts/request.js.map +1 -0
  21. package/dist/breakouts/utils.js +67 -0
  22. package/dist/breakouts/utils.js.map +1 -0
  23. package/dist/common/browser-detection.js +1 -20
  24. package/dist/common/browser-detection.js.map +1 -1
  25. package/dist/common/collection.js +5 -20
  26. package/dist/common/collection.js.map +1 -1
  27. package/dist/common/config.js +0 -7
  28. package/dist/common/config.js.map +1 -1
  29. package/dist/common/errors/captcha-error.js +5 -26
  30. package/dist/common/errors/captcha-error.js.map +1 -1
  31. package/dist/common/errors/intent-to-join.js +5 -26
  32. package/dist/common/errors/intent-to-join.js.map +1 -1
  33. package/dist/common/errors/join-meeting.js +6 -27
  34. package/dist/common/errors/join-meeting.js.map +1 -1
  35. package/dist/common/errors/media.js +5 -26
  36. package/dist/common/errors/media.js.map +1 -1
  37. package/dist/common/errors/parameter.js +5 -33
  38. package/dist/common/errors/parameter.js.map +1 -1
  39. package/dist/common/errors/password-error.js +5 -26
  40. package/dist/common/errors/password-error.js.map +1 -1
  41. package/dist/common/errors/permission.js +4 -25
  42. package/dist/common/errors/permission.js.map +1 -1
  43. package/dist/common/errors/reconnection-in-progress.js +0 -17
  44. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  45. package/dist/common/errors/reconnection.js +5 -26
  46. package/dist/common/errors/reconnection.js.map +1 -1
  47. package/dist/common/errors/stats.js +5 -26
  48. package/dist/common/errors/stats.js.map +1 -1
  49. package/dist/common/errors/webex-errors.js +6 -41
  50. package/dist/common/errors/webex-errors.js.map +1 -1
  51. package/dist/common/errors/webex-meetings-error.js +1 -24
  52. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  53. package/dist/common/events/events-scope.js +0 -22
  54. package/dist/common/events/events-scope.js.map +1 -1
  55. package/dist/common/events/events.js +0 -23
  56. package/dist/common/events/events.js.map +1 -1
  57. package/dist/common/events/trigger-proxy.js +0 -12
  58. package/dist/common/events/trigger-proxy.js.map +1 -1
  59. package/dist/common/events/util.js +0 -15
  60. package/dist/common/events/util.js.map +1 -1
  61. package/dist/common/logs/logger-config.js +0 -4
  62. package/dist/common/logs/logger-config.js.map +1 -1
  63. package/dist/common/logs/logger-proxy.js +1 -8
  64. package/dist/common/logs/logger-proxy.js.map +1 -1
  65. package/dist/common/logs/request.js +35 -61
  66. package/dist/common/logs/request.js.map +1 -1
  67. package/dist/common/queue.js +4 -14
  68. package/dist/common/queue.js.map +1 -1
  69. package/dist/config.js +6 -6
  70. package/dist/config.js.map +1 -1
  71. package/dist/constants.js +193 -53
  72. package/dist/constants.js.map +1 -1
  73. package/dist/controls-options-manager/constants.js +14 -0
  74. package/dist/controls-options-manager/constants.js.map +1 -0
  75. package/dist/controls-options-manager/enums.js +27 -0
  76. package/dist/controls-options-manager/enums.js.map +1 -0
  77. package/dist/controls-options-manager/index.js +297 -0
  78. package/dist/controls-options-manager/index.js.map +1 -0
  79. package/dist/controls-options-manager/types.js +7 -0
  80. package/dist/controls-options-manager/types.js.map +1 -0
  81. package/dist/controls-options-manager/util.js +286 -0
  82. package/dist/controls-options-manager/util.js.map +1 -0
  83. package/dist/index.js +72 -17
  84. package/dist/index.js.map +1 -1
  85. package/dist/locus-info/controlsUtils.js +94 -29
  86. package/dist/locus-info/controlsUtils.js.map +1 -1
  87. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  88. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  89. package/dist/locus-info/fullState.js +0 -15
  90. package/dist/locus-info/fullState.js.map +1 -1
  91. package/dist/locus-info/hostUtils.js +4 -12
  92. package/dist/locus-info/hostUtils.js.map +1 -1
  93. package/dist/locus-info/index.js +383 -212
  94. package/dist/locus-info/index.js.map +1 -1
  95. package/dist/locus-info/infoUtils.js +0 -38
  96. package/dist/locus-info/infoUtils.js.map +1 -1
  97. package/dist/locus-info/mediaSharesUtils.js +12 -38
  98. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  99. package/dist/locus-info/parser.js +88 -123
  100. package/dist/locus-info/parser.js.map +1 -1
  101. package/dist/locus-info/selfUtils.js +99 -91
  102. package/dist/locus-info/selfUtils.js.map +1 -1
  103. package/dist/media/index.js +62 -147
  104. package/dist/media/index.js.map +1 -1
  105. package/dist/media/properties.js +71 -117
  106. package/dist/media/properties.js.map +1 -1
  107. package/dist/media/util.js +2 -9
  108. package/dist/media/util.js.map +1 -1
  109. package/dist/mediaQualityMetrics/config.js +505 -495
  110. package/dist/mediaQualityMetrics/config.js.map +1 -1
  111. package/dist/meeting/in-meeting-actions.js +67 -14
  112. package/dist/meeting/in-meeting-actions.js.map +1 -1
  113. package/dist/meeting/index.js +2477 -2417
  114. package/dist/meeting/index.js.map +1 -1
  115. package/dist/meeting/muteState.js +252 -113
  116. package/dist/meeting/muteState.js.map +1 -1
  117. package/dist/meeting/request.js +296 -289
  118. package/dist/meeting/request.js.map +1 -1
  119. package/dist/meeting/request.type.js +7 -0
  120. package/dist/meeting/request.type.js.map +1 -0
  121. package/dist/meeting/state.js +21 -31
  122. package/dist/meeting/state.js.map +1 -1
  123. package/dist/meeting/util.js +58 -217
  124. package/dist/meeting/util.js.map +1 -1
  125. package/dist/meeting-info/collection.js +3 -25
  126. package/dist/meeting-info/collection.js.map +1 -1
  127. package/dist/meeting-info/index.js +10 -33
  128. package/dist/meeting-info/index.js.map +1 -1
  129. package/dist/meeting-info/meeting-info-v2.js +278 -281
  130. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  131. package/dist/meeting-info/request.js +1 -16
  132. package/dist/meeting-info/request.js.map +1 -1
  133. package/dist/meeting-info/util.js +98 -183
  134. package/dist/meeting-info/util.js.map +1 -1
  135. package/dist/meeting-info/utilv2.js +155 -232
  136. package/dist/meeting-info/utilv2.js.map +1 -1
  137. package/dist/meetings/collection.js +24 -20
  138. package/dist/meetings/collection.js.map +1 -1
  139. package/dist/meetings/index.js +675 -593
  140. package/dist/meetings/index.js.map +1 -1
  141. package/dist/meetings/request.js +23 -42
  142. package/dist/meetings/request.js.map +1 -1
  143. package/dist/meetings/util.js +177 -155
  144. package/dist/meetings/util.js.map +1 -1
  145. package/dist/member/index.js +89 -88
  146. package/dist/member/index.js.map +1 -1
  147. package/dist/member/types.js +15 -0
  148. package/dist/member/types.js.map +1 -0
  149. package/dist/member/util.js +101 -69
  150. package/dist/member/util.js.map +1 -1
  151. package/dist/members/collection.js +12 -12
  152. package/dist/members/collection.js.map +1 -1
  153. package/dist/members/index.js +162 -204
  154. package/dist/members/index.js.map +1 -1
  155. package/dist/members/request.js +58 -53
  156. package/dist/members/request.js.map +1 -1
  157. package/dist/members/types.js +15 -0
  158. package/dist/members/types.js.map +1 -0
  159. package/dist/members/util.js +107 -44
  160. package/dist/members/util.js.map +1 -1
  161. package/dist/metrics/config.js +50 -16
  162. package/dist/metrics/config.js.map +1 -1
  163. package/dist/metrics/constants.js +3 -7
  164. package/dist/metrics/constants.js.map +1 -1
  165. package/dist/metrics/index.js +93 -162
  166. package/dist/metrics/index.js.map +1 -1
  167. package/dist/multistream/mediaRequestManager.js +167 -50
  168. package/dist/multistream/mediaRequestManager.js.map +1 -1
  169. package/dist/multistream/receiveSlot.js +58 -65
  170. package/dist/multistream/receiveSlot.js.map +1 -1
  171. package/dist/multistream/receiveSlotManager.js +74 -93
  172. package/dist/multistream/receiveSlotManager.js.map +1 -1
  173. package/dist/multistream/remoteMedia.js +55 -74
  174. package/dist/multistream/remoteMedia.js.map +1 -1
  175. package/dist/multistream/remoteMediaGroup.js +6 -40
  176. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  177. package/dist/multistream/remoteMediaManager.js +466 -442
  178. package/dist/multistream/remoteMediaManager.js.map +1 -1
  179. package/dist/networkQualityMonitor/index.js +32 -59
  180. package/dist/networkQualityMonitor/index.js.map +1 -1
  181. package/dist/personal-meeting-room/index.js +10 -45
  182. package/dist/personal-meeting-room/index.js.map +1 -1
  183. package/dist/personal-meeting-room/request.js +2 -33
  184. package/dist/personal-meeting-room/request.js.map +1 -1
  185. package/dist/personal-meeting-room/util.js +0 -13
  186. package/dist/personal-meeting-room/util.js.map +1 -1
  187. package/dist/reachability/index.js +190 -199
  188. package/dist/reachability/index.js.map +1 -1
  189. package/dist/reachability/request.js +14 -23
  190. package/dist/reachability/request.js.map +1 -1
  191. package/dist/reactions/constants.js +13 -0
  192. package/dist/reactions/constants.js.map +1 -0
  193. package/dist/reactions/reactions.js +2 -4
  194. package/dist/reactions/reactions.js.map +1 -1
  195. package/dist/reactions/reactions.type.js +19 -23
  196. package/dist/reactions/reactions.type.js.map +1 -1
  197. package/dist/reconnection-manager/index.js +326 -465
  198. package/dist/reconnection-manager/index.js.map +1 -1
  199. package/dist/recording-controller/enums.js +17 -0
  200. package/dist/recording-controller/enums.js.map +1 -0
  201. package/dist/recording-controller/index.js +343 -0
  202. package/dist/recording-controller/index.js.map +1 -0
  203. package/dist/recording-controller/util.js +63 -0
  204. package/dist/recording-controller/util.js.map +1 -0
  205. package/dist/roap/index.js +38 -67
  206. package/dist/roap/index.js.map +1 -1
  207. package/dist/roap/request.js +143 -134
  208. package/dist/roap/request.js.map +1 -1
  209. package/dist/roap/turnDiscovery.js +149 -101
  210. package/dist/roap/turnDiscovery.js.map +1 -1
  211. package/dist/statsAnalyzer/global.js +1 -95
  212. package/dist/statsAnalyzer/global.js.map +1 -1
  213. package/dist/statsAnalyzer/index.js +369 -461
  214. package/dist/statsAnalyzer/index.js.map +1 -1
  215. package/dist/statsAnalyzer/mqaUtil.js +144 -94
  216. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  217. package/dist/transcription/index.js +13 -45
  218. package/dist/transcription/index.js.map +1 -1
  219. package/dist/types/annotation/annotation.types.d.ts +34 -0
  220. package/dist/types/annotation/constants.d.ts +31 -0
  221. package/dist/types/annotation/index.d.ts +124 -0
  222. package/dist/types/breakouts/breakout.d.ts +8 -0
  223. package/dist/types/breakouts/collection.d.ts +5 -0
  224. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  225. package/dist/types/breakouts/events.d.ts +2 -0
  226. package/dist/types/breakouts/index.d.ts +5 -0
  227. package/dist/types/breakouts/request.d.ts +22 -0
  228. package/dist/types/breakouts/utils.d.ts +15 -0
  229. package/dist/types/common/browser-detection.d.ts +9 -0
  230. package/dist/types/common/collection.d.ts +48 -0
  231. package/dist/types/common/config.d.ts +2 -0
  232. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  233. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  234. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  235. package/dist/types/common/errors/media.d.ts +15 -0
  236. package/dist/types/common/errors/parameter.d.ts +15 -0
  237. package/dist/types/common/errors/password-error.d.ts +15 -0
  238. package/dist/types/common/errors/permission.d.ts +14 -0
  239. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  240. package/dist/types/common/errors/reconnection.d.ts +15 -0
  241. package/dist/types/common/errors/stats.d.ts +15 -0
  242. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  243. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  244. package/dist/types/common/events/events-scope.d.ts +17 -0
  245. package/dist/types/common/events/events.d.ts +12 -0
  246. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  247. package/dist/types/common/events/util.d.ts +2 -0
  248. package/dist/types/common/logs/logger-config.d.ts +2 -0
  249. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  250. package/dist/types/common/logs/request.d.ts +34 -0
  251. package/dist/types/common/queue.d.ts +32 -0
  252. package/dist/types/config.d.ts +78 -0
  253. package/dist/types/constants.d.ts +984 -0
  254. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  255. package/dist/types/controls-options-manager/enums.d.ts +15 -0
  256. package/dist/types/controls-options-manager/index.d.ts +136 -0
  257. package/dist/types/controls-options-manager/types.d.ts +43 -0
  258. package/dist/types/controls-options-manager/util.d.ts +1 -0
  259. package/dist/types/index.d.ts +7 -0
  260. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  261. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  262. package/dist/types/locus-info/fullState.d.ts +2 -0
  263. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  264. package/dist/types/locus-info/index.d.ts +315 -0
  265. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  266. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  267. package/dist/types/locus-info/parser.d.ts +212 -0
  268. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  269. package/dist/types/media/index.d.ts +34 -0
  270. package/dist/types/media/properties.d.ts +108 -0
  271. package/dist/types/media/util.d.ts +2 -0
  272. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  273. package/dist/types/meeting/in-meeting-actions.d.ts +137 -0
  274. package/dist/types/meeting/index.d.ts +1753 -0
  275. package/dist/types/meeting/muteState.d.ts +185 -0
  276. package/dist/types/meeting/request.d.ts +275 -0
  277. package/dist/types/meeting/request.type.d.ts +11 -0
  278. package/dist/types/meeting/state.d.ts +9 -0
  279. package/dist/types/meeting/util.d.ts +2 -0
  280. package/dist/types/meeting-info/collection.d.ts +20 -0
  281. package/dist/types/meeting-info/index.d.ts +57 -0
  282. package/dist/types/meeting-info/meeting-info-v2.d.ts +115 -0
  283. package/dist/types/meeting-info/request.d.ts +22 -0
  284. package/dist/types/meeting-info/util.d.ts +2 -0
  285. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  286. package/dist/types/meetings/collection.d.ts +31 -0
  287. package/dist/types/meetings/index.d.ts +345 -0
  288. package/dist/types/meetings/request.d.ts +27 -0
  289. package/dist/types/meetings/util.d.ts +18 -0
  290. package/dist/types/member/index.d.ts +157 -0
  291. package/dist/types/member/types.d.ts +21 -0
  292. package/dist/types/member/util.d.ts +2 -0
  293. package/dist/types/members/collection.d.ts +29 -0
  294. package/dist/types/members/index.d.ts +353 -0
  295. package/dist/types/members/request.d.ts +69 -0
  296. package/dist/types/members/types.d.ts +24 -0
  297. package/dist/types/members/util.d.ts +2 -0
  298. package/dist/types/metrics/config.d.ts +195 -0
  299. package/dist/types/metrics/constants.d.ts +54 -0
  300. package/dist/types/metrics/index.d.ts +169 -0
  301. package/dist/types/multistream/mediaRequestManager.d.ts +101 -0
  302. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  303. package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
  304. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  305. package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
  306. package/dist/types/multistream/remoteMediaManager.d.ts +263 -0
  307. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  308. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  309. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  310. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  311. package/dist/types/reachability/index.d.ts +152 -0
  312. package/dist/types/reachability/request.d.ts +37 -0
  313. package/dist/types/reactions/constants.d.ts +3 -0
  314. package/dist/types/reactions/reactions.d.ts +4 -0
  315. package/dist/types/reactions/reactions.type.d.ts +52 -0
  316. package/dist/types/reconnection-manager/index.d.ts +126 -0
  317. package/dist/types/recording-controller/enums.d.ts +7 -0
  318. package/dist/types/recording-controller/index.d.ts +193 -0
  319. package/dist/types/recording-controller/util.d.ts +13 -0
  320. package/dist/types/roap/index.d.ts +77 -0
  321. package/dist/types/roap/request.d.ts +38 -0
  322. package/dist/types/roap/turnDiscovery.d.ts +88 -0
  323. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  324. package/dist/types/statsAnalyzer/index.d.ts +200 -0
  325. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  326. package/dist/types/transcription/index.d.ts +64 -0
  327. package/internal-README.md +7 -6
  328. package/package.json +28 -21
  329. package/src/annotation/annotation.types.ts +41 -0
  330. package/src/annotation/constants.ts +36 -0
  331. package/src/annotation/index.ts +339 -0
  332. package/src/breakouts/README.md +220 -0
  333. package/src/breakouts/breakout.ts +141 -0
  334. package/src/breakouts/collection.ts +19 -0
  335. package/src/breakouts/edit-lock-error.ts +25 -0
  336. package/src/breakouts/events.ts +37 -0
  337. package/src/breakouts/index.ts +835 -0
  338. package/src/breakouts/request.ts +55 -0
  339. package/src/breakouts/utils.ts +57 -0
  340. package/src/common/browser-detection.ts +9 -6
  341. package/src/common/collection.ts +3 -1
  342. package/src/common/errors/captcha-error.ts +6 -6
  343. package/src/common/errors/intent-to-join.ts +6 -6
  344. package/src/common/errors/join-meeting.ts +12 -8
  345. package/src/common/errors/media.ts +6 -6
  346. package/src/common/errors/parameter.ts +9 -6
  347. package/src/common/errors/password-error.ts +6 -6
  348. package/src/common/errors/permission.ts +5 -5
  349. package/src/common/errors/reconnection.ts +6 -6
  350. package/src/common/errors/stats.ts +6 -6
  351. package/src/common/errors/webex-errors.ts +7 -5
  352. package/src/common/errors/webex-meetings-error.ts +1 -1
  353. package/src/common/events/events-scope.ts +5 -1
  354. package/src/common/events/events.ts +5 -1
  355. package/src/common/events/trigger-proxy.ts +8 -3
  356. package/src/common/events/util.ts +1 -2
  357. package/src/common/logs/logger-proxy.ts +21 -10
  358. package/src/common/logs/request.ts +11 -8
  359. package/src/config.ts +16 -12
  360. package/src/constants.ts +141 -6
  361. package/src/controls-options-manager/constants.ts +5 -0
  362. package/src/controls-options-manager/enums.ts +18 -0
  363. package/src/controls-options-manager/index.ts +278 -0
  364. package/src/controls-options-manager/types.ts +59 -0
  365. package/src/controls-options-manager/util.ts +274 -0
  366. package/src/index.ts +33 -0
  367. package/src/locus-info/controlsUtils.ts +145 -24
  368. package/src/locus-info/fullState.ts +15 -11
  369. package/src/locus-info/hostUtils.ts +4 -3
  370. package/src/locus-info/index.ts +326 -55
  371. package/src/locus-info/infoUtils.ts +12 -4
  372. package/src/locus-info/mediaSharesUtils.ts +4 -4
  373. package/src/locus-info/parser.ts +46 -68
  374. package/src/locus-info/selfUtils.ts +187 -56
  375. package/src/media/index.ts +142 -172
  376. package/src/media/properties.ts +43 -36
  377. package/src/media/util.ts +1 -1
  378. package/src/mediaQualityMetrics/config.ts +380 -378
  379. package/src/meeting/in-meeting-actions.ts +139 -3
  380. package/src/meeting/index.ts +2674 -1543
  381. package/src/meeting/muteState.ts +271 -68
  382. package/src/meeting/request.ts +231 -135
  383. package/src/meeting/request.type.ts +13 -0
  384. package/src/meeting/state.ts +45 -30
  385. package/src/meeting/util.ts +119 -110
  386. package/src/meeting-info/collection.ts +2 -1
  387. package/src/meeting-info/index.ts +32 -30
  388. package/src/meeting-info/meeting-info-v2.ts +201 -113
  389. package/src/meeting-info/request.ts +9 -3
  390. package/src/meeting-info/util.ts +54 -46
  391. package/src/meeting-info/utilv2.ts +70 -55
  392. package/src/meetings/collection.ts +21 -1
  393. package/src/meetings/index.ts +749 -437
  394. package/src/meetings/request.ts +29 -25
  395. package/src/meetings/util.ts +122 -33
  396. package/src/member/index.ts +95 -49
  397. package/src/member/types.ts +24 -0
  398. package/src/member/util.ts +106 -13
  399. package/src/members/collection.ts +8 -1
  400. package/src/members/index.ts +281 -129
  401. package/src/members/request.ts +87 -14
  402. package/src/members/types.ts +28 -0
  403. package/src/members/util.ts +140 -49
  404. package/src/metrics/config.ts +302 -90
  405. package/src/metrics/constants.ts +1 -6
  406. package/src/metrics/index.ts +124 -95
  407. package/src/multistream/mediaRequestManager.ts +203 -45
  408. package/src/multistream/receiveSlot.ts +69 -26
  409. package/src/multistream/receiveSlotManager.ts +62 -38
  410. package/src/multistream/remoteMedia.ts +30 -4
  411. package/src/multistream/remoteMediaGroup.ts +4 -3
  412. package/src/multistream/remoteMediaManager.ts +230 -66
  413. package/src/networkQualityMonitor/index.ts +24 -27
  414. package/src/personal-meeting-room/index.ts +12 -16
  415. package/src/personal-meeting-room/request.ts +10 -3
  416. package/src/personal-meeting-room/util.ts +3 -3
  417. package/src/reachability/index.ts +131 -79
  418. package/src/reachability/request.ts +43 -34
  419. package/src/reactions/constants.ts +4 -0
  420. package/src/reactions/reactions.ts +8 -8
  421. package/src/reactions/reactions.type.ts +31 -5
  422. package/src/reconnection-manager/index.ts +193 -111
  423. package/src/recording-controller/enums.ts +8 -0
  424. package/src/recording-controller/index.ts +315 -0
  425. package/src/recording-controller/util.ts +58 -0
  426. package/src/roap/index.ts +63 -51
  427. package/src/roap/request.ts +86 -53
  428. package/src/roap/turnDiscovery.ts +105 -46
  429. package/src/statsAnalyzer/global.ts +8 -104
  430. package/src/statsAnalyzer/index.ts +624 -376
  431. package/src/statsAnalyzer/mqaUtil.ts +203 -90
  432. package/src/transcription/index.ts +34 -32
  433. package/test/integration/spec/converged-space-meetings.js +177 -0
  434. package/test/integration/spec/journey.js +670 -466
  435. package/test/integration/spec/space-meeting.js +320 -204
  436. package/test/integration/spec/transcription.js +7 -8
  437. package/test/unit/spec/annotation/index.ts +435 -0
  438. package/test/unit/spec/breakouts/breakout.ts +184 -0
  439. package/test/unit/spec/breakouts/collection.ts +15 -0
  440. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  441. package/test/unit/spec/breakouts/events.ts +77 -0
  442. package/test/unit/spec/breakouts/index.ts +1542 -0
  443. package/test/unit/spec/breakouts/request.ts +104 -0
  444. package/test/unit/spec/breakouts/utils.js +72 -0
  445. package/test/unit/spec/common/browser-detection.js +9 -28
  446. package/test/unit/spec/controls-options-manager/index.js +287 -0
  447. package/test/unit/spec/controls-options-manager/util.js +504 -0
  448. package/test/unit/spec/fixture/locus.js +93 -90
  449. package/test/unit/spec/locus-info/controlsUtils.js +289 -32
  450. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  451. package/test/unit/spec/locus-info/index.js +585 -5
  452. package/test/unit/spec/locus-info/infoUtils.js +26 -33
  453. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  454. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  455. package/test/unit/spec/locus-info/parser.js +3 -9
  456. package/test/unit/spec/locus-info/selfConstant.js +110 -103
  457. package/test/unit/spec/locus-info/selfUtils.js +236 -12
  458. package/test/unit/spec/media/index.ts +104 -8
  459. package/test/unit/spec/media/properties.ts +9 -9
  460. package/test/unit/spec/meeting/in-meeting-actions.ts +66 -3
  461. package/test/unit/spec/meeting/index.js +2934 -946
  462. package/test/unit/spec/meeting/muteState.js +368 -70
  463. package/test/unit/spec/meeting/request.js +194 -44
  464. package/test/unit/spec/meeting/utils.js +146 -165
  465. package/test/unit/spec/meeting-info/meetinginfov2.js +333 -74
  466. package/test/unit/spec/meeting-info/request.js +7 -9
  467. package/test/unit/spec/meeting-info/util.js +11 -12
  468. package/test/unit/spec/meeting-info/utilv2.js +131 -74
  469. package/test/unit/spec/meetings/collection.js +15 -1
  470. package/test/unit/spec/meetings/index.js +1052 -329
  471. package/test/unit/spec/meetings/utils.js +163 -14
  472. package/test/unit/spec/member/index.js +24 -1
  473. package/test/unit/spec/member/util.js +383 -32
  474. package/test/unit/spec/members/index.js +402 -54
  475. package/test/unit/spec/members/request.js +76 -20
  476. package/test/unit/spec/members/utils.js +191 -4
  477. package/test/unit/spec/metrics/index.js +104 -20
  478. package/test/unit/spec/multistream/mediaRequestManager.ts +650 -105
  479. package/test/unit/spec/multistream/receiveSlot.ts +76 -17
  480. package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
  481. package/test/unit/spec/multistream/remoteMedia.ts +32 -2
  482. package/test/unit/spec/multistream/remoteMediaGroup.ts +5 -5
  483. package/test/unit/spec/multistream/remoteMediaManager.ts +549 -65
  484. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  485. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  486. package/test/unit/spec/reachability/index.ts +176 -27
  487. package/test/unit/spec/reachability/request.js +66 -0
  488. package/test/unit/spec/reconnection-manager/index.js +62 -31
  489. package/test/unit/spec/recording-controller/index.js +231 -0
  490. package/test/unit/spec/recording-controller/util.js +102 -0
  491. package/test/unit/spec/roap/index.ts +21 -16
  492. package/test/unit/spec/roap/request.ts +217 -0
  493. package/test/unit/spec/roap/turnDiscovery.ts +93 -49
  494. package/test/unit/spec/stats-analyzer/index.js +116 -60
  495. package/test/utils/cmr.js +44 -42
  496. package/test/utils/constants.js +9 -0
  497. package/test/utils/integrationTestUtils.js +64 -0
  498. package/test/utils/testUtils.js +63 -99
  499. package/test/utils/webex-config.js +22 -18
  500. package/test/utils/webex-test-users.js +57 -50
  501. package/tsconfig.json +6 -0
  502. package/dist/media/internal-media-core-wrapper.js +0 -22
  503. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  504. package/dist/meeting/effectsState.js +0 -334
  505. package/dist/meeting/effectsState.js.map +0 -1
  506. package/dist/multistream/multistreamMedia.js +0 -116
  507. package/dist/multistream/multistreamMedia.js.map +0 -1
  508. package/src/index.js +0 -15
  509. package/src/media/internal-media-core-wrapper.ts +0 -9
  510. package/src/meeting/effectsState.ts +0 -211
  511. package/src/multistream/multistreamMedia.ts +0 -92
  512. package/test/unit/spec/meeting/effectsState.js +0 -291
@@ -1,111 +1,85 @@
1
1
  "use strict";
2
2
 
3
3
  var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
4
-
4
+ var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
5
+ var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
7
+ var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
8
+ var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
5
9
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
6
-
7
10
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
8
-
9
11
  _Object$defineProperty(exports, "__esModule", {
10
12
  value: true
11
13
  });
12
-
13
14
  exports.default = void 0;
14
-
15
15
  var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
16
-
17
16
  var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
18
-
19
17
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/toConsumableArray"));
20
-
21
18
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
22
-
23
19
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
24
-
25
20
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
26
-
27
21
  var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
28
-
29
22
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
30
-
31
23
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
32
-
33
24
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
34
-
35
25
  var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty"));
36
-
37
26
  var _webexCore = require("@webex/webex-core");
38
-
39
27
  var _constants = require("../constants");
40
-
41
28
  var _triggerProxy = _interopRequireDefault(require("../common/events/trigger-proxy"));
42
-
43
29
  var _member = _interopRequireDefault(require("../member"));
44
-
45
30
  var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
46
-
47
31
  var _parameter = _interopRequireDefault(require("../common/errors/parameter"));
48
-
49
32
  var _collection = _interopRequireDefault(require("./collection"));
50
-
51
33
  var _request = _interopRequireDefault(require("./request"));
52
-
53
34
  var _util = _interopRequireDefault(require("./util"));
54
-
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; }
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; }
55
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); }; }
56
-
57
38
  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; } }
58
-
59
39
  /**
60
- * Members Update Event
61
- * Emitted when something in the roster list needs to be updated
62
- * @event members:update
63
- * @instance
64
- * @property {Object} delta the changes to the members list
65
- * @property {Array} delta.updated array only the updates, includes removals, as they will have updated status and member properties
66
- * @property {Array} delta.added array added members to the meeting
67
- * @property {Array} full array the full members collection
68
- * @memberof Members
69
- */
70
-
40
+ * Members Update Event
41
+ * Emitted when something in the roster list needs to be updated
42
+ * @event members:update
43
+ * @instance
44
+ * @property {Object} delta the changes to the members list
45
+ * @property {Array} delta.updated array only the updates, includes removals, as they will have updated status and member properties
46
+ * @property {Array} delta.added array added members to the meeting
47
+ * @property {Array} full array the full members collection
48
+ * @memberof Members
49
+ */
71
50
  /**
72
- * Members Content Update Event
73
- * Emitted when who is sharing changes
74
- * @event members:content:update
75
- * @instance
76
- * @property {String} activeContentSharingId
77
- * @property {String} endedContentSharingId
78
- * @memberof Members
79
- */
80
-
51
+ * Members Content Update Event
52
+ * Emitted when who is sharing changes
53
+ * @event members:content:update
54
+ * @instance
55
+ * @property {String} activeContentSharingId
56
+ * @property {String} endedContentSharingId
57
+ * @memberof Members
58
+ */
81
59
  /**
82
- * Members Host Update Event
83
- * Emitted when who is the host changes
84
- * @event members:host:update
85
- * @instance
86
- * @property {String} activeHostId
87
- * @property {String} endedHostId
88
- * @memberof Members
89
- */
90
-
60
+ * Members Host Update Event
61
+ * Emitted when who is the host changes
62
+ * @event members:host:update
63
+ * @instance
64
+ * @property {String} activeHostId
65
+ * @property {String} endedHostId
66
+ * @memberof Members
67
+ */
91
68
  /**
92
- * Members Self Update Event
93
- * Emitted when who is the self changes
94
- * @event members:self:update
95
- * @instance
96
- * @property {String} activeSelfId
97
- * @property {String} endedSelfId
98
- * @memberof Members
99
- */
100
-
69
+ * Members Self Update Event
70
+ * Emitted when who is the self changes
71
+ * @event members:self:update
72
+ * @instance
73
+ * @property {String} activeSelfId
74
+ * @property {String} endedSelfId
75
+ * @memberof Members
76
+ */
101
77
  /**
102
78
  * @class Members
103
79
  */
104
80
  var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
105
81
  (0, _inherits2.default)(Members, _StatelessWebexPlugin);
106
-
107
82
  var _super = _createSuper(Members);
108
-
109
83
  /**
110
84
  *
111
85
  * @param {Object} attrs
@@ -114,7 +88,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
114
88
  */
115
89
  function Members(attrs, options) {
116
90
  var _this;
117
-
118
91
  (0, _classCallCheck2.default)(this, Members);
119
92
  _this = _super.call(this, {}, options);
120
93
  /**
@@ -123,9 +96,8 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
123
96
  * @type {MembersRequest}
124
97
  * @private
125
98
  * @memberof Members
126
- */
99
+ */
127
100
  // @ts-ignore
128
-
129
101
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hostId", void 0);
130
102
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusUrl", void 0);
131
103
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaShareContentId", void 0);
@@ -145,8 +117,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
145
117
  * @type {MembersCollection}
146
118
  * @private
147
119
  * @memberof Members
148
- */
149
-
120
+ */
150
121
  _this.membersCollection = new _collection.default();
151
122
  /**
152
123
  * The current locus url for the active meeting
@@ -154,8 +125,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
154
125
  * @type {String}
155
126
  * @private
156
127
  * @memberof Members
157
- */
158
-
128
+ */
159
129
  _this.locusUrl = attrs.locusUrl || null;
160
130
  /**
161
131
  * The current hostId for the meeting
@@ -163,8 +133,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
163
133
  * @type {String}
164
134
  * @private
165
135
  * @memberof Members
166
- */
167
-
136
+ */
168
137
  _this.hostId = null;
169
138
  /**
170
139
  * The current type for the meeting, could be MEETING or CALL
@@ -172,8 +141,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
172
141
  * @type {String}
173
142
  * @private
174
143
  * @memberof Members
175
- */
176
-
144
+ */
177
145
  _this.type = null;
178
146
  /**
179
147
  * Locus has a self object, sent individually to the client
@@ -187,8 +155,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
187
155
  * @type {String}
188
156
  * @private
189
157
  * @memberof Members
190
- */
191
-
158
+ */
192
159
  _this.selfId = null;
193
160
  /**
194
161
  * The current mediaShareContentId for the meeting
@@ -196,8 +163,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
196
163
  * @type {String}
197
164
  * @private
198
165
  * @memberof Members
199
- */
200
-
166
+ */
201
167
  _this.mediaShareContentId = null;
202
168
  /**
203
169
  * The current mediaShareWhiteboardId for the meeting
@@ -205,8 +171,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
205
171
  * @type {String}
206
172
  * @private
207
173
  * @memberof Members
208
- */
209
-
174
+ */
210
175
  _this.mediaShareWhiteboardId = null;
211
176
  /**
212
177
  * The current recordingId for the meeting, if it exists
@@ -214,23 +179,23 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
214
179
  * @type {String}
215
180
  * @private
216
181
  * @memberof Members
217
- */
218
-
182
+ */
219
183
  _this.recordingId = null;
184
+
220
185
  /**
221
186
  * reference to a ReceiveSlotManager instance (for multistream)
222
187
  * @private
223
188
  */
224
-
225
189
  _this.receiveSlotManager = attrs.receiveSlotManager;
190
+
226
191
  /**
227
192
  * reference to a MediaRequestManager instance that manages main video requests (for multistream)
228
193
  * @private
229
194
  */
230
-
231
195
  _this.mediaRequestManagers = attrs.mediaRequestManagers;
232
196
  return _this;
233
197
  }
198
+
234
199
  /**
235
200
  * Internal update the self Id value
236
201
  * @param {Object} payload
@@ -240,42 +205,32 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
240
205
  * @private
241
206
  * @memberof Members
242
207
  */
243
-
244
-
245
208
  (0, _createClass2.default)(Members, [{
246
209
  key: "locusSelfUpdate",
247
210
  value: function locusSelfUpdate(payload) {
248
211
  var newSelfId = null;
249
212
  var oldSelfId = null;
250
-
251
213
  if (payload) {
252
214
  if (payload.newSelf) {
253
215
  newSelfId = payload.newSelf.id;
254
216
  }
255
-
256
217
  if (payload.oldSelf) {
257
218
  oldSelfId = payload.oldSelf.id;
258
219
  }
259
220
  }
260
-
261
221
  if (newSelfId) {
262
222
  var theSelf = this.membersCollection.get(newSelfId);
263
-
264
223
  if (theSelf) {
265
224
  theSelf.setIsSelf(true);
266
225
  }
267
226
  }
268
-
269
227
  if (oldSelfId) {
270
228
  var notSelf = this.membersCollection.get(oldSelfId);
271
-
272
229
  if (notSelf) {
273
230
  notSelf.setIsSelf(false);
274
231
  }
275
232
  }
276
-
277
233
  this.selfId = newSelfId;
278
-
279
234
  _triggerProxy.default.trigger(this, {
280
235
  file: 'members',
281
236
  function: 'locusSelfUpdate'
@@ -284,6 +239,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
284
239
  endedSelfId: oldSelfId
285
240
  });
286
241
  }
242
+
287
243
  /**
288
244
  * Internal update the hostId value
289
245
  * @param {Object} payload
@@ -293,41 +249,32 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
293
249
  * @private
294
250
  * @memberof Members
295
251
  */
296
-
297
252
  }, {
298
253
  key: "locusHostUpdate",
299
254
  value: function locusHostUpdate(payload) {
300
255
  var newHostId = null;
301
256
  var oldHostId = null;
302
-
303
257
  if (payload) {
304
258
  if (payload.newHost) {
305
259
  newHostId = payload.newHost.id;
306
260
  }
307
-
308
261
  if (payload.oldHost) {
309
262
  oldHostId = payload.oldHost.id;
310
263
  }
311
264
  }
312
-
313
265
  if (newHostId) {
314
266
  var theHost = this.membersCollection.get(newHostId);
315
-
316
267
  if (theHost) {
317
268
  theHost.setIsHost(true);
318
269
  }
319
270
  }
320
-
321
271
  if (oldHostId) {
322
272
  var notHost = this.membersCollection.get(oldHostId);
323
-
324
273
  if (notHost) {
325
274
  notHost.setIsHost(false);
326
275
  }
327
276
  }
328
-
329
277
  this.hostId = newHostId;
330
-
331
278
  _triggerProxy.default.trigger(this, {
332
279
  file: 'members',
333
280
  function: 'locusHostUpdate'
@@ -336,6 +283,23 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
336
283
  endedHostId: oldHostId
337
284
  });
338
285
  }
286
+
287
+ /**
288
+ * clear member collection
289
+ * @returns {void}
290
+ * @private
291
+ * @memberof Members
292
+ */
293
+ }, {
294
+ key: "clearMembers",
295
+ value: function clearMembers() {
296
+ this.membersCollection.reset();
297
+ _triggerProxy.default.trigger(this, {
298
+ file: 'members',
299
+ function: 'clearMembers'
300
+ }, _constants.EVENT_TRIGGERS.MEMBERS_CLEAR, {});
301
+ }
302
+
339
303
  /**
340
304
  * when new participant updates come in, both delta and full participants, update them in members collection
341
305
  * delta object in the event will have {updated, added} and full will be the full membersCollection
@@ -345,23 +309,29 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
345
309
  * @private
346
310
  * @memberof Members
347
311
  */
348
-
349
312
  }, {
350
313
  key: "locusParticipantsUpdate",
351
314
  value: function locusParticipantsUpdate(payload) {
352
315
  if (payload) {
316
+ var _this$receiveSlotMana;
317
+ if (payload.isReplace) {
318
+ this.clearMembers();
319
+ }
353
320
  var delta = this.handleLocusInfoUpdatedParticipants(payload);
354
321
  var full = this.handleMembersUpdate(delta); // SDK should propagate the full list for both delta and non delta updates
355
322
 
323
+ (_this$receiveSlotMana = this.receiveSlotManager) === null || _this$receiveSlotMana === void 0 ? void 0 : _this$receiveSlotMana.updateMemberIds();
356
324
  _triggerProxy.default.trigger(this, {
357
325
  file: 'members',
358
326
  function: 'locusParticipantsUpdate'
359
327
  }, _constants.EVENT_TRIGGERS.MEMBERS_UPDATE, {
360
328
  delta: delta,
361
- full: full
329
+ full: full,
330
+ isReplace: !!payload.isReplace
362
331
  });
363
332
  }
364
333
  }
334
+
365
335
  /**
366
336
  * Internal update the content id
367
337
  * @param {Object} payload
@@ -371,26 +341,22 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
371
341
  * @private
372
342
  * @memberof Members
373
343
  */
374
-
375
344
  }, {
376
345
  key: "locusMediaSharesUpdate",
377
346
  value: function locusMediaSharesUpdate(payload) {
378
347
  var _payload$current, _payload$previous, _payload$current2, _payload$previous2;
379
-
380
348
  var currentContent = (_payload$current = payload.current) === null || _payload$current === void 0 ? void 0 : _payload$current.content;
381
349
  var previousContent = (_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.content;
382
350
  var currentWhiteboard = (_payload$current2 = payload.current) === null || _payload$current2 === void 0 ? void 0 : _payload$current2.whiteboard;
383
351
  var previousWhiteboard = (_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.whiteboard;
384
352
  var whoSharing = null;
385
353
  var whoStopped = null;
386
-
387
354
  if (currentContent !== null && currentContent !== void 0 && currentContent.beneficiaryId) {
388
355
  if (currentContent.disposition === _constants.FLOOR_ACTION.GRANTED) {
389
356
  whoSharing = currentContent.beneficiaryId;
390
357
  this.mediaShareWhiteboardId = null;
391
358
  this.mediaShareContentId = whoSharing;
392
359
  }
393
-
394
360
  if ((previousContent === null || previousContent === void 0 ? void 0 : previousContent.disposition) === _constants.FLOOR_ACTION.GRANTED) {
395
361
  if (currentContent.disposition === _constants.FLOOR_ACTION.RELEASED) {
396
362
  whoStopped = currentContent.beneficiaryId;
@@ -400,14 +366,12 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
400
366
  }
401
367
  }
402
368
  }
403
-
404
369
  if (currentWhiteboard !== null && currentWhiteboard !== void 0 && currentWhiteboard.beneficiaryId) {
405
370
  if (currentWhiteboard.disposition === _constants.FLOOR_ACTION.GRANTED) {
406
371
  whoSharing = currentWhiteboard.beneficiaryId;
407
372
  this.mediaShareContentId = null;
408
373
  this.mediaShareWhiteboardId = whoSharing;
409
374
  }
410
-
411
375
  if ((previousWhiteboard === null || previousWhiteboard === void 0 ? void 0 : previousWhiteboard.disposition) === _constants.FLOOR_ACTION.GRANTED) {
412
376
  if (currentWhiteboard.disposition === _constants.FLOOR_ACTION.RELEASED) {
413
377
  whoStopped = currentWhiteboard.beneficiaryId;
@@ -417,23 +381,18 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
417
381
  }
418
382
  }
419
383
  }
420
-
421
384
  if (whoSharing) {
422
385
  var shareMember = this.membersCollection.get(whoSharing);
423
-
424
386
  if (shareMember) {
425
387
  shareMember.setIsContentSharing(true);
426
388
  }
427
389
  }
428
-
429
390
  if (whoStopped) {
430
391
  var stopMember = this.membersCollection.get(whoStopped);
431
-
432
392
  if (stopMember) {
433
393
  stopMember.setIsContentSharing(false);
434
394
  }
435
395
  }
436
-
437
396
  _triggerProxy.default.trigger(this, {
438
397
  file: 'members',
439
398
  function: 'locusMediaSharesUpdate'
@@ -442,6 +401,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
442
401
  endedSharingId: whoStopped
443
402
  });
444
403
  }
404
+
445
405
  /**
446
406
  * Internal update the locus url value
447
407
  * @param {Object} payload
@@ -450,7 +410,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
450
410
  * @private
451
411
  * @memberof Members
452
412
  */
453
-
454
413
  }, {
455
414
  key: "locusUrlUpdate",
456
415
  value: function locusUrlUpdate(payload) {
@@ -458,6 +417,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
458
417
  this.setLocusUrl(null, payload);
459
418
  }
460
419
  }
420
+
461
421
  /**
462
422
  * Internal update the type of meeting
463
423
  * @param {Object} payload
@@ -466,7 +426,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
466
426
  * @private
467
427
  * @memberof Members
468
428
  */
469
-
470
429
  }, {
471
430
  key: "locusFullStateTypeUpdate",
472
431
  value: function locusFullStateTypeUpdate(payload) {
@@ -480,6 +439,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
480
439
  this.setType(payload);
481
440
  }
482
441
  }
442
+
483
443
  /**
484
444
  * sets values in the members collection for updated and added properties from delta
485
445
  * @param {Object} membersUpdate {updated: [], added: []}
@@ -487,7 +447,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
487
447
  * @private
488
448
  * @memberof Members
489
449
  */
490
-
491
450
  }, {
492
451
  key: "handleMembersUpdate",
493
452
  value: function handleMembersUpdate(membersUpdate) {
@@ -495,14 +454,13 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
495
454
  if (membersUpdate.updated) {
496
455
  this.constructMembers(membersUpdate.updated);
497
456
  }
498
-
499
457
  if (membersUpdate.added) {
500
458
  this.constructMembers(membersUpdate.added);
501
459
  }
502
460
  }
503
-
504
461
  return this.membersCollection.getAll();
505
462
  }
463
+
506
464
  /**
507
465
  * set members to the member collection from each updated/added lists as passed in
508
466
  * @param {Array} list
@@ -510,16 +468,15 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
510
468
  * @private
511
469
  * @memberof Members
512
470
  */
513
-
514
471
  }, {
515
472
  key: "constructMembers",
516
473
  value: function constructMembers(list) {
517
474
  var _this2 = this;
518
-
519
475
  list.forEach(function (member) {
520
476
  _this2.membersCollection.set(member.id, member);
521
477
  });
522
478
  }
479
+
523
480
  /**
524
481
  * Internal update the participants value
525
482
  * @param {Object} payload
@@ -527,21 +484,19 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
527
484
  * @private
528
485
  * @memberof Members
529
486
  */
530
-
531
487
  }, {
532
488
  key: "handleLocusInfoUpdatedParticipants",
533
489
  value: function handleLocusInfoUpdatedParticipants(payload) {
534
490
  this.hostId = payload.hostId || this.hostId;
535
491
  this.selfId = payload.selfId || this.selfId;
536
492
  this.recordingId = payload.recordingId;
537
-
538
493
  if (!payload.participants) {
539
494
  _loggerProxy.default.logger.warn('Members:index#handleLocusInfoUpdatedParticipants --> participants payload is missing.');
540
495
  }
541
-
542
496
  var memberUpdate = this.update(payload.participants);
543
497
  return memberUpdate;
544
498
  }
499
+
545
500
  /**
546
501
  * Update the locus Url
547
502
  * @param {Object} locus
@@ -551,12 +506,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
551
506
  * @public
552
507
  * @memberof Members
553
508
  */
554
-
555
509
  }, {
556
510
  key: "setLocusUrl",
557
511
  value: function setLocusUrl(locus) {
558
512
  var locusUrl = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
559
-
560
513
  if (locusUrl) {
561
514
  this.locusUrl = locusUrl;
562
515
  } else if (locus && (locus.locusUrl || locus.url)) {
@@ -565,6 +518,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
565
518
  throw new _parameter.default('Setting locusUrl for the Members module should be done with a locus object or locusUrl');
566
519
  }
567
520
  }
521
+
568
522
  /**
569
523
  * Update the host id
570
524
  * @param {Object} locus
@@ -574,12 +528,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
574
528
  * @public
575
529
  * @memberof Members
576
530
  */
577
-
578
531
  }, {
579
532
  key: "setHostId",
580
533
  value: function setHostId(locus) {
581
534
  var hostId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
582
-
583
535
  if (hostId) {
584
536
  this.hostId = hostId;
585
537
  } else if (locus) {
@@ -588,6 +540,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
588
540
  throw new _parameter.default('Setting hostid for the Members module should be done with a locus object or hostId');
589
541
  }
590
542
  }
543
+
591
544
  /**
592
545
  * Update the type
593
546
  * @param {Object} fullState
@@ -597,12 +550,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
597
550
  * @public
598
551
  * @memberof Members
599
552
  */
600
-
601
553
  }, {
602
554
  key: "setType",
603
555
  value: function setType(fullState) {
604
556
  var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
605
-
606
557
  if (type) {
607
558
  this.type = type;
608
559
  } else if (fullState) {
@@ -611,6 +562,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
611
562
  throw new _parameter.default('Setting type for the Members module should be done with a fullstate object or type string');
612
563
  }
613
564
  }
565
+
614
566
  /**
615
567
  * Update the self Id
616
568
  * @param {Object} locus
@@ -619,12 +571,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
619
571
  * @returns {undefined}
620
572
  * @memberof Members
621
573
  */
622
-
623
574
  }, {
624
575
  key: "setSelfId",
625
576
  value: function setSelfId(locus) {
626
577
  var selfId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
627
-
628
578
  if (selfId) {
629
579
  this.selfId = selfId;
630
580
  } else if (locus) {
@@ -633,6 +583,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
633
583
  throw new _parameter.default('Setting selfid for the Members module should be done with a locus object or selfId');
634
584
  }
635
585
  }
586
+
636
587
  /**
637
588
  * Update the media share content id
638
589
  * @param {Object} locus
@@ -641,7 +592,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
641
592
  * @returns {undefined}
642
593
  * @memberof Members
643
594
  */
644
-
645
595
  }, {
646
596
  key: "setMediaShareContentId",
647
597
  value: function setMediaShareContentId(locus, contentId) {
@@ -656,6 +606,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
656
606
  throw new _parameter.default('Setting hostid for the Members module should be done with a locus object or hostId');
657
607
  }
658
608
  }
609
+
659
610
  /**
660
611
  * Update the media share whiteboard id
661
612
  * @param {Object} locus
@@ -664,7 +615,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
664
615
  * @returns {undefined}
665
616
  * @memberof Members
666
617
  */
667
-
668
618
  }, {
669
619
  key: "setMediaShareWhiteboardId",
670
620
  value: function setMediaShareWhiteboardId(locus, whiteboardId) {
@@ -679,6 +629,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
679
629
  throw new _parameter.default('Setting hostid for the Members module should be done with a locus object or hostId');
680
630
  }
681
631
  }
632
+
682
633
  /**
683
634
  * Find all the updates, and added members
684
635
  * Removed/left members will end up in updates
@@ -688,25 +639,20 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
688
639
  * @private
689
640
  * @memberof Members
690
641
  */
691
-
692
642
  }, {
693
643
  key: "update",
694
644
  value: function update(participants) {
695
645
  var _this3 = this;
696
-
697
646
  var membersUpdate = {
698
647
  added: [],
699
648
  updated: []
700
649
  };
701
-
702
650
  if (participants) {
703
651
  participants.forEach(function (participant) {
704
652
  if (participant.hideInRoster) {
705
653
  return;
706
654
  }
707
-
708
655
  var existing = _this3.membersCollection.get(participant.id);
709
-
710
656
  if (existing) {
711
657
  // TODO: compare existing member to new participant coming in properties and determine if updated (this helps for non delta events)
712
658
  // on client re renders, but we will have to determine what values to compare to determine difference, premature optimization
@@ -730,9 +676,9 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
730
676
  }
731
677
  });
732
678
  }
733
-
734
679
  return membersUpdate;
735
680
  }
681
+
736
682
  /**
737
683
  * Adds a guest Member to the associated meeting
738
684
  * @param {String} invitee
@@ -740,63 +686,58 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
740
686
  * @returns {Promise}
741
687
  * @memberof Members
742
688
  */
743
-
744
689
  }, {
745
690
  key: "addMember",
746
691
  value: function addMember(invitee, alertIfActive) {
747
692
  if (!this.locusUrl) {
748
693
  return _promise.default.reject(new _parameter.default('The associated locus url for this meeting object must be defined.'));
749
694
  }
750
-
751
695
  if (_util.default.isInvalidInvitee(invitee)) {
752
696
  return _promise.default.reject(new _parameter.default('The invitee must be defined with either a valid email, emailAddress or phoneNumber property.'));
753
697
  }
754
-
755
698
  var options = _util.default.generateAddMemberOptions(invitee, this.locusUrl, alertIfActive);
756
-
757
699
  return this.membersRequest.addMembers(options);
758
700
  }
701
+
759
702
  /**
760
703
  * Cancels an outgoing PSTN call to the associated meeting
761
704
  * @param {String} invitee
762
705
  * @returns {Promise}
763
706
  * @memberof Members
764
707
  */
765
-
766
708
  }, {
767
709
  key: "cancelPhoneInvite",
768
710
  value: function cancelPhoneInvite(invitee) {
769
711
  if (!this.locusUrl) {
770
712
  return _promise.default.reject(new _parameter.default('The associated locus url for this meeting object must be defined.'));
771
713
  }
772
-
773
714
  if (_util.default.isInvalidInvitee(invitee)) {
774
715
  return _promise.default.reject(new _parameter.default('The invitee must be defined with a valid phoneNumber property.'));
775
716
  }
776
-
777
717
  var options = _util.default.cancelPhoneInviteOptions(invitee, this.locusUrl);
778
-
779
718
  return this.membersRequest.cancelPhoneInvite(options);
780
719
  }
720
+
781
721
  /**
782
722
  * Admits waiting members (invited guests to meeting)
783
723
  * @param {Array} memberIds
724
+ * @param {Object} sessionLocusUrls: {authorizingLocusUrl, mainLocusUrl}
784
725
  * @returns {Promise}
785
726
  * @public
786
727
  * @memberof Members
787
728
  */
788
-
789
729
  }, {
790
730
  key: "admitMembers",
791
- value: function admitMembers(memberIds) {
731
+ value: function admitMembers(memberIds, sessionLocusUrls) {
792
732
  if ((0, _isEmpty2.default)(memberIds)) {
793
733
  return _promise.default.reject(new _parameter.default('No member ids provided to admit.'));
794
734
  }
795
-
796
- var options = _util.default.generateAdmitMemberOptions(memberIds, this.locusUrl);
797
-
735
+ var options = _objectSpread({
736
+ sessionLocusUrls: sessionLocusUrls
737
+ }, _util.default.generateAdmitMemberOptions(memberIds, this.locusUrl));
798
738
  return this.membersRequest.admitMember(options);
799
739
  }
740
+
800
741
  /**
801
742
  * Removes a member from the meeting
802
743
  * @param {String} memberId
@@ -804,48 +745,64 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
804
745
  * @public
805
746
  * @memberof Members
806
747
  */
807
-
808
748
  }, {
809
749
  key: "removeMember",
810
750
  value: function removeMember(memberId) {
811
751
  if (!this.locusUrl) {
812
752
  return _promise.default.reject(new _parameter.default('The associated locus url for this meeting object must be defined.'));
813
753
  }
814
-
815
754
  if (!memberId) {
816
755
  return _promise.default.reject(new _parameter.default('The member id must be defined to remove the member.'));
817
756
  }
818
-
819
757
  var options = _util.default.generateRemoveMemberOptions(memberId, this.locusUrl);
820
-
821
758
  return this.membersRequest.removeMember(options);
822
759
  }
760
+
823
761
  /**
824
762
  * Audio mutes another member in a meeting
825
763
  * @param {String} memberId
826
764
  * @param {boolean} [mute] default true
765
+ * @param {boolean} [isAudio] default true
827
766
  * @returns {Promise}
828
767
  * @public
829
768
  * @memberof Members
830
769
  */
831
-
832
770
  }, {
833
771
  key: "muteMember",
834
772
  value: function muteMember(memberId) {
835
773
  var mute = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
836
-
774
+ var isAudio = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
837
775
  if (!this.locusUrl) {
838
776
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
839
777
  }
840
-
841
778
  if (!memberId) {
842
779
  return _promise.default.reject(new _parameter.default('The member id must be defined to mute the member.'));
843
780
  }
844
-
845
- var options = _util.default.generateMuteMemberOptions(memberId, mute, this.locusUrl);
846
-
781
+ var options = _util.default.generateMuteMemberOptions(memberId, mute, this.locusUrl, isAudio);
847
782
  return this.membersRequest.muteMember(options);
848
783
  }
784
+
785
+ /**
786
+ * Assign role(s) to a member in the meeting
787
+ * @param {String} memberId
788
+ * @param {[ServerRoleShape]} roles - to assign an array of roles
789
+ * @returns {Promise}
790
+ * @public
791
+ * @memberof Members
792
+ */
793
+ }, {
794
+ key: "assignRoles",
795
+ value: function assignRoles(memberId, roles) {
796
+ if (!this.locusUrl) {
797
+ return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
798
+ }
799
+ if (!memberId) {
800
+ return _promise.default.reject(new _parameter.default('The member id must be defined to assign the roles to a member.'));
801
+ }
802
+ var options = _util.default.generateRoleAssignmentMemberOptions(memberId, roles, this.locusUrl);
803
+ return this.membersRequest.assignRolesMember(options);
804
+ }
805
+
849
806
  /**
850
807
  * Raise or lower the hand of a member in a meeting
851
808
  * @param {String} memberId
@@ -854,24 +811,20 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
854
811
  * @public
855
812
  * @memberof Members
856
813
  */
857
-
858
814
  }, {
859
815
  key: "raiseOrLowerHand",
860
816
  value: function raiseOrLowerHand(memberId) {
861
817
  var raise = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
862
-
863
818
  if (!this.locusUrl) {
864
819
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
865
820
  }
866
-
867
821
  if (!memberId) {
868
822
  return _promise.default.reject(new _parameter.default('The member id must be defined to raise/lower the hand of the member.'));
869
823
  }
870
-
871
824
  var options = _util.default.generateRaiseHandMemberOptions(memberId, raise, this.locusUrl);
872
-
873
825
  return this.membersRequest.raiseOrLowerHandMember(options);
874
826
  }
827
+
875
828
  /**
876
829
  * Lower all hands of members in a meeting
877
830
  * @param {String} requestingMemberId - id of the participant which requested the lower all hands
@@ -879,22 +832,19 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
879
832
  * @public
880
833
  * @memberof Members
881
834
  */
882
-
883
835
  }, {
884
836
  key: "lowerAllHands",
885
837
  value: function lowerAllHands(requestingMemberId) {
886
838
  if (!this.locusUrl) {
887
839
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
888
840
  }
889
-
890
841
  if (!requestingMemberId) {
891
842
  return _promise.default.reject(new _parameter.default('The requestingMemberId must be defined to lower all hands in a meeting.'));
892
843
  }
893
-
894
844
  var options = _util.default.generateLowerAllHandsMemberOptions(requestingMemberId, this.locusUrl);
895
-
896
845
  return this.membersRequest.lowerAllHandsMember(options);
897
846
  }
847
+
898
848
  /**
899
849
  * Transfers the host to another member
900
850
  * @param {String} memberId
@@ -903,24 +853,20 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
903
853
  * @public
904
854
  * @memberof Members
905
855
  */
906
-
907
856
  }, {
908
857
  key: "transferHostToMember",
909
858
  value: function transferHostToMember(memberId) {
910
859
  var moderator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
911
-
912
860
  if (!this.locusUrl) {
913
861
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
914
862
  }
915
-
916
863
  if (!memberId) {
917
864
  return _promise.default.reject(new _parameter.default('The member id must be defined to transfer host to the member.'));
918
865
  }
919
-
920
866
  var options = _util.default.generateTransferHostMemberOptions(memberId, moderator, this.locusUrl);
921
-
922
867
  return this.membersRequest.transferHostToMember(options);
923
868
  }
869
+
924
870
  /**
925
871
  * Sends DTMF tones for the PSTN member of a meeting
926
872
  * @param {String} tones a string of one or more DTMF tones to send
@@ -929,24 +875,19 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
929
875
  * @public
930
876
  * @memberof Members
931
877
  */
932
-
933
878
  }, {
934
879
  key: "sendDialPadKey",
935
880
  value: function sendDialPadKey() {
936
881
  var tones = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
937
882
  var memberId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
938
-
939
883
  // @ts-ignore
940
884
  if (!tones && tones !== 0) {
941
885
  return _promise.default.reject(new _parameter.default('DMTF tones must be passed in'));
942
886
  }
943
-
944
887
  var member = this.membersCollection.get(memberId);
945
-
946
888
  if (!member) {
947
889
  return _promise.default.reject(new _parameter.default('there is no member associated with that Id'));
948
890
  }
949
-
950
891
  var locusUrl = this.locusUrl;
951
892
  var deviceArray = member.participant.devices;
952
893
  var device = deviceArray.find(function (_ref) {
@@ -954,36 +895,34 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
954
895
  return deviceType === 'SIP';
955
896
  });
956
897
  var url = device === null || device === void 0 ? void 0 : device.url;
957
-
958
898
  if (locusUrl && url) {
959
899
  var options = _util.default.genderateSendDTMFOptions(url, tones, memberId, locusUrl);
960
-
961
900
  return this.membersRequest.sendDialPadKey(options);
962
901
  }
963
-
964
902
  return _promise.default.reject(new Error('Members:index#sendDialPadKey --> cannot send DTMF, meeting does not have a connection to the "locus" call control service.'));
965
903
  }
904
+
966
905
  /** Finds a member that has any device with a csi matching provided value
967
906
  *
968
907
  * @param {number} csi
969
908
  * @returns {Member}
970
909
  */
971
-
972
910
  }, {
973
911
  key: "findMemberByCsi",
974
912
  value: function findMemberByCsi(csi) {
975
913
  return (0, _values.default)(this.membersCollection.getAll()).find(function (member) {
976
914
  var _member$participant, _member$participant$d;
977
-
978
- return (_member$participant = member.participant) === null || _member$participant === void 0 ? void 0 : (_member$participant$d = _member$participant.devices) === null || _member$participant$d === void 0 ? void 0 : _member$participant$d.find(function (device) {
979
- var _device$csis;
980
-
981
- return (_device$csis = device.csis) === null || _device$csis === void 0 ? void 0 : _device$csis.find(function (memberCsi) {
982
- return memberCsi === csi;
983
- });
984
- });
915
+ return (// @ts-ignore
916
+ (_member$participant = member.participant) === null || _member$participant === void 0 ? void 0 : (_member$participant$d = _member$participant.devices) === null || _member$participant$d === void 0 ? void 0 : _member$participant$d.find(function (device) {
917
+ var _device$csis;
918
+ return (_device$csis = device.csis) === null || _device$csis === void 0 ? void 0 : _device$csis.find(function (memberCsi) {
919
+ return memberCsi === csi;
920
+ });
921
+ })
922
+ );
985
923
  });
986
924
  }
925
+
987
926
  /**
988
927
  * Returns an array of a member's CSIs matching the mediaType and mediaContent
989
928
  *
@@ -992,19 +931,16 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
992
931
  * @param {string} mediaContent 'main' or 'slides'
993
932
  * @returns {Member}
994
933
  */
995
-
996
934
  }, {
997
935
  key: "getCsisForMember",
998
936
  value: function getCsisForMember(memberId) {
999
937
  var _this$membersCollecti, _this$membersCollecti2, _this$membersCollecti3;
1000
-
1001
938
  var mediaType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'video';
1002
939
  var mediaContent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'main';
1003
940
  var csis = [];
1004
941
  (_this$membersCollecti = this.membersCollection.get(memberId)) === null || _this$membersCollecti === void 0 ? void 0 : (_this$membersCollecti2 = _this$membersCollecti.participant) === null || _this$membersCollecti2 === void 0 ? void 0 : (_this$membersCollecti3 = _this$membersCollecti2.devices) === null || _this$membersCollecti3 === void 0 ? void 0 : _this$membersCollecti3.forEach(function (device) {
1005
942
  if (device.mediaSessions) {
1006
943
  var _device$mediaSessions;
1007
-
1008
944
  var deviceCsis = (_device$mediaSessions = device.mediaSessions) === null || _device$mediaSessions === void 0 ? void 0 : _device$mediaSessions.filter(function (mediaSession) {
1009
945
  return mediaSession.mediaType === mediaType && mediaSession.mediaContent === mediaContent;
1010
946
  }).map(function (mediaSession) {
@@ -1015,9 +951,31 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
1015
951
  });
1016
952
  return csis;
1017
953
  }
954
+
955
+ /**
956
+ * Edit display name of participants in a meeting
957
+ * @param {string} memberId - id of the participant who is receiving request
958
+ * @param {string} requestingParticipantId - id of the participant who is sending request (optional)
959
+ * @param {string} [alias] - alias name
960
+ * @returns {Promise}
961
+ * @public
962
+ * @memberof Members
963
+ */
964
+ }, {
965
+ key: "editDisplayName",
966
+ value: function editDisplayName(memberId, requestingParticipantId, alias) {
967
+ if (!this.locusUrl) {
968
+ return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
969
+ }
970
+ if (!memberId) {
971
+ return _promise.default.reject(new _parameter.default('The member id must be defined to edit display name of the member.'));
972
+ }
973
+ var locusUrl = this.locusUrl;
974
+ var options = _util.default.generateEditDisplayNameMemberOptions(memberId, requestingParticipantId, alias, locusUrl);
975
+ return this.membersRequest.editDisplayNameMember(options);
976
+ }
1018
977
  }]);
1019
978
  return Members;
1020
979
  }(_webexCore.StatelessWebexPlugin);
1021
-
1022
980
  exports.default = Members;
1023
981
  //# sourceMappingURL=index.js.map