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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. package/.eslintrc.js +6 -6
  2. package/LICENSE +1 -1
  3. package/README.md +1204 -1204
  4. package/UPGRADING.md +287 -287
  5. package/babel.config.js +3 -3
  6. package/browsers.js +108 -108
  7. package/dist/common/browser-detection.d.ts +9 -9
  8. package/dist/common/browser-detection.js.map +1 -1
  9. package/dist/common/collection.d.ts +48 -48
  10. package/dist/common/collection.js +43 -43
  11. package/dist/common/collection.js.map +1 -1
  12. package/dist/common/config.d.ts +2 -2
  13. package/dist/common/config.js.map +1 -1
  14. package/dist/common/errors/captcha-error.d.ts +15 -15
  15. package/dist/common/errors/captcha-error.js +7 -7
  16. package/dist/common/errors/captcha-error.js.map +1 -1
  17. package/dist/common/errors/intent-to-join.d.ts +16 -16
  18. package/dist/common/errors/intent-to-join.js +7 -7
  19. package/dist/common/errors/intent-to-join.js.map +1 -1
  20. package/dist/common/errors/join-meeting.d.ts +17 -17
  21. package/dist/common/errors/join-meeting.js +8 -8
  22. package/dist/common/errors/join-meeting.js.map +1 -1
  23. package/dist/common/errors/media.d.ts +15 -15
  24. package/dist/common/errors/media.js +7 -7
  25. package/dist/common/errors/media.js.map +1 -1
  26. package/dist/common/errors/parameter.d.ts +15 -15
  27. package/dist/common/errors/parameter.js +7 -7
  28. package/dist/common/errors/parameter.js.map +1 -1
  29. package/dist/common/errors/password-error.d.ts +15 -15
  30. package/dist/common/errors/password-error.js +7 -7
  31. package/dist/common/errors/password-error.js.map +1 -1
  32. package/dist/common/errors/permission.d.ts +14 -14
  33. package/dist/common/errors/permission.js +6 -6
  34. package/dist/common/errors/permission.js.map +1 -1
  35. package/dist/common/errors/reconnection-in-progress.d.ts +9 -9
  36. package/dist/common/errors/reconnection-in-progress.js +6 -6
  37. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  38. package/dist/common/errors/reconnection.d.ts +15 -15
  39. package/dist/common/errors/reconnection.js +7 -7
  40. package/dist/common/errors/reconnection.js.map +1 -1
  41. package/dist/common/errors/stats.d.ts +15 -15
  42. package/dist/common/errors/stats.js +7 -7
  43. package/dist/common/errors/stats.js.map +1 -1
  44. package/dist/common/errors/webex-errors.d.ts +81 -81
  45. package/dist/common/errors/webex-errors.js +42 -42
  46. package/dist/common/errors/webex-errors.js.map +1 -1
  47. package/dist/common/errors/webex-meetings-error.d.ts +20 -20
  48. package/dist/common/errors/webex-meetings-error.js +12 -12
  49. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  50. package/dist/common/events/events-scope.d.ts +17 -17
  51. package/dist/common/events/events-scope.js +10 -10
  52. package/dist/common/events/events-scope.js.map +1 -1
  53. package/dist/common/events/events.d.ts +12 -12
  54. package/dist/common/events/events.js +4 -4
  55. package/dist/common/events/events.js.map +1 -1
  56. package/dist/common/events/trigger-proxy.d.ts +2 -2
  57. package/dist/common/events/trigger-proxy.js.map +1 -1
  58. package/dist/common/events/util.d.ts +2 -2
  59. package/dist/common/events/util.js.map +1 -1
  60. package/dist/common/logs/logger-config.d.ts +2 -2
  61. package/dist/common/logs/logger-config.js.map +1 -1
  62. package/dist/common/logs/logger-proxy.d.ts +2 -2
  63. package/dist/common/logs/logger-proxy.js.map +1 -1
  64. package/dist/common/logs/request.d.ts +34 -34
  65. package/dist/common/logs/request.js +18 -18
  66. package/dist/common/logs/request.js.map +1 -1
  67. package/dist/common/queue.d.ts +32 -32
  68. package/dist/common/queue.js +18 -18
  69. package/dist/common/queue.js.map +1 -1
  70. package/dist/config.d.ts +73 -73
  71. package/dist/config.js.map +1 -1
  72. package/dist/constants.d.ts +924 -924
  73. package/dist/constants.js +9 -9
  74. package/dist/constants.js.map +1 -1
  75. package/dist/controls-options-manager/constants.d.ts +4 -4
  76. package/dist/controls-options-manager/constants.js.map +1 -1
  77. package/dist/controls-options-manager/enums.d.ts +5 -5
  78. package/dist/controls-options-manager/enums.js.map +1 -1
  79. package/dist/controls-options-manager/index.d.ts +120 -120
  80. package/dist/controls-options-manager/index.js +81 -81
  81. package/dist/controls-options-manager/index.js.map +1 -1
  82. package/dist/controls-options-manager/util.d.ts +7 -7
  83. package/dist/controls-options-manager/util.js.map +1 -1
  84. package/dist/index.d.ts +4 -4
  85. package/dist/index.js.map +1 -1
  86. package/dist/locus-info/controlsUtils.d.ts +2 -2
  87. package/dist/locus-info/controlsUtils.js +21 -21
  88. package/dist/locus-info/controlsUtils.js.map +1 -1
  89. package/dist/locus-info/embeddedAppsUtils.d.ts +2 -2
  90. package/dist/locus-info/embeddedAppsUtils.js +14 -14
  91. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  92. package/dist/locus-info/fullState.d.ts +2 -2
  93. package/dist/locus-info/fullState.js.map +1 -1
  94. package/dist/locus-info/hostUtils.d.ts +2 -2
  95. package/dist/locus-info/hostUtils.js +19 -19
  96. package/dist/locus-info/hostUtils.js.map +1 -1
  97. package/dist/locus-info/index.d.ts +269 -269
  98. package/dist/locus-info/index.js +180 -180
  99. package/dist/locus-info/index.js.map +1 -1
  100. package/dist/locus-info/infoUtils.d.ts +2 -2
  101. package/dist/locus-info/infoUtils.js.map +1 -1
  102. package/dist/locus-info/mediaSharesUtils.d.ts +2 -2
  103. package/dist/locus-info/mediaSharesUtils.js +50 -50
  104. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  105. package/dist/locus-info/parser.d.ts +212 -212
  106. package/dist/locus-info/parser.js +136 -136
  107. package/dist/locus-info/parser.js.map +1 -1
  108. package/dist/locus-info/selfUtils.d.ts +2 -2
  109. package/dist/locus-info/selfUtils.js +52 -52
  110. package/dist/locus-info/selfUtils.js.map +1 -1
  111. package/dist/media/index.d.ts +32 -32
  112. package/dist/media/index.js +145 -145
  113. package/dist/media/index.js.map +1 -1
  114. package/dist/media/properties.d.ts +108 -108
  115. package/dist/media/properties.js +49 -49
  116. package/dist/media/properties.js.map +1 -1
  117. package/dist/media/util.d.ts +2 -2
  118. package/dist/media/util.js.map +1 -1
  119. package/dist/mediaQualityMetrics/config.d.ts +233 -233
  120. package/dist/mediaQualityMetrics/config.js.map +1 -1
  121. package/dist/meeting/effectsState.d.ts +42 -42
  122. package/dist/meeting/effectsState.js +24 -24
  123. package/dist/meeting/effectsState.js.map +1 -1
  124. package/dist/meeting/in-meeting-actions.d.ts +79 -79
  125. package/dist/meeting/in-meeting-actions.js +11 -11
  126. package/dist/meeting/in-meeting-actions.js.map +1 -1
  127. package/dist/meeting/index.d.ts +1621 -1621
  128. package/dist/meeting/index.js +1502 -1505
  129. package/dist/meeting/index.js.map +1 -1
  130. package/dist/meeting/muteState.d.ts +116 -116
  131. package/dist/meeting/muteState.js +85 -85
  132. package/dist/meeting/muteState.js.map +1 -1
  133. package/dist/meeting/request.d.ts +255 -255
  134. package/dist/meeting/request.js +141 -141
  135. package/dist/meeting/request.js.map +1 -1
  136. package/dist/meeting/state.d.ts +9 -9
  137. package/dist/meeting/state.js +30 -30
  138. package/dist/meeting/state.js.map +1 -1
  139. package/dist/meeting/util.d.ts +2 -2
  140. package/dist/meeting/util.js.map +1 -1
  141. package/dist/meeting-info/collection.d.ts +20 -20
  142. package/dist/meeting-info/collection.js +11 -11
  143. package/dist/meeting-info/collection.js.map +1 -1
  144. package/dist/meeting-info/index.d.ts +57 -57
  145. package/dist/meeting-info/index.js +50 -50
  146. package/dist/meeting-info/index.js.map +1 -1
  147. package/dist/meeting-info/meeting-info-v2.d.ts +93 -93
  148. package/dist/meeting-info/meeting-info-v2.js +52 -52
  149. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  150. package/dist/meeting-info/request.d.ts +22 -22
  151. package/dist/meeting-info/request.js +14 -14
  152. package/dist/meeting-info/request.js.map +1 -1
  153. package/dist/meeting-info/util.d.ts +2 -2
  154. package/dist/meeting-info/util.js +9 -9
  155. package/dist/meeting-info/util.js.map +1 -1
  156. package/dist/meeting-info/utilv2.d.ts +2 -2
  157. package/dist/meeting-info/utilv2.js +20 -20
  158. package/dist/meeting-info/utilv2.js.map +1 -1
  159. package/dist/meetings/collection.d.ts +23 -23
  160. package/dist/meetings/collection.js +14 -14
  161. package/dist/meetings/collection.js.map +1 -1
  162. package/dist/meetings/index.d.ts +296 -296
  163. package/dist/meetings/index.js +259 -259
  164. package/dist/meetings/index.js.map +1 -1
  165. package/dist/meetings/request.d.ts +27 -27
  166. package/dist/meetings/request.js +15 -15
  167. package/dist/meetings/request.js.map +1 -1
  168. package/dist/meetings/util.d.ts +18 -18
  169. package/dist/meetings/util.js +29 -29
  170. package/dist/meetings/util.js.map +1 -1
  171. package/dist/member/index.d.ts +147 -147
  172. package/dist/member/index.js +214 -214
  173. package/dist/member/index.js.map +1 -1
  174. package/dist/member/member.types.d.ts +11 -11
  175. package/dist/member/member.types.js.map +1 -1
  176. package/dist/member/util.d.ts +2 -2
  177. package/dist/member/util.js +60 -60
  178. package/dist/member/util.js.map +1 -1
  179. package/dist/members/collection.d.ts +24 -24
  180. package/dist/members/collection.js +11 -11
  181. package/dist/members/collection.js.map +1 -1
  182. package/dist/members/index.d.ts +298 -298
  183. package/dist/members/index.js +275 -275
  184. package/dist/members/index.js.map +1 -1
  185. package/dist/members/request.d.ts +50 -50
  186. package/dist/members/request.js +27 -27
  187. package/dist/members/request.js.map +1 -1
  188. package/dist/members/util.d.ts +2 -2
  189. package/dist/members/util.js +21 -21
  190. package/dist/members/util.js.map +1 -1
  191. package/dist/metrics/config.d.ts +169 -169
  192. package/dist/metrics/config.js.map +1 -1
  193. package/dist/metrics/constants.d.ts +57 -57
  194. package/dist/metrics/constants.js.map +1 -1
  195. package/dist/metrics/index.d.ts +152 -152
  196. package/dist/metrics/index.js +90 -90
  197. package/dist/metrics/index.js.map +1 -1
  198. package/dist/networkQualityMonitor/index.d.ts +70 -70
  199. package/dist/networkQualityMonitor/index.js +65 -65
  200. package/dist/networkQualityMonitor/index.js.map +1 -1
  201. package/dist/peer-connection-manager/index.d.ts +6 -6
  202. package/dist/peer-connection-manager/index.js +87 -87
  203. package/dist/peer-connection-manager/index.js.map +1 -1
  204. package/dist/peer-connection-manager/util.d.ts +6 -6
  205. package/dist/peer-connection-manager/util.js +9 -9
  206. package/dist/peer-connection-manager/util.js.map +1 -1
  207. package/dist/personal-meeting-room/index.d.ts +47 -47
  208. package/dist/personal-meeting-room/index.js +67 -67
  209. package/dist/personal-meeting-room/index.js.map +1 -1
  210. package/dist/personal-meeting-room/request.d.ts +14 -14
  211. package/dist/personal-meeting-room/request.js +7 -7
  212. package/dist/personal-meeting-room/request.js.map +1 -1
  213. package/dist/personal-meeting-room/util.d.ts +2 -2
  214. package/dist/personal-meeting-room/util.js.map +1 -1
  215. package/dist/reachability/index.d.ts +139 -139
  216. package/dist/reachability/index.js +110 -110
  217. package/dist/reachability/index.js.map +1 -1
  218. package/dist/reachability/request.d.ts +35 -35
  219. package/dist/reachability/request.js +15 -15
  220. package/dist/reachability/request.js.map +1 -1
  221. package/dist/reactions/reactions.d.ts +4 -4
  222. package/dist/reactions/reactions.js.map +1 -1
  223. package/dist/reactions/reactions.type.d.ts +32 -32
  224. package/dist/reactions/reactions.type.js.map +1 -1
  225. package/dist/reconnection-manager/index.d.ts +112 -112
  226. package/dist/reconnection-manager/index.js +112 -112
  227. package/dist/reconnection-manager/index.js.map +1 -1
  228. package/dist/recording-controller/enums.d.ts +7 -7
  229. package/dist/recording-controller/enums.js.map +1 -1
  230. package/dist/recording-controller/index.d.ts +193 -193
  231. package/dist/recording-controller/index.js +127 -127
  232. package/dist/recording-controller/index.js.map +1 -1
  233. package/dist/recording-controller/util.d.ts +13 -13
  234. package/dist/recording-controller/util.js.map +1 -1
  235. package/dist/roap/collection.d.ts +10 -10
  236. package/dist/roap/collection.js.map +1 -1
  237. package/dist/roap/handler.d.ts +47 -47
  238. package/dist/roap/handler.js +27 -27
  239. package/dist/roap/handler.js.map +1 -1
  240. package/dist/roap/index.d.ts +116 -116
  241. package/dist/roap/index.js +111 -111
  242. package/dist/roap/index.js.map +1 -1
  243. package/dist/roap/request.d.ts +35 -35
  244. package/dist/roap/request.js +17 -17
  245. package/dist/roap/request.js.map +1 -1
  246. package/dist/roap/state.d.ts +9 -9
  247. package/dist/roap/state.js +14 -14
  248. package/dist/roap/state.js.map +1 -1
  249. package/dist/roap/turnDiscovery.d.ts +67 -67
  250. package/dist/roap/turnDiscovery.js +46 -46
  251. package/dist/roap/turnDiscovery.js.map +1 -1
  252. package/dist/roap/util.d.ts +2 -2
  253. package/dist/roap/util.js.map +1 -1
  254. package/dist/statsAnalyzer/global.d.ts +126 -126
  255. package/dist/statsAnalyzer/global.js.map +1 -1
  256. package/dist/statsAnalyzer/index.d.ts +190 -190
  257. package/dist/statsAnalyzer/index.js +128 -128
  258. package/dist/statsAnalyzer/index.js.map +1 -1
  259. package/dist/statsAnalyzer/mqaUtil.d.ts +22 -22
  260. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  261. package/dist/transcription/index.d.ts +64 -64
  262. package/dist/transcription/index.js +42 -42
  263. package/dist/transcription/index.js.map +1 -1
  264. package/internal-README.md +172 -172
  265. package/jest.config.js +3 -3
  266. package/package.json +22 -21
  267. package/process +1 -1
  268. package/src/common/browser-detection.ts +39 -39
  269. package/src/common/collection.ts +94 -94
  270. package/src/common/config.ts +9 -9
  271. package/src/common/errors/captcha-error.ts +25 -25
  272. package/src/common/errors/intent-to-join.ts +27 -27
  273. package/src/common/errors/join-meeting.ts +32 -32
  274. package/src/common/errors/media.ts +25 -25
  275. package/src/common/errors/parameter.ts +33 -33
  276. package/src/common/errors/password-error.ts +25 -25
  277. package/src/common/errors/permission.ts +24 -24
  278. package/src/common/errors/reconnection-in-progress.ts +8 -8
  279. package/src/common/errors/reconnection.ts +25 -25
  280. package/src/common/errors/stats.ts +25 -25
  281. package/src/common/errors/webex-errors.ts +140 -140
  282. package/src/common/errors/webex-meetings-error.ts +35 -35
  283. package/src/common/events/events-scope.ts +30 -30
  284. package/src/common/events/events.ts +25 -25
  285. package/src/common/events/trigger-proxy.ts +25 -25
  286. package/src/common/events/util.ts +39 -39
  287. package/src/common/logs/logger-config.ts +8 -8
  288. package/src/common/logs/logger-proxy.ts +44 -44
  289. package/src/common/logs/request.ts +65 -65
  290. package/src/common/queue.ts +50 -50
  291. package/src/config.ts +96 -96
  292. package/src/constants.ts +1121 -1121
  293. package/src/controls-options-manager/constants.ts +5 -5
  294. package/src/controls-options-manager/enums.ts +6 -6
  295. package/src/controls-options-manager/index.ts +183 -183
  296. package/src/controls-options-manager/util.ts +20 -20
  297. package/src/index.js +15 -15
  298. package/src/locus-info/controlsUtils.ts +112 -112
  299. package/src/locus-info/embeddedAppsUtils.ts +57 -57
  300. package/src/locus-info/fullState.ts +69 -69
  301. package/src/locus-info/hostUtils.ts +60 -60
  302. package/src/locus-info/index.ts +1303 -1303
  303. package/src/locus-info/infoUtils.ts +101 -101
  304. package/src/locus-info/mediaSharesUtils.ts +173 -173
  305. package/src/locus-info/parser.ts +680 -680
  306. package/src/locus-info/selfUtils.ts +428 -428
  307. package/src/media/index.ts +675 -675
  308. package/src/media/properties.ts +313 -313
  309. package/src/media/util.ts +37 -37
  310. package/src/mediaQualityMetrics/config.ts +382 -382
  311. package/src/meeting/effectsState.ts +209 -209
  312. package/src/meeting/in-meeting-actions.ts +153 -153
  313. package/src/meeting/index.ts +6537 -6543
  314. package/src/meeting/muteState.ts +365 -365
  315. package/src/meeting/request.ts +810 -810
  316. package/src/meeting/state.ts +194 -194
  317. package/src/meeting/util.ts +530 -530
  318. package/src/meeting-info/collection.ts +41 -41
  319. package/src/meeting-info/index.ts +137 -137
  320. package/src/meeting-info/meeting-info-v2.ts +273 -273
  321. package/src/meeting-info/request.ts +46 -46
  322. package/src/meeting-info/util.ts +314 -314
  323. package/src/meeting-info/utilv2.ts +324 -324
  324. package/src/meetings/collection.ts +43 -43
  325. package/src/meetings/index.ts +1128 -1128
  326. package/src/meetings/request.ts +81 -81
  327. package/src/meetings/util.ts +181 -181
  328. package/src/member/index.ts +446 -446
  329. package/src/member/member.types.ts +13 -13
  330. package/src/member/util.ts +286 -286
  331. package/src/members/collection.ts +40 -40
  332. package/src/members/index.ts +900 -900
  333. package/src/members/request.ts +175 -175
  334. package/src/members/util.ts +260 -260
  335. package/src/metrics/config.ts +485 -485
  336. package/src/metrics/constants.ts +61 -61
  337. package/src/metrics/index.ts +543 -543
  338. package/src/networkQualityMonitor/index.ts +211 -211
  339. package/src/peer-connection-manager/index.ts +847 -847
  340. package/src/peer-connection-manager/util.ts +119 -119
  341. package/src/personal-meeting-room/index.ts +157 -157
  342. package/src/personal-meeting-room/request.ts +48 -48
  343. package/src/personal-meeting-room/util.ts +49 -49
  344. package/src/reachability/index.ts +478 -478
  345. package/src/reachability/request.ts +81 -81
  346. package/src/reactions/reactions.ts +104 -104
  347. package/src/reactions/reactions.type.ts +36 -36
  348. package/src/reconnection-manager/index.ts +622 -622
  349. package/src/recording-controller/enums.ts +8 -8
  350. package/src/recording-controller/index.ts +315 -315
  351. package/src/recording-controller/util.ts +58 -58
  352. package/src/roap/collection.ts +62 -62
  353. package/src/roap/handler.ts +294 -294
  354. package/src/roap/index.ts +413 -413
  355. package/src/roap/request.ts +229 -229
  356. package/src/roap/state.ts +156 -156
  357. package/src/roap/turnDiscovery.ts +283 -283
  358. package/src/roap/util.ts +100 -100
  359. package/src/statsAnalyzer/global.ts +128 -128
  360. package/src/statsAnalyzer/index.ts +1266 -1266
  361. package/src/statsAnalyzer/mqaUtil.ts +290 -290
  362. package/src/transcription/index.ts +154 -154
  363. package/test/integration/spec/journey.js +941 -941
  364. package/test/integration/spec/space-meeting.js +457 -457
  365. package/test/integration/spec/transcription.js +55 -55
  366. package/test/unit/spec/common/browser-detection.js +119 -119
  367. package/test/unit/spec/common/queue.js +69 -69
  368. package/test/unit/spec/controls-options-manager/index.js +123 -123
  369. package/test/unit/spec/controls-options-manager/util.js +65 -65
  370. package/test/unit/spec/fixture/locus.js +406 -406
  371. package/test/unit/spec/locus-info/controlsUtils.js +82 -82
  372. package/test/unit/spec/locus-info/embeddedAppsUtils.js +104 -104
  373. package/test/unit/spec/locus-info/index.js +1272 -1272
  374. package/test/unit/spec/locus-info/infoUtils.js +138 -138
  375. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +975 -975
  376. package/test/unit/spec/locus-info/lib/SeqCmp.json +522 -522
  377. package/test/unit/spec/locus-info/lib/selfConstant.js +286 -286
  378. package/test/unit/spec/locus-info/parser.js +298 -298
  379. package/test/unit/spec/locus-info/selfUtils.js +185 -185
  380. package/test/unit/spec/media/properties.ts +305 -305
  381. package/test/unit/spec/meeting/effectsState.js +281 -281
  382. package/test/unit/spec/meeting/in-meeting-actions.ts +90 -90
  383. package/test/unit/spec/meeting/index.js +5227 -5227
  384. package/test/unit/spec/meeting/muteState.js +430 -430
  385. package/test/unit/spec/meeting/request.js +317 -317
  386. package/test/unit/spec/meeting/utils.js +319 -319
  387. package/test/unit/spec/meeting-info/meetinginfov2.js +376 -376
  388. package/test/unit/spec/meeting-info/request.js +64 -64
  389. package/test/unit/spec/meeting-info/util.js +37 -37
  390. package/test/unit/spec/meeting-info/utilv2.js +330 -330
  391. package/test/unit/spec/meetings/collection.js +52 -52
  392. package/test/unit/spec/meetings/index.js +1375 -1375
  393. package/test/unit/spec/meetings/utils.js +66 -66
  394. package/test/unit/spec/member/index.js +47 -47
  395. package/test/unit/spec/member/util.js +80 -80
  396. package/test/unit/spec/members/index.js +364 -364
  397. package/test/unit/spec/members/request.js +200 -200
  398. package/test/unit/spec/members/utils.js +42 -42
  399. package/test/unit/spec/metrics/index.js +111 -111
  400. package/test/unit/spec/networkQualityMonitor/index.js +99 -99
  401. package/test/unit/spec/peerconnection-manager/index.js +218 -218
  402. package/test/unit/spec/peerconnection-manager/utils.js +49 -49
  403. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +388 -388
  404. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +29 -29
  405. package/test/unit/spec/reachability/index.ts +50 -50
  406. package/test/unit/spec/reconnection-manager/index.js +206 -206
  407. package/test/unit/spec/recording-controller/index.js +230 -230
  408. package/test/unit/spec/recording-controller/util.js +101 -101
  409. package/test/unit/spec/roap/index.ts +128 -128
  410. package/test/unit/spec/roap/turnDiscovery.ts +372 -372
  411. package/test/unit/spec/roap/util.js +30 -30
  412. package/test/unit/spec/stats-analyzer/index.js +287 -287
  413. package/test/utils/cmr.js +104 -104
  414. package/test/utils/testUtils.js +287 -287
  415. package/test/utils/webex-config.js +77 -77
  416. package/test/utils/webex-test-users.js +82 -82
  417. package/tsconfig.json +5 -5
