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

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 (420) 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 +2 -2
  72. package/dist/config.js.map +1 -1
  73. package/dist/constants.d.ts +926 -924
  74. package/dist/constants.js +11 -9
  75. package/dist/constants.js.map +1 -1
  76. package/dist/controls-options-manager/constants.d.ts +4 -4
  77. package/dist/controls-options-manager/constants.js.map +1 -1
  78. package/dist/controls-options-manager/enums.d.ts +5 -5
  79. package/dist/controls-options-manager/enums.js.map +1 -1
  80. package/dist/controls-options-manager/index.d.ts +120 -120
  81. package/dist/controls-options-manager/index.js +81 -81
  82. package/dist/controls-options-manager/index.js.map +1 -1
  83. package/dist/controls-options-manager/util.d.ts +7 -7
  84. package/dist/controls-options-manager/util.js.map +1 -1
  85. package/dist/index.d.ts +4 -4
  86. package/dist/index.js.map +1 -1
  87. package/dist/locus-info/controlsUtils.d.ts +2 -2
  88. package/dist/locus-info/controlsUtils.js +21 -21
  89. package/dist/locus-info/controlsUtils.js.map +1 -1
  90. package/dist/locus-info/embeddedAppsUtils.d.ts +2 -2
  91. package/dist/locus-info/embeddedAppsUtils.js +14 -14
  92. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  93. package/dist/locus-info/fullState.d.ts +2 -2
  94. package/dist/locus-info/fullState.js.map +1 -1
  95. package/dist/locus-info/hostUtils.d.ts +2 -2
  96. package/dist/locus-info/hostUtils.js +19 -19
  97. package/dist/locus-info/hostUtils.js.map +1 -1
  98. package/dist/locus-info/index.d.ts +269 -269
  99. package/dist/locus-info/index.js +180 -180
  100. package/dist/locus-info/index.js.map +1 -1
  101. package/dist/locus-info/infoUtils.d.ts +2 -2
  102. package/dist/locus-info/infoUtils.js.map +1 -1
  103. package/dist/locus-info/mediaSharesUtils.d.ts +2 -2
  104. package/dist/locus-info/mediaSharesUtils.js +50 -50
  105. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  106. package/dist/locus-info/parser.d.ts +212 -212
  107. package/dist/locus-info/parser.js +136 -136
  108. package/dist/locus-info/parser.js.map +1 -1
  109. package/dist/locus-info/selfUtils.d.ts +2 -2
  110. package/dist/locus-info/selfUtils.js +52 -52
  111. package/dist/locus-info/selfUtils.js.map +1 -1
  112. package/dist/media/index.d.ts +32 -32
  113. package/dist/media/index.js +145 -145
  114. package/dist/media/index.js.map +1 -1
  115. package/dist/media/properties.d.ts +108 -108
  116. package/dist/media/properties.js +49 -49
  117. package/dist/media/properties.js.map +1 -1
  118. package/dist/media/util.d.ts +2 -2
  119. package/dist/media/util.js.map +1 -1
  120. package/dist/mediaQualityMetrics/config.d.ts +233 -233
  121. package/dist/mediaQualityMetrics/config.js.map +1 -1
  122. package/dist/meeting/effectsState.d.ts +42 -42
  123. package/dist/meeting/effectsState.js +24 -24
  124. package/dist/meeting/effectsState.js.map +1 -1
  125. package/dist/meeting/in-meeting-actions.d.ts +79 -79
  126. package/dist/meeting/in-meeting-actions.js +11 -11
  127. package/dist/meeting/in-meeting-actions.js.map +1 -1
  128. package/dist/meeting/index.d.ts +1621 -1621
  129. package/dist/meeting/index.js +1538 -1518
  130. package/dist/meeting/index.js.map +1 -1
  131. package/dist/meeting/muteState.d.ts +116 -116
  132. package/dist/meeting/muteState.js +85 -85
  133. package/dist/meeting/muteState.js.map +1 -1
  134. package/dist/meeting/request.d.ts +255 -255
  135. package/dist/meeting/request.js +141 -141
  136. package/dist/meeting/request.js.map +1 -1
  137. package/dist/meeting/state.d.ts +9 -9
  138. package/dist/meeting/state.js +30 -30
  139. package/dist/meeting/state.js.map +1 -1
  140. package/dist/meeting/util.d.ts +2 -2
  141. package/dist/meeting/util.js.map +1 -1
  142. package/dist/meeting-info/collection.d.ts +20 -20
  143. package/dist/meeting-info/collection.js +11 -11
  144. package/dist/meeting-info/collection.js.map +1 -1
  145. package/dist/meeting-info/index.d.ts +57 -57
  146. package/dist/meeting-info/index.js +50 -50
  147. package/dist/meeting-info/index.js.map +1 -1
  148. package/dist/meeting-info/meeting-info-v2.d.ts +93 -93
  149. package/dist/meeting-info/meeting-info-v2.js +52 -52
  150. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  151. package/dist/meeting-info/request.d.ts +22 -22
  152. package/dist/meeting-info/request.js +14 -14
  153. package/dist/meeting-info/request.js.map +1 -1
  154. package/dist/meeting-info/util.d.ts +2 -2
  155. package/dist/meeting-info/util.js +9 -9
  156. package/dist/meeting-info/util.js.map +1 -1
  157. package/dist/meeting-info/utilv2.d.ts +2 -2
  158. package/dist/meeting-info/utilv2.js +20 -20
  159. package/dist/meeting-info/utilv2.js.map +1 -1
  160. package/dist/meetings/collection.d.ts +23 -23
  161. package/dist/meetings/collection.js +14 -14
  162. package/dist/meetings/collection.js.map +1 -1
  163. package/dist/meetings/index.d.ts +296 -296
  164. package/dist/meetings/index.js +259 -259
  165. package/dist/meetings/index.js.map +1 -1
  166. package/dist/meetings/request.d.ts +27 -27
  167. package/dist/meetings/request.js +15 -15
  168. package/dist/meetings/request.js.map +1 -1
  169. package/dist/meetings/util.d.ts +18 -18
  170. package/dist/meetings/util.js +29 -29
  171. package/dist/meetings/util.js.map +1 -1
  172. package/dist/member/index.d.ts +147 -147
  173. package/dist/member/index.js +214 -214
  174. package/dist/member/index.js.map +1 -1
  175. package/dist/member/member.types.d.ts +11 -11
  176. package/dist/member/member.types.js.map +1 -1
  177. package/dist/member/util.d.ts +2 -2
  178. package/dist/member/util.js +60 -60
  179. package/dist/member/util.js.map +1 -1
  180. package/dist/members/collection.d.ts +24 -24
  181. package/dist/members/collection.js +11 -11
  182. package/dist/members/collection.js.map +1 -1
  183. package/dist/members/index.d.ts +298 -298
  184. package/dist/members/index.js +275 -275
  185. package/dist/members/index.js.map +1 -1
  186. package/dist/members/request.d.ts +50 -50
  187. package/dist/members/request.js +27 -27
  188. package/dist/members/request.js.map +1 -1
  189. package/dist/members/util.d.ts +2 -2
  190. package/dist/members/util.js +21 -21
  191. package/dist/members/util.js.map +1 -1
  192. package/dist/metrics/config.d.ts +169 -169
  193. package/dist/metrics/config.js.map +1 -1
  194. package/dist/metrics/constants.d.ts +59 -57
  195. package/dist/metrics/constants.js +2 -0
  196. package/dist/metrics/constants.js.map +1 -1
  197. package/dist/metrics/index.d.ts +152 -152
  198. package/dist/metrics/index.js +90 -90
  199. package/dist/metrics/index.js.map +1 -1
  200. package/dist/networkQualityMonitor/index.d.ts +70 -70
  201. package/dist/networkQualityMonitor/index.js +65 -65
  202. package/dist/networkQualityMonitor/index.js.map +1 -1
  203. package/dist/peer-connection-manager/index.d.ts +6 -6
  204. package/dist/peer-connection-manager/index.js +87 -87
  205. package/dist/peer-connection-manager/index.js.map +1 -1
  206. package/dist/peer-connection-manager/util.d.ts +6 -6
  207. package/dist/peer-connection-manager/util.js +9 -9
  208. package/dist/peer-connection-manager/util.js.map +1 -1
  209. package/dist/personal-meeting-room/index.d.ts +47 -47
  210. package/dist/personal-meeting-room/index.js +67 -67
  211. package/dist/personal-meeting-room/index.js.map +1 -1
  212. package/dist/personal-meeting-room/request.d.ts +14 -14
  213. package/dist/personal-meeting-room/request.js +7 -7
  214. package/dist/personal-meeting-room/request.js.map +1 -1
  215. package/dist/personal-meeting-room/util.d.ts +2 -2
  216. package/dist/personal-meeting-room/util.js.map +1 -1
  217. package/dist/reachability/index.d.ts +139 -139
  218. package/dist/reachability/index.js +110 -110
  219. package/dist/reachability/index.js.map +1 -1
  220. package/dist/reachability/request.d.ts +35 -35
  221. package/dist/reachability/request.js +15 -15
  222. package/dist/reachability/request.js.map +1 -1
  223. package/dist/reactions/reactions.d.ts +4 -4
  224. package/dist/reactions/reactions.js.map +1 -1
  225. package/dist/reactions/reactions.type.d.ts +32 -32
  226. package/dist/reactions/reactions.type.js.map +1 -1
  227. package/dist/reconnection-manager/index.d.ts +112 -112
  228. package/dist/reconnection-manager/index.js +112 -112
  229. package/dist/reconnection-manager/index.js.map +1 -1
  230. package/dist/recording-controller/enums.d.ts +7 -7
  231. package/dist/recording-controller/enums.js.map +1 -1
  232. package/dist/recording-controller/index.d.ts +193 -193
  233. package/dist/recording-controller/index.js +127 -127
  234. package/dist/recording-controller/index.js.map +1 -1
  235. package/dist/recording-controller/util.d.ts +13 -13
  236. package/dist/recording-controller/util.js.map +1 -1
  237. package/dist/roap/collection.d.ts +10 -10
  238. package/dist/roap/collection.js.map +1 -1
  239. package/dist/roap/handler.d.ts +47 -47
  240. package/dist/roap/handler.js +27 -27
  241. package/dist/roap/handler.js.map +1 -1
  242. package/dist/roap/index.d.ts +116 -116
  243. package/dist/roap/index.js +111 -111
  244. package/dist/roap/index.js.map +1 -1
  245. package/dist/roap/request.d.ts +35 -35
  246. package/dist/roap/request.js +17 -17
  247. package/dist/roap/request.js.map +1 -1
  248. package/dist/roap/state.d.ts +9 -9
  249. package/dist/roap/state.js +14 -14
  250. package/dist/roap/state.js.map +1 -1
  251. package/dist/roap/turnDiscovery.d.ts +67 -67
  252. package/dist/roap/turnDiscovery.js +46 -46
  253. package/dist/roap/turnDiscovery.js.map +1 -1
  254. package/dist/roap/util.d.ts +2 -2
  255. package/dist/roap/util.js.map +1 -1
  256. package/dist/statsAnalyzer/global.d.ts +118 -126
  257. package/dist/statsAnalyzer/global.js +4 -12
  258. package/dist/statsAnalyzer/global.js.map +1 -1
  259. package/dist/statsAnalyzer/index.d.ts +193 -190
  260. package/dist/statsAnalyzer/index.js +182 -140
  261. package/dist/statsAnalyzer/index.js.map +1 -1
  262. package/dist/statsAnalyzer/mqaUtil.d.ts +22 -22
  263. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  264. package/dist/transcription/index.d.ts +64 -64
  265. package/dist/transcription/index.js +42 -42
  266. package/dist/transcription/index.js.map +1 -1
  267. package/internal-README.md +172 -172
  268. package/jest.config.js +3 -3
  269. package/package.json +21 -22
  270. package/process +1 -1
  271. package/src/common/browser-detection.ts +39 -39
  272. package/src/common/collection.ts +94 -94
  273. package/src/common/config.ts +9 -9
  274. package/src/common/errors/captcha-error.ts +25 -25
  275. package/src/common/errors/intent-to-join.ts +27 -27
  276. package/src/common/errors/join-meeting.ts +32 -32
  277. package/src/common/errors/media.ts +25 -25
  278. package/src/common/errors/parameter.ts +33 -33
  279. package/src/common/errors/password-error.ts +25 -25
  280. package/src/common/errors/permission.ts +24 -24
  281. package/src/common/errors/reconnection-in-progress.ts +8 -8
  282. package/src/common/errors/reconnection.ts +25 -25
  283. package/src/common/errors/stats.ts +25 -25
  284. package/src/common/errors/webex-errors.ts +140 -140
  285. package/src/common/errors/webex-meetings-error.ts +35 -35
  286. package/src/common/events/events-scope.ts +30 -30
  287. package/src/common/events/events.ts +25 -25
  288. package/src/common/events/trigger-proxy.ts +25 -25
  289. package/src/common/events/util.ts +39 -39
  290. package/src/common/logs/logger-config.ts +8 -8
  291. package/src/common/logs/logger-proxy.ts +44 -44
  292. package/src/common/logs/request.ts +65 -65
  293. package/src/common/queue.ts +50 -50
  294. package/src/config.ts +96 -96
  295. package/src/constants.ts +1123 -1121
  296. package/src/controls-options-manager/constants.ts +5 -5
  297. package/src/controls-options-manager/enums.ts +6 -6
  298. package/src/controls-options-manager/index.ts +183 -183
  299. package/src/controls-options-manager/util.ts +20 -20
  300. package/src/index.js +15 -15
  301. package/src/locus-info/controlsUtils.ts +112 -112
  302. package/src/locus-info/embeddedAppsUtils.ts +57 -57
  303. package/src/locus-info/fullState.ts +69 -69
  304. package/src/locus-info/hostUtils.ts +60 -60
  305. package/src/locus-info/index.ts +1303 -1303
  306. package/src/locus-info/infoUtils.ts +101 -101
  307. package/src/locus-info/mediaSharesUtils.ts +173 -173
  308. package/src/locus-info/parser.ts +680 -680
  309. package/src/locus-info/selfUtils.ts +428 -428
  310. package/src/media/index.ts +675 -675
  311. package/src/media/properties.ts +313 -313
  312. package/src/media/util.ts +37 -37
  313. package/src/mediaQualityMetrics/config.ts +382 -382
  314. package/src/meeting/effectsState.ts +209 -209
  315. package/src/meeting/in-meeting-actions.ts +153 -153
  316. package/src/meeting/index.ts +6572 -6537
  317. package/src/meeting/muteState.ts +365 -365
  318. package/src/meeting/request.ts +810 -810
  319. package/src/meeting/state.ts +194 -194
  320. package/src/meeting/util.ts +530 -530
  321. package/src/meeting-info/collection.ts +41 -41
  322. package/src/meeting-info/index.ts +137 -137
  323. package/src/meeting-info/meeting-info-v2.ts +273 -273
  324. package/src/meeting-info/request.ts +46 -46
  325. package/src/meeting-info/util.ts +314 -314
  326. package/src/meeting-info/utilv2.ts +324 -324
  327. package/src/meetings/collection.ts +43 -43
  328. package/src/meetings/index.ts +1128 -1128
  329. package/src/meetings/request.ts +81 -81
  330. package/src/meetings/util.ts +181 -181
  331. package/src/member/index.ts +446 -446
  332. package/src/member/member.types.ts +13 -13
  333. package/src/member/util.ts +286 -286
  334. package/src/members/collection.ts +40 -40
  335. package/src/members/index.ts +900 -900
  336. package/src/members/request.ts +175 -175
  337. package/src/members/util.ts +260 -260
  338. package/src/metrics/config.ts +485 -485
  339. package/src/metrics/constants.ts +63 -61
  340. package/src/metrics/index.ts +543 -543
  341. package/src/networkQualityMonitor/index.ts +211 -211
  342. package/src/peer-connection-manager/index.ts +847 -847
  343. package/src/peer-connection-manager/util.ts +119 -119
  344. package/src/personal-meeting-room/index.ts +157 -157
  345. package/src/personal-meeting-room/request.ts +48 -48
  346. package/src/personal-meeting-room/util.ts +49 -49
  347. package/src/reachability/index.ts +478 -478
  348. package/src/reachability/request.ts +81 -81
  349. package/src/reactions/reactions.ts +104 -104
  350. package/src/reactions/reactions.type.ts +36 -36
  351. package/src/reconnection-manager/index.ts +622 -622
  352. package/src/recording-controller/enums.ts +8 -8
  353. package/src/recording-controller/index.ts +315 -315
  354. package/src/recording-controller/util.ts +58 -58
  355. package/src/roap/collection.ts +62 -62
  356. package/src/roap/handler.ts +294 -294
  357. package/src/roap/index.ts +413 -413
  358. package/src/roap/request.ts +229 -229
  359. package/src/roap/state.ts +156 -156
  360. package/src/roap/turnDiscovery.ts +283 -283
  361. package/src/roap/util.ts +100 -100
  362. package/src/statsAnalyzer/global.ts +120 -128
  363. package/src/statsAnalyzer/index.ts +1329 -1266
  364. package/src/statsAnalyzer/mqaUtil.ts +290 -290
  365. package/src/transcription/index.ts +154 -154
  366. package/test/integration/spec/journey.js +941 -941
  367. package/test/integration/spec/space-meeting.js +457 -457
  368. package/test/integration/spec/transcription.js +55 -55
  369. package/test/unit/spec/common/browser-detection.js +119 -119
  370. package/test/unit/spec/common/queue.js +69 -69
  371. package/test/unit/spec/controls-options-manager/index.js +123 -123
  372. package/test/unit/spec/controls-options-manager/util.js +65 -65
  373. package/test/unit/spec/fixture/locus.js +406 -406
  374. package/test/unit/spec/locus-info/controlsUtils.js +82 -82
  375. package/test/unit/spec/locus-info/embeddedAppsUtils.js +104 -104
  376. package/test/unit/spec/locus-info/index.js +1272 -1272
  377. package/test/unit/spec/locus-info/infoUtils.js +138 -138
  378. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +975 -975
  379. package/test/unit/spec/locus-info/lib/SeqCmp.json +522 -522
  380. package/test/unit/spec/locus-info/lib/selfConstant.js +286 -286
  381. package/test/unit/spec/locus-info/parser.js +298 -298
  382. package/test/unit/spec/locus-info/selfUtils.js +185 -185
  383. package/test/unit/spec/media/properties.ts +305 -305
  384. package/test/unit/spec/meeting/effectsState.js +281 -281
  385. package/test/unit/spec/meeting/in-meeting-actions.ts +90 -90
  386. package/test/unit/spec/meeting/index.js +5298 -5227
  387. package/test/unit/spec/meeting/muteState.js +430 -430
  388. package/test/unit/spec/meeting/request.js +317 -317
  389. package/test/unit/spec/meeting/utils.js +319 -319
  390. package/test/unit/spec/meeting-info/meetinginfov2.js +376 -376
  391. package/test/unit/spec/meeting-info/request.js +64 -64
  392. package/test/unit/spec/meeting-info/util.js +37 -37
  393. package/test/unit/spec/meeting-info/utilv2.js +330 -330
  394. package/test/unit/spec/meetings/collection.js +52 -52
  395. package/test/unit/spec/meetings/index.js +1375 -1375
  396. package/test/unit/spec/meetings/utils.js +66 -66
  397. package/test/unit/spec/member/index.js +47 -47
  398. package/test/unit/spec/member/util.js +80 -80
  399. package/test/unit/spec/members/index.js +364 -364
  400. package/test/unit/spec/members/request.js +200 -200
  401. package/test/unit/spec/members/utils.js +42 -42
  402. package/test/unit/spec/metrics/index.js +111 -111
  403. package/test/unit/spec/networkQualityMonitor/index.js +99 -99
  404. package/test/unit/spec/peerconnection-manager/index.js +218 -218
  405. package/test/unit/spec/peerconnection-manager/utils.js +49 -49
  406. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +388 -388
  407. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +29 -29
  408. package/test/unit/spec/reachability/index.ts +50 -50
  409. package/test/unit/spec/reconnection-manager/index.js +206 -206
  410. package/test/unit/spec/recording-controller/index.js +230 -230
  411. package/test/unit/spec/recording-controller/util.js +101 -101
  412. package/test/unit/spec/roap/index.ts +128 -128
  413. package/test/unit/spec/roap/turnDiscovery.ts +372 -372
  414. package/test/unit/spec/roap/util.js +30 -30
  415. package/test/unit/spec/stats-analyzer/index.js +438 -287
  416. package/test/utils/cmr.js +104 -104
  417. package/test/utils/testUtils.js +287 -287
  418. package/test/utils/webex-config.js +77 -77
  419. package/test/utils/webex-test-users.js +82 -82
  420. package/tsconfig.json +5 -5