@@ -102,313 +102,313 @@ var MEDIA_UPDATE_TYPE = {
102
102
  SHARE: 'SHARE'
103
103
  };
104
104
 
105
- /**
106
- * MediaDirection
107
- * @typedef {Object} MediaDirection
108
- * @property {boolean} sendAudio
109
- * @property {boolean} receiveAudio
110
- * @property {boolean} sendVideo
111
- * @property {boolean} receiveVideo
112
- * @property {boolean} sendShare
113
- * @property {boolean} receiveShare
114
- * @property {boolean} isSharing
105
+ /**
106
+ * MediaDirection
107
+ * @typedef {Object} MediaDirection
108
+ * @property {boolean} sendAudio
109
+ * @property {boolean} receiveAudio
110
+ * @property {boolean} sendVideo
111
+ * @property {boolean} receiveVideo
112
+ * @property {boolean} sendShare
113
+ * @property {boolean} receiveShare
114
+ * @property {boolean} isSharing
115
115
  */
116
116
 
117
- /**
118
- * AudioVideo
119
- * @typedef {Object} AudioVideo
120
- * @property {Object} audio
121
- * @property {String} audio.deviceId
122
- * @property {Object} video
123
- * @property {String} video.deviceId
124
- * @property {String} video.localVideoQuality // [240p, 360p, 480p, 720p, 1080p]
117
+ /**
118
+ * AudioVideo
119
+ * @typedef {Object} AudioVideo
120
+ * @property {Object} audio
121
+ * @property {String} audio.deviceId
122
+ * @property {Object} video
123
+ * @property {String} video.deviceId
124
+ * @property {String} video.localVideoQuality // [240p, 360p, 480p, 720p, 1080p]
125
125
  */
126
126
 
127
- /**
128
- * SharePreferences
129
- * @typedef {Object} SharePreferences
130
- * @property {Object} [shareConstraints]
131
- * @property {Boolean} [highFrameRate]
127
+ /**
128
+ * SharePreferences
129
+ * @typedef {Object} SharePreferences
130
+ * @property {Object} [shareConstraints]
131
+ * @property {Boolean} [highFrameRate]
132
132
  */
133
133
 
134
- /**
135
- * JoinOptions
136
- * @typedef {Object} JoinOptions
137
- * @property {String} [resourceId]
138
- * @property {String} [pin]
139
- * @property {Boolean} [moderator]
140
- * @property {String|Object} [meetingQuality]
141
- * @property {String} [meetingQuality.local]
142
- * @property {String} [meetingQuality.remote]
143
- * @property {Boolean} [rejoin]
134
+ /**
135
+ * JoinOptions
136
+ * @typedef {Object} JoinOptions
137
+ * @property {String} [resourceId]
138
+ * @property {String} [pin]
139
+ * @property {Boolean} [moderator]
140
+ * @property {String|Object} [meetingQuality]
141
+ * @property {String} [meetingQuality.local]
142
+ * @property {String} [meetingQuality.remote]
143
+ * @property {Boolean} [rejoin]
144
144
  */
145
145
 
146
- /**
147
- * SendOptions
148
- * @typedef {Object} SendOptions
149
- * @property {Boolean} sendAudio
150
- * @property {Boolean} sendVideo
151
- * @property {Boolean} sendShare
146
+ /**
147
+ * SendOptions
148
+ * @typedef {Object} SendOptions
149
+ * @property {Boolean} sendAudio
150
+ * @property {Boolean} sendVideo
151
+ * @property {Boolean} sendShare
152
152
  */
153
153
 
154
- /**
155
- * Recording
156
- * @typedef {Object} Recording
157
- * @property {Object} state
158
- * @property {String} modifiedBy
154
+ /**
155
+ * Recording
156
+ * @typedef {Object} Recording
157
+ * @property {Object} state
158
+ * @property {String} modifiedBy
159
159
  */
160
160
 
161
- /**
162
- * Meeting State Change Event
163
- * Emitted when ever there is a meeting state change
164
- * @event meeting:stateChange
165
- * @instance
166
- * @type {Object}
167
- * @property {String} currentState current state of the meeting
168
- * @property {String} previousState previous state of the meeting
169
- * @memberof Meeting
161
+ /**
162
+ * Meeting State Change Event
163
+ * Emitted when ever there is a meeting state change
164
+ * @event meeting:stateChange
165
+ * @instance
166
+ * @type {Object}
167
+ * @property {String} currentState current state of the meeting
168
+ * @property {String} previousState previous state of the meeting
169
+ * @memberof Meeting
170
170
  */
171
171
 
172
- /**
173
- * Media Ready Event
174
- * Emitted when a stream is ready to be rendered
175
- * @event media:ready
176
- * @instance
177
- * @type {Object}
178
- * @property {MediaStream} stream the media stream
179
- * @property {String} type what type of stream, remote, local
180
- * @memberof Meeting
172
+ /**
173
+ * Media Ready Event
174
+ * Emitted when a stream is ready to be rendered
175
+ * @event media:ready
176
+ * @instance
177
+ * @type {Object}
178
+ * @property {MediaStream} stream the media stream
179
+ * @property {String} type what type of stream, remote, local
180
+ * @memberof Meeting
181
181
  */
182
182
 
183
- /**
184
- * Media Stopped Event
185
- * Emitted when a stream has stopped sending
186
- * @event media:stopped
187
- * @instance
188
- * @type {Object}
189
- * @property {String} type what type of stream, remote, local
190
- * @memberof Meeting
183
+ /**
184
+ * Media Stopped Event
185
+ * Emitted when a stream has stopped sending
186
+ * @event media:stopped
187
+ * @instance
188
+ * @type {Object}
189
+ * @property {String} type what type of stream, remote, local
190
+ * @memberof Meeting
191
191
  */
192
192
 
193
- /**
194
- * Meeting Ringing Event
195
- * Emitted when this client should play a ringing sound, because this member is getting an incoming meeting
196
- * or sending out an incoming meeting
197
- * @event meeting:ringing
198
- * @instance
199
- * @type {Object}
200
- * @property {String} type // INCOMING or JOIN
201
- * @property {String} id
202
- * @memberof Meeting
193
+ /**
194
+ * Meeting Ringing Event
195
+ * Emitted when this client should play a ringing sound, because this member is getting an incoming meeting
196
+ * or sending out an incoming meeting
197
+ * @event meeting:ringing
198
+ * @instance
199
+ * @type {Object}
200
+ * @property {String} type // INCOMING or JOIN
201
+ * @property {String} id
202
+ * @memberof Meeting
203
203
  */
204
204
 
205
- /**
206
- * Meeting Ringing Stop Event
207
- * Emitted when this client should stop playing a ringing sound
208
- * @event meeting:ringingStop
209
- * @instance
210
- * @type {Object}
211
- * @property {Object} type
212
- * @property {Boolean} type.remoteAnswered
213
- * @property {Boolean} type.remoteDeclined
214
- * @property {String} id
215
- * @memberof Meeting
205
+ /**
206
+ * Meeting Ringing Stop Event
207
+ * Emitted when this client should stop playing a ringing sound
208
+ * @event meeting:ringingStop
209
+ * @instance
210
+ * @type {Object}
211
+ * @property {Object} type
212
+ * @property {Boolean} type.remoteAnswered
213
+ * @property {Boolean} type.remoteDeclined
214
+ * @property {String} id
215
+ * @memberof Meeting
216
216
  */
217
217
 
218
- /**
219
- * Meeting Started Sharing Local Event
220
- * Emitted when this member starts sharing
221
- * @event meeting:startedSharingLocal
222
- * @instance
223
- * @type {Object}
224
- * @memberof Meeting
218
+ /**
219
+ * Meeting Started Sharing Local Event
220
+ * Emitted when this member starts sharing
221
+ * @event meeting:startedSharingLocal
222
+ * @instance
223
+ * @type {Object}
224
+ * @memberof Meeting
225
225
  */
226
226
 
227
- /**
228
- * Meeting Stopped Sharing Local Event
229
- * Emitted when this member stops sharing
230
- * @event meeting:stoppedSharingLocal
231
- * @instance
232
- * @type {Object}
233
- * @memberof Meeting
227
+ /**
228
+ * Meeting Stopped Sharing Local Event
229
+ * Emitted when this member stops sharing
230
+ * @event meeting:stoppedSharingLocal
231
+ * @instance
232
+ * @type {Object}
233
+ * @memberof Meeting
234
234
  */
235
235
 
236
- /**
237
- * Meeting Started Sharing Remote Event
238
- * Emitted when remote sharing starts
239
- * @event meeting:startedSharingRemote
240
- * @instance
241
- * @type {Object}
242
- * @property {Boolean} memberId id of the meeting member that started screen share
243
- * @memberof Meeting
236
+ /**
237
+ * Meeting Started Sharing Remote Event
238
+ * Emitted when remote sharing starts
239
+ * @event meeting:startedSharingRemote
240
+ * @instance
241
+ * @type {Object}
242
+ * @property {Boolean} memberId id of the meeting member that started screen share
243
+ * @memberof Meeting
244
244
  */
245
245
 
246
- /**
247
- * Meeting Stopped Sharing Remote Event
248
- * Emitted when remote screen sharing ends
249
- * @event meeting:stoppedSharingRemote
250
- * @instance
251
- * @type {Object}
252
- * @memberof Meeting
246
+ /**
247
+ * Meeting Stopped Sharing Remote Event
248
+ * Emitted when remote screen sharing ends
249
+ * @event meeting:stoppedSharingRemote
250
+ * @instance
251
+ * @type {Object}
252
+ * @memberof Meeting
253
253
  */
254
254
 
255
- /**
256
- * Meeting Locked Event
257
- * Emitted when a meeting is locked
258
- * @event meeting:locked
259
- * @instance
260
- * @type {Object}
261
- * @property {Object} info
262
- * @memberof Meeting
255
+ /**
256
+ * Meeting Locked Event
257
+ * Emitted when a meeting is locked
258
+ * @event meeting:locked
259
+ * @instance
260
+ * @type {Object}
261
+ * @property {Object} info
262
+ * @memberof Meeting
263
263
  */
264
264
 
265
- /**
266
- * Meeting Unlocked Event
267
- * Emitted when a meeting is unlocked
268
- * @event meeting:unlocked
269
- * @instance
270
- * @type {Object}
271
- * @property {Object} info
272
- * @memberof Meeting
265
+ /**
266
+ * Meeting Unlocked Event
267
+ * Emitted when a meeting is unlocked
268
+ * @event meeting:unlocked
269
+ * @instance
270
+ * @type {Object}
271
+ * @property {Object} info
272
+ * @memberof Meeting
273
273
  */
274
274
 
275
- /**
276
- * Meeting Actions Update Event
277
- * Emitted when a user can take actions on a meeting such as lock, unlock, assign host
278
- * @event meeting:actionsUpdate
279
- * @instance
280
- * @type {Object}
281
- * @property {Boolean} canLock
282
- * @property {Boolean} canUnlock
283
- * @property {Boolean} canAssignHost
284
- * @memberof Meeting
275
+ /**
276
+ * Meeting Actions Update Event
277
+ * Emitted when a user can take actions on a meeting such as lock, unlock, assign host
278
+ * @event meeting:actionsUpdate
279
+ * @instance
280
+ * @type {Object}
281
+ * @property {Boolean} canLock
282
+ * @property {Boolean} canUnlock
283
+ * @property {Boolean} canAssignHost
284
+ * @memberof Meeting
285
285
  */
286
286
 
287
- /**
288
- * Meeting Unmuted By Others Event
289
- * Emitted when a member is unmuted by another member
290
- * @event meeting:self:unmutedByOthers
291
- * @instance
292
- * @type {Object}
293
- * @property {Object} payload
294
- * @memberof Meeting
287
+ /**
288
+ * Meeting Unmuted By Others Event
289
+ * Emitted when a member is unmuted by another member
290
+ * @event meeting:self:unmutedByOthers
291
+ * @instance
292
+ * @type {Object}
293
+ * @property {Object} payload
294
+ * @memberof Meeting
295
295
  */
296
296
 
297
- /**
298
- * Meeting Muted By Others Event
299
- * Emitted when a member is muted by another member
300
- * @event meeting:self:mutedByOthers
301
- * @instance
302
- * @type {Object}
303
- * @property {Object} payload
304
- * @property {Boolean} payload.unmuteAllowed - whether the user is allowed to unmute self
305
- * @memberof Meeting
297
+ /**
298
+ * Meeting Muted By Others Event
299
+ * Emitted when a member is muted by another member
300
+ * @event meeting:self:mutedByOthers
301
+ * @instance
302
+ * @type {Object}
303
+ * @property {Object} payload
304
+ * @property {Boolean} payload.unmuteAllowed - whether the user is allowed to unmute self
305
+ * @memberof Meeting
306
306
  */
307
307
 
308
- /**
309
- * Meeting Muted By Others Event
310
- * Emitted when the host(moderator)/co-host requests a user to unmute
311
- * @event meeting:self:requestedToUnmute
312
- * @instance
313
- * @type {Object}
314
- * @property {Object} payload
315
- * @memberof Meeting
308
+ /**
309
+ * Meeting Muted By Others Event
310
+ * Emitted when the host(moderator)/co-host requests a user to unmute
311
+ * @event meeting:self:requestedToUnmute
312
+ * @instance
313
+ * @type {Object}
314
+ * @property {Object} payload
315
+ * @memberof Meeting
316
316
  */
317
317
 
318
- /**
319
- * Meeting Self Guest Admitted Event
320
- * Emitted when a joined user get admitted to the meeting by another member or host
321
- * @event meeting:self:guestAdmitted
322
- * @instance
323
- * @type {Object}
324
- * @property {Object} payload
325
- * @memberof Meeting
318
+ /**
319
+ * Meeting Self Guest Admitted Event
320
+ * Emitted when a joined user get admitted to the meeting by another member or host
321
+ * @event meeting:self:guestAdmitted
322
+ * @instance
323
+ * @type {Object}
324
+ * @property {Object} payload
325
+ * @memberof Meeting
326
326
  */
327
327
 
328
- /**
329
- * Meeting Self Lobby Waiting Event
330
- * Emitted when joined user enters the lobby and is waiting for the webex meeting to begin
331
- * @event meeting:self:lobbyWaiting
332
- * @instance
333
- * @type {Object}
334
- * @property {Object} reason Reason why user left the meeting
335
- * @memberof Meeting
328
+ /**
329
+ * Meeting Self Lobby Waiting Event
330
+ * Emitted when joined user enters the lobby and is waiting for the webex meeting to begin
331
+ * @event meeting:self:lobbyWaiting
332
+ * @instance
333
+ * @type {Object}
334
+ * @property {Object} reason Reason why user left the meeting
335
+ * @memberof Meeting
336
336
  */
337
337
 
338
- /**
339
- * Meeting Self Left State
340
- * Emitted when user is inactive for more then 40 seconds, User can rejoin the meeting again
341
- * @event meeting:self:left
342
- * @instance
343
- * @type {Object}
344
- * @property {Object} payload
345
- * @memberof Meeting
338
+ /**
339
+ * Meeting Self Left State
340
+ * Emitted when user is inactive for more then 40 seconds, User can rejoin the meeting again
341
+ * @event meeting:self:left
342
+ * @instance
343
+ * @type {Object}
344
+ * @property {Object} payload
345
+ * @memberof Meeting
346
346
  */
347
347
 
348
- /**
349
- * Reconnection Starting Event
350
- * Emitted when reconnection of media to the active meeting was successful
351
- * @event meeting:reconnectionStarting
352
- * @instance
353
- * @memberof Meeting
348
+ /**
349
+ * Reconnection Starting Event
350
+ * Emitted when reconnection of media to the active meeting was successful
351
+ * @event meeting:reconnectionStarting
352
+ * @instance
353
+ * @memberof Meeting
354
354
  */
355
355
 
356
- /**
357
- * Reconnection Success Event
358
- * Emitted when reconnection of media to the active meeting was successful
359
- * @event meeting:reconnectionSuccess
360
- * @instance
361
- * @type {Object}
362
- * @property {Object} reconnect
363
- * @memberof Meeting
356
+ /**
357
+ * Reconnection Success Event
358
+ * Emitted when reconnection of media to the active meeting was successful
359
+ * @event meeting:reconnectionSuccess
360
+ * @instance
361
+ * @type {Object}
362
+ * @property {Object} reconnect
363
+ * @memberof Meeting
364
364
  */
365
365
 
366
- /**
367
- * Reconnection Failure Event
368
- * Emitted when reconnection of media to the active meeting was successful
369
- * @event meeting:reconnectionFailure
370
- * @instance
371
- * @type {Object}
372
- * @property {Error} error
373
- * @memberof Meeting
366
+ /**
367
+ * Reconnection Failure Event
368
+ * Emitted when reconnection of media to the active meeting was successful
369
+ * @event meeting:reconnectionFailure
370
+ * @instance
371
+ * @type {Object}
372
+ * @property {Error} error
373
+ * @memberof Meeting
374
374
  */
375
375
 
376
- /**
377
- * Meeting network quality event
378
- * Emitted on each interval of retrieving stats Analyzer data
379
- * @event network:quality
380
- * @type {Object}
381
- * @property {string} mediaType {video|audio}
382
- * @property {number} networkQualityScore - {1|0} 1 indicates acceptable uplink 0 indicates unacceptable uplink based on threshold
383
- * @memberof Meeting
376
+ /**
377
+ * Meeting network quality event
378
+ * Emitted on each interval of retrieving stats Analyzer data
379
+ * @event network:quality
380
+ * @type {Object}
381
+ * @property {string} mediaType {video|audio}
382
+ * @property {number} networkQualityScore - {1|0} 1 indicates acceptable uplink 0 indicates unacceptable uplink based on threshold
383
+ * @memberof Meeting
384
384
  */
385
385
 
386
- /**
387
- * @description Meeting is the crux of the plugin
388
- * @export
389
- * @class Meeting
386
+ /**
387
+ * @description Meeting is the crux of the plugin
388
+ * @export
389
+ * @class Meeting
390
390
  */
391
391
  exports.MEDIA_UPDATE_TYPE = MEDIA_UPDATE_TYPE;
392
392
  var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
393
393
  (0, _inherits2.default)(Meeting, _StatelessWebexPlugin);
394
394
  var _super = _createSuper(Meeting);
395
- /**
396
- * @param {Object} attrs
397
- * @param {Object} options
398
- * @constructor
399
- * @memberof Meeting
395
+ /**
396
+ * @param {Object} attrs
397
+ * @param {Object} options
398
+ * @constructor
399
+ * @memberof Meeting
400
400
  */
401
401
  function Meeting(attrs, _options) {
402
402
  var _this$locusInfo, _this$locusInfo$links, _this$locusInfo$links2, _this$locusInfo$links3, _this$locusInfo2, _this$locusInfo2$full, _this$locusInfo3, _this$locusInfo4;
403
403
  var _this;
404
404
  (0, _classCallCheck2.default)(this, Meeting);
405
405
  _this = _super.call(this, {}, _options);
406
- /**
407
- * @instance
408
- * @type {Object}
409
- * @readonly
410
- * @private
411
- * @memberof Meeting
406
+ /**
407
+ * @instance
408
+ * @type {Object}
409
+ * @readonly
410
+ * @private
411
+ * @memberof Meeting
412
412
  */
413
413
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "attrs", void 0);
414
414
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "audio", void 0);
@@ -488,15 +488,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
488
488
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "selfId", void 0);
489
489
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "state", void 0);
490
490
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "namespace", _constants.MEETINGS);
491
- /**
492
- * Get local media streams based on options passed
493
- * @param {MediaDirection} mediaDirection A configurable options object for joining a meeting
494
- * @param {AudioVideo} [audioVideo] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
495
- * @param {SharePreferences} [sharePreferences] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
496
- * @returns {Promise} see #Media.getUserMedia
497
- * @public
498
- * @todo should be static, or moved so can be called outside of a meeting
499
- * @memberof Meeting
491
+ /**
492
+ * Get local media streams based on options passed
493
+ * @param {MediaDirection} mediaDirection A configurable options object for joining a meeting
494
+ * @param {AudioVideo} [audioVideo] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
495
+ * @param {SharePreferences} [sharePreferences] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
496
+ * @returns {Promise} see #Media.getUserMedia
497
+ * @public
498
+ * @todo should be static, or moved so can be called outside of a meeting
499
+ * @memberof Meeting
500
500
  */