@@ -14,11 +14,11 @@ var _parameter = _interopRequireDefault(require("../common/errors/parameter"));
14
14
  var SelfUtils = {};
15
15
  var PSTN_DEVICE_TYPE = 'PROVISIONAL';
16
16
 
17
- /**
18
- * parses the relevant values for self: muted, guest, moderator, mediaStatus, state, joinedWith, pstnDevices, creator, id
19
- * @param {Object} self
20
- * @param {String} deviceId
21
- * @returns {undefined}
17
+ /**
18
+ * parses the relevant values for self: muted, guest, moderator, mediaStatus, state, joinedWith, pstnDevices, creator, id
19
+ * @param {Object} self
20
+ * @param {String} deviceId
21
+ * @returns {undefined}
22
22
  */
23
23
  SelfUtils.parse = function (self, deviceId) {
24
24
  if (self) {
@@ -109,21 +109,21 @@ SelfUtils.getSelves = function (oldSelf, newSelf, deviceId) {
109
109
  };
110
110
  };
111
111
 
112
- /**
113
- * Checks if user has joined the meeting
114
- * @param {Object} self
115
- * @returns {boolean} isJoined
112
+ /**
113
+ * Checks if user has joined the meeting
114
+ * @param {Object} self
115
+ * @returns {boolean} isJoined
116
116
  */
117
117
  SelfUtils.isJoined = function (self) {
118
118
  return (self === null || self === void 0 ? void 0 : self.state) === _constants._JOINED_;
119
119
  };
120
120
 
121
- /**
122
- * Validate if the Meeting Layout Controls Layout has changed.
123
- *
124
- * @param {Self} previous - Previous self state
125
- * @param {Self} current - Current self state [per event]
126
- * @returns {boolean} - If the MEeting Layout Controls Layout has changed.
121
+ /**
122
+ * Validate if the Meeting Layout Controls Layout has changed.
123
+ *
124
+ * @param {Self} previous - Previous self state
125
+ * @param {Self} current - Current self state [per event]
126
+ * @returns {boolean} - If the MEeting Layout Controls Layout has changed.
127
127
  */
128
128
  SelfUtils.layoutChanged = function (previous, current) {
129
129
  return (current === null || current === void 0 ? void 0 : current.layout) && (previous === null || previous === void 0 ? void 0 : previous.layout) !== (current === null || current === void 0 ? void 0 : current.layout);
@@ -158,10 +158,10 @@ SelfUtils.getModifiedBy = function (self) {
158
158
  return self.controls.audio.meta.modifiedBy;
159
159
  };
160
160
 
161
- /**
162
- * get the id from the self object
163
- * @param {Object} self
164
- * @returns {String}
161
+ /**
162
+ * get the id from the self object
163
+ * @param {Object} self
164
+ * @returns {String}
165
165
  */
166
166
  SelfUtils.getSelfIdentity = function (self) {
167
167
  if (!self && !self.person) {
@@ -170,10 +170,10 @@ SelfUtils.getSelfIdentity = function (self) {
170
170
  return self.person.id;
171
171
  };
172
172
 
173
- /**
174
- * get the "remote mute" property from the self object
175
- * @param {Object} self
176
- * @returns {Boolean}
173
+ /**
174
+ * get the "remote mute" property from the self object
175
+ * @param {Object} self
176
+ * @returns {Boolean}
177
177
  */
178
178
  SelfUtils.getRemoteMuted = function (self) {
179
179
  if (!self || !self.controls || !self.controls.audio) {
@@ -203,10 +203,10 @@ SelfUtils.getStatus = function (status) {
203
203
  };
204
204
  };
205
205
 
206
- /**
207
- * @param {Object} oldSelf
208
- * @param {Object} changedSelf
209
- * @returns {Boolean}
206
+ /**
207
+ * @param {Object} oldSelf
208
+ * @param {Object} changedSelf
209
+ * @returns {Boolean}
210
210
  */
211
211
  SelfUtils.wasMediaInactiveOrReleased = function () {
212
212
  var oldSelf = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -214,28 +214,28 @@ SelfUtils.wasMediaInactiveOrReleased = function () {
214
214
  return oldSelf.joinedWith && oldSelf.joinedWith.state === _constants._JOINED_ && changedSelf.joinedWith && changedSelf.joinedWith.state === _constants._LEFT_ && (changedSelf.joinedWith.reason === _constants.MEETING_END_REASON.INACTIVE || changedSelf.joinedWith.reason === _constants.MEETING_END_REASON.MEDIA_RELEASED);
215
215
  };
216
216
 
217
- /**
218
- * @param {Object} check
219
- * @returns {Boolean}
217
+ /**
218
+ * @param {Object} check
219
+ * @returns {Boolean}
220
220
  */
221
221
  SelfUtils.isLocusUserUnadmitted = function (check) {
222
222
  var _check$joinedWith, _check$joinedWith$int;
223
223
  return check && ((_check$joinedWith = check.joinedWith) === null || _check$joinedWith === void 0 ? void 0 : (_check$joinedWith$int = _check$joinedWith.intent) === null || _check$joinedWith$int === void 0 ? void 0 : _check$joinedWith$int.type) === _constants._WAIT_ && check.state === _constants._IDLE_;
224
224
  };
225
225
 
226
- /**
227
- * @param {Object} check
228
- * @returns {Boolean}
226
+ /**
227
+ * @param {Object} check
228
+ * @returns {Boolean}
229
229
  */
230
230
  SelfUtils.isLocusUserAdmitted = function (check) {
231
231
  var _check$joinedWith2, _check$joinedWith2$in;
232
232
  return check && ((_check$joinedWith2 = check.joinedWith) === null || _check$joinedWith2 === void 0 ? void 0 : (_check$joinedWith2$in = _check$joinedWith2.intent) === null || _check$joinedWith2$in === void 0 ? void 0 : _check$joinedWith2$in.type) !== _constants._WAIT_ && check.state === _constants._JOINED_;
233
233
  };
234
234
 
235
- /**
236
- * @param {Object} self
237
- * @returns {Boolean}
238
- * @throws {Error} when self is undefined
235
+ /**
236
+ * @param {Object} self
237
+ * @returns {Boolean}
238
+ * @throws {Error} when self is undefined
239
239
  */
240
240
  SelfUtils.isUserUnadmitted = function (self) {
241
241
  if (!self) {
@@ -253,22 +253,22 @@ SelfUtils.moderatorChanged = function (oldSelf, changedSelf) {
253
253
  return oldSelf.moderator !== changedSelf.moderator;
254
254
  };
255
255
 
256
- /**
257
- * @param {Object} oldSelf
258
- * @param {Object} changedSelf
259
- * @returns {Boolean}
260
- * @throws {Error} if changed self was undefined
256
+ /**
257
+ * @param {Object} oldSelf
258
+ * @param {Object} changedSelf
259
+ * @returns {Boolean}
260
+ * @throws {Error} if changed self was undefined
261
261
  */
262
262
  SelfUtils.isDeviceObserving = function (oldSelf, changedSelf) {
263
263
  var _oldSelf$joinedWith, _oldSelf$joinedWith$i, _changedSelf$joinedWi, _changedSelf$joinedWi2;
264
264
  return oldSelf && ((_oldSelf$joinedWith = oldSelf.joinedWith) === null || _oldSelf$joinedWith === void 0 ? void 0 : (_oldSelf$joinedWith$i = _oldSelf$joinedWith.intent) === null || _oldSelf$joinedWith$i === void 0 ? void 0 : _oldSelf$joinedWith$i.type) === _constants._MOVE_MEDIA_ && changedSelf && ((_changedSelf$joinedWi = changedSelf.joinedWith) === null || _changedSelf$joinedWi === void 0 ? void 0 : (_changedSelf$joinedWi2 = _changedSelf$joinedWi.intent) === null || _changedSelf$joinedWi2 === void 0 ? void 0 : _changedSelf$joinedWi2.type) === _constants._OBSERVE_;
265
265
  };
266
266
 
267
- /**
268
- * @param {Object} oldSelf
269
- * @param {Object} changedSelf
270
- * @returns {Boolean}
271
- * @throws {Error} if changed self was undefined
267
+ /**
268
+ * @param {Object} oldSelf
269
+ * @param {Object} changedSelf
270
+ * @returns {Boolean}
271
+ * @throws {Error} if changed self was undefined
272
272
  */
273
273
  SelfUtils.isUserAdmitted = function (oldSelf, changedSelf) {
274
274
  if (!oldSelf) {
@@ -311,11 +311,11 @@ SelfUtils.localAudioUnmuteRequiredByServer = function () {
311
311
  return !changedSelf.remoteMuted && changedSelf.localAudioUnmuteRequired && oldSelf.localAudioUnmuteRequired !== changedSelf.localAudioUnmuteRequired;
312
312
  };
313
313
 
314
- /**
315
- * extract the sipUrl from the partner
316
- * @param {Object} partner
317
- * @param {Object} info
318
- * @returns {Object}
314
+ /**
315
+ * extract the sipUrl from the partner
316
+ * @param {Object} partner
317
+ * @param {Object} info
318
+ * @returns {Object}
319
319
  */
320
320
 
321
321
  SelfUtils.getSipUrl = function (partner, type, sipUri) {
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","_parameter","_interopRequireDefault","SelfUtils","PSTN_DEVICE_TYPE","parse","self","deviceId","_joinedWith$intent","joinedWith","devices","find","device","url","pstnDevices","filter","deviceType","remoteMuted","getRemoteMuted","unmuteAllowed","getUnmuteAllowed","localAudioUnmuteRequested","getLocalAudioUnmuteRequested","localAudioUnmuteRequired","getLocalAudioUnmuteRequired","lastModified","getLastModified","modifiedBy","getModifiedBy","guest","moderator","mediaStatus","getStatus","status","state","currentMediaStatus","getMediaStatus","mediaSessions","creator","isCreator","selfId","id","selfIdentity","getSelfIdentity","selfUrl","removed","roles","getRoles","isUserUnadmitted","_IDLE_","intent","type","_WAIT_","layout","getLayout","canNotViewTheParticipantList","isSharingBlocked","_self$controls","_isArray","default","controls","layouts","undefined","_self$controls2","_self$controls2$role","role","reduce","hasRole","push","getSelves","oldSelf","newSelf","previous","current","updates","isUserAdmitted","isMutedByOthersChanged","mutedByOthersChanged","localAudioUnmuteRequestedByServer","localAudioUnmuteRequiredByServer","moderatorChanged","isMediaInactiveOrReleased","wasMediaInactiveOrReleased","isUserObserving","isDeviceObserving","layoutChanged","isMediaInactive","audioStateChange","audio","videoStateChange","video","shareStateChange","share","canNotViewTheParticipantListChanged","isSharingBlockedChanged","isJoined","_JOINED_","previousMediaStatus","MEDIA_STATE","inactive","direction","meta","person","muted","_self$controls3","_self$controls3$audio","requestedToUnmute","disallowUnmute","_self$controls4","_self$controls4$audio","audioStatus","videoStatus","slides","videoSlidesStatus","arguments","length","changedSelf","_LEFT_","reason","MEETING_END_REASON","INACTIVE","MEDIA_RELEASED","isLocusUserUnadmitted","check","_check$joinedWith","_check$joinedWith$int","isLocusUserAdmitted","_check$joinedWith2","_check$joinedWith2$in","ParameterError","_oldSelf$joinedWith","_oldSelf$joinedWith$i","_changedSelf$joinedWi","_changedSelf$joinedWi2","_MOVE_MEDIA_","_OBSERVE_","getSipUrl","partner","sipUri","_CALL_","sipUrl","media","mediaType","AUDIO","mediaContent","MediaContent","main","VIDEO","_default","exports"],"sources":["selfUtils.ts"],"sourcesContent":["/* eslint-disable default-param-last */\r\n\r\nimport {\r\n _IDLE_,\r\n _JOINED_,\r\n _CALL_,\r\n _WAIT_,\r\n _MOVE_MEDIA_,\r\n _OBSERVE_,\r\n _LEFT_,\r\n MEETING_END_REASON,\r\n MEDIA_STATE,\r\n AUDIO,\r\n VIDEO,\r\n MediaContent,\r\n} from '../constants';\r\nimport ParameterError from '../common/errors/parameter';\r\n\r\nconst SelfUtils: any = {};\r\nconst PSTN_DEVICE_TYPE = 'PROVISIONAL';\r\n\r\n/**\r\n * parses the relevant values for self: muted, guest, moderator, mediaStatus, state, joinedWith, pstnDevices, creator, id\r\n * @param {Object} self\r\n * @param {String} deviceId\r\n * @returns {undefined}\r\n */\r\nSelfUtils.parse = (self: any, deviceId: string) => {\r\n if (self) {\r\n const joinedWith = self.devices.find((device) => deviceId === device.url);\r\n const pstnDevices = self.devices.filter((device) => PSTN_DEVICE_TYPE === device.deviceType);\r\n\r\n return {\r\n remoteMuted: SelfUtils.getRemoteMuted(self),\r\n unmuteAllowed: SelfUtils.getUnmuteAllowed(self),\r\n localAudioUnmuteRequested: SelfUtils.getLocalAudioUnmuteRequested(self),\r\n localAudioUnmuteRequired: SelfUtils.getLocalAudioUnmuteRequired(self),\r\n lastModified: SelfUtils.getLastModified(self),\r\n modifiedBy: SelfUtils.getModifiedBy(self),\r\n guest: self.guest,\r\n moderator: self.moderator,\r\n // cumulative media stats\r\n mediaStatus: SelfUtils.getStatus(self.status),\r\n // TODO: what should be the status if user has refreshed the page,\r\n // check the joinedWith parameter and communicate to the user\r\n state: self.state,\r\n // TODO: give a proper name . With same device as login or different login`\r\n // Some times we might have joined with both mobile and web\r\n joinedWith,\r\n pstnDevices,\r\n // current media stats is for the current device who has joined\r\n currentMediaStatus: SelfUtils.getMediaStatus(joinedWith?.mediaSessions),\r\n creator: self.isCreator, // check if its used,\r\n selfId: self.id,\r\n selfIdentity: SelfUtils.getSelfIdentity(self),\r\n selfUrl: self.url,\r\n removed: self.removed,\r\n roles: SelfUtils.getRoles(self),\r\n isUserUnadmitted: self.state === _IDLE_ && joinedWith?.intent?.type === _WAIT_,\r\n layout: SelfUtils.getLayout(self),\r\n canNotViewTheParticipantList: SelfUtils.canNotViewTheParticipantList(self),\r\n isSharingBlocked: SelfUtils.isSharingBlocked(self),\r\n };\r\n }\r\n\r\n return null;\r\n};\r\n\r\nSelfUtils.getLayout = (self) =>\r\n Array.isArray(self?.controls?.layouts) ? self.controls.layouts[0].type : undefined;\r\n\r\nSelfUtils.getRoles = (self) =>\r\n (self?.controls?.role?.roles || []).reduce((roles, role) => {\r\n if (role.hasRole) {\r\n roles.push(role.type);\r\n }\r\n\r\n return roles;\r\n }, []);\r\n\r\nSelfUtils.canNotViewTheParticipantList = (self) => !!self?.canNotViewTheParticipantList;\r\n\r\nSelfUtils.isSharingBlocked = (self) => !!self?.isSharingBlocked;\r\n\r\nSelfUtils.getSelves = (oldSelf, newSelf, deviceId) => {\r\n const previous = oldSelf && SelfUtils.parse(oldSelf, deviceId);\r\n const current = newSelf && SelfUtils.parse(newSelf, deviceId);\r\n const updates: any = {};\r\n\r\n updates.isUserUnadmitted = SelfUtils.isUserUnadmitted(current);\r\n updates.isUserAdmitted = SelfUtils.isUserAdmitted(previous, current);\r\n updates.isMutedByOthersChanged = SelfUtils.mutedByOthersChanged(previous, current);\r\n updates.localAudioUnmuteRequestedByServer = SelfUtils.localAudioUnmuteRequestedByServer(\r\n previous,\r\n current\r\n );\r\n updates.localAudioUnmuteRequiredByServer = SelfUtils.localAudioUnmuteRequiredByServer(\r\n previous,\r\n current\r\n );\r\n updates.moderatorChanged = SelfUtils.moderatorChanged(previous, current);\r\n updates.isMediaInactiveOrReleased = SelfUtils.wasMediaInactiveOrReleased(previous, current);\r\n updates.isUserObserving = SelfUtils.isDeviceObserving(previous, current);\r\n updates.layoutChanged = SelfUtils.layoutChanged(previous, current);\r\n\r\n updates.isMediaInactive = SelfUtils.isMediaInactive(previous, current);\r\n updates.audioStateChange =\r\n previous?.currentMediaStatus.audio !== current.currentMediaStatus.audio;\r\n updates.videoStateChange =\r\n previous?.currentMediaStatus.video !== current.currentMediaStatus.video;\r\n updates.shareStateChange =\r\n previous?.currentMediaStatus.share !== current.currentMediaStatus.share;\r\n\r\n updates.canNotViewTheParticipantListChanged =\r\n previous?.canNotViewTheParticipantList !== current.canNotViewTheParticipantList;\r\n updates.isSharingBlockedChanged = previous?.isSharingBlocked !== current.isSharingBlocked;\r\n\r\n return {\r\n previous,\r\n current,\r\n updates,\r\n };\r\n};\r\n\r\n/**\r\n * Checks if user has joined the meeting\r\n * @param {Object} self\r\n * @returns {boolean} isJoined\r\n */\r\nSelfUtils.isJoined = (self: any) => self?.state === _JOINED_;\r\n\r\n/**\r\n * Validate if the Meeting Layout Controls Layout has changed.\r\n *\r\n * @param {Self} previous - Previous self state\r\n * @param {Self} current - Current self state [per event]\r\n * @returns {boolean} - If the MEeting Layout Controls Layout has changed.\r\n */\r\nSelfUtils.layoutChanged = (previous: any, current: any) =>\r\n current?.layout && previous?.layout !== current?.layout;\r\n\r\nSelfUtils.isMediaInactive = (previous, current) => {\r\n if (\r\n previous &&\r\n previous.joinedWith &&\r\n previous.joinedWith.mediaSessions &&\r\n current &&\r\n current.joinedWith &&\r\n current.joinedWith.mediaSessions\r\n ) {\r\n const previousMediaStatus = SelfUtils.getMediaStatus(previous.joinedWith.mediaSessions);\r\n const currentMediaStatus = SelfUtils.getMediaStatus(current.joinedWith.mediaSessions);\r\n\r\n if (\r\n previousMediaStatus.audio &&\r\n currentMediaStatus.audio &&\r\n previousMediaStatus.audio.state !== MEDIA_STATE.inactive &&\r\n currentMediaStatus.audio.state === MEDIA_STATE.inactive &&\r\n currentMediaStatus.audio.direction !== MEDIA_STATE.inactive\r\n ) {\r\n return true;\r\n }\r\n\r\n if (\r\n previousMediaStatus.video &&\r\n currentMediaStatus.video &&\r\n previousMediaStatus.video.state !== MEDIA_STATE.inactive &&\r\n currentMediaStatus.video.state === MEDIA_STATE.inactive &&\r\n currentMediaStatus.video.direction !== MEDIA_STATE.inactive\r\n ) {\r\n return true;\r\n }\r\n\r\n if (\r\n previousMediaStatus.share &&\r\n currentMediaStatus.share &&\r\n previousMediaStatus.share.state !== MEDIA_STATE.inactive &&\r\n currentMediaStatus.share.state === MEDIA_STATE.inactive &&\r\n currentMediaStatus.share.direction !== MEDIA_STATE.inactive\r\n ) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n return false;\r\n};\r\n\r\nSelfUtils.getLastModified = (self) => {\r\n if (\r\n !self ||\r\n !self.controls ||\r\n !self.controls.audio ||\r\n !self.controls.audio.meta ||\r\n !self.controls.audio.meta.lastModified\r\n ) {\r\n return null;\r\n }\r\n\r\n return self.controls.audio.meta.lastModified;\r\n};\r\n\r\nSelfUtils.getModifiedBy = (self) => {\r\n if (\r\n !self ||\r\n !self.controls ||\r\n !self.controls.audio ||\r\n !self.controls.audio.meta ||\r\n !self.controls.audio.meta.modifiedBy\r\n ) {\r\n return null;\r\n }\r\n\r\n return self.controls.audio.meta.modifiedBy;\r\n};\r\n\r\n/**\r\n * get the id from the self object\r\n * @param {Object} self\r\n * @returns {String}\r\n */\r\nSelfUtils.getSelfIdentity = (self: any) => {\r\n if (!self && !self.person) {\r\n return null;\r\n }\r\n\r\n return self.person.id;\r\n};\r\n\r\n/**\r\n * get the \"remote mute\" property from the self object\r\n * @param {Object} self\r\n * @returns {Boolean}\r\n */\r\nSelfUtils.getRemoteMuted = (self: any) => {\r\n if (!self || !self.controls || !self.controls.audio) {\r\n return null;\r\n }\r\n\r\n return self.controls.audio.muted;\r\n};\r\n\r\nSelfUtils.getLocalAudioUnmuteRequested = (self) => !!self?.controls?.audio?.requestedToUnmute;\r\n\r\nSelfUtils.getUnmuteAllowed = (self) => {\r\n if (!self || !self.controls || !self.controls.audio) {\r\n return null;\r\n }\r\n\r\n return !self.controls.audio.disallowUnmute;\r\n};\r\n\r\nSelfUtils.getLocalAudioUnmuteRequired = (self) => !!self?.controls?.audio?.localAudioUnmuteRequired;\r\n\r\nSelfUtils.getStatus = (status) => ({\r\n audio: status.audioStatus,\r\n video: status.videoStatus,\r\n slides: status.videoSlidesStatus,\r\n});\r\n\r\n/**\r\n * @param {Object} oldSelf\r\n * @param {Object} changedSelf\r\n * @returns {Boolean}\r\n */\r\nSelfUtils.wasMediaInactiveOrReleased = (oldSelf: any = {}, changedSelf: any) =>\r\n oldSelf.joinedWith &&\r\n oldSelf.joinedWith.state === _JOINED_ &&\r\n changedSelf.joinedWith &&\r\n changedSelf.joinedWith.state === _LEFT_ &&\r\n (changedSelf.joinedWith.reason === MEETING_END_REASON.INACTIVE ||\r\n changedSelf.joinedWith.reason === MEETING_END_REASON.MEDIA_RELEASED);\r\n\r\n/**\r\n * @param {Object} check\r\n * @returns {Boolean}\r\n */\r\nSelfUtils.isLocusUserUnadmitted = (check: any) =>\r\n check && check.joinedWith?.intent?.type === _WAIT_ && check.state === _IDLE_;\r\n\r\n/**\r\n * @param {Object} check\r\n * @returns {Boolean}\r\n */\r\nSelfUtils.isLocusUserAdmitted = (check: any) =>\r\n check && check.joinedWith?.intent?.type !== _WAIT_ && check.state === _JOINED_;\r\n\r\n/**\r\n * @param {Object} self\r\n * @returns {Boolean}\r\n * @throws {Error} when self is undefined\r\n */\r\nSelfUtils.isUserUnadmitted = (self: object) => {\r\n if (!self) {\r\n throw new ParameterError('self must be defined to determine if self is unadmitted as guest.');\r\n }\r\n\r\n return SelfUtils.isLocusUserUnadmitted(self);\r\n};\r\n\r\nSelfUtils.moderatorChanged = (oldSelf, changedSelf) => {\r\n if (!oldSelf) {\r\n return true;\r\n }\r\n if (!changedSelf) {\r\n throw new ParameterError(\r\n 'New self must be defined to determine if self transitioned moderator status.'\r\n );\r\n }\r\n\r\n return oldSelf.moderator !== changedSelf.moderator;\r\n};\r\n\r\n/**\r\n * @param {Object} oldSelf\r\n * @param {Object} changedSelf\r\n * @returns {Boolean}\r\n * @throws {Error} if changed self was undefined\r\n */\r\nSelfUtils.isDeviceObserving = (oldSelf: any, changedSelf: any) =>\r\n oldSelf &&\r\n oldSelf.joinedWith?.intent?.type === _MOVE_MEDIA_ &&\r\n changedSelf &&\r\n changedSelf.joinedWith?.intent?.type === _OBSERVE_;\r\n\r\n/**\r\n * @param {Object} oldSelf\r\n * @param {Object} changedSelf\r\n * @returns {Boolean}\r\n * @throws {Error} if changed self was undefined\r\n */\r\nSelfUtils.isUserAdmitted = (oldSelf: object, changedSelf: object) => {\r\n if (!oldSelf) {\r\n // if there was no previous locus, it couldn't have been admitted yet\r\n return false;\r\n }\r\n if (!changedSelf) {\r\n throw new ParameterError(\r\n 'New self must be defined to determine if self transitioned to admitted as guest.'\r\n );\r\n }\r\n\r\n return SelfUtils.isLocusUserUnadmitted(oldSelf) && SelfUtils.isLocusUserAdmitted(changedSelf);\r\n};\r\n\r\nSelfUtils.mutedByOthersChanged = (oldSelf, changedSelf) => {\r\n if (!changedSelf) {\r\n throw new ParameterError('New self must be defined to determine if self was muted by others.');\r\n }\r\n\r\n if (!oldSelf || oldSelf.remoteMuted === null) {\r\n if (changedSelf.remoteMuted) {\r\n return true; // this happens when mute on-entry is enabled\r\n }\r\n\r\n // we don't want to be sending the 'meeting:self:unmutedByOthers' notification on meeting join\r\n return false;\r\n }\r\n\r\n return (\r\n changedSelf.remoteMuted !== null &&\r\n (oldSelf.remoteMuted !== changedSelf.remoteMuted ||\r\n (changedSelf.remoteMuted && oldSelf.unmuteAllowed !== changedSelf.unmuteAllowed))\r\n );\r\n};\r\n\r\nSelfUtils.localAudioUnmuteRequestedByServer = (oldSelf: any = {}, changedSelf: any) => {\r\n if (!changedSelf) {\r\n throw new ParameterError(\r\n 'New self must be defined to determine if self received request to unmute.'\r\n );\r\n }\r\n\r\n return changedSelf.localAudioUnmuteRequested && !oldSelf.localAudioUnmuteRequested;\r\n};\r\n\r\nSelfUtils.localAudioUnmuteRequiredByServer = (oldSelf: any = {}, changedSelf: any) => {\r\n if (!changedSelf) {\r\n throw new ParameterError(\r\n 'New self must be defined to determine if localAudioUnmuteRequired changed.'\r\n );\r\n }\r\n\r\n return (\r\n !changedSelf.remoteMuted &&\r\n changedSelf.localAudioUnmuteRequired &&\r\n oldSelf.localAudioUnmuteRequired !== changedSelf.localAudioUnmuteRequired\r\n );\r\n};\r\n\r\n/**\r\n * extract the sipUrl from the partner\r\n * @param {Object} partner\r\n * @param {Object} info\r\n * @returns {Object}\r\n */\r\n\r\nSelfUtils.getSipUrl = (partner: any, type, sipUri) => {\r\n // For webex meeting the sipUrl gets updated in info parser\r\n if (partner && type === _CALL_) {\r\n return {sipUri: partner.person.sipUrl || partner.person.id};\r\n }\r\n\r\n return {sipUri};\r\n};\r\n\r\nSelfUtils.getMediaStatus = (mediaSessions = []) => {\r\n const mediaStatus = {\r\n audio: {},\r\n video: {},\r\n share: {},\r\n };\r\n\r\n mediaStatus.audio = mediaSessions.find(\r\n (media) => media.mediaType === AUDIO && media.mediaContent === MediaContent.main\r\n );\r\n mediaStatus.video = mediaSessions.find(\r\n (media) => media.mediaType === VIDEO && media.mediaContent === MediaContent.main\r\n );\r\n mediaStatus.share = mediaSessions.find(\r\n (media) => media.mediaType === VIDEO && media.mediaContent === MediaContent.slides\r\n );\r\n\r\n return mediaStatus;\r\n};\r\n\r\nexport default SelfUtils;\r\n"],"mappings":"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"}
1
+ {"version":3,"names":["_constants","require","_parameter","_interopRequireDefault","SelfUtils","PSTN_DEVICE_TYPE","parse","self","deviceId","_joinedWith$intent","joinedWith","devices","find","device","url","pstnDevices","filter","deviceType","remoteMuted","getRemoteMuted","unmuteAllowed","getUnmuteAllowed","localAudioUnmuteRequested","getLocalAudioUnmuteRequested","localAudioUnmuteRequired","getLocalAudioUnmuteRequired","lastModified","getLastModified","modifiedBy","getModifiedBy","guest","moderator","mediaStatus","getStatus","status","state","currentMediaStatus","getMediaStatus","mediaSessions","creator","isCreator","selfId","id","selfIdentity","getSelfIdentity","selfUrl","removed","roles","getRoles","isUserUnadmitted","_IDLE_","intent","type","_WAIT_","layout","getLayout","canNotViewTheParticipantList","isSharingBlocked","_self$controls","_isArray","default","controls","layouts","undefined","_self$controls2","_self$controls2$role","role","reduce","hasRole","push","getSelves","oldSelf","newSelf","previous","current","updates","isUserAdmitted","isMutedByOthersChanged","mutedByOthersChanged","localAudioUnmuteRequestedByServer","localAudioUnmuteRequiredByServer","moderatorChanged","isMediaInactiveOrReleased","wasMediaInactiveOrReleased","isUserObserving","isDeviceObserving","layoutChanged","isMediaInactive","audioStateChange","audio","videoStateChange","video","shareStateChange","share","canNotViewTheParticipantListChanged","isSharingBlockedChanged","isJoined","_JOINED_","previousMediaStatus","MEDIA_STATE","inactive","direction","meta","person","muted","_self$controls3","_self$controls3$audio","requestedToUnmute","disallowUnmute","_self$controls4","_self$controls4$audio","audioStatus","videoStatus","slides","videoSlidesStatus","arguments","length","changedSelf","_LEFT_","reason","MEETING_END_REASON","INACTIVE","MEDIA_RELEASED","isLocusUserUnadmitted","check","_check$joinedWith","_check$joinedWith$int","isLocusUserAdmitted","_check$joinedWith2","_check$joinedWith2$in","ParameterError","_oldSelf$joinedWith","_oldSelf$joinedWith$i","_changedSelf$joinedWi","_changedSelf$joinedWi2","_MOVE_MEDIA_","_OBSERVE_","getSipUrl","partner","sipUri","_CALL_","sipUrl","media","mediaType","AUDIO","mediaContent","MediaContent","main","VIDEO","_default","exports"],"sources":["selfUtils.ts"],"sourcesContent":["/* eslint-disable default-param-last */\n\nimport {\n _IDLE_,\n _JOINED_,\n _CALL_,\n _WAIT_,\n _MOVE_MEDIA_,\n _OBSERVE_,\n _LEFT_,\n MEETING_END_REASON,\n MEDIA_STATE,\n AUDIO,\n VIDEO,\n MediaContent,\n} from '../constants';\nimport ParameterError from '../common/errors/parameter';\n\nconst SelfUtils: any = {};\nconst PSTN_DEVICE_TYPE = 'PROVISIONAL';\n\n/**\n * parses the relevant values for self: muted, guest, moderator, mediaStatus, state, joinedWith, pstnDevices, creator, id\n * @param {Object} self\n * @param {String} deviceId\n * @returns {undefined}\n */\nSelfUtils.parse = (self: any, deviceId: string) => {\n if (self) {\n const joinedWith = self.devices.find((device) => deviceId === device.url);\n const pstnDevices = self.devices.filter((device) => PSTN_DEVICE_TYPE === device.deviceType);\n\n return {\n remoteMuted: SelfUtils.getRemoteMuted(self),\n unmuteAllowed: SelfUtils.getUnmuteAllowed(self),\n localAudioUnmuteRequested: SelfUtils.getLocalAudioUnmuteRequested(self),\n localAudioUnmuteRequired: SelfUtils.getLocalAudioUnmuteRequired(self),\n lastModified: SelfUtils.getLastModified(self),\n modifiedBy: SelfUtils.getModifiedBy(self),\n guest: self.guest,\n moderator: self.moderator,\n // cumulative media stats\n mediaStatus: SelfUtils.getStatus(self.status),\n // TODO: what should be the status if user has refreshed the page,\n // check the joinedWith parameter and communicate to the user\n state: self.state,\n // TODO: give a proper name . With same device as login or different login`\n // Some times we might have joined with both mobile and web\n joinedWith,\n pstnDevices,\n // current media stats is for the current device who has joined\n currentMediaStatus: SelfUtils.getMediaStatus(joinedWith?.mediaSessions),\n creator: self.isCreator, // check if its used,\n selfId: self.id,\n selfIdentity: SelfUtils.getSelfIdentity(self),\n selfUrl: self.url,\n removed: self.removed,\n roles: SelfUtils.getRoles(self),\n isUserUnadmitted: self.state === _IDLE_ && joinedWith?.intent?.type === _WAIT_,\n layout: SelfUtils.getLayout(self),\n canNotViewTheParticipantList: SelfUtils.canNotViewTheParticipantList(self),\n isSharingBlocked: SelfUtils.isSharingBlocked(self),\n };\n }\n\n return null;\n};\n\nSelfUtils.getLayout = (self) =>\n Array.isArray(self?.controls?.layouts) ? self.controls.layouts[0].type : undefined;\n\nSelfUtils.getRoles = (self) =>\n (self?.controls?.role?.roles || []).reduce((roles, role) => {\n if (role.hasRole) {\n roles.push(role.type);\n }\n\n return roles;\n }, []);\n\nSelfUtils.canNotViewTheParticipantList = (self) => !!self?.canNotViewTheParticipantList;\n\nSelfUtils.isSharingBlocked = (self) => !!self?.isSharingBlocked;\n\nSelfUtils.getSelves = (oldSelf, newSelf, deviceId) => {\n const previous = oldSelf && SelfUtils.parse(oldSelf, deviceId);\n const current = newSelf && SelfUtils.parse(newSelf, deviceId);\n const updates: any = {};\n\n updates.isUserUnadmitted = SelfUtils.isUserUnadmitted(current);\n updates.isUserAdmitted = SelfUtils.isUserAdmitted(previous, current);\n updates.isMutedByOthersChanged = SelfUtils.mutedByOthersChanged(previous, current);\n updates.localAudioUnmuteRequestedByServer = SelfUtils.localAudioUnmuteRequestedByServer(\n previous,\n current\n );\n updates.localAudioUnmuteRequiredByServer = SelfUtils.localAudioUnmuteRequiredByServer(\n previous,\n current\n );\n updates.moderatorChanged = SelfUtils.moderatorChanged(previous, current);\n updates.isMediaInactiveOrReleased = SelfUtils.wasMediaInactiveOrReleased(previous, current);\n updates.isUserObserving = SelfUtils.isDeviceObserving(previous, current);\n updates.layoutChanged = SelfUtils.layoutChanged(previous, current);\n\n updates.isMediaInactive = SelfUtils.isMediaInactive(previous, current);\n updates.audioStateChange =\n previous?.currentMediaStatus.audio !== current.currentMediaStatus.audio;\n updates.videoStateChange =\n previous?.currentMediaStatus.video !== current.currentMediaStatus.video;\n updates.shareStateChange =\n previous?.currentMediaStatus.share !== current.currentMediaStatus.share;\n\n updates.canNotViewTheParticipantListChanged =\n previous?.canNotViewTheParticipantList !== current.canNotViewTheParticipantList;\n updates.isSharingBlockedChanged = previous?.isSharingBlocked !== current.isSharingBlocked;\n\n return {\n previous,\n current,\n updates,\n };\n};\n\n/**\n * Checks if user has joined the meeting\n * @param {Object} self\n * @returns {boolean} isJoined\n */\nSelfUtils.isJoined = (self: any) => self?.state === _JOINED_;\n\n/**\n * Validate if the Meeting Layout Controls Layout has changed.\n *\n * @param {Self} previous - Previous self state\n * @param {Self} current - Current self state [per event]\n * @returns {boolean} - If the MEeting Layout Controls Layout has changed.\n */\nSelfUtils.layoutChanged = (previous: any, current: any) =>\n current?.layout && previous?.layout !== current?.layout;\n\nSelfUtils.isMediaInactive = (previous, current) => {\n if (\n previous &&\n previous.joinedWith &&\n previous.joinedWith.mediaSessions &&\n current &&\n current.joinedWith &&\n current.joinedWith.mediaSessions\n ) {\n const previousMediaStatus = SelfUtils.getMediaStatus(previous.joinedWith.mediaSessions);\n const currentMediaStatus = SelfUtils.getMediaStatus(current.joinedWith.mediaSessions);\n\n if (\n previousMediaStatus.audio &&\n currentMediaStatus.audio &&\n previousMediaStatus.audio.state !== MEDIA_STATE.inactive &&\n currentMediaStatus.audio.state === MEDIA_STATE.inactive &&\n currentMediaStatus.audio.direction !== MEDIA_STATE.inactive\n ) {\n return true;\n }\n\n if (\n previousMediaStatus.video &&\n currentMediaStatus.video &&\n previousMediaStatus.video.state !== MEDIA_STATE.inactive &&\n currentMediaStatus.video.state === MEDIA_STATE.inactive &&\n currentMediaStatus.video.direction !== MEDIA_STATE.inactive\n ) {\n return true;\n }\n\n if (\n previousMediaStatus.share &&\n currentMediaStatus.share &&\n previousMediaStatus.share.state !== MEDIA_STATE.inactive &&\n currentMediaStatus.share.state === MEDIA_STATE.inactive &&\n currentMediaStatus.share.direction !== MEDIA_STATE.inactive\n ) {\n return true;\n }\n\n return false;\n }\n\n return false;\n};\n\nSelfUtils.getLastModified = (self) => {\n if (\n !self ||\n !self.controls ||\n !self.controls.audio ||\n !self.controls.audio.meta ||\n !self.controls.audio.meta.lastModified\n ) {\n return null;\n }\n\n return self.controls.audio.meta.lastModified;\n};\n\nSelfUtils.getModifiedBy = (self) => {\n if (\n !self ||\n !self.controls ||\n !self.controls.audio ||\n !self.controls.audio.meta ||\n !self.controls.audio.meta.modifiedBy\n ) {\n return null;\n }\n\n return self.controls.audio.meta.modifiedBy;\n};\n\n/**\n * get the id from the self object\n * @param {Object} self\n * @returns {String}\n */\nSelfUtils.getSelfIdentity = (self: any) => {\n if (!self && !self.person) {\n return null;\n }\n\n return self.person.id;\n};\n\n/**\n * get the \"remote mute\" property from the self object\n * @param {Object} self\n * @returns {Boolean}\n */\nSelfUtils.getRemoteMuted = (self: any) => {\n if (!self || !self.controls || !self.controls.audio) {\n return null;\n }\n\n return self.controls.audio.muted;\n};\n\nSelfUtils.getLocalAudioUnmuteRequested = (self) => !!self?.controls?.audio?.requestedToUnmute;\n\nSelfUtils.getUnmuteAllowed = (self) => {\n if (!self || !self.controls || !self.controls.audio) {\n return null;\n }\n\n return !self.controls.audio.disallowUnmute;\n};\n\nSelfUtils.getLocalAudioUnmuteRequired = (self) => !!self?.controls?.audio?.localAudioUnmuteRequired;\n\nSelfUtils.getStatus = (status) => ({\n audio: status.audioStatus,\n video: status.videoStatus,\n slides: status.videoSlidesStatus,\n});\n\n/**\n * @param {Object} oldSelf\n * @param {Object} changedSelf\n * @returns {Boolean}\n */\nSelfUtils.wasMediaInactiveOrReleased = (oldSelf: any = {}, changedSelf: any) =>\n oldSelf.joinedWith &&\n oldSelf.joinedWith.state === _JOINED_ &&\n changedSelf.joinedWith &&\n changedSelf.joinedWith.state === _LEFT_ &&\n (changedSelf.joinedWith.reason === MEETING_END_REASON.INACTIVE ||\n changedSelf.joinedWith.reason === MEETING_END_REASON.MEDIA_RELEASED);\n\n/**\n * @param {Object} check\n * @returns {Boolean}\n */\nSelfUtils.isLocusUserUnadmitted = (check: any) =>\n check && check.joinedWith?.intent?.type === _WAIT_ && check.state === _IDLE_;\n\n/**\n * @param {Object} check\n * @returns {Boolean}\n */\nSelfUtils.isLocusUserAdmitted = (check: any) =>\n check && check.joinedWith?.intent?.type !== _WAIT_ && check.state === _JOINED_;\n\n/**\n * @param {Object} self\n * @returns {Boolean}\n * @throws {Error} when self is undefined\n */\nSelfUtils.isUserUnadmitted = (self: object) => {\n if (!self) {\n throw new ParameterError('self must be defined to determine if self is unadmitted as guest.');\n }\n\n return SelfUtils.isLocusUserUnadmitted(self);\n};\n\nSelfUtils.moderatorChanged = (oldSelf, changedSelf) => {\n if (!oldSelf) {\n return true;\n }\n if (!changedSelf) {\n throw new ParameterError(\n 'New self must be defined to determine if self transitioned moderator status.'\n );\n }\n\n return oldSelf.moderator !== changedSelf.moderator;\n};\n\n/**\n * @param {Object} oldSelf\n * @param {Object} changedSelf\n * @returns {Boolean}\n * @throws {Error} if changed self was undefined\n */\nSelfUtils.isDeviceObserving = (oldSelf: any, changedSelf: any) =>\n oldSelf &&\n oldSelf.joinedWith?.intent?.type === _MOVE_MEDIA_ &&\n changedSelf &&\n changedSelf.joinedWith?.intent?.type === _OBSERVE_;\n\n/**\n * @param {Object} oldSelf\n * @param {Object} changedSelf\n * @returns {Boolean}\n * @throws {Error} if changed self was undefined\n */\nSelfUtils.isUserAdmitted = (oldSelf: object, changedSelf: object) => {\n if (!oldSelf) {\n // if there was no previous locus, it couldn't have been admitted yet\n return false;\n }\n if (!changedSelf) {\n throw new ParameterError(\n 'New self must be defined to determine if self transitioned to admitted as guest.'\n );\n }\n\n return SelfUtils.isLocusUserUnadmitted(oldSelf) && SelfUtils.isLocusUserAdmitted(changedSelf);\n};\n\nSelfUtils.mutedByOthersChanged = (oldSelf, changedSelf) => {\n if (!changedSelf) {\n throw new ParameterError('New self must be defined to determine if self was muted by others.');\n }\n\n if (!oldSelf || oldSelf.remoteMuted === null) {\n if (changedSelf.remoteMuted) {\n return true; // this happens when mute on-entry is enabled\n }\n\n // we don't want to be sending the 'meeting:self:unmutedByOthers' notification on meeting join\n return false;\n }\n\n return (\n changedSelf.remoteMuted !== null &&\n (oldSelf.remoteMuted !== changedSelf.remoteMuted ||\n (changedSelf.remoteMuted && oldSelf.unmuteAllowed !== changedSelf.unmuteAllowed))\n );\n};\n\nSelfUtils.localAudioUnmuteRequestedByServer = (oldSelf: any = {}, changedSelf: any) => {\n if (!changedSelf) {\n throw new ParameterError(\n 'New self must be defined to determine if self received request to unmute.'\n );\n }\n\n return changedSelf.localAudioUnmuteRequested && !oldSelf.localAudioUnmuteRequested;\n};\n\nSelfUtils.localAudioUnmuteRequiredByServer = (oldSelf: any = {}, changedSelf: any) => {\n if (!changedSelf) {\n throw new ParameterError(\n 'New self must be defined to determine if localAudioUnmuteRequired changed.'\n );\n }\n\n return (\n !changedSelf.remoteMuted &&\n changedSelf.localAudioUnmuteRequired &&\n oldSelf.localAudioUnmuteRequired !== changedSelf.localAudioUnmuteRequired\n );\n};\n\n/**\n * extract the sipUrl from the partner\n * @param {Object} partner\n * @param {Object} info\n * @returns {Object}\n */\n\nSelfUtils.getSipUrl = (partner: any, type, sipUri) => {\n // For webex meeting the sipUrl gets updated in info parser\n if (partner && type === _CALL_) {\n return {sipUri: partner.person.sipUrl || partner.person.id};\n }\n\n return {sipUri};\n};\n\nSelfUtils.getMediaStatus = (mediaSessions = []) => {\n const mediaStatus = {\n audio: {},\n video: {},\n share: {},\n };\n\n mediaStatus.audio = mediaSessions.find(\n (media) => media.mediaType === AUDIO && media.mediaContent === MediaContent.main\n );\n mediaStatus.video = mediaSessions.find(\n (media) => media.mediaType === VIDEO && media.mediaContent === MediaContent.main\n );\n mediaStatus.share = mediaSessions.find(\n (media) => media.mediaType === VIDEO && media.mediaContent === MediaContent.slides\n );\n\n return mediaStatus;\n};\n\nexport default SelfUtils;\n"],"mappings":"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"}
@@ -1,32 +1,32 @@
1
- /*!
2
- * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
3
- */
4
- /**
5
- * MediaDirection
6
- * @typedef {Object} MediaDirection
7
- * @property {boolean} sendAudio
8
- * @property {boolean} receiveAudio
9
- * @property {boolean} sendVideo
10
- * @property {boolean} receiveVideo
11
- * @property {boolean} sendShare
12
- * @property {boolean} receiveShare
13
- */
14
- /**
15
- * SendOptions
16
- * @typedef {Object} SendOptions
17
- * @property sendAudio
18
- * @property sendVideo
19
- * @property sendShare
20
- * @property isSharing
21
- * @property {Object} sharePreferences
22
- */
23
- /**
24
- *
25
- * @public
26
- * @export
27
- * Mimic browser APIs as "the ultimate browser".
28
- * Handles the quirks of each browser.
29
- * Extends and enhances adapter.js, i.e., the "media" file from the web client.
30
- */
31
- declare const Media: any;
32
- export default Media;
1
+ /*!
2
+ * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
3
+ */
4
+ /**
5
+ * MediaDirection
6
+ * @typedef {Object} MediaDirection
7
+ * @property {boolean} sendAudio
8
+ * @property {boolean} receiveAudio
9
+ * @property {boolean} sendVideo
10
+ * @property {boolean} receiveVideo
11
+ * @property {boolean} sendShare
12
+ * @property {boolean} receiveShare
13
+ */
14
+ /**
15
+ * SendOptions
16
+ * @typedef {Object} SendOptions
17
+ * @property sendAudio
18
+ * @property sendVideo
19
+ * @property sendShare
20
+ * @property isSharing
21
+ * @property {Object} sharePreferences
22
+ */
23
+ /**
24
+ *
25
+ * @public
26
+ * @export
27
+ * Mimic browser APIs as "the ultimate browser".
28
+ * Handles the quirks of each browser.
29
+ * Extends and enhances adapter.js, i.e., the "media" file from the web client.
30
+ */
31
+ declare const Media: any;
32
+ export default Media;