501
501
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "getMediaStreams", function (mediaDirection) {
502
502
  var audioVideo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.VIDEO_RESOLUTIONS[_this.mediaProperties.localQualityLevel];
@@ -577,13 +577,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
577
577
  }
578
578
  return _promise.default.reject(new _media2.default('At least one of the mediaDirection value should be true'));
579
579
  });
580
- /**
581
- * Checks if the machine has at least one audio or video device
582
- * @param {Object} options
583
- * @param {Boolean} options.sendAudio
584
- * @param {Boolean} options.sendVideo
585
- * @returns {Object}
586
- * @memberof Meetings
580
+ /**
581
+ * Checks if the machine has at least one audio or video device
582
+ * @param {Object} options
583
+ * @param {Boolean} options.sendAudio
584
+ * @param {Boolean} options.sendVideo
585
+ * @returns {Object}
586
+ * @memberof Meetings
587
587
  */
588
588
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "getSupportedDevices", function (_ref3) {
589
589
  var _ref3$sendAudio = _ref3.sendAudio,
@@ -595,19 +595,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
595
595
  sendVideo: sendVideo
596
596
  });
597
597
  });
598
- /**
599
- * Get the devices from the Media module
600
- * @returns {Promise} resolves to an array of DeviceInfo
601
- * @memberof Meetings
598
+ /**
599
+ * Get the devices from the Media module
600
+ * @returns {Promise} resolves to an array of DeviceInfo
601
+ * @memberof Meetings
602
602
  */
603
603
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "getDevices", function () {
604
604
  return _media.default.getDevices();
605
605
  });
606
- /**
607
- * Registers for all required StatsAnalyzer events
608
- * @private
609
- * @returns {void}
610
- * @memberof Meetings
606
+ /**
607
+ * Registers for all required StatsAnalyzer events
608
+ * @private
609
+ * @returns {void}
610
+ * @memberof Meetings
611
611
  */
612
612
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "setupStatsAnalyzerEventHandlers", function () {
613
613
  _this.statsAnalyzer.on(_statsAnalyzer.EVENTS.MEDIA_QUALITY, function (options) {
@@ -672,11 +672,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
672
672
  });
673
673
  });
674
674
  });
675
- /**
676
- * emits event when the negotation is completed
677
- * @returns {void}
678
- * @private
679
- * @memberof Meeting
675
+ /**
676
+ * emits event when the negotation is completed
677
+ * @returns {void}
678
+ * @private
679
+ * @memberof Meeting
680
680
  */
681
681
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "mediaNegotiatedEvent", function () {
682
682
  // @ts-ignore - config coming from registerPlugin
@@ -688,12 +688,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
688
688
  }, _constants.EVENT_TRIGGERS.MEDIA_NEGOTIATED);
689
689
  }
690
690
  });
691
- /**
692
- * Checks if there are any queued media updates and runs the first one from
693
- * the queue if we are in a state that allows doing that.
694
- * @returns {undefined}
695
- * @public
696
- * @memberof Meeting
691
+ /**
692
+ * Checks if there are any queued media updates and runs the first one from
693
+ * the queue if we are in a state that allows doing that.
694
+ * @returns {undefined}
695
+ * @public
696
+ * @memberof Meeting
697
697
  */
698
698
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "processNextQueuedMediaUpdate", function () {
699
699
  if (_this.canUpdateMedia() && _this.queuedMediaUpdates.length > 0) {
@@ -722,11 +722,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
722
722
  }
723
723
  }
724
724
  });
725
- /**
726
- * clear the meeting data
727
- * @returns {undefined}
728
- * @public
729
- * @memberof Meeting
725
+ /**
726
+ * clear the meeting data
727
+ * @returns {undefined}
728
+ * @public
729
+ * @memberof Meeting
730
730
  */
731
731
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "clearMeetingData", function () {
732
732
  _this.audio = null;
@@ -742,11 +742,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
742
742
  _this.transcription = undefined;
743
743
  }
744
744
  });
745
- /**
746
- * starts keepAlives being sent
747
- * @returns {void}
748
- * @private
749
- * @memberof Meeting
745
+ /**
746
+ * starts keepAlives being sent
747
+ * @returns {void}
748
+ * @private
749
+ * @memberof Meeting
750
750
  */
751
751
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "startKeepAlive", function () {
752
752
  var _this$joinedWith, _this$joinedWith2;
@@ -778,11 +778,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
778
778
  });
779
779
  }, keepAliveInterval);
780
780
  });
781
- /**
782
- * stops keepAlives being sent
783
- * @returns {void}
784
- * @private
785
- * @memberof Meeting
781
+ /**
782
+ * stops keepAlives being sent
783
+ * @returns {void}
784
+ * @private
785
+ * @memberof Meeting
786
786
  */
787
787
  (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "stopKeepAlive", function () {
788
788
  if (!_this.keepAliveTimerId) {
@@ -792,87 +792,87 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
792
792
  _this.keepAliveTimerId = null;
793
793
  });
794
794
  _this.attrs = attrs;
795
- /**
796
- * @instance
797
- * @type {Object}
798
- * @readonly
799
- * @private
800
- * @memberof Meeting
795
+ /**
796
+ * @instance
797
+ * @type {Object}
798
+ * @readonly
799
+ * @private
800
+ * @memberof Meeting
801
801
  */
802
802
  _this.options = _options;
803
- /**
804
- * @instance
805
- * @type {String}
806
- * @readonly
807
- * @public
808
- * @memberof Meeting
803
+ /**
804
+ * @instance
805
+ * @type {String}
806
+ * @readonly
807
+ * @public
808
+ * @memberof Meeting
809
809
  */
810
810
  _this.id = _uuid.default.v4();
811
- /**
812
- * Correlation ID used for network tracking of meeting join
813
- * @instance
814
- * @type {String}
815
- * @readonly
816
- * @public
817
- * @memberof Meeting
811
+ /**
812
+ * Correlation ID used for network tracking of meeting join
813
+ * @instance
814
+ * @type {String}
815
+ * @readonly
816
+ * @public
817
+ * @memberof Meeting
818
818
  */
819
819
  _this.correlationId = _this.id;
820
- /**
821
- * @instance
822
- * @type {String}
823
- * @readonly
824
- * @public
825
- * @memberof Meeting
820
+ /**
821
+ * @instance
822
+ * @type {String}
823
+ * @readonly
824
+ * @public
825
+ * @memberof Meeting
826
826
  */
827
827
  _this.userId = attrs.userId;
828
- /**
829
- * Organization ID
830
- * @instance
831
- * @type {String}
832
- * @readonly
833
- * @public
834
- * @memberof Meeting
828
+ /**
829
+ * Organization ID
830
+ * @instance
831
+ * @type {String}
832
+ * @readonly
833
+ * @public
834
+ * @memberof Meeting
835
835
  */
836
836
  _this.orgId = attrs.orgId;
837
- /**
838
- * @instance
839
- * @type {String}
840
- * @readonly
841
- * @public
842
- * @memberof Meeting
837
+ /**
838
+ * @instance
839
+ * @type {String}
840
+ * @readonly
841
+ * @public
842
+ * @memberof Meeting
843
843
  */
844
844
  _this.resource = attrs.resource;
845
- /**
846
- * @instance
847
- * @type {String}
848
- * @readonly
849
- * @public
850
- * @memberof Meeting
845
+ /**
846
+ * @instance
847
+ * @type {String}
848
+ * @readonly
849
+ * @public
850
+ * @memberof Meeting
851
851
  */
852
852
  _this.deviceUrl = attrs.deviceUrl;
853
- /**
854
- * @description set you -1 as default values is 0 (used to idenfify if 1st roap request was sent)
855
- * @instance
856
- * @type {Number}
857
- * @readonly
858
- * @private
859
- * @memberof Meeting
853
+ /**
854
+ * @description set you -1 as default values is 0 (used to idenfify if 1st roap request was sent)
855
+ * @instance
856
+ * @type {Number}
857
+ * @readonly
858
+ * @private
859
+ * @memberof Meeting
860
860
  */
861
861
  _this.roapSeq = _constants.ROAP_SEQ_PRE;
862
- /**
863
- * @instance
864
- * @type {Object}
865
- * @readonly
866
- * @public
867
- * @memberof Meeting
862
+ /**
863
+ * @instance
864
+ * @type {Object}
865
+ * @readonly
866
+ * @public
867
+ * @memberof Meeting
868
868
  */
869
869
  // TODO: needs to be defined as a class
870
870
  _this.meetingInfo = {};
871
- /**
872
- * @instance
873
- * @type {Members}
874
- * @public
875
- * @memberof Meeting
871
+ /**
872
+ * @instance
873
+ * @type {Members}
874
+ * @public
875
+ * @memberof Meeting
876
876
  */
877
877
  // @ts-ignore - Fix type
878
878
  _this.members = new _index2.default({
@@ -880,171 +880,171 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
880
880
  }, {
881
881
  parent: _this.webex
882
882
  });
883
- /**
884
- * @instance
885
- * @type {Roap}
886
- * @readonly
887
- * @private
888
- * @memberof Meeting
883
+ /**
884
+ * @instance
885
+ * @type {Roap}
886
+ * @readonly
887
+ * @private
888
+ * @memberof Meeting
889
889
  */
890
890
  // @ts-ignore - Fix type
891
891
  _this.roap = new _index.default({}, {
892
892
  parent: _this.webex
893
893
  });
894
- /**
895
- * created later
896
- * @instance
897
- * @type {ReconnectionManager}
898
- * @readonly
899
- * @private
900
- * @memberof Meeting
894
+ /**
895
+ * created later
896
+ * @instance
897
+ * @type {ReconnectionManager}
898
+ * @readonly
899
+ * @private
900
+ * @memberof Meeting
901
901
  */
902
902
  _this.reconnectionManager = new _reconnectionManager.default((0, _assertThisInitialized2.default)(_this));
903
- /**
904
- * created later
905
- * @instance
906
- * @type {MuteState}
907
- * @private
908
- * @memberof Meeting
903
+ /**
904
+ * created later
905
+ * @instance
906
+ * @type {MuteState}
907
+ * @private
908
+ * @memberof Meeting
909
909
  */
910
910
  _this.audio = null;
911
- /**
912
- * created later
913
- * @instance
914
- * @type {MuteState}
915
- * @private
916
- * @memberof Meeting
911
+ /**
912
+ * created later
913
+ * @instance
914
+ * @type {MuteState}
915
+ * @private
916
+ * @memberof Meeting
917
917
  */
918
918
  _this.video = null;
919
- /**
920
- * created later
921
- * @instance
922
- * @type {EffectsState}
923
- * @private
924
- * @memberof Meeting
919
+ /**
920
+ * created later
921
+ * @instance
922
+ * @type {EffectsState}
923
+ * @private
924
+ * @memberof Meeting
925
925
  */
926
926
  _this.effects = null;
927
- /**
928
- * @instance
929
- * @type {MeetingStateMachine}
930
- * @readonly
931
- * @public
932
- * @memberof Meeting
927
+ /**
928
+ * @instance
929
+ * @type {MeetingStateMachine}
930
+ * @readonly
931
+ * @public
932
+ * @memberof Meeting
933
933
  */
934
934
  _this.meetingFiniteStateMachine = _state.default.create((0, _assertThisInitialized2.default)(_this));
935
- /**
936
- * @instance
937
- * @type {String}
938
- * @readonly
939
- * @public
940
- * @memberof Meeting
935
+ /**
936
+ * @instance
937
+ * @type {String}
938
+ * @readonly
939
+ * @public
940
+ * @memberof Meeting
941
941
  */
942
942
  _this.conversationUrl = null;
943
- /**
944
- * @instance
945
- * @type {String}
946
- * @readonly
947
- * @public
948
- * @memberof Meeting
943
+ /**
944
+ * @instance
945
+ * @type {String}
946
+ * @readonly
947
+ * @public
948
+ * @memberof Meeting
949
949
  */
950
950
  _this.locusUrl = attrs.locus && attrs.locus.url || null;
951
- /**
952
- * @instance
953
- * @type {String}
954
- * @readonly
955
- * @public
956
- * @memberof Meeting
951
+ /**
952
+ * @instance
953
+ * @type {String}
954
+ * @readonly
955
+ * @public
956
+ * @memberof Meeting
957
957
  */
958
958
  _this.sipUri = null;
959
- /**
960
- * @instance
961
- * @type {String}
962
- * @readonly
963
- * @public
964
- * @memberof Meeting
959
+ /**
960
+ * @instance
961
+ * @type {String}
962
+ * @readonly
963
+ * @public
964
+ * @memberof Meeting
965
965
  */
966
966
  _this.destination = attrs.destination;
967
- /**
968
- * @instance
969
- * @type {String}
970
- * @readonly
971
- * @public
972
- * @memberof Meeting
967
+ /**
968
+ * @instance
969
+ * @type {String}
970
+ * @readonly
971
+ * @public
972
+ * @memberof Meeting
973
973
  */
974
974
  _this.destinationType = attrs.destinationType;
975
- /**
976
- * @instance
977
- * @type {String}
978
- * @readonly
979
- * @public
980
- * @memberof Meeting
975
+ /**
976
+ * @instance
977
+ * @type {String}
978
+ * @readonly
979
+ * @public
980
+ * @memberof Meeting
981
981
  */
982
982
  _this.partner = null;
983
- /**
984
- * @instance
985
- * @type {String}
986
- * @readonly
987
- * @public
988
- * @memberof Meeting
983
+ /**
984
+ * @instance
985
+ * @type {String}
986
+ * @readonly
987
+ * @public
988
+ * @memberof Meeting
989
989
  */
990
990
  _this.type = null;
991
- /**
992
- * @instance
993
- * @type {String}
994
- * @readonly
995
- * @public
996
- * @memberof Meeting
991
+ /**
992
+ * @instance
993
+ * @type {String}
994
+ * @readonly
995
+ * @public
996
+ * @memberof Meeting
997
997
  */
998
998
  _this.owner = null;
999
- /**
1000
- * @instance
1001
- * @type {String}
1002
- * @readonly
1003
- * @public
1004
- * @memberof Meeting
999
+ /**
1000
+ * @instance
1001
+ * @type {String}
1002
+ * @readonly
1003
+ * @public
1004
+ * @memberof Meeting
1005
1005
  */
1006
1006
  _this.hostId = null;
1007
- /**
1008
- * @instance
1009
- * @type {String}
1010
- * @readonly
1011
- * @public
1012
- * @memberof Meeting
1007
+ /**
1008
+ * @instance
1009
+ * @type {String}
1010
+ * @readonly
1011
+ * @public
1012
+ * @memberof Meeting
1013
1013
  */
1014
1014
  _this.policy = null;
1015
- /**
1016
- * @instance
1017
- * @type {MeetingRequest}
1018
- * @private
1019
- * @memberof Meeting
1015
+ /**
1016
+ * @instance
1017
+ * @type {MeetingRequest}
1018
+ * @private
1019
+ * @memberof Meeting
1020
1020
  */
1021
1021
  _this.meetingRequest = new _request.default({}, _options);
1022
- /**
1023
- * @instance
1024
- * @type {Array}
1025
- * @readonly
1026
- * @public
1027
- * @memberof Meeting
1022
+ /**
1023
+ * @instance
1024
+ * @type {Array}
1025
+ * @readonly
1026
+ * @public
1027
+ * @memberof Meeting
1028
1028
  */
1029
1029
  _this.mediaConnections = null;
1030
1030
 
1031
- /**
1032
- * Fetching meeting info can be done randomly 2-5 mins before meeting start
1033
- * In case it is done before the timer expires, this timeout id is reset to cancel the timer.
1034
- * @instance
1035
- * @type {Number}
1036
- * @readonly
1037
- * @private
1038
- * @memberof Meeting
1031
+ /**
1032
+ * Fetching meeting info can be done randomly 2-5 mins before meeting start
1033
+ * In case it is done before the timer expires, this timeout id is reset to cancel the timer.
1034
+ * @instance
1035
+ * @type {Number}
1036
+ * @readonly
1037
+ * @private
1038
+ * @memberof Meeting
1039
1039
  */
1040
1040
  _this.fetchMeetingInfoTimeoutId = null;
1041
1041
 
1042
- /**
1043
- * Update the MediaConnections property with new information
1044
- * @param {array} mediaConnections
1045
- * @returns {undefined}
1046
- * @private
1047
- * @memberof Meeting
1042
+ /**
1043
+ * Update the MediaConnections property with new information
1044
+ * @param {array} mediaConnections
1045
+ * @returns {undefined}
1046
+ * @private
1047
+ * @memberof Meeting
1048
1048
  */
1049
1049
  _this.updateMediaConnections = function (mediaConnections) {
1050
1050
  if (!(0, _isEqual2.default)(_this.mediaConnections, mediaConnections)) {
@@ -1052,45 +1052,45 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1052
1052
  _this.mediaConnections = mediaConnections.slice(-1);
1053
1053
  }
1054
1054
  };
1055
- /**
1056
- * Passing only info as we send basic info for meeting added event
1057
- * @instance
1058
- * @type {MediaProperties}
1059
- * @public
1060
- * @memberof Meeting
1055
+ /**
1056
+ * Passing only info as we send basic info for meeting added event
1057
+ * @instance
1058
+ * @type {MediaProperties}
1059
+ * @public
1060
+ * @memberof Meeting
1061
1061
  */
1062
1062
  _this.mediaProperties = new _properties.default();
1063
- /**
1064
- * @instance
1065
- * @type {InMeetingActions}
1066
- * @public
1067
- * @memberof Meeting
1063
+ /**
1064
+ * @instance
1065
+ * @type {InMeetingActions}
1066
+ * @public
1067
+ * @memberof Meeting
1068
1068
  */
1069
1069
  _this.inMeetingActions = new _inMeetingActions.default();
1070
- /**
1071
- * This is deprecated, please use shareStatus instead.
1072
- * @instance
1073
- * @type {Boolean}
1074
- * @readonly
1075
- * @public
1076
- * @memberof Meeting
1077
- * @deprecated after v1.118.13
1070
+ /**
1071
+ * This is deprecated, please use shareStatus instead.
1072
+ * @instance
1073
+ * @type {Boolean}
1074
+ * @readonly
1075
+ * @public
1076
+ * @memberof Meeting
1077
+ * @deprecated after v1.118.13
1078
1078
  */
1079
1079
  _this.isSharing = false;
1080
- /**
1081
- * @instance
1082
- * @type {string}
1083
- * @readonly
1084
- * @public
1085
- * @memberof Meeting
1080
+ /**
1081
+ * @instance
1082
+ * @type {string}
1083
+ * @readonly
1084
+ * @public
1085
+ * @memberof Meeting
1086
1086
  */
1087
1087
  _this.shareStatus = _constants.SHARE_STATUS.NO_SHARE;
1088
- /**
1089
- * @instance
1090
- * @type {Boolean}
1091
- * @readonly
1092
- * @private
1093
- * @memberof Meeting
1088
+ /**
1089
+ * @instance
1090
+ * @type {Boolean}
1091
+ * @readonly
1092
+ * @private
1093
+ * @memberof Meeting
1094
1094
  */
1095
1095
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), 'isLocalShareLive', {
1096
1096
  get: function get() {
@@ -1107,123 +1107,123 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1107
1107
  },
1108
1108
  configurable: true
1109
1109
  });
1110
- /**
1111
- * @instance
1112
- * @type {Array}
1113
- * @readonly
1114
- * @public
1115
- * @memberof Meeting
1110
+ /**
1111
+ * @instance
1112
+ * @type {Array}
1113
+ * @readonly
1114
+ * @public
1115
+ * @memberof Meeting
1116
1116
  */
1117
1117
  _this.callEvents = [];
1118
- /**
1119
- * There is a pending floor requested by the user
1120
- * @instance
1121
- * @type {boolean}
1122
- * @private
1123
- * @memberof Meeting
1118
+ /**
1119
+ * There is a pending floor requested by the user
1120
+ * @instance
1121
+ * @type {boolean}
1122
+ * @private
1123
+ * @memberof Meeting
1124
1124
  */
1125
1125
  _this.floorGrantPending = false;
1126
- /**
1127
- * The latest status of the dial in device (can be "JOINED", "CONNECTED", "LEFT",
1128
- * "TRANSFERRING", "SUCCESS" or "")
1129
- * @instance
1130
- * @type {String}
1131
- * @private
1132
- * @memberof Meeting
1126
+ /**
1127
+ * The latest status of the dial in device (can be "JOINED", "CONNECTED", "LEFT",
1128
+ * "TRANSFERRING", "SUCCESS" or "")
1129
+ * @instance
1130
+ * @type {String}
1131
+ * @private
1132
+ * @memberof Meeting
1133
1133
  */
1134
1134
  _this.dialInDeviceStatus = _constants.PSTN_STATUS.UNKNOWN;
1135
- /**
1136
- * the url for provisioned device used to dial in
1137
- * @instance
1138
- * @type {String}
1139
- * @private
1140
- * @memberof Meeting
1135
+ /**
1136
+ * the url for provisioned device used to dial in
1137
+ * @instance
1138
+ * @type {String}
1139
+ * @private
1140
+ * @memberof Meeting
1141
1141
  */
1142
1142
  _this.dialInUrl = '';
1143
- /**
1144
- * The latest status of the dial out device (can be "JOINED", "CONNECTED", "LEFT",
1145
- * "TRANSFERRING", "SUCCESS" or "")
1146
- * @instance
1147
- * @type {String}
1148
- * @private
1149
- * @memberof Meeting
1143
+ /**
1144
+ * The latest status of the dial out device (can be "JOINED", "CONNECTED", "LEFT",
1145
+ * "TRANSFERRING", "SUCCESS" or "")
1146
+ * @instance
1147
+ * @type {String}
1148
+ * @private
1149
+ * @memberof Meeting
1150
1150
  */
1151
1151
  _this.dialOutDeviceStatus = _constants.PSTN_STATUS.UNKNOWN;
1152
- /**
1153
- * the url for provisioned device used to dial out
1154
- * @instance
1155
- * @type {String}
1156
- * @private
1157
- * @memberof Meeting
1152
+ /**
1153
+ * the url for provisioned device used to dial out
1154
+ * @instance
1155
+ * @type {String}
1156
+ * @private
1157
+ * @memberof Meeting
1158
1158
  */
1159
1159
  _this.dialOutUrl = '';
1160
- /**
1161
- * @instance
1162
- * @type {StatsAnalyzer}
1163
- * @private
1164
- * @memberof Meeting
1160
+ /**
1161
+ * @instance
1162
+ * @type {StatsAnalyzer}
1163
+ * @private
1164
+ * @memberof Meeting
1165
1165
  */
1166
1166
  _this.statsAnalyzer = null;
1167
- /**
1168
- * @instance
1169
- * @type {NetworkQualityMonitor}
1170
- * @private
1171
- * @memberof Meeting
1167
+ /**
1168
+ * @instance
1169
+ * @type {NetworkQualityMonitor}
1170
+ * @private
1171
+ * @memberof Meeting
1172
1172
  */
1173
1173
  _this.networkQualityMonitor = null;
1174
- /**
1175
- * @instance
1176
- * @type {String}
1177
- * @readonly
1178
- * @public
1179
- * @memberof Meeting
1174
+ /**
1175
+ * @instance
1176
+ * @type {String}
1177
+ * @readonly
1178
+ * @public
1179
+ * @memberof Meeting
1180
1180
  */
1181
1181
  _this.networkStatus = null;
1182
- /**
1183
- * Passing only info as we send basic info for meeting added event
1184
- * @instance
1185
- * @type {MeetingRequest}
1186
- * @private
1187
- * @memberof Meeting
1182
+ /**
1183
+ * Passing only info as we send basic info for meeting added event
1184
+ * @instance
1185
+ * @type {MeetingRequest}
1186
+ * @private
1187
+ * @memberof Meeting
1188
1188
  */
1189
1189
  // @ts-ignore - Fix type
1190
1190
  _this.locusInfo = new _locusInfo.default(_this.updateMeetingObject.bind((0, _assertThisInitialized2.default)(_this)), _this.webex, _this.id);
1191
1191
 
1192
1192
  // We had to add listeners first before setting up the locus instance
1193
- /**
1194
- * @instance
1195
- * @type {Recording}
1196
- * @readonly
1197
- * @public
1198
- * @memberof Meeting
1193
+ /**
1194
+ * @instance
1195
+ * @type {Recording}
1196
+ * @readonly
1197
+ * @public
1198
+ * @memberof Meeting
1199
1199
  */
1200
1200
  _this.recording = null;
1201
1201
 
1202
- /**
1203
- * Promise that exists if joining, and resolves upon method completion.
1204
- * @instance
1205
- * @type {Promise}
1206
- * @private
1207
- * @memberof Meeting
1202
+ /**
1203
+ * Promise that exists if joining, and resolves upon method completion.
1204
+ * @instance
1205
+ * @type {Promise}
1206
+ * @private
1207
+ * @memberof Meeting
1208
1208
  */
1209
1209
  _this.deferJoin = undefined;
1210
1210
 
1211
- /**
1212
- * Staus of websocket connection/mercury connection.
1213
- * @instance
1214
- * @type {Boolean}
1215
- * @private
1216
- * @memberof Meeting
1211
+ /**
1212
+ * Staus of websocket connection/mercury connection.
1213
+ * @instance
1214
+ * @type {Boolean}
1215
+ * @private
1216
+ * @memberof Meeting
1217
1217
  */
1218
1218
  // @ts-ignore - Fix type
1219
1219
  _this.hasWebsocketConnected = _this.webex.internal.mercury.connected;
1220
1220
 
1221
- /**
1222
- * Last sent render information
1223
- * @instance
1224
- * @type {Object}
1225
- * @private
1226
- * @memberof Meeting
1221
+ /**
1222
+ * Last sent render information
1223
+ * @instance
1224
+ * @type {Object}
1225
+ * @private
1226
+ * @memberof Meeting
1227
1227
  */
1228
1228
  _this.lastVideoLayoutInfo = {
1229
1229
  layoutType: undefined,
@@ -1231,73 +1231,73 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1231
1231
  content: undefined
1232
1232
  };
1233
1233
 
1234
- /**
1235
- * Queue of pending media updates requested by the app
1236
- * @instance
1237
- * @type {Array}
1238
- * @private
1239
- * @memberof Meeting
1234
+ /**
1235
+ * Queue of pending media updates requested by the app
1236
+ * @instance
1237
+ * @type {Array}
1238
+ * @private
1239
+ * @memberof Meeting
1240
1240
  */
1241
1241
  _this.queuedMediaUpdates = [];
1242
1242
 
1243
- /**
1244
- * Meeting transcription object
1245
- * @instance
1246
- * @type {Transcription}
1247
- * @private
1248
- * @memberof Meeting
1243
+ /**
1244
+ * Meeting transcription object
1245
+ * @instance
1246
+ * @type {Transcription}
1247
+ * @private
1248
+ * @memberof Meeting
1249
1249
  */
1250
1250
  _this.transcription = undefined;
1251
1251
 
1252
- /**
1253
- * Password status. If it's PASSWORD_STATUS.REQUIRED then verifyPassword() needs to be called
1254
- * with the correct password before calling join()
1255
- * @instance
1256
- * @type {PASSWORD_STATUS}
1257
- * @public
1258
- * @memberof Meeting
1252
+ /**
1253
+ * Password status. If it's PASSWORD_STATUS.REQUIRED then verifyPassword() needs to be called
1254
+ * with the correct password before calling join()
1255
+ * @instance
1256
+ * @type {PASSWORD_STATUS}
1257
+ * @public
1258
+ * @memberof Meeting
1259
1259
  */
1260
1260
  _this.passwordStatus = _constants.PASSWORD_STATUS.UNKNOWN;
1261
1261
 
1262
- /**
1263
- * Information about required captcha. If null, then no captcha is required. status. If it's PASSWORD_STATUS.REQUIRED then verifyPassword() needs to be called
1264
- * with the correct password before calling join()
1265
- * @instance
1266
- * @type {Object}
1267
- * @property {string} captchaId captcha id
1268
- * @property {string} verificationImageURL Url of the captcha image
1269
- * @property {string} verificationAudioURL Url of the captcha audio file
1270
- * @property {string} refreshURL Url used for refreshing the captcha (don't use it directly, call refreshCaptcha() instead)
1271
- * @public
1272
- * @memberof Meeting
1262
+ /**
1263
+ * Information about required captcha. If null, then no captcha is required. status. If it's PASSWORD_STATUS.REQUIRED then verifyPassword() needs to be called
1264
+ * with the correct password before calling join()
1265
+ * @instance
1266
+ * @type {Object}
1267
+ * @property {string} captchaId captcha id
1268
+ * @property {string} verificationImageURL Url of the captcha image
1269
+ * @property {string} verificationAudioURL Url of the captcha audio file
1270
+ * @property {string} refreshURL Url used for refreshing the captcha (don't use it directly, call refreshCaptcha() instead)
1271
+ * @public
1272
+ * @memberof Meeting
1273
1273
  */
1274
1274
  _this.requiredCaptcha = null;
1275
1275
 
1276
- /**
1277
- * Indicates the reason for last failure to obtain meeting.meetingInfo. MEETING_INFO_FAILURE_REASON.NONE if meeting info was
1278
- * retrieved successfully
1279
- * @instance
1280
- * @type {MEETING_INFO_FAILURE_REASON}
1281
- * @private
1282
- * @memberof Meeting
1276
+ /**
1277
+ * Indicates the reason for last failure to obtain meeting.meetingInfo. MEETING_INFO_FAILURE_REASON.NONE if meeting info was
1278
+ * retrieved successfully
1279
+ * @instance
1280
+ * @type {MEETING_INFO_FAILURE_REASON}
1281
+ * @private
1282
+ * @memberof Meeting
1283
1283
  */
1284
1284
  _this.meetingInfoFailureReason = undefined;
1285
1285
 
1286
- /**
1287
- * Repeating timer used to send keepAlives when in lobby
1288
- * @instance
1289
- * @type {String}
1290
- * @private
1291
- * @memberof Meeting
1286
+ /**
1287
+ * Repeating timer used to send keepAlives when in lobby
1288
+ * @instance
1289
+ * @type {String}
1290
+ * @private
1291
+ * @memberof Meeting
1292
1292
  */
1293
1293
  _this.keepAliveTimerId = null;
1294
1294
 
1295
- /**
1296
- * The class that helps to control recording functions: start, stop, pause, resume, etc
1297
- * @instance
1298
- * @type {RecordingController}
1299
- * @public
1300
- * @memberof Meeting
1295
+ /**
1296
+ * The class that helps to control recording functions: start, stop, pause, resume, etc
1297
+ * @instance
1298
+ * @type {RecordingController}
1299
+ * @public
1300
+ * @memberof Meeting
1301
1301
  */
1302
1302
  _this.recordingController = new _recordingController.default(_this.meetingRequest, {
1303
1303
  serviceUrl: (_this$locusInfo = _this.locusInfo) === null || _this$locusInfo === void 0 ? void 0 : (_this$locusInfo$links = _this$locusInfo.links) === null || _this$locusInfo$links === void 0 ? void 0 : (_this$locusInfo$links2 = _this$locusInfo$links.services) === null || _this$locusInfo$links2 === void 0 ? void 0 : (_this$locusInfo$links3 = _this$locusInfo$links2.record) === null || _this$locusInfo$links3 === void 0 ? void 0 : _this$locusInfo$links3.url,
@@ -1306,12 +1306,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1306
1306
  displayHints: []
1307
1307
  });
1308
1308
 
1309
- /**
1310
- * The class that helps to control recording functions: start, stop, pause, resume, etc
1311
- * @instance
1312
- * @type {ControlsOptionsManager}
1313
- * @public
1314
- * @memberof Meeting
1309
+ /**
1310
+ * The class that helps to control recording functions: start, stop, pause, resume, etc
1311
+ * @instance
1312
+ * @type {ControlsOptionsManager}
1313
+ * @public
1314
+ * @memberof Meeting
1315
1315
  */
1316
1316
  _this.controlsOptionsManager = new _controlsOptionsManager.default(_this.meetingRequest, {
1317
1317
  locusUrl: (_this$locusInfo4 = _this.locusInfo) === null || _this$locusInfo4 === void 0 ? void 0 : _this$locusInfo4.url,
@@ -1323,14 +1323,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1323
1323
  return _this;
1324
1324
  }
1325
1325
 
1326
- /**
1327
- * Fetches meeting information.
1328
- * @param {Object} options
1329
- * @param {String} [options.password] optional
1330
- * @param {String} [options.captchaCode] optional
1331
- * @public
1332
- * @memberof Meeting
1333
- * @returns {Promise}
1326
+ /**
1327
+ * Fetches meeting information.
1328
+ * @param {Object} options
1329
+ * @param {String} [options.password] optional
1330
+ * @param {String} [options.captchaCode] optional
1331
+ * @public
1332
+ * @memberof Meeting
1333
+ * @returns {Promise}
1334
1334
  */
1335
1335
  (0, _createClass2.default)(Meeting, [{
1336
1336
  key: "fetchMeetingInfo",
@@ -1433,14 +1433,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1433
1433
  }
1434
1434
  return fetchMeetingInfo;
1435
1435
  }()
1436
- /**
1437
- * Checks if the supplied password/host key is correct. It returns a promise with information whether the
1438
- * password and captcha code were correct or not.
1439
- * @param {String} password - this can be either a password or a host key, can be undefined if only captcha was required
1440
- * @param {String} captchaCode - can be undefined if captcha was not required by the server
1441
- * @public
1442
- * @memberof Meeting
1443
- * @returns {Promise<{isPasswordValid: boolean, requiredCaptcha: boolean, failureReason: MEETING_INFO_FAILURE_REASON}>}
1436
+ /**
1437
+ * Checks if the supplied password/host key is correct. It returns a promise with information whether the
1438
+ * password and captcha code were correct or not.
1439
+ * @param {String} password - this can be either a password or a host key, can be undefined if only captcha was required
1440
+ * @param {String} captchaCode - can be undefined if captcha was not required by the server
1441
+ * @public
1442
+ * @memberof Meeting
1443
+ * @returns {Promise<{isPasswordValid: boolean, requiredCaptcha: boolean, failureReason: MEETING_INFO_FAILURE_REASON}>}
1444
1444
  */
1445
1445
  }, {
1446
1446
  key: "verifyPassword",
@@ -1468,12 +1468,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1468
1468
  });
1469
1469
  }
1470
1470
 
1471
- /**
1472
- * Refreshes the captcha. As a result the meeting will have new captcha id, image and audio.
1473
- * If the refresh operation fails, meeting remains with the old captcha properties.
1474
- * @public
1475
- * @memberof Meeting
1476
- * @returns {Promise}
1471
+ /**
1472
+ * Refreshes the captcha. As a result the meeting will have new captcha id, image and audio.
1473
+ * If the refresh operation fails, meeting remains with the old captcha properties.
1474
+ * @public
1475
+ * @memberof Meeting
1476
+ * @returns {Promise}
1477
1477
  */
1478
1478
  }, {
1479
1479
  key: "refreshCaptcha",
@@ -1502,11 +1502,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1502
1502
  });
1503
1503
  }
1504
1504
 
1505
- /**
1506
- * Proxy function for all the listener set ups
1507
- * @returns {undefined}
1508
- * @private
1509
- * @memberof Meeting
1505
+ /**
1506
+ * Proxy function for all the listener set ups
1507
+ * @returns {undefined}
1508
+ * @private
1509
+ * @memberof Meeting
1510
1510
  */
1511
1511
  }, {
1512
1512
  key: "setUpLocusInfoListeners",
@@ -1529,11 +1529,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1529
1529
  this.setUpLocusInfoMediaInactiveListener();
1530
1530
  }
1531
1531
 
1532
- /**
1533
- * Set up the locus info listener for meetings disconnected due to inactivity
1534
- * @returns {undefined}
1535
- * @private
1536
- * @memberof Meeting
1532
+ /**
1533
+ * Set up the locus info listener for meetings disconnected due to inactivity
1534
+ * @returns {undefined}
1535
+ * @private
1536
+ * @memberof Meeting
1537
1537
  */
1538
1538
  }, {
1539
1539
  key: "setUpLocusInfoMediaInactiveListener",
@@ -1569,11 +1569,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1569
1569
  });
1570
1570
  }
1571
1571
 
1572
- /**
1573
- * Set up the locus info listener for assign host permissions on a meeting
1574
- * @returns {undefined}
1575
- * @private
1576
- * @memberof Meeting
1572
+ /**
1573
+ * Set up the locus info listener for assign host permissions on a meeting
1574
+ * @returns {undefined}
1575
+ * @private
1576
+ * @memberof Meeting
1577
1577
  */
1578
1578
  }, {
1579
1579
  key: "setUpLocusInfoAssignHostListener",
@@ -1592,11 +1592,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1592
1592
  });
1593
1593
  }
1594
1594
 
1595
- /**
1596
- * Set up the internal locus info full state object listener
1597
- * @returns {undefined}
1598
- * @private
1599
- * @memberof Meeting
1595
+ /**
1596
+ * Set up the internal locus info full state object listener
1597
+ * @returns {undefined}
1598
+ * @private
1599
+ * @memberof Meeting
1600
1600
  */
1601
1601
  }, {
1602
1602
  key: "setUpLocusFullStateListener",
@@ -1615,16 +1615,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1615
1615
  });
1616
1616
  }
1617
1617
 
1618
- /**
1619
- * get the metrics payload pre
1620
- * @param {Object} options
1621
- * @param {String} options.event
1622
- * @param {String} options.trackingId
1623
- * @param {Object} options.locus
1624
- * @param {Array} options.mediaConnections
1625
- * @param {Object} options.errors
1626
- * @returns {Object}
1627
- * @memberof Meeting
1618
+ /**
1619
+ * get the metrics payload pre
1620
+ * @param {Object} options
1621
+ * @param {String} options.event
1622
+ * @param {String} options.trackingId
1623
+ * @param {Object} options.locus
1624
+ * @param {Array} options.mediaConnections
1625
+ * @param {Object} options.errors
1626
+ * @returns {Object}
1627
+ * @memberof Meeting
1628
1628
  */
1629
1629
  }, {
1630
1630
  key: "getAnalyzerMetricsPrePayload",
@@ -1724,16 +1724,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1724
1724
  return null;
1725
1725
  }
1726
1726
 
1727
- /**
1728
- * Send the metrics to call-analyzer dashboard
1729
- * @param {Object} options
1730
- * @param {String} options.event
1731
- * @param {String} options.trackingId
1732
- * @param {Object} options.locus
1733
- * @param {Object} options.errors
1734
- * @returns {Promise}
1735
- * @private
1736
- * @memberof Meeting
1727
+ /**
1728
+ * Send the metrics to call-analyzer dashboard
1729
+ * @param {Object} options
1730
+ * @param {String} options.event
1731
+ * @param {String} options.trackingId
1732
+ * @param {Object} options.locus
1733
+ * @param {Object} options.errors
1734
+ * @returns {Promise}
1735
+ * @private
1736
+ * @memberof Meeting
1737
1737
  */
1738
1738
  }, {
1739
1739
  key: "sendCallAnalyzerMetrics",
@@ -1744,15 +1744,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1744
1744
  return this.webex.internal.metrics.submitCallDiagnosticEvents(payload);
1745
1745
  }
1746
1746
 
1747
- /**
1748
- * Send the metrics to Media Quality Analyzer dashboard
1749
- * @param {Object} options
1750
- * @param {String} options.event
1751
- * @param {String} options.trackingId
1752
- * @param {Object} options.locus
1753
- * @returns {Promise}
1754
- * @private
1755
- * @memberof Meeting
1747
+ /**
1748
+ * Send the metrics to Media Quality Analyzer dashboard
1749
+ * @param {Object} options
1750
+ * @param {String} options.event
1751
+ * @param {String} options.trackingId
1752
+ * @param {Object} options.locus
1753
+ * @returns {Promise}
1754
+ * @private
1755
+ * @memberof Meeting
1756
1756
  */
1757
1757
  }, {
1758
1758
  key: "sendMediaQualityAnalyzerMetrics",
@@ -1765,12 +1765,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1765
1765
  return this.webex.internal.metrics.submitCallDiagnosticEvents(payload);
1766
1766
  }
1767
1767
 
1768
- /**
1769
- * sets the network status on meeting object
1770
- * @param {String} networkStatus
1771
- * @private
1772
- * @returns {undefined}
1773
- * @memberof Meeting
1768
+ /**
1769
+ * sets the network status on meeting object
1770
+ * @param {String} networkStatus
1771
+ * @private
1772
+ * @returns {undefined}
1773
+ * @memberof Meeting
1774
1774
  */
1775
1775
  }, {
1776
1776
  key: "setNetworkStatus",
@@ -1789,13 +1789,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1789
1789
  this.networkStatus = networkStatus;
1790
1790
  }
1791
1791
 
1792
- /**
1793
- * Set up the locus info self listener
1794
- * update self value for members and updates the member
1795
- * notifies consumer with members:self:update {activeSelfId endedSelfId}
1796
- * @returns {undefined}
1797
- * @private
1798
- * @memberof Meeting
1792
+ /**
1793
+ * Set up the locus info self listener
1794
+ * update self value for members and updates the member
1795
+ * notifies consumer with members:self:update {activeSelfId endedSelfId}
1796
+ * @returns {undefined}
1797
+ * @private
1798
+ * @memberof Meeting
1799
1799
  */
1800
1800
  }, {
1801
1801
  key: "setUpLocusSelfListener",
@@ -1814,12 +1814,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1814
1814
  });
1815
1815
  }
1816
1816
 
1817
- /**
1818
- * Notify any changes on the pstn devices
1819
- * @param {Object} payload
1820
- * @returns {undefined}
1821
- * @private
1822
- * @memberof Meeting
1817
+ /**
1818
+ * Notify any changes on the pstn devices
1819
+ * @param {Object} payload
1820
+ * @returns {undefined}
1821
+ * @private
1822
+ * @memberof Meeting
1823
1823
  */
1824
1824
  }, {
1825
1825
  key: "pstnUpdate",
@@ -1868,13 +1868,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1868
1868
  }
1869
1869
  }
1870
1870
 
1871
- /**
1872
- * Set up the locus info host listener
1873
- * update host value for members and updates the member
1874
- * notifies consumer with members:host:update: {activeHostId, endedHostId}
1875
- * @returns {undefined}
1876
- * @private
1877
- * @memberof Meeting
1871
+ /**
1872
+ * Set up the locus info host listener
1873
+ * update host value for members and updates the member
1874
+ * notifies consumer with members:host:update: {activeHostId, endedHostId}
1875
+ * @returns {undefined}
1876
+ * @private
1877
+ * @memberof Meeting
1878
1878
  */
1879
1879
  }, {
1880
1880
  key: "setUpLocusHostListener",
@@ -1885,13 +1885,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1885
1885
  });
1886
1886
  }
1887
1887
 
1888
- /**
1889
- * Set up the locus info participants update listener
1890
- * update members collection value for members
1891
- * notifies consumer with members:update
1892
- * @returns {undefined}
1893
- * @private
1894
- * @memberof Meeting
1888
+ /**
1889
+ * Set up the locus info participants update listener
1890
+ * update members collection value for members
1891
+ * notifies consumer with members:update
1892
+ * @returns {undefined}
1893
+ * @private
1894
+ * @memberof Meeting
1895
1895
  */
1896
1896
  }, {
1897
1897
  key: "setUpLocusParticipantsListener",
@@ -1902,23 +1902,23 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1902
1902
  });
1903
1903
  }
1904
1904
 
1905
- /**
1906
- * Set up the locus info recording update listener
1907
- * update recording value for the meeting
1908
- * notifies consumer with:
1909
- * meeting:recording:started
1910
- * meeting:recording:stopped
1911
- * meeting:recording:paused
1912
- * meeting:recording:resumed
1913
- *
1914
- * Set up the locus info meeeting container listener
1915
- * update meetingContainerUrl value for the meeting
1916
- * notifies consumer with:
1917
- * meeting:meetingContainer:update
1918
- *
1919
- * @returns {undefined}
1920
- * @private
1921
- * @memberof Meeting
1905
+ /**
1906
+ * Set up the locus info recording update listener
1907
+ * update recording value for the meeting
1908
+ * notifies consumer with:
1909
+ * meeting:recording:started
1910
+ * meeting:recording:stopped
1911
+ * meeting:recording:paused
1912
+ * meeting:recording:resumed
1913
+ *
1914
+ * Set up the locus info meeeting container listener
1915
+ * update meetingContainerUrl value for the meeting
1916
+ * notifies consumer with:
1917
+ * meeting:meetingContainer:update
1918
+ *
1919
+ * @returns {undefined}
1920
+ * @private
1921
+ * @memberof Meeting
1922
1922
  */
1923
1923
  }, {
1924
1924
  key: "setupLocusControlsListener",
@@ -1994,13 +1994,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1994
1994
  });
1995
1995
  }
1996
1996
 
1997
- /**
1998
- * Set up the locus info media shares listener
1999
- * update content and whiteboard sharing id value for members, and updates the member
2000
- * notifies consumer with members:content:update {activeContentSharingId, endedContentSharingId}
2001
- * @returns {undefined}
2002
- * @private
2003
- * @memberof Meeting
1997
+ /**
1998
+ * Set up the locus info media shares listener
1999
+ * update content and whiteboard sharing id value for members, and updates the member
2000
+ * notifies consumer with members:content:update {activeContentSharingId, endedContentSharingId}
2001
+ * @returns {undefined}
2002
+ * @private
2003
+ * @memberof Meeting
2004
2004
  */
2005
2005
  }, {
2006
2006
  key: "setUpLocusMediaSharesListener",
@@ -2172,12 +2172,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2172
2172
  });
2173
2173
  }
2174
2174
 
2175
- /**
2176
- * Set up the locus info url listener
2177
- * update locus_url value for members
2178
- * @returns {undefined}
2179
- * @private
2180
- * @memberof Meeting
2175
+ /**
2176
+ * Set up the locus info url listener
2177
+ * update locus_url value for members
2178
+ * @returns {undefined}
2179
+ * @private
2180
+ * @memberof Meeting
2181
2181
  */
2182
2182
  }, {
2183
2183
  key: "setUpLocusUrlListener",
@@ -2193,14 +2193,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2193
2193
  });
2194
2194
  }
2195
2195
 
2196
- /**
2197
- * Set up the locus info service link listener
2198
- * update the locusInfo for recording controller
2199
- * does not currently re-emit the event as it's internal only
2200
- * payload is unused
2201
- * @returns {undefined}
2202
- * @private
2203
- * @memberof Meeting
2196
+ /**
2197
+ * Set up the locus info service link listener
2198
+ * update the locusInfo for recording controller
2199
+ * does not currently re-emit the event as it's internal only
2200
+ * payload is unused
2201
+ * @returns {undefined}
2202
+ * @private
2203
+ * @memberof Meeting
2204
2204
  */
2205
2205
  }, {
2206
2206
  key: "setUpLocusServicesListener",
@@ -2213,11 +2213,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2213
2213
  });
2214
2214
  }
2215
2215
 
2216
- /**
2217
- * Set up the locus info meeting info listener
2218
- * @returns {undefined}
2219
- * @private
2220
- * @memberof meeting
2216
+ /**
2217
+ * Set up the locus info meeting info listener
2218
+ * @returns {undefined}
2219
+ * @private
2220
+ * @memberof meeting
2221
2221
  */
2222
2222
  }, {
2223
2223
  key: "setUpLocusInfoMeetingInfoListener",
@@ -2284,11 +2284,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2284
2284
  });
2285
2285
  }
2286
2286
 
2287
- /**
2288
- * Set up the locus info embedded apps listener
2289
- * @returns {undefined}
2290
- * @private
2291
- * @memberof meeting
2287
+ /**
2288
+ * Set up the locus info embedded apps listener
2289
+ * @returns {undefined}
2290
+ * @private
2291
+ * @memberof meeting
2292
2292
  */
2293
2293
  }, {
2294
2294
  key: "setUpLocusEmbeddedAppsListener",
@@ -2304,11 +2304,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2304
2304
  });
2305
2305
  }
2306
2306
 
2307
- /**
2308
- * Internal function to listen to the self object changes
2309
- * @returns {undefined}
2310
- * @private
2311
- * @memberof Meeting
2307
+ /**
2308
+ * Internal function to listen to the self object changes
2309
+ * @returns {undefined}
2310
+ * @private
2311
+ * @memberof Meeting
2312
2312
  */
2313
2313
  }, {
2314
2314
  key: "setUpLocusInfoSelfListener",
@@ -2430,11 +2430,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2430
2430
  });
2431
2431
  }
2432
2432
 
2433
- /**
2434
- * Add LocusInfo nested object listeners (from child to parent)
2435
- * @returns {undefined}
2436
- * @private
2437
- * @memberof Meeting
2433
+ /**
2434
+ * Add LocusInfo nested object listeners (from child to parent)
2435
+ * @returns {undefined}
2436
+ * @private
2437
+ * @memberof Meeting
2438
2438
  */
2439
2439
  }, {
2440
2440
  key: "setUpLocusInfoMeetingListener",
@@ -2496,13 +2496,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2496
2496
  });
2497
2497
  }
2498
2498
 
2499
- /**
2500
- * Set meeting values rather than events
2501
- * @param {Object} object
2502
- * @returns {undefined}
2503
- * @private
2504
- * @memberof Meeting
2505
- * // TODO: is this function necessary?
2499
+ /**
2500
+ * Set meeting values rather than events
2501
+ * @param {Object} object
2502
+ * @returns {undefined}
2503
+ * @private
2504
+ * @memberof Meeting
2505
+ * // TODO: is this function necessary?
2506
2506
  */
2507
2507
  }, {
2508
2508
  key: "updateMeetingObject",
@@ -2518,16 +2518,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2518
2518
  }
2519
2519
  }
2520
2520
 
2521
- /**
2522
- * Invite a guest to the call that isn't normally part of this call
2523
- * @param {Object} invitee
2524
- * @param {String} invitee.emailAddress
2525
- * @param {String} invitee.email
2526
- * @param {String} invitee.phoneNumber
2527
- * @param {Boolean} [alertIfActive]
2528
- * @returns {Promise} see #members.addMember
2529
- * @public
2530
- * @memberof Meeting
2521
+ /**
2522
+ * Invite a guest to the call that isn't normally part of this call
2523
+ * @param {Object} invitee
2524
+ * @param {String} invitee.emailAddress
2525
+ * @param {String} invitee.email
2526
+ * @param {String} invitee.phoneNumber
2527
+ * @param {Boolean} [alertIfActive]
2528
+ * @returns {Promise} see #members.addMember
2529
+ * @public
2530
+ * @memberof Meeting
2531
2531
  */
2532
2532
  }, {
2533
2533
  key: "invite",
@@ -2536,13 +2536,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2536
2536
  return this.members.addMember(invitee, alertIfActive);
2537
2537
  }
2538
2538
 
2539
- /**
2540
- * Cancel an outgoing phone call invitation made during a meeting
2541
- * @param {Object} invitee
2542
- * @param {String} invitee.phoneNumber
2543
- * @returns {Promise} see #members.cancelPhoneInvite
2544
- * @public
2545
- * @memberof Meeting
2539
+ /**
2540
+ * Cancel an outgoing phone call invitation made during a meeting
2541
+ * @param {Object} invitee
2542
+ * @param {String} invitee.phoneNumber
2543
+ * @returns {Promise} see #members.cancelPhoneInvite
2544
+ * @public
2545
+ * @memberof Meeting
2546
2546
  */
2547
2547
  }, {
2548
2548
  key: "cancelPhoneInvite",
@@ -2550,12 +2550,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2550
2550
  return this.members.cancelPhoneInvite(invitee);
2551
2551
  }
2552
2552
 
2553
- /**
2554
- * Admit the guest(s) to the call once they are waiting
2555
- * @param {Array} memberIds
2556
- * @returns {Promise} see #members.admitMembers
2557
- * @public
2558
- * @memberof Meeting
2553
+ /**
2554
+ * Admit the guest(s) to the call once they are waiting
2555
+ * @param {Array} memberIds
2556
+ * @returns {Promise} see #members.admitMembers
2557
+ * @public
2558
+ * @memberof Meeting
2559
2559
  */
2560
2560
  }, {
2561
2561
  key: "admit",
@@ -2563,12 +2563,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2563
2563
  return this.members.admitMembers(memberIds);
2564
2564
  }
2565
2565
 
2566
- /**
2567
- * Remove the member from the meeting, boot them
2568
- * @param {String} memberId
2569
- * @returns {Promise} see #members.removeMember
2570
- * @public
2571
- * @memberof Meeting
2566
+ /**
2567
+ * Remove the member from the meeting, boot them
2568
+ * @param {String} memberId
2569
+ * @returns {Promise} see #members.removeMember
2570
+ * @public
2571
+ * @memberof Meeting
2572
2572
  */
2573
2573
  }, {
2574
2574
  key: "remove",
@@ -2576,13 +2576,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2576
2576
  return this.members.removeMember(memberId);
2577
2577
  }
2578
2578
 
2579
- /**
2580
- * Mute another member from the meeting
2581
- * @param {String} memberId
2582
- * @param {Boolean} mute
2583
- * @returns {Promise} see #members.muteMember
2584
- * @public
2585
- * @memberof Meeting
2579
+ /**
2580
+ * Mute another member from the meeting
2581
+ * @param {String} memberId
2582
+ * @param {Boolean} mute
2583
+ * @returns {Promise} see #members.muteMember
2584
+ * @public
2585
+ * @memberof Meeting
2586
2586
  */
2587
2587
  }, {
2588
2588
  key: "mute",
@@ -2591,13 +2591,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2591
2591
  return this.members.muteMember(memberId, _mute);
2592
2592
  }
2593
2593
 
2594
- /**
2595
- * Transfer the moderator role to another eligible member
2596
- * @param {String} memberId
2597
- * @param {Boolean} moderator
2598
- * @returns {Promise} see #members.transferHostToMember
2599
- * @public
2600
- * @memberof Meeting
2594
+ /**
2595
+ * Transfer the moderator role to another eligible member
2596
+ * @param {String} memberId
2597
+ * @param {Boolean} moderator
2598
+ * @returns {Promise} see #members.transferHostToMember
2599
+ * @public
2600
+ * @memberof Meeting
2601
2601
  */
2602
2602
  }, {
2603
2603
  key: "transfer",
@@ -2606,11 +2606,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2606
2606
  return this.members.transferHostToMember(memberId, moderator);
2607
2607
  }
2608
2608
 
2609
- /**
2610
- * Reference to the Members object
2611
- * @returns {Members}
2612
- * @public
2613
- * @memberof Meeting
2609
+ /**
2610
+ * Reference to the Members object
2611
+ * @returns {Members}
2612
+ * @public
2613
+ * @memberof Meeting
2614
2614
  */
2615
2615
  }, {
2616
2616
  key: "getMembers",
@@ -2618,11 +2618,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2618
2618
  return this.members;
2619
2619
  }
2620
2620
 
2621
- /**
2622
- * Truthy when a meeting has an audio connection established
2623
- * @returns {Boolean} true if meeting audio is connected otherwise false
2624
- * @public
2625
- * @memberof Meeting
2621
+ /**
2622
+ * Truthy when a meeting has an audio connection established
2623
+ * @returns {Boolean} true if meeting audio is connected otherwise false
2624
+ * @public
2625
+ * @memberof Meeting
2626
2626
  */
2627
2627
  }, {
2628
2628
  key: "isAudioConnected",
@@ -2630,11 +2630,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2630
2630
  return !!this.audio;
2631
2631
  }
2632
2632
 
2633
- /**
2634
- * Convenience function to tell whether a meeting is muted
2635
- * @returns {Boolean} if meeting audio muted or not
2636
- * @public
2637
- * @memberof Meeting
2633
+ /**
2634
+ * Convenience function to tell whether a meeting is muted
2635
+ * @returns {Boolean} if meeting audio muted or not
2636
+ * @public
2637
+ * @memberof Meeting
2638
2638
  */
2639
2639
  }, {
2640
2640
  key: "isAudioMuted",
@@ -2642,11 +2642,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2642
2642
  return this.audio && this.audio.isMuted();
2643
2643
  }
2644
2644
 
2645
- /**
2646
- * Convenience function to tell if the end user last changed the audio state
2647
- * @returns {Boolean} if audio was manipulated by the end user
2648
- * @public
2649
- * @memberof Meeting
2645
+ /**
2646
+ * Convenience function to tell if the end user last changed the audio state
2647
+ * @returns {Boolean} if audio was manipulated by the end user
2648
+ * @public
2649
+ * @memberof Meeting
2650
2650
  */
2651
2651
  }, {
2652
2652
  key: "isAudioSelf",
@@ -2654,11 +2654,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2654
2654
  return this.audio && this.audio.isSelf();
2655
2655
  }
2656
2656
 
2657
- /**
2658
- * Truthy when a meeting has a video connection established
2659
- * @returns {Boolean} true if meeting video connected otherwise false
2660
- * @public
2661
- * @memberof Meeting
2657
+ /**
2658
+ * Truthy when a meeting has a video connection established
2659
+ * @returns {Boolean} true if meeting video connected otherwise false
2660
+ * @public
2661
+ * @memberof Meeting
2662
2662
  */
2663
2663
  }, {
2664
2664
  key: "isVideoConnected",
@@ -2666,11 +2666,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2666
2666
  return !!this.video;
2667
2667
  }
2668
2668
 
2669
- /**
2670
- * Convenience function to tell whether video is muted
2671
- * @returns {Boolean} if meeting video is muted or not
2672
- * @public
2673
- * @memberof Meeting
2669
+ /**
2670
+ * Convenience function to tell whether video is muted
2671
+ * @returns {Boolean} if meeting video is muted or not
2672
+ * @public
2673
+ * @memberof Meeting
2674
2674
  */
2675
2675
  }, {
2676
2676
  key: "isVideoMuted",
@@ -2678,11 +2678,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2678
2678
  return this.video && this.video.isMuted();
2679
2679
  }
2680
2680
 
2681
- /**
2682
- * Convenience function to tell whether the end user changed the video state
2683
- * @returns {Boolean} if meeting video is muted or not
2684
- * @public
2685
- * @memberof Meeting
2681
+ /**
2682
+ * Convenience function to tell whether the end user changed the video state
2683
+ * @returns {Boolean} if meeting video is muted or not
2684
+ * @public
2685
+ * @memberof Meeting
2686
2686
  */
2687
2687
  }, {
2688
2688
  key: "isVideoSelf",
@@ -2690,18 +2690,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2690
2690
  return this.video && this.video.isSelf();
2691
2691
  }
2692
2692
 
2693
- /**
2694
- * Sets the meeting info on the class instance
2695
- * @param {Object} meetingInfo
2696
- * @param {Object} meetingInfo.body
2697
- * @param {String} meetingInfo.body.conversationUrl
2698
- * @param {String} meetingInfo.body.locusUrl
2699
- * @param {String} meetingInfo.body.sipUri
2700
- * @param {Object} meetingInfo.body.owner
2701
- * @param {Object | String} destination locus object with meeting data or destination string (sip url, meeting link, etc)
2702
- * @returns {undefined}
2703
- * @private
2704
- * @memberof Meeting
2693
+ /**
2694
+ * Sets the meeting info on the class instance
2695
+ * @param {Object} meetingInfo
2696
+ * @param {Object} meetingInfo.body
2697
+ * @param {String} meetingInfo.body.conversationUrl
2698
+ * @param {String} meetingInfo.body.locusUrl
2699
+ * @param {String} meetingInfo.body.sipUri
2700
+ * @param {Object} meetingInfo.body.owner
2701
+ * @param {Object | String} destination locus object with meeting data or destination string (sip url, meeting link, etc)
2702
+ * @returns {undefined}
2703
+ * @private
2704
+ * @memberof Meeting
2705
2705
  */
2706
2706
  }, {
2707
2707
  key: "parseMeetingInfo",
@@ -2735,15 +2735,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2735
2735
  }
2736
2736
  }
2737
2737
 
2738
- /**
2739
- * Sets the first locus info on the class instance
2740
- * @param {Object} locus
2741
- * @param {String} locus.url
2742
- * @param {Array} locus.participants
2743
- * @param {Object} locus.self
2744
- * @returns {undefined}
2745
- * @private
2746
- * @memberof Meeting
2738
+ /**
2739
+ * Sets the first locus info on the class instance
2740
+ * @param {Object} locus
2741
+ * @param {String} locus.url
2742
+ * @param {Array} locus.participants
2743
+ * @param {Object} locus.self
2744
+ * @returns {undefined}
2745
+ * @private
2746
+ * @memberof Meeting
2747
2747
  */
2748
2748
  }, {
2749
2749
  key: "parseLocus",
@@ -2766,13 +2766,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2766
2766
  }
2767
2767
  }
2768
2768
 
2769
- /**
2770
- * Sets the sip uri on the class instance
2771
- * uses meeting info as precedence
2772
- * @param {String} sipUri
2773
- * @returns {undefined}
2774
- * @private
2775
- * @memberof Meeting
2769
+ /**
2770
+ * Sets the sip uri on the class instance
2771
+ * uses meeting info as precedence
2772
+ * @param {String} sipUri
2773
+ * @returns {undefined}
2774
+ * @private
2775
+ * @memberof Meeting
2776
2776
  */
2777
2777
  }, {
2778
2778
  key: "setSipUri",
@@ -2781,12 +2781,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2781
2781
  this.sipUri = sipUri;
2782
2782
  }
2783
2783
 
2784
- /**
2785
- * Set the roap seq on the class instance
2786
- * @param {Number} seq
2787
- * @returns {undefined}
2788
- * @private
2789
- * @memberof Meeting
2784
+ /**
2785
+ * Set the roap seq on the class instance
2786
+ * @param {Number} seq
2787
+ * @returns {undefined}
2788
+ * @private
2789
+ * @memberof Meeting
2790
2790
  */
2791
2791
  }, {
2792
2792
  key: "setRoapSeq",
@@ -2796,18 +2796,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2796
2796
  }
2797
2797
  }
2798
2798
 
2799
- /**
2800
- * Set the locus info the class instance
2801
- * @param {Object} locus
2802
- * @param {Array} locus.mediaConnections
2803
- * @param {String} locus.locusUrl
2804
- * @param {String} locus.locusId
2805
- * @param {String} locus.mediaId
2806
- * @param {Object} locus.host
2807
- * @todo change name to genertic parser
2808
- * @returns {undefined}
2809
- * @private
2810
- * @memberof Meeting
2799
+ /**
2800
+ * Set the locus info the class instance
2801
+ * @param {Object} locus
2802
+ * @param {Array} locus.mediaConnections
2803
+ * @param {String} locus.locusUrl
2804
+ * @param {String} locus.locusId
2805
+ * @param {String} locus.mediaId
2806
+ * @param {Object} locus.host
2807
+ * @todo change name to genertic parser
2808
+ * @returns {undefined}
2809
+ * @private
2810
+ * @memberof Meeting
2811
2811
  */
2812
2812
  }, {
2813
2813
  key: "setLocus",
@@ -2826,13 +2826,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2826
2826
  this.locusInfo.initialSetup(mtgLocus);
2827
2827
  }
2828
2828
 
2829
- /**
2830
- * Sets the remote stream on the class instance and emits and
2831
- * event to developers
2832
- * @param {Object} pc The remote stream peer connection
2833
- * @returns {undefined}
2834
- * @public
2835
- * @memberof Meeting
2829
+ /**
2830
+ * Sets the remote stream on the class instance and emits and
2831
+ * event to developers
2832
+ * @param {Object} pc The remote stream peer connection
2833
+ * @returns {undefined}
2834
+ * @public
2835
+ * @memberof Meeting
2836
2836
  */
2837
2837
  }, {
2838
2838
  key: "setRemoteStream",
@@ -2920,12 +2920,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2920
2920
  };
2921
2921
  }
2922
2922
 
2923
- /**
2924
- * Upload logs for the current meeting
2925
- * @param {object} options file name and function name
2926
- * @returns {undefined}
2927
- * @public
2928
- * @memberof Meeting
2923
+ /**
2924
+ * Upload logs for the current meeting
2925
+ * @param {object} options file name and function name
2926
+ * @returns {undefined}
2927
+ * @public
2928
+ * @memberof Meeting
2929
2929
  */
2930
2930
  }, {
2931
2931
  key: "uploadLogs",
@@ -2937,13 +2937,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2937
2937
  _triggerProxy.default.trigger(this, options, _constants.EVENTS.REQUEST_UPLOAD_LOGS, this);
2938
2938
  }
2939
2939
 
2940
- /**
2941
- * Removes remote audio and video stream on the class instance and triggers an event
2942
- * to developers
2943
- * @returns {undefined}
2944
- * @public
2945
- * @memberof Meeting
2946
- * @deprecated after v1.89.3
2940
+ /**
2941
+ * Removes remote audio and video stream on the class instance and triggers an event
2942
+ * to developers
2943
+ * @returns {undefined}
2944
+ * @public
2945
+ * @memberof Meeting
2946
+ * @deprecated after v1.89.3
2947
2947
  */
2948
2948
  }, {
2949
2949
  key: "unsetRemoteStream",
@@ -2952,9 +2952,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2952
2952
  this.mediaProperties.unsetRemoteMedia();
2953
2953
  }
2954
2954
 
2955
- /**
2956
- * Removes remote audio, video and share tracks from class instance's mediaProperties
2957
- * @returns {undefined}
2955
+ /**
2956
+ * Removes remote audio, video and share tracks from class instance's mediaProperties
2957
+ * @returns {undefined}
2958
2958
  */
2959
2959
  }, {
2960
2960
  key: "unsetRemoteTracks",
@@ -2962,13 +2962,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2962
2962
  this.mediaProperties.unsetRemoteTracks();
2963
2963
  }
2964
2964
 
2965
- /**
2966
- * Removes the remote stream on the class instance and triggers an event
2967
- * to developers
2968
- * @returns {undefined}
2969
- * @public
2970
- * @memberof Meeting
2971
- * @deprecated after v1.89.3
2965
+ /**
2966
+ * Removes the remote stream on the class instance and triggers an event
2967
+ * to developers
2968
+ * @returns {undefined}
2969
+ * @public
2970
+ * @memberof Meeting
2971
+ * @deprecated after v1.89.3
2972
2972
  */
2973
2973
  }, {
2974
2974
  key: "closeRemoteStream",
@@ -2977,11 +2977,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2977
2977
  this.closeRemoteTracks();
2978
2978
  }
2979
2979
 
2980
- /**
2981
- * Removes the remote tracks on the class instance and triggers an event
2982
- * to developers
2983
- * @returns {undefined}
2984
- * @memberof Meeting
2980
+ /**
2981
+ * Removes the remote tracks on the class instance and triggers an event
2982
+ * to developers
2983
+ * @returns {undefined}
2984
+ * @memberof Meeting
2985
2985
  */
2986
2986
  }, {
2987
2987
  key: "closeRemoteTracks",
@@ -2992,11 +2992,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
2992
2992
  remoteVideoTrack = _this$mediaProperties.remoteVideoTrack,
2993
2993
  remoteShare = _this$mediaProperties.remoteShare;
2994
2994
 
2995
- /**
2996
- * Triggers an event to the developer
2997
- * @param {string} mediaType Type of media that was stopped
2998
- * @returns {void}
2999
- * @inner
2995
+ /**
2996
+ * Triggers an event to the developer
2997
+ * @param {string} mediaType Type of media that was stopped
2998
+ * @returns {void}
2999
+ * @inner
3000
3000
  */
3001
3001
  // eslint-disable-next-line @typescript-eslint/no-shadow
3002
3002
  var triggerMediaStoppedEvent = function triggerMediaStoppedEvent(mediaType) {
@@ -3008,12 +3008,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3008
3008
  });
3009
3009
  };
3010
3010
 
3011
- /**
3012
- * Stops a media track and emits an event
3013
- * @param {MediaStreamTrack} track Media track to stop
3014
- * @param {string} type Media track type
3015
- * @returns {Promise}
3016
- * @inner
3011
+ /**
3012
+ * Stops a media track and emits an event
3013
+ * @param {MediaStreamTrack} track Media track to stop
3014
+ * @param {string} type Media track type
3015
+ * @returns {Promise}
3016
+ * @inner
3017
3017
  */
3018
3018
  // eslint-disable-next-line arrow-body-style
3019
3019
  var stopTrack = function stopTrack(track, type) {
@@ -3030,11 +3030,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3030
3030
  return _promise.default.all([stopTrack(remoteAudioTrack, _constants.EVENT_TYPES.REMOTE_AUDIO), stopTrack(remoteVideoTrack, _constants.EVENT_TYPES.REMOTE_VIDEO), stopTrack(remoteShare, _constants.EVENT_TYPES.REMOTE_SHARE)]);
3031
3031
  }
3032
3032
 
3033
- /**
3034
- * Emits the 'media:ready' event with a local stream that consists of 1 local audio and 1 local video track
3035
- * @returns {undefined}
3036
- * @private
3037
- * @memberof Meeting
3033
+ /**
3034
+ * Emits the 'media:ready' event with a local stream that consists of 1 local audio and 1 local video track
3035
+ * @returns {undefined}
3036
+ * @private
3037
+ * @memberof Meeting
3038
3038
  */
3039
3039
  }, {
3040
3040
  key: "sendLocalMediaReadyEvent",
@@ -3048,13 +3048,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3048
3048
  });
3049
3049
  }
3050
3050
 
3051
- /**
3052
- * Sets the local audio track on the class and emits an event to the developer
3053
- * @param {MediaStreamTrack} audioTrack
3054
- * @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
3055
- * @returns {undefined}
3056
- * @private
3057
- * @memberof Meeting
3051
+ /**
3052
+ * Sets the local audio track on the class and emits an event to the developer
3053
+ * @param {MediaStreamTrack} audioTrack
3054
+ * @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
3055
+ * @returns {undefined}
3056
+ * @private
3057
+ * @memberof Meeting
3058
3058
  */
3059
3059
  }, {
3060
3060
  key: "setLocalAudioTrack",
@@ -3075,13 +3075,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3075
3075
  }
3076
3076
  }
3077
3077
 
3078
- /**
3079
- * Sets the local video track on the class and emits an event to the developer
3080
- * @param {MediaStreamTrack} videoTrack
3081
- * @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
3082
- * @returns {undefined}
3083
- * @private
3084
- * @memberof Meeting
3078
+ /**
3079
+ * Sets the local video track on the class and emits an event to the developer
3080
+ * @param {MediaStreamTrack} videoTrack
3081
+ * @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
3082
+ * @returns {undefined}
3083
+ * @private
3084
+ * @memberof Meeting
3085
3085
  */
3086
3086
  }, {
3087
3087
  key: "setLocalVideoTrack",
@@ -3118,12 +3118,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3118
3118
  }
3119
3119
  }
3120
3120
 
3121
- /**
3122
- * Sets the local media stream on the class and emits an event to the developer
3123
- * @param {Stream} localStream the local media stream
3124
- * @returns {undefined}
3125
- * @public
3126
- * @memberof Meeting
3121
+ /**
3122
+ * Sets the local media stream on the class and emits an event to the developer
3123
+ * @param {Stream} localStream the local media stream
3124
+ * @returns {undefined}
3125
+ * @public
3126
+ * @memberof Meeting
3127
3127
  */
3128
3128
  }, {
3129
3129
  key: "setLocalTracks",
@@ -3138,12 +3138,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3138
3138
  }
3139
3139
  }
3140
3140
 
3141
- /**
3142
- * Sets the local media stream on the class and emits an event to the developer
3143
- * @param {MediaStream} localShare the local media stream
3144
- * @returns {undefined}
3145
- * @public
3146
- * @memberof Meeting
3141
+ /**
3142
+ * Sets the local media stream on the class and emits an event to the developer
3143
+ * @param {MediaStream} localShare the local media stream
3144
+ * @returns {undefined}
3145
+ * @public
3146
+ * @memberof Meeting
3147
3147
  */
3148
3148
  }, {
3149
3149
  key: "setLocalShareTrack",
@@ -3178,12 +3178,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3178
3178
  }
3179
3179
  }
3180
3180
 
3181
- /**
3182
- * Closes the local stream from the class and emits an event to the developer
3183
- * @returns {undefined}
3184
- * @event media:stopped
3185
- * @public
3186
- * @memberof Meeting
3181
+ /**
3182
+ * Closes the local stream from the class and emits an event to the developer
3183
+ * @returns {undefined}
3184
+ * @event media:stopped
3185
+ * @public
3186
+ * @memberof Meeting
3187
3187
  */
3188
3188
  }, {
3189
3189
  key: "closeLocalStream",
@@ -3212,12 +3212,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3212
3212
  });
3213
3213
  }
3214
3214
 
3215
- /**
3216
- * Closes the local stream from the class and emits an event to the developer
3217
- * @returns {undefined}
3218
- * @event media:stopped
3219
- * @public
3220
- * @memberof Meeting
3215
+ /**
3216
+ * Closes the local stream from the class and emits an event to the developer
3217
+ * @returns {undefined}
3218
+ * @event media:stopped
3219
+ * @public
3220
+ * @memberof Meeting
3221
3221
  */
3222
3222
  }, {
3223
3223
  key: "closeLocalShare",
@@ -3239,11 +3239,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3239
3239
  });
3240
3240
  }
3241
3241
 
3242
- /**
3243
- * Removes the local stream from the class and emits an event to the developer
3244
- * @returns {undefined}
3245
- * @public
3246
- * @memberof Meeting
3242
+ /**
3243
+ * Removes the local stream from the class and emits an event to the developer
3244
+ * @returns {undefined}
3245
+ * @public
3246
+ * @memberof Meeting
3247
3247
  */
3248
3248
  }, {
3249
3249
  key: "unsetLocalVideoTrack",
@@ -3251,11 +3251,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3251
3251
  this.mediaProperties.unsetLocalVideoTrack();
3252
3252
  }
3253
3253
 
3254
- /**
3255
- * Removes the local share from the class and emits an event to the developer
3256
- * @returns {undefined}
3257
- * @public
3258
- * @memberof Meeting
3254
+ /**
3255
+ * Removes the local share from the class and emits an event to the developer
3256
+ * @returns {undefined}
3257
+ * @public
3258
+ * @memberof Meeting
3259
3259
  */
3260
3260
  }, {
3261
3261
  key: "unsetLocalShareTrack",
@@ -3263,11 +3263,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3263
3263
  this.mediaProperties.unsetLocalShareTrack();
3264
3264
  }
3265
3265
 
3266
- /**
3267
- * sets up listner for mercury event
3268
- * @returns {undefined}
3269
- * @public
3270
- * @memberof Meeting
3266
+ /**
3267
+ * sets up listner for mercury event
3268
+ * @returns {undefined}
3269
+ * @public
3270
+ * @memberof Meeting
3271
3271
  */
3272
3272
  }, {
3273
3273
  key: "setMercuryListener",
@@ -3305,12 +3305,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3305
3305
  });
3306
3306
  }
3307
3307
 
3308
- /**
3309
- * Close the peer connections and remove them from the class. Triggers an event
3310
- * when each is closed.
3311
- * @returns {Promise} returns a resolved promise with an array of closed peer connections
3312
- * @public
3313
- * @memberof Meeting
3308
+ /**
3309
+ * Close the peer connections and remove them from the class. Triggers an event
3310
+ * when each is closed.
3311
+ * @returns {Promise} returns a resolved promise with an array of closed peer connections
3312
+ * @public
3313
+ * @memberof Meeting
3314
3314
  */
3315
3315
  }, {
3316
3316
  key: "closePeerConnections",
@@ -3318,13 +3318,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3318
3318
  return _peerConnectionManager.default.close(this.mediaProperties.peerConnection);
3319
3319
  }
3320
3320
 
3321
- /**
3322
- * Unsets the peer connections on the class
3323
- * warning DO NOT CALL WITHOUT CLOSING PEER CONNECTIONS FIRST
3324
- * @param {PeerConnection} peerConnection
3325
- * @returns {undefined}
3326
- * @public
3327
- * @memberof Meeting
3321
+ /**
3322
+ * Unsets the peer connections on the class
3323
+ * warning DO NOT CALL WITHOUT CLOSING PEER CONNECTIONS FIRST
3324
+ * @param {PeerConnection} peerConnection
3325
+ * @returns {undefined}
3326
+ * @public
3327
+ * @memberof Meeting
3328
3328
  */
3329
3329
  }, {
3330
3330
  key: "unsetPeerConnections",
@@ -3337,12 +3337,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3337
3337
  }
3338
3338
  }
3339
3339
 
3340
- /**
3341
- * Convenience method to set the correlation id for the Meeting
3342
- * @param {String} id correlation id to set on the class
3343
- * @returns {undefined}
3344
- * @private
3345
- * @memberof Meeting
3340
+ /**
3341
+ * Convenience method to set the correlation id for the Meeting
3342
+ * @param {String} id correlation id to set on the class
3343
+ * @returns {undefined}
3344
+ * @private
3345
+ * @memberof Meeting
3346
3346
  */
3347
3347
  }, {
3348
3348
  key: "setCorrelationId",
@@ -3350,11 +3350,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3350
3350
  this.correlationId = id;
3351
3351
  }
3352
3352
 
3353
- /**
3354
- * Mute the audio for a meeting
3355
- * @returns {Promise} resolves the data from muting audio {mute, self} or rejects if there is no audio set
3356
- * @public
3357
- * @memberof Meeting
3353
+ /**
3354
+ * Mute the audio for a meeting
3355
+ * @returns {Promise} resolves the data from muting audio {mute, self} or rejects if there is no audio set
3356
+ * @public
3357
+ * @memberof Meeting
3358
3358
  */
3359
3359
  }, {
3360
3360
  key: "muteAudio",
@@ -3400,11 +3400,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3400
3400
  });
3401
3401
  }
3402
3402
 
3403
- /**
3404
- * Unmute meeting audio
3405
- * @returns {Promise} resolves data from muting audio {mute, self} or rejects if there is no audio set
3406
- * @public
3407
- * @memberof Meeting
3403
+ /**
3404
+ * Unmute meeting audio
3405
+ * @returns {Promise} resolves data from muting audio {mute, self} or rejects if there is no audio set
3406
+ * @public
3407
+ * @memberof Meeting
3408
3408
  */
3409
3409
  }, {
3410
3410
  key: "unmuteAudio",
@@ -3450,11 +3450,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3450
3450
  });
3451
3451
  }
3452
3452
 
3453
- /**
3454
- * Mute the video for a meeting
3455
- * @returns {Promise} resolves data from muting video {mute, self} or rejects if there is no video set
3456
- * @public
3457
- * @memberof Meeting
3453
+ /**
3454
+ * Mute the video for a meeting
3455
+ * @returns {Promise} resolves data from muting video {mute, self} or rejects if there is no video set
3456
+ * @public
3457
+ * @memberof Meeting
3458
3458
  */
3459
3459
  }, {
3460
3460
  key: "muteVideo",
@@ -3498,11 +3498,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3498
3498
  });
3499
3499
  }
3500
3500
 
3501
- /**
3502
- * Unmute meeting video
3503
- * @returns {Promise} resolves data from muting video {mute, self} or rejects if there is no video set
3504
- * @public
3505
- * @memberof Meeting
3501
+ /**
3502
+ * Unmute meeting video
3503
+ * @returns {Promise} resolves data from muting video {mute, self} or rejects if there is no video set
3504
+ * @public
3505
+ * @memberof Meeting
3506
3506
  */
3507
3507
  }, {
3508
3508
  key: "unmuteVideo",
@@ -3546,30 +3546,30 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3546
3546
  });
3547
3547
  }
3548
3548
 
3549
- /**
3550
- * Shorthand function to join AND set up media
3551
- * @param {Object} options - options to join with media
3552
- * @param {JoinOptions} [options.joinOptions] - see #join()
3553
- * @param {MediaDirection} options.mediaSettings - see #addMedia()
3554
- * @param {AudioVideo} [options.audioVideoOptions] - see #getMediaStreams()
3555
- * @returns {Promise} -- {join: see join(), media: see addMedia(), local: see getMediaStreams()}
3556
- * @public
3557
- * @memberof Meeting
3558
- * @example
3559
- * joinWithMedia({
3560
- * joinOptions: {resourceId: 'resourceId' },
3561
- * mediaSettings: {
3562
- * sendAudio: true,
3563
- * sendVideo: true,
3564
- * sendShare: false,
3565
- * receiveVideo:true,
3566
- * receiveAudio: true,
3567
- * receiveShare: true
3568
- * }
3569
- * audioVideoOptions: {
3570
- * audio: 'audioDeviceId',
3571
- * video: 'videoDeviceId'
3572
- * }})
3549
+ /**
3550
+ * Shorthand function to join AND set up media
3551
+ * @param {Object} options - options to join with media
3552
+ * @param {JoinOptions} [options.joinOptions] - see #join()
3553
+ * @param {MediaDirection} options.mediaSettings - see #addMedia()
3554
+ * @param {AudioVideo} [options.audioVideoOptions] - see #getMediaStreams()
3555
+ * @returns {Promise} -- {join: see join(), media: see addMedia(), local: see getMediaStreams()}
3556
+ * @public
3557
+ * @memberof Meeting
3558
+ * @example
3559
+ * joinWithMedia({
3560
+ * joinOptions: {resourceId: 'resourceId' },
3561
+ * mediaSettings: {
3562
+ * sendAudio: true,
3563
+ * sendVideo: true,
3564
+ * sendShare: false,
3565
+ * receiveVideo:true,
3566
+ * receiveAudio: true,
3567
+ * receiveShare: true
3568
+ * }
3569
+ * audioVideoOptions: {
3570
+ * audio: 'audioDeviceId',
3571
+ * video: 'videoDeviceId'
3572
+ * }})
3573
3573
  */
3574
3574
  }, {
3575
3575
  key: "joinWithMedia",
@@ -3611,13 +3611,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3611
3611
  });
3612
3612
  }
3613
3613
 
3614
- /**
3615
- * Initiates the reconnection of the media in the meeting
3616
- *
3617
- * @param {object} options
3618
- * @returns {Promise} resolves with {reconnect} or errors with {error}
3619
- * @public
3620
- * @memberof Meeting
3614
+ /**
3615
+ * Initiates the reconnection of the media in the meeting
3616
+ *
3617
+ * @param {object} options
3618
+ * @returns {Promise} resolves with {reconnect} or errors with {error}
3619
+ * @public
3620
+ * @memberof Meeting
3621
3621
  */
3622
3622
  }, {
3623
3623
  key: "reconnect",
@@ -3679,10 +3679,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3679
3679
  });
3680
3680
  }
3681
3681
 
3682
- /**
3683
- * Check if the meeting supports the Webex Assistant feature
3684
- * @returns {boolean}
3685
- * @throws TranscriptionNotSupportedError
3682
+ /**
3683
+ * Check if the meeting supports the Webex Assistant feature
3684
+ * @returns {boolean}
3685
+ * @throws TranscriptionNotSupportedError
3686
3686
  */
3687
3687
  }, {
3688
3688
  key: "isTranscriptionSupported",
@@ -3695,10 +3695,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3695
3695
  return false;
3696
3696
  }
3697
3697
 
3698
- /**
3699
- * Monitor the Low-Latency Mercury (LLM) web socket connection on `onError` and `onClose` states
3700
- * @private
3701
- * @returns {void}
3698
+ /**
3699
+ * Monitor the Low-Latency Mercury (LLM) web socket connection on `onError` and `onClose` states
3700
+ * @private
3701
+ * @returns {void}
3702
3702
  */
3703
3703
  }, {
3704
3704
  key: "monitorTranscriptionSocketConnection",
@@ -3719,10 +3719,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3719
3719
  });
3720
3720
  }
3721
3721
 
3722
- /**
3723
- * Request for a WebSocket Url, open and monitor the WebSocket connection
3724
- * @private
3725
- * @returns {Promise<void>} a promise to open the WebSocket connection
3722
+ /**
3723
+ * Request for a WebSocket Url, open and monitor the WebSocket connection
3724
+ * @private
3725
+ * @returns {Promise<void>} a promise to open the WebSocket connection
3726
3726
  */
3727
3727
  }, {
3728
3728
  key: "receiveTranscription",
@@ -3752,9 +3752,6 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3752
3752
  // @ts-ignore - fix type
3753
3753
  this.webex.sessionId, this.members);
3754
3754
  _loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n opened LLM web socket connection successfully.");
3755
- if (!this.inMeetingActions.isClosedCaptionActive) {
3756
- _loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> Transcription cannot be started until a licensed user enables it");
3757
- }
3758
3755
 
3759
3756
  // retrieve and pass the payload
3760
3757
  this.transcription.subscribe(function (payload) {
@@ -3766,10 +3763,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3766
3763
  this.monitorTranscriptionSocketConnection();
3767
3764
  // @ts-ignore - fix type
3768
3765
  this.transcription.connect(this.webex.credentials.supertoken.access_token);
3769
- _context2.next = 20;
3766
+ _context2.next = 19;
3770
3767
  break;
3771
- case 16:
3772
- _context2.prev = 16;
3768
+ case 15:
3769
+ _context2.prev = 15;
3773
3770
  _context2.t0 = _context2["catch"](1);
3774
3771
  _loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> ".concat(_context2.t0));
3775
3772
  _metrics.default.sendBehavioralMetric(_constants2.default.RECEIVE_TRANSCRIPTION_FAILURE, {
@@ -3777,21 +3774,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3777
3774
  reason: _context2.t0.message,
3778
3775
  stack: _context2.t0.stack
3779
3776
  });
3780
- case 20:
3777
+ case 19:
3781
3778
  case "end":
3782
3779
  return _context2.stop();
3783
3780
  }
3784
- }, _callee2, this, [[1, 16]]);
3781
+ }, _callee2, this, [[1, 15]]);
3785
3782
  }));
3786
3783
  function receiveTranscription() {
3787
3784
  return _receiveTranscription.apply(this, arguments);
3788
3785
  }
3789
3786
  return receiveTranscription;
3790
3787
  }()
3791
- /**
3792
- * stop recieving Transcription by closing
3793
- * the web socket connection properly
3794
- * @returns {void}
3788
+ /**
3789
+ * stop recieving Transcription by closing
3790
+ * the web socket connection properly
3791
+ * @returns {void}
3795
3792
  */
3796
3793
  }, {
3797
3794
  key: "stopReceivingTranscription",
@@ -3801,11 +3798,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3801
3798
  }
3802
3799
  }
3803
3800
 
3804
- /**
3805
- * triggers an event to notify that the user
3806
- * will not receive any more transcription
3807
- * @private
3808
- * @returns{void}
3801
+ /**
3802
+ * triggers an event to notify that the user
3803
+ * will not receive any more transcription
3804
+ * @private
3805
+ * @returns{void}
3809
3806
  */
3810
3807
  }, {
3811
3808
  key: "triggerStopReceivingTranscriptionEvent",
@@ -3817,17 +3814,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3817
3814
  }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_RECEIVING_TRANSCRIPTION);
3818
3815
  }
3819
3816
 
3820
- /**
3821
- * Specify joining via audio (option: pstn), video, screenshare
3822
- * @param {JoinOptions} options A configurable options object for joining a meeting
3823
- * @returns {Promise} the join response
3824
- * @public
3825
- * @memberof Meeting
3826
- * Scenario A: Joining own claimed personal meeting room
3827
- * Scenario B: Joining other's claimed personal meeting room, do pass pin (if desired to join as host, or nullify), do pass moderator
3828
- * Scenario C: Joining an unclaimed personal meeting room, -do not- pass pin or moderator on first try, -do- pass pin and moderator
3829
- * if joining as host on second loop, pass pin and pass moderator if joining as guest on second loop
3830
- * Scenario D: Joining any other way (sip, pstn, conversationUrl, link just need to specify resourceId)
3817
+ /**
3818
+ * Specify joining via audio (option: pstn), video, screenshare
3819
+ * @param {JoinOptions} options A configurable options object for joining a meeting
3820
+ * @returns {Promise} the join response
3821
+ * @public
3822
+ * @memberof Meeting
3823
+ * Scenario A: Joining own claimed personal meeting room
3824
+ * Scenario B: Joining other's claimed personal meeting room, do pass pin (if desired to join as host, or nullify), do pass moderator
3825
+ * Scenario C: Joining an unclaimed personal meeting room, -do not- pass pin or moderator on first try, -do- pass pin and moderator
3826
+ * if joining as host on second loop, pass pin and pass moderator if joining as guest on second loop
3827
+ * Scenario D: Joining any other way (sip, pstn, conversationUrl, link just need to specify resourceId)
3831
3828
  */
3832
3829
  }, {
3833
3830
  key: "join",
@@ -3997,12 +3994,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
3997
3994
  });
3998
3995
  }
3999
3996
 
4000
- /**
4001
- * Use phone for meeting audio
4002
- * @param {String} phoneNumber If provided, it will dial-out using this number. If not provided, dial-in will be used
4003
- * @returns {Promise} Resolves once the dial-in or dial-out request has completed, or rejects if it failed
4004
- * @public
4005
- * @memberof Meeting
3997
+ /**
3998
+ * Use phone for meeting audio
3999
+ * @param {String} phoneNumber If provided, it will dial-out using this number. If not provided, dial-in will be used
4000
+ * @returns {Promise} Resolves once the dial-in or dial-out request has completed, or rejects if it failed
4001
+ * @public
4002
+ * @memberof Meeting
4006
4003
  */
4007
4004
  }, {
4008
4005
  key: "usePhoneAudio",
@@ -4013,12 +4010,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4013
4010
  return this.dialOutPstn(phoneNumber);
4014
4011
  }
4015
4012
 
4016
- /**
4017
- * Determines if the given pstnStatus is in a state which implies the phone is provisioned
4018
- * @param {String} pstnStatus
4019
- * @returns {Boolean}
4020
- * @private
4021
- * @memberof Meeting
4013
+ /**
4014
+ * Determines if the given pstnStatus is in a state which implies the phone is provisioned
4015
+ * @param {String} pstnStatus
4016
+ * @returns {Boolean}
4017
+ * @private
4018
+ * @memberof Meeting
4022
4019
  */
4023
4020
  }, {
4024
4021
  key: "isPhoneProvisioned",
@@ -4026,11 +4023,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4026
4023
  return [_constants.PSTN_STATUS.JOINED, _constants.PSTN_STATUS.CONNECTED, _constants.PSTN_STATUS.SUCCESS].includes(pstnStatus);
4027
4024
  }
4028
4025
 
4029
- /**
4030
- * Enable dial-in for audio
4031
- * @returns {Promise} Resolves once the dial-in request has completed, or rejects if it failed
4032
- * @private
4033
- * @memberof Meeting
4026
+ /**
4027
+ * Enable dial-in for audio
4028
+ * @returns {Promise} Resolves once the dial-in request has completed, or rejects if it failed
4029
+ * @private
4030
+ * @memberof Meeting
4034
4031
  */
4035
4032
  }, {
4036
4033
  key: "dialInPstn",
@@ -4064,12 +4061,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4064
4061
  });
4065
4062
  }
4066
4063
 
4067
- /**
4068
- * Enable dial-out for audio
4069
- * @param {String} phoneNumber Phone number to dial out to
4070
- * @returns {Promise} Resolves once the dial-out request has completed (it doesn't wait for the user to answer the phone), or rejects if it failed
4071
- * @private
4072
- * @memberof Meeting
4064
+ /**
4065
+ * Enable dial-out for audio
4066
+ * @param {String} phoneNumber Phone number to dial out to
4067
+ * @returns {Promise} Resolves once the dial-out request has completed (it doesn't wait for the user to answer the phone), or rejects if it failed
4068
+ * @private
4069
+ * @memberof Meeting
4073
4070
  */
4074
4071
  }, {
4075
4072
  key: "dialOutPstn",
@@ -4104,12 +4101,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4104
4101
  });
4105
4102
  }
4106
4103
 
4107
- /**
4108
- * Disconnect meeting audio via phone.
4109
- * @returns {Promise} Resolves once the phone audio disconnection has completed
4110
- * @public
4111
- * @memberof Meeting
4112
- * @returns {Promise}
4104
+ /**
4105
+ * Disconnect meeting audio via phone.
4106
+ * @returns {Promise} Resolves once the phone audio disconnection has completed
4107
+ * @public
4108
+ * @memberof Meeting
4109
+ * @returns {Promise}
4113
4110
  */
4114
4111
  }, {
4115
4112
  key: "disconnectPhoneAudio",
@@ -4117,12 +4114,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4117
4114
  return _promise.default.all([this.isPhoneProvisioned(this.dialInDeviceStatus) ? _util.default.disconnectPhoneAudio(this, this.dialInUrl) : _promise.default.resolve(), this.isPhoneProvisioned(this.dialOutDeviceStatus) ? _util.default.disconnectPhoneAudio(this, this.dialOutUrl) : _promise.default.resolve()]);
4118
4115
  }
4119
4116
 
4120
- /**
4121
- * Moves the call to the specified resourceId
4122
- * @param {String} resourceId
4123
- * @returns {Promise} once the move has been completed
4124
- * @public
4125
- * @memberof Meeting
4117
+ /**
4118
+ * Moves the call to the specified resourceId
4119
+ * @param {String} resourceId
4120
+ * @returns {Promise} once the move has been completed
4121
+ * @public
4122
+ * @memberof Meeting
4126
4123
  */
4127
4124
  }, {
4128
4125
  key: "moveTo",
@@ -4236,12 +4233,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4236
4233
  });
4237
4234
  }
4238
4235
 
4239
- /**
4240
- * Moves the call from the specified resourceId, back to computer
4241
- * @param {String} resourceId
4242
- * @returns {Promise} once the move has been completed
4243
- * @public
4244
- * @memberof Meeting
4236
+ /**
4237
+ * Moves the call from the specified resourceId, back to computer
4238
+ * @param {String} resourceId
4239
+ * @returns {Promise} once the move has been completed
4240
+ * @public
4241
+ * @memberof Meeting
4245
4242
  */
4246
4243
  }, {
4247
4244
  key: "moveFrom",
@@ -4280,16 +4277,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4280
4277
  }, {
4281
4278
  key: "addMedia",
4282
4279
  value:
4283
- /**
4284
- * Specify joining via audio (option: pstn), video, screenshare
4285
- * @param {Object} options A configurable options object for joining a meeting
4286
- * @param {Object} options.resourceId pass the deviceId
4287
- * @param {MediaDirection} options.mediaSettings pass media options
4288
- * @param {MediaStream} options.localStream
4289
- * @param {MediaStream} options.localShare
4290
- * @returns {Promise}
4291
- * @public
4292
- * @memberof Meeting
4280
+ /**
4281
+ * Specify joining via audio (option: pstn), video, screenshare
4282
+ * @param {Object} options A configurable options object for joining a meeting
4283
+ * @param {Object} options.resourceId pass the deviceId
4284
+ * @param {MediaDirection} options.mediaSettings pass media options
4285
+ * @param {MediaStream} options.localStream
4286
+ * @param {MediaStream} options.localShare
4287
+ * @returns {Promise}
4288
+ * @public
4289
+ * @memberof Meeting
4293
4290
  */
4294
4291
  function addMedia() {
4295
4292
  var _this39 = this;
@@ -4469,9 +4466,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4469
4466
  });
4470
4467
  }
4471
4468
 
4472
- /**
4473
- * Informs if the peer connection is in a state that can be updated with updateMedia (audio/video/share)
4474
- * @returns {Boolean}
4469
+ /**
4470
+ * Informs if the peer connection is in a state that can be updated with updateMedia (audio/video/share)
4471
+ * @returns {Boolean}
4475
4472
  */
4476
4473
  }, {
4477
4474
  key: "canUpdateMedia",
@@ -4479,13 +4476,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4479
4476
  return this.mediaProperties.peerConnection.signalingState === _constants.SDP.STABLE && !_collection.default.isBusy(this.correlationId);
4480
4477
  }
4481
4478
 
4482
- /**
4483
- * Enqueues a media update operation.
4484
- * @param {String} mediaUpdateType one of MEDIA_UPDATE_TYPE values
4485
- * @param {Object} options
4486
- * @returns {Promise}
4487
- * @private
4488
- * @memberof Meeting
4479
+ /**
4480
+ * Enqueues a media update operation.
4481
+ * @param {String} mediaUpdateType one of MEDIA_UPDATE_TYPE values
4482
+ * @param {Object} options
4483
+ * @returns {Promise}
4484
+ * @private
4485
+ * @memberof Meeting
4489
4486
  */
4490
4487
  }, {
4491
4488
  key: "enqueueMediaUpdate",
@@ -4505,17 +4502,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4505
4502
  }, {
4506
4503
  key: "updateMedia",
4507
4504
  value:
4508
- /**
4509
- * A confluence of updateAudio, updateVideo, and updateShare
4510
- * this function re-establishes all of the media streams with new options
4511
- * @param {Object} options
4512
- * @param {MediaStream} options.localStream
4513
- * @param {MediaStream} options.localShare
4514
- * @param {MediaDirection} options.mediaSettings
4515
- * @returns {Promise}
4516
- * @todo fix setRemoteStream for updateMedia
4517
- * @public
4518
- * @memberof Meeting
4505
+ /**
4506
+ * A confluence of updateAudio, updateVideo, and updateShare
4507
+ * this function re-establishes all of the media streams with new options
4508
+ * @param {Object} options
4509
+ * @param {MediaStream} options.localStream
4510
+ * @param {MediaStream} options.localShare
4511
+ * @param {MediaDirection} options.mediaSettings
4512
+ * @returns {Promise}
4513
+ * @todo fix setRemoteStream for updateMedia
4514
+ * @public
4515
+ * @memberof Meeting
4519
4516
  */
4520
4517
  function updateMedia() {
4521
4518
  var _this41 = this;
@@ -4577,15 +4574,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4577
4574
  });
4578
4575
  }
4579
4576
 
4580
- /**
4581
- * Update the main audio track with new parameters
4582
- * @param {Object} options
4583
- * @param {boolean} options.sendAudio
4584
- * @param {boolean} options.receiveAudio
4585
- * @param {MediaStream} options.stream Stream that contains the audio track to update
4586
- * @returns {Promise}
4587
- * @public
4588
- * @memberof Meeting
4577
+ /**
4578
+ * Update the main audio track with new parameters
4579
+ * @param {Object} options
4580
+ * @param {boolean} options.sendAudio
4581
+ * @param {boolean} options.receiveAudio
4582
+ * @param {MediaStream} options.stream Stream that contains the audio track to update
4583
+ * @returns {Promise}
4584
+ * @public
4585
+ * @memberof Meeting
4589
4586
  */
4590
4587
  }, {
4591
4588
  key: "updateAudio",
@@ -4672,15 +4669,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4672
4669
  }
4673
4670
  return updateAudio;
4674
4671
  }()
4675
- /**
4676
- * Update the main video track with new parameters
4677
- * @param {Object} options
4678
- * @param {boolean} options.sendVideo
4679
- * @param {boolean} options.receiveVideo
4680
- * @param {MediaStream} options.stream Stream that contains the video track to update
4681
- * @returns {Promise}
4682
- * @public
4683
- * @memberof Meeting
4672
+ /**
4673
+ * Update the main video track with new parameters
4674
+ * @param {Object} options
4675
+ * @param {boolean} options.sendVideo
4676
+ * @param {boolean} options.receiveVideo
4677
+ * @param {MediaStream} options.stream Stream that contains the video track to update
4678
+ * @returns {Promise}
4679
+ * @public
4680
+ * @memberof Meeting
4684
4681
  */
4685
4682
  }, {
4686
4683
  key: "updateVideo",
@@ -4727,13 +4724,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4727
4724
  });
4728
4725
  }
4729
4726
 
4730
- /**
4731
- * Internal function when stopping a share stream, cleanup
4732
- * @param {boolean} sendShare
4733
- * @param {boolean} previousShareStatus
4734
- * @returns {Promise}
4735
- * @private
4736
- * @memberof Meeting
4727
+ /**
4728
+ * Internal function when stopping a share stream, cleanup
4729
+ * @param {boolean} sendShare
4730
+ * @param {boolean} previousShareStatus
4731
+ * @returns {Promise}
4732
+ * @private
4733
+ * @memberof Meeting
4737
4734
  */
4738
4735
  }, {
4739
4736
  key: "checkForStopShare",
@@ -4751,14 +4748,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4751
4748
  return _promise.default.resolve();
4752
4749
  }
4753
4750
 
4754
- /**
4755
- * Update the share streams, can be used to start sharing
4756
- * @param {Object} options
4757
- * @param {boolean} options.sendShare
4758
- * @param {boolean} options.receiveShare
4759
- * @returns {Promise}
4760
- * @public
4761
- * @memberof Meeting
4751
+ /**
4752
+ * Update the share streams, can be used to start sharing
4753
+ * @param {Object} options
4754
+ * @param {boolean} options.sendShare
4755
+ * @param {boolean} options.receiveShare
4756
+ * @returns {Promise}
4757
+ * @public
4758
+ * @memberof Meeting
4762
4759
  */
4763
4760
  }, {
4764
4761
  key: "updateShare",
@@ -4826,14 +4823,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4826
4823
  });
4827
4824
  }
4828
4825
 
4829
- /**
4830
- * Do all the attach media pre set up before executing the actual attach
4831
- * @param {MediaStream} localStream
4832
- * @param {MediaStream} localShare
4833
- * @param {MediaDirection} mediaSettings
4834
- * @returns {undefined}
4835
- * @private
4836
- * @memberof Meeting
4826
+ /**
4827
+ * Do all the attach media pre set up before executing the actual attach
4828
+ * @param {MediaStream} localStream
4829
+ * @param {MediaStream} localShare
4830
+ * @param {MediaDirection} mediaSettings
4831
+ * @returns {undefined}
4832
+ * @private
4833
+ * @memberof Meeting
4837
4834
  */
4838
4835
  }, {
4839
4836
  key: "preMedia",
@@ -4851,12 +4848,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4851
4848
  this.setLocalShareTrack(localShare);
4852
4849
  }
4853
4850
 
4854
- /**
4855
- * Acknowledge the meeting, outgoing or incoming
4856
- * @param {String} type
4857
- * @returns {Promise} resolve {message, ringing, response}
4858
- * @public
4859
- * @memberof Meeting
4851
+ /**
4852
+ * Acknowledge the meeting, outgoing or incoming
4853
+ * @param {String} type
4854
+ * @returns {Promise} resolve {message, ringing, response}
4855
+ * @public
4856
+ * @memberof Meeting
4860
4857
  */
4861
4858
  }, {
4862
4859
  key: "acknowledge",
@@ -4890,12 +4887,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4890
4887
  });
4891
4888
  }
4892
4889
 
4893
- /**
4894
- * Decline this meeting
4895
- * @param {String} reason
4896
- * @returns {undefined}
4897
- * @public
4898
- * @memberof Meeting
4890
+ /**
4891
+ * Decline this meeting
4892
+ * @param {String} reason
4893
+ * @returns {undefined}
4894
+ * @public
4895
+ * @memberof Meeting
4899
4896
  */
4900
4897
  }, {
4901
4898
  key: "decline",
@@ -4910,13 +4907,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4910
4907
  });
4911
4908
  }
4912
4909
 
4913
- /**
4914
- * Leave the current meeting
4915
- * @param {Object} options leave options
4916
- * @param {String} options.resourceId the device with which to leave from, empty if just the computer
4917
- * @returns {Promise}
4918
- * @public
4919
- * @memberof Meeting
4910
+ /**
4911
+ * Leave the current meeting
4912
+ * @param {Object} options leave options
4913
+ * @param {String} options.resourceId the device with which to leave from, empty if just the computer
4914
+ * @returns {Promise}
4915
+ * @public
4916
+ * @memberof Meeting
4920
4917
  */
4921
4918
  }, {
4922
4919
  key: "leave",
@@ -4975,13 +4972,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4975
4972
  });
4976
4973
  }
4977
4974
 
4978
- /**
4979
- * Start sharing whiteboard given channelUrl
4980
- * @param {string} channelUrl whiteboard url
4981
- * @param {String} resourceToken token created by authorize media injector
4982
- * @returns {Promise}
4983
- * @public
4984
- * @memberof Meeting
4975
+ /**
4976
+ * Start sharing whiteboard given channelUrl
4977
+ * @param {string} channelUrl whiteboard url
4978
+ * @param {String} resourceToken token created by authorize media injector
4979
+ * @returns {Promise}
4980
+ * @public
4981
+ * @memberof Meeting
4985
4982
  */
4986
4983
  }, {
4987
4984
  key: "startWhiteboardShare",
@@ -5028,12 +5025,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5028
5025
  return _promise.default.reject(new _parameter.default('Cannot share without whiteboard.'));
5029
5026
  }
5030
5027
 
5031
- /**
5032
- * Stop sharing whiteboard given channelUrl
5033
- * @param {string} channelUrl whiteboard url
5034
- * @returns {Promise}
5035
- * @public
5036
- * @memberof Meeting
5028
+ /**
5029
+ * Stop sharing whiteboard given channelUrl
5030
+ * @param {string} channelUrl whiteboard url
5031
+ * @returns {Promise}
5032
+ * @public
5033
+ * @memberof Meeting
5037
5034
  */
5038
5035
  }, {
5039
5036
  key: "stopWhiteboardShare",
@@ -5071,11 +5068,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5071
5068
  return _promise.default.reject(new _parameter.default('Cannot stop share without whiteboard.'));
5072
5069
  }
5073
5070
 
5074
- /**
5075
- * Sends a request to Locus to obtain the screen share floor
5076
- * @returns {Promise} see #meetingRequest.changeMeetingFloor
5077
- * @private
5078
- * @memberof Meeting
5071
+ /**
5072
+ * Sends a request to Locus to obtain the screen share floor
5073
+ * @returns {Promise} see #meetingRequest.changeMeetingFloor
5074
+ * @private
5075
+ * @memberof Meeting
5079
5076
  */
5080
5077
  }, {
5081
5078
  key: "requestScreenShareFloor",
@@ -5112,11 +5109,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5112
5109
  return _promise.default.reject(new _parameter.default('Cannot share without content.'));
5113
5110
  }
5114
5111
 
5115
- /**
5116
- * Stops the screen share
5117
- * @returns {Promise} see #updateShare
5118
- * @public
5119
- * @memberof Meeting
5112
+ /**
5113
+ * Stops the screen share
5114
+ * @returns {Promise} see #updateShare
5115
+ * @public
5116
+ * @memberof Meeting
5120
5117
  */
5121
5118
  // Internal only, temporarily allows optional params
5122
5119
  // eslint-disable-next-line valid-jsdoc
@@ -5130,11 +5127,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5130
5127
  }, options));
5131
5128
  }
5132
5129
 
5133
- /**
5134
- * Sends a request to Locus to release the screen share floor.
5135
- * @returns {Promise} see #meetingRequest.changeMeetingFloor
5136
- * @private
5137
- * @memberof Meeting
5130
+ /**
5131
+ * Sends a request to Locus to release the screen share floor.
5132
+ * @returns {Promise} see #meetingRequest.changeMeetingFloor
5133
+ * @private
5134
+ * @memberof Meeting
5138
5135
  */
5139
5136
  }, {
5140
5137
  key: "releaseScreenShareFloor",
@@ -5176,11 +5173,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5176
5173
  return _promise.default.reject(new _parameter.default('Cannot stop share without content'));
5177
5174
  }
5178
5175
 
5179
- /**
5180
- * Intiate a recording of this meeting
5181
- * @returns {Promise}
5182
- * @public
5183
- * @memberof Meeting
5176
+ /**
5177
+ * Intiate a recording of this meeting
5178
+ * @returns {Promise}
5179
+ * @public
5180
+ * @memberof Meeting
5184
5181
  */
5185
5182
  }, {
5186
5183
  key: "startRecording",
@@ -5188,12 +5185,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5188
5185
  return this.recordingController.startRecording();
5189
5186
  }
5190
5187
 
5191
- /**
5192
- * set the mute on entry flag for participants if you're the host
5193
- * @returns {Promise}
5194
- * @param {boolean} enabled
5195
- * @public
5196
- * @memberof Meeting
5188
+ /**
5189
+ * set the mute on entry flag for participants if you're the host
5190
+ * @returns {Promise}
5191
+ * @param {boolean} enabled
5192
+ * @public
5193
+ * @memberof Meeting
5197
5194
  */
5198
5195
  }, {
5199
5196
  key: "setMuteOnEntry",
@@ -5201,12 +5198,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5201
5198
  return this.controlsOptionsManager.setMuteOnEntry(enabled);
5202
5199
  }
5203
5200
 
5204
- /**
5205
- * set the disallow unmute flag for participants if you're the host
5206
- * @returns {Promise}
5207
- * @param {boolean} enabled
5208
- * @public
5209
- * @memberof Meeting
5201
+ /**
5202
+ * set the disallow unmute flag for participants if you're the host
5203
+ * @returns {Promise}
5204
+ * @param {boolean} enabled
5205
+ * @public
5206
+ * @memberof Meeting
5210
5207
  */
5211
5208
  }, {
5212
5209
  key: "setDisallowUnmute",
@@ -5214,11 +5211,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5214
5211
  return this.controlsOptionsManager.setDisallowUnmute(enabled);
5215
5212
  }
5216
5213
 
5217
- /**
5218
- * End the recording of this meeting
5219
- * @returns {Promise}
5220
- * @public
5221
- * @memberof Meeting
5214
+ /**
5215
+ * End the recording of this meeting
5216
+ * @returns {Promise}
5217
+ * @public
5218
+ * @memberof Meeting
5222
5219
  */
5223
5220
  }, {
5224
5221
  key: "stopRecording",
@@ -5226,11 +5223,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5226
5223
  return this.recordingController.stopRecording();
5227
5224
  }
5228
5225
 
5229
- /**
5230
- * Pauses the recording of this meeting
5231
- * @returns {Promise}
5232
- * @public
5233
- * @memberof Meeting
5226
+ /**
5227
+ * Pauses the recording of this meeting
5228
+ * @returns {Promise}
5229
+ * @public
5230
+ * @memberof Meeting
5234
5231
  */
5235
5232
  }, {
5236
5233
  key: "pauseRecording",
@@ -5238,11 +5235,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5238
5235
  return this.recordingController.pauseRecording();
5239
5236
  }
5240
5237
 
5241
- /**
5242
- * Resumes the recording of this meeting
5243
- * @returns {Promise}
5244
- * @public
5245
- * @memberof Meeting
5238
+ /**
5239
+ * Resumes the recording of this meeting
5240
+ * @returns {Promise}
5241
+ * @public
5242
+ * @memberof Meeting
5246
5243
  */
5247
5244
  }, {
5248
5245
  key: "resumeRecording",
@@ -5250,11 +5247,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5250
5247
  return this.recordingController.resumeRecording();
5251
5248
  }
5252
5249
 
5253
- /**
5254
- * Locks the current meeting if possible
5255
- * @returns {Promise}
5256
- * @public
5257
- * @memberof Meeting
5250
+ /**
5251
+ * Locks the current meeting if possible
5252
+ * @returns {Promise}
5253
+ * @public
5254
+ * @memberof Meeting
5258
5255
  */
5259
5256
  }, {
5260
5257
  key: "lockMeeting",
@@ -5262,11 +5259,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5262
5259
  return _util.default.lockMeeting(this.inMeetingActions, this.meetingRequest, this.locusUrl);
5263
5260
  }
5264
5261
 
5265
- /**
5266
- * Unlocks the current meeting if possible
5267
- * @returns {Promise}
5268
- * @public
5269
- * @memberof Meeting
5262
+ /**
5263
+ * Unlocks the current meeting if possible
5264
+ * @returns {Promise}
5265
+ * @public
5266
+ * @memberof Meeting
5270
5267
  */
5271
5268
  }, {
5272
5269
  key: "unlockMeeting",
@@ -5274,12 +5271,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5274
5271
  return _util.default.unlockMeeting(this.inMeetingActions, this.meetingRequest, this.locusUrl);
5275
5272
  }
5276
5273
 
5277
- /**
5278
- * Logs an error message and returns a rejected promise with same message
5279
- * @param {String} message
5280
- * @returns {Promise}
5281
- * @private
5282
- * @memberof Meeting
5274
+ /**
5275
+ * Logs an error message and returns a rejected promise with same message
5276
+ * @param {String} message
5277
+ * @returns {Promise}
5278
+ * @private
5279
+ * @memberof Meeting
5283
5280
  */
5284
5281
  }, {
5285
5282
  key: "rejectWithErrorLog",
@@ -5288,12 +5285,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5288
5285
  return _promise.default.reject(new Error(message));
5289
5286
  }
5290
5287
 
5291
- /**
5292
- * Sends DTMF tones to the current meeting
5293
- * @param {String} tones a string of one or more DTMF tones to send
5294
- * @returns {Promise}
5295
- * @public
5296
- * @memberof Meeting
5288
+ /**
5289
+ * Sends DTMF tones to the current meeting
5290
+ * @param {String} tones a string of one or more DTMF tones to send
5291
+ * @returns {Promise}
5292
+ * @public
5293
+ * @memberof Meeting
5297
5294
  */
5298
5295
  }, {
5299
5296
  key: "sendDTMF",
@@ -5311,19 +5308,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5311
5308
  return this.rejectWithErrorLog('Meeting:index#sendDTMF --> cannot send DTMF, meeting does not have a connection to the "locus" call control service. Have you joined?');
5312
5309
  }
5313
5310
 
5314
- /**
5315
- * Sends request to change layout type for the current meeting for the specific participant/device only
5316
- * @param {String} [layoutType] a layout type that should be available in meeting constants {@link #layout_types}
5317
- * @param {Object} renderInfo preferred dimensions for the remote main and content streams (server can ignore it)
5318
- * @param {Object} renderInfo.main preferred dimensions for the remote main video stream
5319
- * @param {Number} renderInfo.main.width preferred width of main video stream
5320
- * @param {Number} renderInfo.main.height preferred height of main video stream
5321
- * @param {Object} renderInfo.content preferred dimensions for the remote content share stream
5322
- * @param {Number} renderInfo.content.width preferred width of content share stream
5323
- * @param {Number} renderInfo.content.height preferred height of content share stream
5324
- * @returns {Promise}
5325
- * @public
5326
- * @memberof Meeting
5311
+ /**
5312
+ * Sends request to change layout type for the current meeting for the specific participant/device only
5313
+ * @param {String} [layoutType] a layout type that should be available in meeting constants {@link #layout_types}
5314
+ * @param {Object} renderInfo preferred dimensions for the remote main and content streams (server can ignore it)
5315
+ * @param {Object} renderInfo.main preferred dimensions for the remote main video stream
5316
+ * @param {Number} renderInfo.main.width preferred width of main video stream
5317
+ * @param {Number} renderInfo.main.height preferred height of main video stream
5318
+ * @param {Object} renderInfo.content preferred dimensions for the remote content share stream
5319
+ * @param {Number} renderInfo.content.width preferred width of content share stream
5320
+ * @param {Number} renderInfo.content.height preferred height of content share stream
5321
+ * @returns {Promise}
5322
+ * @public
5323
+ * @memberof Meeting
5327
5324
  */
5328
5325
  }, {
5329
5326
  key: "changeVideoLayout",
@@ -5405,10 +5402,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5405
5402
  });
5406
5403
  }
5407
5404
 
5408
- /**
5409
- * Sets the quality of the local video stream
5410
- * @param {String} level {LOW|MEDIUM|HIGH}
5411
- * @returns {Promise<MediaStream>} localStream
5405
+ /**
5406
+ * Sets the quality of the local video stream
5407
+ * @param {String} level {LOW|MEDIUM|HIGH}
5408
+ * @returns {Promise<MediaStream>} localStream
5412
5409
  */
5413
5410
  }, {
5414
5411
  key: "setLocalVideoQuality",
@@ -5468,10 +5465,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5468
5465
  }());
5469
5466
  }
5470
5467
 
5471
- /**
5472
- * Sets the quality level of the remote incoming media
5473
- * @param {String} level {LOW|MEDIUM|HIGH}
5474
- * @returns {Promise}
5468
+ /**
5469
+ * Sets the quality level of the remote incoming media
5470
+ * @param {String} level {LOW|MEDIUM|HIGH}
5471
+ * @returns {Promise}
5475
5472
  */
5476
5473
  }, {
5477
5474
  key: "setRemoteQualityLevel",
@@ -5497,11 +5494,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5497
5494
  });
5498
5495
  }
5499
5496
 
5500
- /**
5501
- * This is deprecated, please use setLocalVideoQuality for setting local and setRemoteQualityLevel for remote
5502
- * @param {String} level {LOW|MEDIUM|HIGH}
5503
- * @returns {Promise}
5504
- * @deprecated After FHD support
5497
+ /**
5498
+ * This is deprecated, please use setLocalVideoQuality for setting local and setRemoteQualityLevel for remote
5499
+ * @param {String} level {LOW|MEDIUM|HIGH}
5500
+ * @returns {Promise}
5501
+ * @deprecated After FHD support
5505
5502
  */
5506
5503
  }, {
5507
5504
  key: "setMeetingQuality",
@@ -5546,15 +5543,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5546
5543
  });
5547
5544
  }
5548
5545
 
5549
- /**
5550
- * @param {Object} options parameter
5551
- * @param {Boolean} options.sendAudio send audio from the display share
5552
- * @param {Boolean} options.sendShare send video from the display share
5553
- * @param {Object} options.sharePreferences
5554
- * @param {MediaTrackConstraints} options.sharePreferences.shareConstraints constraints to apply to video
5555
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints}
5556
- * @param {Boolean} options.sharePreferences.highFrameRate if shareConstraints isn't provided, set default values based off of this boolean
5557
- * @returns {Promise}
5546
+ /**
5547
+ * @param {Object} options parameter
5548
+ * @param {Boolean} options.sendAudio send audio from the display share
5549
+ * @param {Boolean} options.sendShare send video from the display share
5550
+ * @param {Object} options.sharePreferences
5551
+ * @param {MediaTrackConstraints} options.sharePreferences.shareConstraints constraints to apply to video
5552
+ * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints}
5553
+ * @param {Boolean} options.sharePreferences.highFrameRate if shareConstraints isn't provided, set default values based off of this boolean
5554
+ * @returns {Promise}
5558
5555
  */
5559
5556
  }, {
5560
5557
  key: "shareScreen",
@@ -5597,12 +5594,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5597
5594
  });
5598
5595
  }
5599
5596
 
5600
- /**
5601
- * Functionality for when a share is ended.
5602
- * @private
5603
- * @memberof Meeting
5604
- * @param {MediaStream} localShare
5605
- * @returns {undefined}
5597
+ /**
5598
+ * Functionality for when a share is ended.
5599
+ * @private
5600
+ * @memberof Meeting
5601
+ * @param {MediaStream} localShare
5602
+ * @returns {undefined}
5606
5603
  */
5607
5604
  }, {
5608
5605
  key: "handleShareTrackEnded",
@@ -5629,16 +5626,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5629
5626
  });
5630
5627
  }
5631
5628
 
5632
- /**
5633
- * Emits the 'network:quality' event
5634
- * 1 indicates an acceptable uplink network.
5635
- * 0 indicates an unacceptable uplink network based on a predefined threshold
5636
- * @returns {undefined}
5637
- * @param {Object} res - payload of emitNetworkQuality
5638
- * @property {string} mediaType {video|audio}
5639
- * @property {number} networkQualityScore - {1|0}
5640
- * @private
5641
- * @memberof Meeting
5629
+ /**
5630
+ * Emits the 'network:quality' event
5631
+ * 1 indicates an acceptable uplink network.
5632
+ * 0 indicates an unacceptable uplink network based on a predefined threshold
5633
+ * @returns {undefined}
5634
+ * @param {Object} res - payload of emitNetworkQuality
5635
+ * @property {string} mediaType {video|audio}
5636
+ * @property {number} networkQualityScore - {1|0}
5637
+ * @private
5638
+ * @memberof Meeting
5642
5639
  */
5643
5640
  }, {
5644
5641
  key: "sendNetworkQualityEvent",
@@ -5652,12 +5649,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5652
5649
  });
5653
5650
  }
5654
5651
 
5655
- /**
5656
- * Handle logging the media
5657
- * @param {Object} audioTrack The audio track
5658
- * @param {Object} videoTrack The video track
5659
- * @private
5660
- * @returns {undefined}
5652
+ /**
5653
+ * Handle logging the media
5654
+ * @param {Object} audioTrack The audio track
5655
+ * @param {Object} videoTrack The video track
5656
+ * @private
5657
+ * @returns {undefined}
5661
5658
  */
5662
5659
  }, {
5663
5660
  key: "handleMediaLogging",
@@ -5668,9 +5665,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5668
5665
  _util.default.handleAudioLogging(audioTrack);
5669
5666
  }
5670
5667
 
5671
- /**
5672
- * @param {string} typeMedia 'audio' or 'video'
5673
- * @returns {undefined}
5668
+ /**
5669
+ * @param {string} typeMedia 'audio' or 'video'
5670
+ * @returns {undefined}
5674
5671
  */
5675
5672
  }, {
5676
5673
  key: "setStartSetupDelay",
@@ -5679,9 +5676,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5679
5676
  this["endSetupDelay".concat(typeMedia)] = undefined;
5680
5677
  }
5681
5678
 
5682
- /**
5683
- * @param {string} typeMedia 'audio' or 'video'
5684
- * @returns {undefined}
5679
+ /**
5680
+ * @param {string} typeMedia 'audio' or 'video'
5681
+ * @returns {undefined}
5685
5682
  */
5686
5683
  }, {
5687
5684
  key: "setEndSetupDelay",
@@ -5689,9 +5686,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5689
5686
  this["endSetupDelay".concat(typeMedia)] = performance.now();
5690
5687
  }
5691
5688
 
5692
- /**
5693
- * @param {string} typeMedia 'audio' or 'video'
5694
- * @returns {string} duration between start and end of setup
5689
+ /**
5690
+ * @param {string} typeMedia 'audio' or 'video'
5691
+ * @returns {string} duration between start and end of setup
5695
5692
  */
5696
5693
  }, {
5697
5694
  key: "getSetupDelayDuration",
@@ -5701,9 +5698,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5701
5698
  return start && end ? end - start : undefined;
5702
5699
  }
5703
5700
 
5704
- /**
5705
- * @param {string} typeMedia 'audio' or 'video'
5706
- * @returns {undefined}
5701
+ /**
5702
+ * @param {string} typeMedia 'audio' or 'video'
5703
+ * @returns {undefined}
5707
5704
  */
5708
5705
  }, {
5709
5706
  key: "setStartSendingMediaDelay",
@@ -5712,9 +5709,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5712
5709
  this["endSendingMediaDelay".concat(typeMedia)] = undefined;
5713
5710
  }
5714
5711
 
5715
- /**
5716
- * @param {string} typeMedia 'audio' or 'video'
5717
- * @returns {undefined}
5712
+ /**
5713
+ * @param {string} typeMedia 'audio' or 'video'
5714
+ * @returns {undefined}
5718
5715
  */
5719
5716
  }, {
5720
5717
  key: "setEndSendingMediaDelay",
@@ -5722,9 +5719,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5722
5719
  this["endSendingMediaDelay".concat(typeMedia)] = performance.now();
5723
5720
  }
5724
5721
 
5725
- /**
5726
- * @param {string} typeMedia 'audio' or 'video'
5727
- * @returns {string} duration between join response and first media tx
5722
+ /**
5723
+ * @param {string} typeMedia 'audio' or 'video'
5724
+ * @returns {string} duration between join response and first media tx
5728
5725
  */
5729
5726
  }, {
5730
5727
  key: "getSendingMediaDelayDuration",
@@ -5734,9 +5731,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5734
5731
  return start && end ? end - start : undefined;
5735
5732
  }
5736
5733
 
5737
- /**
5738
- *
5739
- * @returns {undefined}
5734
+ /**
5735
+ *
5736
+ * @returns {undefined}
5740
5737
  */
5741
5738
  }, {
5742
5739
  key: "setStartLocalSDPGenRemoteSDPRecvDelay",
@@ -5747,9 +5744,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5747
5744
  }
5748
5745
  }
5749
5746
 
5750
- /**
5751
- *
5752
- * @returns {undefined}
5747
+ /**
5748
+ *
5749
+ * @returns {undefined}
5753
5750
  */
5754
5751
  }, {
5755
5752
  key: "setEndLocalSDPGenRemoteSDPRecvDelay",
@@ -5759,9 +5756,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5759
5756
  }
5760
5757
  }
5761
5758
 
5762
- /**
5763
- *
5764
- * @returns {string} duration between local SDP generation and remote SDP reception
5759
+ /**
5760
+ *
5761
+ * @returns {string} duration between local SDP generation and remote SDP reception
5765
5762
  */
5766
5763
  }, {
5767
5764
  key: "getLocalSDPGenRemoteSDPRecvDelay",
@@ -5775,9 +5772,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5775
5772
  return undefined;
5776
5773
  }
5777
5774
 
5778
- /**
5779
- *
5780
- * @returns {undefined}
5775
+ /**
5776
+ *
5777
+ * @returns {undefined}
5781
5778
  */
5782
5779
  }, {
5783
5780
  key: "setStartCallInitiateJoinReq",
@@ -5786,9 +5783,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5786
5783
  this.endCallInitiateJoinReq = undefined;
5787
5784
  }
5788
5785
 
5789
- /**
5790
- *
5791
- * @returns {undefined}
5786
+ /**
5787
+ *
5788
+ * @returns {undefined}
5792
5789
  */
5793
5790
  }, {
5794
5791
  key: "setEndCallInitiateJoinReq",
@@ -5796,9 +5793,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5796
5793
  this.endCallInitiateJoinReq = performance.now();
5797
5794
  }
5798
5795
 
5799
- /**
5800
- *
5801
- * @returns {string} duration between call initiate and sending join request to locus
5796
+ /**
5797
+ *
5798
+ * @returns {string} duration between call initiate and sending join request to locus
5802
5799
  */
5803
5800
  }, {
5804
5801
  key: "getCallInitiateJoinReq",
@@ -5812,9 +5809,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5812
5809
  return undefined;
5813
5810
  }
5814
5811
 
5815
- /**
5816
- *
5817
- * @returns {undefined}
5812
+ /**
5813
+ *
5814
+ * @returns {undefined}
5818
5815
  */
5819
5816
  }, {
5820
5817
  key: "setStartJoinReqResp",
@@ -5823,9 +5820,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5823
5820
  this.endJoinReqResp = undefined;
5824
5821
  }
5825
5822
 
5826
- /**
5827
- *
5828
- * @returns {undefined}
5823
+ /**
5824
+ *
5825
+ * @returns {undefined}
5829
5826
  */
5830
5827
  }, {
5831
5828
  key: "setEndJoinReqResp",
@@ -5833,9 +5830,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5833
5830
  this.endJoinReqResp = performance.now();
5834
5831
  }
5835
5832
 
5836
- /**
5837
- *
5838
- * @returns {string} duration between sending locus join request and receiving join response
5833
+ /**
5834
+ *
5835
+ * @returns {string} duration between sending locus join request and receiving join response
5839
5836
  */
5840
5837
  }, {
5841
5838
  key: "getJoinReqResp",
@@ -5849,9 +5846,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5849
5846
  return undefined;
5850
5847
  }
5851
5848
 
5852
- /**
5853
- *
5854
- * @returns {string} duration between call initiate and successful locus join (even if it is in lobby)
5849
+ /**
5850
+ *
5851
+ * @returns {string} duration between call initiate and successful locus join (even if it is in lobby)
5855
5852
  */
5856
5853
  }, {
5857
5854
  key: "getTotalJmt",
@@ -5861,11 +5858,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5861
5858
  return start && end ? end - start : undefined;
5862
5859
  }
5863
5860
 
5864
- /**
5865
- * End the current meeting for all
5866
- * @returns {Promise}
5867
- * @public
5868
- * @memberof Meeting
5861
+ /**
5862
+ * End the current meeting for all
5863
+ * @returns {Promise}
5864
+ * @public
5865
+ * @memberof Meeting
5869
5866
  */
5870
5867
  }, {
5871
5868
  key: "endMeetingForAll",
@@ -5914,22 +5911,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5914
5911
  }, {
5915
5912
  key: "isBnrEnabled",
5916
5913
  value:
5917
- /**
5918
- * Internal API to return status of BNR
5919
- * @returns {Boolean}
5920
- * @public
5921
- * @memberof Meeting
5914
+ /**
5915
+ * Internal API to return status of BNR
5916
+ * @returns {Boolean}
5917
+ * @public
5918
+ * @memberof Meeting
5922
5919
  */
5923
5920
  function isBnrEnabled() {
5924
5921
  return this.effects && this.effects.isBnrEnabled();
5925
5922
  }
5926
5923
 
5927
- /**
5928
- * Internal API to obtain BNR enabled MediaStream
5929
- * @returns {Promise<MediaStreamTrack>}
5930
- * @private
5931
- * @param {MedaiStreamTrack} audioTrack from updateAudio
5932
- * @memberof Meeting
5924
+ /**
5925
+ * Internal API to obtain BNR enabled MediaStream
5926
+ * @returns {Promise<MediaStreamTrack>}
5927
+ * @private
5928
+ * @param {MedaiStreamTrack} audioTrack from updateAudio
5929
+ * @memberof Meeting
5933
5930
  */
5934
5931
  }, {
5935
5932
  key: "internal_enableBNR",
@@ -5963,11 +5960,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5963
5960
  }
5964
5961
  return internal_enableBNR;
5965
5962
  }()
5966
- /**
5967
- * Enable the audio track with BNR for a meeting
5968
- * @returns {Promise} resolves the data from enable bnr or rejects if there is no audio or audio is muted
5969
- * @public
5970
- * @memberof Meeting
5963
+ /**
5964
+ * Enable the audio track with BNR for a meeting
5965
+ * @returns {Promise} resolves the data from enable bnr or rejects if there is no audio or audio is muted
5966
+ * @public
5967
+ * @memberof Meeting
5971
5968
  */
5972
5969
  }, {
5973
5970
  key: "enableBNR",
@@ -5992,11 +5989,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5992
5989
  });
5993
5990
  }
5994
5991
 
5995
- /**
5996
- * Disable the BNR for an audio track
5997
- * @returns {Promise} resolves the data from disable bnr or rejects if there is no audio set
5998
- * @public
5999
- * @memberof Meeting
5992
+ /**
5993
+ * Disable the BNR for an audio track
5994
+ * @returns {Promise} resolves the data from disable bnr or rejects if there is no audio set
5995
+ * @public
5996
+ * @memberof Meeting
6000
5997
  */
6001
5998
  }, {
6002
5999
  key: "disableBNR",
@@ -6023,14 +6020,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
6023
6020
  }, {
6024
6021
  key: "sendReaction",
6025
6022
  value:
6026
- /**
6027
- * Send a reaction inside the meeting.
6028
- *
6029
- * @param {ReactionType} reactionType - type of reaction to be sent. Example: "thumbs_up"
6030
- * @param {SkinToneType} skinToneType - skin tone for the reaction. Example: "medium_dark"
6031
- * @returns {Promise}
6032
- * @public
6033
- * @memberof Meeting
6023
+ /**
6024
+ * Send a reaction inside the meeting.
6025
+ *
6026
+ * @param {ReactionType} reactionType - type of reaction to be sent. Example: "thumbs_up"
6027
+ * @param {SkinToneType} skinToneType - skin tone for the reaction. Example: "medium_dark"
6028
+ * @returns {Promise}
6029
+ * @public
6030
+ * @memberof Meeting
6034
6031
  */
6035
6032
  function sendReaction(reactionType, skinToneType) {
6036
6033
  var _this$locusInfo5, _this$locusInfo5$cont, _this$locusInfo5$cont2;