@webex/plugin-meetings 2.60.0-next.9 → 2.60.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 (516) hide show
  1. package/README.md +8 -46
  2. package/dist/common/browser-detection.js +3 -2
  3. package/dist/common/browser-detection.js.map +1 -1
  4. package/dist/common/collection.js +4 -3
  5. package/dist/common/collection.js.map +1 -1
  6. package/dist/common/config.js +2 -1
  7. package/dist/common/config.js.map +1 -1
  8. package/dist/common/errors/captcha-error.js +2 -1
  9. package/dist/common/errors/captcha-error.js.map +1 -1
  10. package/dist/common/errors/intent-to-join.js +2 -1
  11. package/dist/common/errors/intent-to-join.js.map +1 -1
  12. package/dist/common/errors/join-meeting.js +2 -1
  13. package/dist/common/errors/join-meeting.js.map +1 -1
  14. package/dist/common/errors/media.js +2 -1
  15. package/dist/common/errors/media.js.map +1 -1
  16. package/dist/common/errors/parameter.js +4 -3
  17. package/dist/common/errors/parameter.js.map +1 -1
  18. package/dist/common/errors/password-error.js +2 -1
  19. package/dist/common/errors/password-error.js.map +1 -1
  20. package/dist/common/errors/permission.js +2 -1
  21. package/dist/common/errors/permission.js.map +1 -1
  22. package/dist/common/errors/{reclaim-host-role-errors.js → reclaim-host-role-error.js} +11 -7
  23. package/dist/common/errors/reclaim-host-role-error.js.map +1 -0
  24. package/dist/common/errors/reconnection-in-progress.js +2 -1
  25. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  26. package/dist/common/errors/reconnection.js +2 -1
  27. package/dist/common/errors/reconnection.js.map +1 -1
  28. package/dist/common/errors/stats.js +2 -1
  29. package/dist/common/errors/stats.js.map +1 -1
  30. package/dist/common/errors/webex-errors.d.ts +8 -20
  31. package/dist/common/errors/webex-errors.js +28 -48
  32. package/dist/common/errors/webex-errors.js.map +1 -1
  33. package/dist/common/errors/webex-meetings-error.js +2 -1
  34. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  35. package/dist/common/events/events-scope.js +2 -1
  36. package/dist/common/events/events-scope.js.map +1 -1
  37. package/dist/common/events/events.js +2 -1
  38. package/dist/common/events/events.js.map +1 -1
  39. package/dist/common/events/trigger-proxy.js +2 -1
  40. package/dist/common/events/trigger-proxy.js.map +1 -1
  41. package/dist/common/events/util.js +2 -1
  42. package/dist/common/events/util.js.map +1 -1
  43. package/dist/common/logs/logger-config.js +2 -1
  44. package/dist/common/logs/logger-config.js.map +1 -1
  45. package/dist/common/logs/logger-proxy.js +3 -2
  46. package/dist/common/logs/logger-proxy.js.map +1 -1
  47. package/dist/common/logs/request.d.ts +1 -3
  48. package/dist/common/logs/request.js +5 -8
  49. package/dist/common/logs/request.js.map +1 -1
  50. package/dist/common/queue.d.ts +7 -9
  51. package/dist/common/queue.js +9 -22
  52. package/dist/common/queue.js.map +1 -1
  53. package/dist/config.d.ts +7 -5
  54. package/dist/config.js +11 -8
  55. package/dist/config.js.map +1 -1
  56. package/dist/constants.d.ts +97 -217
  57. package/dist/constants.js +441 -416
  58. package/dist/constants.js.map +1 -1
  59. package/dist/controls-options-manager/constants.js +6 -3
  60. package/dist/controls-options-manager/constants.js.map +1 -1
  61. package/dist/controls-options-manager/enums.d.ts +1 -11
  62. package/dist/controls-options-manager/enums.js +6 -15
  63. package/dist/controls-options-manager/enums.js.map +1 -1
  64. package/dist/controls-options-manager/index.d.ts +1 -17
  65. package/dist/controls-options-manager/index.js +38 -127
  66. package/dist/controls-options-manager/index.js.map +1 -1
  67. package/dist/controls-options-manager/util.d.ts +7 -1
  68. package/dist/controls-options-manager/util.js +19 -309
  69. package/dist/controls-options-manager/util.js.map +1 -1
  70. package/dist/index.d.ts +3 -6
  71. package/dist/index.js +4 -116
  72. package/dist/index.js.map +1 -1
  73. package/dist/locus-info/controlsUtils.js +11 -100
  74. package/dist/locus-info/controlsUtils.js.map +1 -1
  75. package/dist/locus-info/embeddedAppsUtils.js +4 -3
  76. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  77. package/dist/locus-info/fullState.js +2 -1
  78. package/dist/locus-info/fullState.js.map +1 -1
  79. package/dist/locus-info/hostUtils.js +2 -1
  80. package/dist/locus-info/hostUtils.js.map +1 -1
  81. package/dist/locus-info/index.d.ts +4 -57
  82. package/dist/locus-info/index.js +84 -425
  83. package/dist/locus-info/index.js.map +1 -1
  84. package/dist/locus-info/infoUtils.js +5 -13
  85. package/dist/locus-info/infoUtils.js.map +1 -1
  86. package/dist/locus-info/mediaSharesUtils.js +3 -58
  87. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  88. package/dist/locus-info/parser.d.ts +6 -66
  89. package/dist/locus-info/parser.js +80 -253
  90. package/dist/locus-info/parser.js.map +1 -1
  91. package/dist/locus-info/selfUtils.js +13 -97
  92. package/dist/locus-info/selfUtils.js.map +1 -1
  93. package/dist/media/index.d.ts +0 -2
  94. package/dist/media/index.js +319 -107
  95. package/dist/media/index.js.map +1 -1
  96. package/dist/media/properties.d.ts +53 -38
  97. package/dist/media/properties.js +153 -96
  98. package/dist/media/properties.js.map +1 -1
  99. package/dist/media/util.js +22 -1
  100. package/dist/media/util.js.map +1 -1
  101. package/dist/mediaQualityMetrics/config.d.ts +230 -234
  102. package/dist/mediaQualityMetrics/config.js +498 -302
  103. package/dist/mediaQualityMetrics/config.js.map +1 -1
  104. package/dist/meeting/effectsState.d.ts +42 -0
  105. package/dist/meeting/effectsState.js +260 -0
  106. package/dist/meeting/effectsState.js.map +1 -0
  107. package/dist/meeting/in-meeting-actions.d.ts +0 -88
  108. package/dist/meeting/in-meeting-actions.js +3 -94
  109. package/dist/meeting/in-meeting-actions.js.map +1 -1
  110. package/dist/meeting/index.d.ts +494 -591
  111. package/dist/meeting/index.js +2969 -4707
  112. package/dist/meeting/index.js.map +1 -1
  113. package/dist/meeting/muteState.d.ts +25 -93
  114. package/dist/meeting/muteState.js +133 -224
  115. package/dist/meeting/muteState.js.map +1 -1
  116. package/dist/meeting/request.d.ts +47 -82
  117. package/dist/meeting/request.js +199 -297
  118. package/dist/meeting/request.js.map +1 -1
  119. package/dist/meeting/state.js +2 -1
  120. package/dist/meeting/state.js.map +1 -1
  121. package/dist/meeting/util.d.ts +1 -102
  122. package/dist/meeting/util.js +435 -605
  123. package/dist/meeting/util.js.map +1 -1
  124. package/dist/meeting-info/collection.js +4 -3
  125. package/dist/meeting-info/collection.js.map +1 -1
  126. package/dist/meeting-info/index.d.ts +1 -13
  127. package/dist/meeting-info/index.js +7 -74
  128. package/dist/meeting-info/index.js.map +1 -1
  129. package/dist/meeting-info/meeting-info-v2.d.ts +1 -31
  130. package/dist/meeting-info/meeting-info-v2.js +63 -200
  131. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  132. package/dist/meeting-info/request.js +2 -1
  133. package/dist/meeting-info/request.js.map +1 -1
  134. package/dist/meeting-info/util.js +3 -2
  135. package/dist/meeting-info/util.js.map +1 -1
  136. package/dist/meeting-info/utilv2.js +41 -39
  137. package/dist/meeting-info/utilv2.js.map +1 -1
  138. package/dist/meetings/collection.d.ts +0 -17
  139. package/dist/meetings/collection.js +4 -42
  140. package/dist/meetings/collection.js.map +1 -1
  141. package/dist/meetings/index.d.ts +21 -103
  142. package/dist/meetings/index.js +124 -486
  143. package/dist/meetings/index.js.map +1 -1
  144. package/dist/meetings/request.js +3 -4
  145. package/dist/meetings/request.js.map +1 -1
  146. package/dist/meetings/util.js +6 -107
  147. package/dist/meetings/util.js.map +1 -1
  148. package/dist/member/index.d.ts +1 -13
  149. package/dist/member/index.js +2 -45
  150. package/dist/member/index.js.map +1 -1
  151. package/dist/member/member.types.js +4 -3
  152. package/dist/member/member.types.js.map +1 -1
  153. package/dist/member/util.js +29 -120
  154. package/dist/member/util.js.map +1 -1
  155. package/dist/members/collection.d.ts +0 -5
  156. package/dist/members/collection.js +2 -11
  157. package/dist/members/collection.js.map +1 -1
  158. package/dist/members/index.d.ts +11 -56
  159. package/dist/members/index.js +47 -174
  160. package/dist/members/index.js.map +1 -1
  161. package/dist/members/request.d.ts +11 -67
  162. package/dist/members/request.js +54 -102
  163. package/dist/members/request.js.map +1 -1
  164. package/dist/members/types.js +4 -3
  165. package/dist/members/types.js.map +1 -1
  166. package/dist/members/util.d.ts +1 -214
  167. package/dist/members/util.js +284 -327
  168. package/dist/members/util.js.map +1 -1
  169. package/dist/metrics/config.d.ts +169 -0
  170. package/dist/metrics/config.js +289 -0
  171. package/dist/metrics/config.js.map +1 -0
  172. package/dist/metrics/constants.d.ts +6 -15
  173. package/dist/metrics/constants.js +9 -17
  174. package/dist/metrics/constants.js.map +1 -1
  175. package/dist/metrics/index.d.ts +111 -4
  176. package/dist/metrics/index.js +452 -4
  177. package/dist/metrics/index.js.map +1 -1
  178. package/dist/networkQualityMonitor/index.js +4 -5
  179. package/dist/networkQualityMonitor/index.js.map +1 -1
  180. package/dist/peer-connection-manager/index.d.ts +6 -0
  181. package/dist/peer-connection-manager/index.js +671 -0
  182. package/dist/peer-connection-manager/index.js.map +1 -0
  183. package/dist/peer-connection-manager/util.d.ts +6 -0
  184. package/dist/peer-connection-manager/util.js +110 -0
  185. package/dist/peer-connection-manager/util.js.map +1 -0
  186. package/dist/personal-meeting-room/index.js +3 -2
  187. package/dist/personal-meeting-room/index.js.map +1 -1
  188. package/dist/personal-meeting-room/request.js +3 -2
  189. package/dist/personal-meeting-room/request.js.map +1 -1
  190. package/dist/personal-meeting-room/util.js +2 -1
  191. package/dist/personal-meeting-room/util.js.map +1 -1
  192. package/dist/reachability/index.d.ts +7 -62
  193. package/dist/reachability/index.js +72 -265
  194. package/dist/reachability/index.js.map +1 -1
  195. package/dist/reachability/request.d.ts +3 -7
  196. package/dist/reachability/request.js +10 -18
  197. package/dist/reachability/request.js.map +1 -1
  198. package/dist/reactions/reactions.d.ts +2 -2
  199. package/dist/reactions/reactions.js +6 -4
  200. package/dist/reactions/reactions.js.map +1 -1
  201. package/dist/reactions/reactions.type.d.ts +3 -23
  202. package/dist/reactions/reactions.type.js +23 -21
  203. package/dist/reactions/reactions.type.js.map +1 -1
  204. package/dist/reconnection-manager/index.d.ts +8 -32
  205. package/dist/reconnection-manager/index.js +231 -282
  206. package/dist/reconnection-manager/index.js.map +1 -1
  207. package/dist/recording-controller/enums.js +5 -4
  208. package/dist/recording-controller/enums.js.map +1 -1
  209. package/dist/recording-controller/index.d.ts +1 -15
  210. package/dist/recording-controller/index.js +46 -57
  211. package/dist/recording-controller/index.js.map +1 -1
  212. package/dist/recording-controller/util.d.ts +4 -5
  213. package/dist/recording-controller/util.js +10 -10
  214. package/dist/recording-controller/util.js.map +1 -1
  215. package/dist/roap/collection.d.ts +10 -0
  216. package/dist/roap/collection.js +63 -0
  217. package/dist/roap/collection.js.map +1 -0
  218. package/dist/roap/handler.d.ts +47 -0
  219. package/dist/roap/handler.js +279 -0
  220. package/dist/roap/handler.js.map +1 -0
  221. package/dist/roap/index.d.ts +47 -9
  222. package/dist/roap/index.js +235 -101
  223. package/dist/roap/index.js.map +1 -1
  224. package/dist/roap/request.d.ts +12 -18
  225. package/dist/roap/request.js +180 -126
  226. package/dist/roap/request.js.map +1 -1
  227. package/dist/roap/state.d.ts +9 -0
  228. package/dist/roap/state.js +127 -0
  229. package/dist/roap/state.js.map +1 -0
  230. package/dist/roap/turnDiscovery.d.ts +16 -27
  231. package/dist/roap/turnDiscovery.js +105 -115
  232. package/dist/roap/turnDiscovery.js.map +1 -1
  233. package/dist/roap/util.d.ts +2 -0
  234. package/dist/roap/util.js +76 -0
  235. package/dist/roap/util.js.map +1 -0
  236. package/dist/statsAnalyzer/global.d.ts +83 -1
  237. package/dist/statsAnalyzer/global.js +85 -2
  238. package/dist/statsAnalyzer/global.js.map +1 -1
  239. package/dist/statsAnalyzer/index.d.ts +30 -28
  240. package/dist/statsAnalyzer/index.js +509 -374
  241. package/dist/statsAnalyzer/index.js.map +1 -1
  242. package/dist/statsAnalyzer/mqaUtil.d.ts +6 -8
  243. package/dist/statsAnalyzer/mqaUtil.js +83 -116
  244. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  245. package/dist/transcription/index.js +2 -1
  246. package/dist/transcription/index.js.map +1 -1
  247. package/package.json +26 -35
  248. package/src/common/errors/webex-errors.ts +12 -36
  249. package/src/common/logs/logger-proxy.ts +1 -1
  250. package/src/common/logs/request.ts +1 -5
  251. package/src/common/queue.ts +8 -22
  252. package/src/config.ts +7 -5
  253. package/src/constants.ts +97 -244
  254. package/src/controls-options-manager/enums.ts +0 -12
  255. package/src/controls-options-manager/index.ts +21 -116
  256. package/src/controls-options-manager/util.ts +14 -294
  257. package/src/index.js +15 -0
  258. package/src/locus-info/controlsUtils.ts +0 -110
  259. package/src/locus-info/index.ts +61 -449
  260. package/src/locus-info/infoUtils.ts +2 -14
  261. package/src/locus-info/mediaSharesUtils.ts +0 -64
  262. package/src/locus-info/parser.ts +47 -258
  263. package/src/locus-info/selfUtils.ts +2 -85
  264. package/src/media/index.ts +370 -153
  265. package/src/media/properties.ts +136 -106
  266. package/src/media/util.ts +21 -0
  267. package/src/mediaQualityMetrics/config.ts +377 -244
  268. package/src/meeting/effectsState.ts +209 -0
  269. package/src/meeting/in-meeting-actions.ts +0 -176
  270. package/src/meeting/index.ts +2482 -3929
  271. package/src/meeting/muteState.ts +138 -224
  272. package/src/meeting/request.ts +127 -207
  273. package/src/meeting/util.ts +423 -590
  274. package/src/meeting-info/index.ts +8 -81
  275. package/src/meeting-info/meeting-info-v2.ts +13 -163
  276. package/src/meeting-info/util.ts +1 -1
  277. package/src/meeting-info/utilv2.ts +28 -28
  278. package/src/meetings/collection.ts +0 -33
  279. package/src/meetings/index.ts +126 -486
  280. package/src/meetings/request.ts +0 -2
  281. package/src/meetings/util.ts +5 -116
  282. package/src/member/index.ts +1 -43
  283. package/src/member/util.ts +28 -125
  284. package/src/members/collection.ts +0 -8
  285. package/src/members/index.ts +52 -187
  286. package/src/members/request.ts +27 -87
  287. package/src/members/util.ts +291 -332
  288. package/src/metrics/config.ts +485 -0
  289. package/src/metrics/constants.ts +6 -15
  290. package/src/metrics/index.ts +471 -1
  291. package/src/networkQualityMonitor/index.ts +6 -6
  292. package/src/peer-connection-manager/index.ts +847 -0
  293. package/src/peer-connection-manager/util.ts +119 -0
  294. package/src/reachability/index.ts +45 -238
  295. package/src/reachability/request.ts +8 -17
  296. package/src/reactions/reactions.ts +4 -4
  297. package/src/reactions/reactions.type.ts +4 -30
  298. package/src/reconnection-manager/index.ts +156 -168
  299. package/src/recording-controller/index.ts +3 -20
  300. package/src/recording-controller/util.ts +9 -26
  301. package/src/roap/collection.ts +62 -0
  302. package/src/roap/handler.ts +294 -0
  303. package/src/roap/index.ts +241 -98
  304. package/src/roap/request.ts +148 -74
  305. package/src/roap/state.ts +156 -0
  306. package/src/roap/turnDiscovery.ts +56 -62
  307. package/src/roap/util.ts +100 -0
  308. package/src/statsAnalyzer/global.ts +84 -1
  309. package/src/statsAnalyzer/index.ts +642 -413
  310. package/src/statsAnalyzer/mqaUtil.ts +114 -111
  311. package/test/integration/spec/journey.js +264 -320
  312. package/test/integration/spec/space-meeting.js +4 -77
  313. package/test/unit/spec/common/queue.js +2 -31
  314. package/test/unit/spec/controls-options-manager/index.js +0 -163
  315. package/test/unit/spec/controls-options-manager/util.js +60 -576
  316. package/test/unit/spec/fixture/locus.js +0 -1
  317. package/test/unit/spec/locus-info/controlsUtils.js +30 -323
  318. package/test/unit/spec/locus-info/index.js +15 -1389
  319. package/test/unit/spec/locus-info/infoUtils.js +16 -54
  320. package/test/unit/spec/locus-info/lib/SeqCmp.json +0 -16
  321. package/test/unit/spec/locus-info/lib/selfConstant.js +0 -48
  322. package/test/unit/spec/locus-info/parser.js +35 -116
  323. package/test/unit/spec/locus-info/selfUtils.js +0 -275
  324. package/test/unit/spec/media/properties.ts +84 -75
  325. package/test/unit/spec/meeting/effectsState.js +281 -0
  326. package/test/unit/spec/meeting/in-meeting-actions.ts +0 -86
  327. package/test/unit/spec/meeting/index.js +3136 -8547
  328. package/test/unit/spec/meeting/muteState.js +213 -409
  329. package/test/unit/spec/meeting/request.js +42 -512
  330. package/test/unit/spec/meeting/utils.js +24 -741
  331. package/test/unit/spec/meeting-info/meetinginfov2.js +5 -527
  332. package/test/unit/spec/meeting-info/utilv2.js +0 -21
  333. package/test/unit/spec/meetings/collection.js +0 -26
  334. package/test/unit/spec/meetings/index.js +211 -1278
  335. package/test/unit/spec/meetings/utils.js +2 -202
  336. package/test/unit/spec/member/index.js +9 -32
  337. package/test/unit/spec/member/util.js +61 -499
  338. package/test/unit/spec/members/index.js +5 -394
  339. package/test/unit/spec/members/request.js +27 -206
  340. package/test/unit/spec/members/utils.js +38 -173
  341. package/test/unit/spec/metrics/index.js +50 -1
  342. package/test/unit/spec/networkQualityMonitor/index.js +4 -4
  343. package/test/unit/spec/peerconnection-manager/index.js +218 -0
  344. package/test/unit/spec/peerconnection-manager/utils.js +49 -0
  345. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +388 -0
  346. package/test/unit/spec/reachability/index.ts +24 -598
  347. package/test/unit/spec/reconnection-manager/index.js +24 -162
  348. package/test/unit/spec/recording-controller/index.js +218 -293
  349. package/test/unit/spec/recording-controller/util.js +96 -223
  350. package/test/unit/spec/roap/index.ts +76 -200
  351. package/test/unit/spec/roap/turnDiscovery.ts +48 -86
  352. package/test/unit/spec/roap/util.js +30 -0
  353. package/test/unit/spec/stats-analyzer/index.js +174 -188
  354. package/test/utils/testUtils.js +45 -0
  355. package/test/utils/webex-config.js +0 -4
  356. package/test/utils/webex-test-users.js +3 -7
  357. package/dist/annotation/annotation.types.d.ts +0 -42
  358. package/dist/annotation/annotation.types.js +0 -7
  359. package/dist/annotation/annotation.types.js.map +0 -1
  360. package/dist/annotation/constants.d.ts +0 -31
  361. package/dist/annotation/constants.js +0 -41
  362. package/dist/annotation/constants.js.map +0 -1
  363. package/dist/annotation/index.d.ts +0 -117
  364. package/dist/annotation/index.js +0 -357
  365. package/dist/annotation/index.js.map +0 -1
  366. package/dist/breakouts/breakout.d.ts +0 -8
  367. package/dist/breakouts/breakout.js +0 -215
  368. package/dist/breakouts/breakout.js.map +0 -1
  369. package/dist/breakouts/collection.d.ts +0 -5
  370. package/dist/breakouts/collection.js +0 -22
  371. package/dist/breakouts/collection.js.map +0 -1
  372. package/dist/breakouts/edit-lock-error.d.ts +0 -15
  373. package/dist/breakouts/edit-lock-error.js +0 -51
  374. package/dist/breakouts/edit-lock-error.js.map +0 -1
  375. package/dist/breakouts/events.d.ts +0 -8
  376. package/dist/breakouts/events.js +0 -44
  377. package/dist/breakouts/events.js.map +0 -1
  378. package/dist/breakouts/index.d.ts +0 -5
  379. package/dist/breakouts/index.js +0 -1047
  380. package/dist/breakouts/index.js.map +0 -1
  381. package/dist/breakouts/request.d.ts +0 -22
  382. package/dist/breakouts/request.js +0 -77
  383. package/dist/breakouts/request.js.map +0 -1
  384. package/dist/breakouts/utils.d.ts +0 -15
  385. package/dist/breakouts/utils.js +0 -64
  386. package/dist/breakouts/utils.js.map +0 -1
  387. package/dist/common/errors/no-meeting-info.d.ts +0 -14
  388. package/dist/common/errors/no-meeting-info.js +0 -50
  389. package/dist/common/errors/no-meeting-info.js.map +0 -1
  390. package/dist/common/errors/reclaim-host-role-errors.js.map +0 -1
  391. package/dist/controls-options-manager/types.d.ts +0 -43
  392. package/dist/controls-options-manager/types.js +0 -7
  393. package/dist/controls-options-manager/types.js.map +0 -1
  394. package/dist/interpretation/collection.d.ts +0 -5
  395. package/dist/interpretation/collection.js +0 -22
  396. package/dist/interpretation/collection.js.map +0 -1
  397. package/dist/interpretation/index.d.ts +0 -5
  398. package/dist/interpretation/index.js +0 -365
  399. package/dist/interpretation/index.js.map +0 -1
  400. package/dist/interpretation/siLanguage.d.ts +0 -5
  401. package/dist/interpretation/siLanguage.js +0 -24
  402. package/dist/interpretation/siLanguage.js.map +0 -1
  403. package/dist/meeting/locusMediaRequest.d.ts +0 -74
  404. package/dist/meeting/locusMediaRequest.js +0 -291
  405. package/dist/meeting/locusMediaRequest.js.map +0 -1
  406. package/dist/meeting/request.type.d.ts +0 -11
  407. package/dist/meeting/request.type.js +0 -7
  408. package/dist/meeting/request.type.js.map +0 -1
  409. package/dist/meetings/meetings.types.d.ts +0 -4
  410. package/dist/meetings/meetings.types.js +0 -7
  411. package/dist/meetings/meetings.types.js.map +0 -1
  412. package/dist/member/types.d.ts +0 -32
  413. package/dist/member/types.js +0 -23
  414. package/dist/member/types.js.map +0 -1
  415. package/dist/multistream/mediaRequestManager.d.ts +0 -118
  416. package/dist/multistream/mediaRequestManager.js +0 -344
  417. package/dist/multistream/mediaRequestManager.js.map +0 -1
  418. package/dist/multistream/receiveSlot.d.ts +0 -68
  419. package/dist/multistream/receiveSlot.js +0 -200
  420. package/dist/multistream/receiveSlot.js.map +0 -1
  421. package/dist/multistream/receiveSlotManager.d.ts +0 -56
  422. package/dist/multistream/receiveSlotManager.js +0 -174
  423. package/dist/multistream/receiveSlotManager.js.map +0 -1
  424. package/dist/multistream/remoteMedia.d.ts +0 -72
  425. package/dist/multistream/remoteMedia.js +0 -268
  426. package/dist/multistream/remoteMedia.js.map +0 -1
  427. package/dist/multistream/remoteMediaGroup.d.ts +0 -47
  428. package/dist/multistream/remoteMediaGroup.js +0 -267
  429. package/dist/multistream/remoteMediaGroup.js.map +0 -1
  430. package/dist/multistream/remoteMediaManager.d.ts +0 -285
  431. package/dist/multistream/remoteMediaManager.js +0 -1211
  432. package/dist/multistream/remoteMediaManager.js.map +0 -1
  433. package/dist/multistream/sendSlotManager.d.ts +0 -61
  434. package/dist/multistream/sendSlotManager.js +0 -236
  435. package/dist/multistream/sendSlotManager.js.map +0 -1
  436. package/dist/reactions/constants.d.ts +0 -3
  437. package/dist/reactions/constants.js +0 -12
  438. package/dist/reactions/constants.js.map +0 -1
  439. package/dist/rtcMetrics/constants.d.ts +0 -4
  440. package/dist/rtcMetrics/constants.js +0 -11
  441. package/dist/rtcMetrics/constants.js.map +0 -1
  442. package/dist/rtcMetrics/index.d.ts +0 -54
  443. package/dist/rtcMetrics/index.js +0 -140
  444. package/dist/rtcMetrics/index.js.map +0 -1
  445. package/dist/webinar/collection.d.ts +0 -16
  446. package/dist/webinar/collection.js +0 -43
  447. package/dist/webinar/collection.js.map +0 -1
  448. package/dist/webinar/index.d.ts +0 -5
  449. package/dist/webinar/index.js +0 -68
  450. package/dist/webinar/index.js.map +0 -1
  451. package/src/annotation/annotation.types.ts +0 -50
  452. package/src/annotation/constants.ts +0 -36
  453. package/src/annotation/index.ts +0 -328
  454. package/src/breakouts/README.md +0 -220
  455. package/src/breakouts/breakout.ts +0 -188
  456. package/src/breakouts/collection.ts +0 -19
  457. package/src/breakouts/edit-lock-error.ts +0 -25
  458. package/src/breakouts/events.ts +0 -56
  459. package/src/breakouts/index.ts +0 -925
  460. package/src/breakouts/request.ts +0 -55
  461. package/src/breakouts/utils.ts +0 -57
  462. package/src/common/errors/no-meeting-info.ts +0 -24
  463. package/src/controls-options-manager/types.ts +0 -59
  464. package/src/index.ts +0 -40
  465. package/src/interpretation/README.md +0 -60
  466. package/src/interpretation/collection.ts +0 -19
  467. package/src/interpretation/index.ts +0 -332
  468. package/src/interpretation/siLanguage.ts +0 -18
  469. package/src/meeting/locusMediaRequest.ts +0 -313
  470. package/src/meeting/request.type.ts +0 -13
  471. package/src/meetings/meetings.types.ts +0 -12
  472. package/src/member/types.ts +0 -38
  473. package/src/multistream/mediaRequestManager.ts +0 -440
  474. package/src/multistream/receiveSlot.ts +0 -184
  475. package/src/multistream/receiveSlotManager.ts +0 -166
  476. package/src/multistream/remoteMedia.ts +0 -254
  477. package/src/multistream/remoteMediaGroup.ts +0 -284
  478. package/src/multistream/remoteMediaManager.ts +0 -1145
  479. package/src/multistream/sendSlotManager.ts +0 -170
  480. package/src/reactions/constants.ts +0 -4
  481. package/src/rtcMetrics/constants.ts +0 -3
  482. package/src/rtcMetrics/index.ts +0 -124
  483. package/src/webinar/collection.ts +0 -31
  484. package/src/webinar/index.ts +0 -62
  485. package/test/integration/spec/converged-space-meetings.js +0 -233
  486. package/test/unit/spec/annotation/index.ts +0 -418
  487. package/test/unit/spec/breakouts/breakout.ts +0 -237
  488. package/test/unit/spec/breakouts/collection.ts +0 -15
  489. package/test/unit/spec/breakouts/edit-lock-error.ts +0 -30
  490. package/test/unit/spec/breakouts/events.ts +0 -89
  491. package/test/unit/spec/breakouts/index.ts +0 -1790
  492. package/test/unit/spec/breakouts/request.ts +0 -104
  493. package/test/unit/spec/breakouts/utils.js +0 -72
  494. package/test/unit/spec/interpretation/collection.ts +0 -15
  495. package/test/unit/spec/interpretation/index.ts +0 -589
  496. package/test/unit/spec/interpretation/siLanguage.ts +0 -28
  497. package/test/unit/spec/locus-info/mediaSharesUtils.ts +0 -32
  498. package/test/unit/spec/media/index.ts +0 -290
  499. package/test/unit/spec/meeting/locusMediaRequest.ts +0 -442
  500. package/test/unit/spec/meeting-info/index.js +0 -300
  501. package/test/unit/spec/multistream/mediaRequestManager.ts +0 -1418
  502. package/test/unit/spec/multistream/receiveSlot.ts +0 -163
  503. package/test/unit/spec/multistream/receiveSlotManager.ts +0 -203
  504. package/test/unit/spec/multistream/remoteMedia.ts +0 -255
  505. package/test/unit/spec/multistream/remoteMediaGroup.ts +0 -662
  506. package/test/unit/spec/multistream/remoteMediaManager.ts +0 -1924
  507. package/test/unit/spec/multistream/sendSlotManager.ts +0 -242
  508. package/test/unit/spec/reachability/request.js +0 -68
  509. package/test/unit/spec/roap/request.ts +0 -232
  510. package/test/unit/spec/rtcMetrics/index.ts +0 -93
  511. package/test/unit/spec/webinar/collection.ts +0 -13
  512. package/test/unit/spec/webinar/index.ts +0 -60
  513. package/test/utils/constants.js +0 -9
  514. package/test/utils/integrationTestUtils.js +0 -46
  515. /package/dist/common/errors/{reclaim-host-role-errors.d.ts → reclaim-host-role-error.d.ts} +0 -0
  516. /package/src/common/errors/{reclaim-host-role-errors.ts → reclaim-host-role-error.ts} +0 -0
@@ -9,7 +9,6 @@ _Object$defineProperty(exports, "__esModule", {
9
9
  exports.default = void 0;
10
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
11
11
  var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
12
- var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
13
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
14
13
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
15
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
@@ -23,13 +22,15 @@ var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy")
23
22
  var _triggerProxy = _interopRequireDefault(require("../common/events/trigger-proxy"));
24
23
  var _constants = require("../constants");
25
24
  var _constants2 = _interopRequireDefault(require("../metrics/constants"));
25
+ var _reconnection = _interopRequireDefault(require("../common/errors/reconnection"));
26
26
  var _reconnectionInProgress = _interopRequireDefault(require("../common/errors/reconnection-in-progress"));
27
+ var _peerConnectionManager = _interopRequireDefault(require("../peer-connection-manager"));
28
+ var _config = require("../metrics/config");
29
+ var _media = _interopRequireDefault(require("../media"));
27
30
  var _metrics = _interopRequireDefault(require("../metrics"));
28
- var _reconnection = _interopRequireDefault(require("../common/errors/reconnection"));
31
+ var _collection = _interopRequireDefault(require("../roap/collection"));
29
32
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
30
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /*!
31
- * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
32
- */ /* eslint-disable no-warning-comments */
33
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
33
34
  /**
34
35
  * Used to indicate that the reconnect logic needs to be retried.
35
36
  *
@@ -79,7 +80,7 @@ var NeedsRejoinError = /*#__PURE__*/function (_Error2) {
79
80
  * @export
80
81
  * @class ReconnectionManager
81
82
  */
82
- var ReconnectionManager = exports.default = /*#__PURE__*/function () {
83
+ var ReconnectionManager = /*#__PURE__*/function () {
83
84
  /**
84
85
  * @param {Meeting} meeting
85
86
  */
@@ -112,7 +113,7 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
112
113
 
113
114
  /**
114
115
  * @instance
115
- * @type {RECONNECTION_STATE}
116
+ * @type {String}
116
117
  * @private
117
118
  * @memberof ReconnectionManager
118
119
  */
@@ -155,35 +156,24 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
155
156
  }
156
157
 
157
158
  /**
159
+ * Sets the iceState to connected and clears any disconnect timeouts and
160
+ * related timeout data within the iceState.
161
+ *
162
+ * @returns {undefined}
158
163
  * @public
159
164
  * @memberof ReconnectionManager
160
- * @returns {void}
161
165
  */
162
166
  (0, _createClass2.default)(ReconnectionManager, [{
163
- key: "resetReconnectionTimer",
164
- value: function resetReconnectionTimer() {
165
- this.iceState.resolve();
166
- this.iceState.resolve = function () {};
167
- if (this.iceState.timer) {
168
- clearTimeout(this.iceState.timer);
169
- delete this.iceState.timer;
170
- }
171
- }
172
-
173
- /**
174
- * Sets the iceState to connected and clears any disconnect timeouts and
175
- * related timeout data within the iceState.
176
- *
177
- * @returns {undefined}
178
- * @public
179
- * @memberof ReconnectionManager
180
- */
181
- }, {
182
167
  key: "iceReconnected",
183
168
  value: function iceReconnected() {
184
169
  if (this.iceState.disconnected) {
185
170
  _loggerProxy.default.logger.log('ReconnectionManager:index#iceReconnected --> ice has reconnected');
186
- this.resetReconnectionTimer();
171
+ this.iceState.resolve();
172
+ this.iceState.resolve = function () {};
173
+ if (this.iceState.timer) {
174
+ clearTimeout(this.iceState.timer);
175
+ delete this.iceState.timer;
176
+ }
187
177
  this.iceState.disconnected = false;
188
178
  }
189
179
  }
@@ -244,67 +234,7 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
244
234
  key: "cleanUp",
245
235
  value: function cleanUp() {
246
236
  this.reset();
247
- }
248
-
249
- /**
250
- * Stop the local share stream.
251
- *
252
- * @param {string} reason a {@link SHARE_STOPPED_REASON}
253
- * @returns {undefined}
254
- * @private
255
- * @memberof ReconnectionManager
256
- */
257
- }, {
258
- key: "stopLocalShareStream",
259
- value: (function () {
260
- var _stopLocalShareStream = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(reason) {
261
- return _regenerator.default.wrap(function _callee$(_context) {
262
- while (1) switch (_context.prev = _context.next) {
263
- case 0:
264
- _context.next = 2;
265
- return this.meeting.unpublishStreams([this.meeting.mediaProperties.shareVideoStream, this.meeting.mediaProperties.shareAudioStream]);
266
- case 2:
267
- _triggerProxy.default.trigger(this.meeting, {
268
- file: 'reconnection-manager/index',
269
- function: 'stopLocalShareStream'
270
- }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
271
- reason: reason
272
- });
273
- case 3:
274
- case "end":
275
- return _context.stop();
276
- }
277
- }, _callee, this);
278
- }));
279
- function stopLocalShareStream(_x) {
280
- return _stopLocalShareStream.apply(this, arguments);
281
- }
282
- return stopLocalShareStream;
283
- }()
284
- /**
285
- * @public
286
- * @memberof ReconnectionManager
287
- * @returns {Boolean} true if reconnection operation is in progress
288
- */
289
- )
290
- }, {
291
- key: "isReconnectInProgress",
292
- value: function isReconnectInProgress() {
293
- return this.status === _constants.RECONNECTION.STATE.IN_PROGRESS;
294
- }
295
-
296
- /**
297
- * Sets the reconnection status
298
- *
299
- * @public
300
- * @param {RECONNECTION_STATE} status
301
- * @memberof ReconnectionManager
302
- * @returns {undefined}
303
- */
304
- }, {
305
- key: "setStatus",
306
- value: function setStatus(status) {
307
- this.status = status;
237
+ this.meeting = null;
308
238
  }
309
239
 
310
240
  /**
@@ -338,45 +268,51 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
338
268
  */
339
269
  }, {
340
270
  key: "reconnect",
341
- value: (function () {
342
- var _reconnect = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
271
+ value: function () {
272
+ var _reconnect = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
343
273
  var _this3 = this;
344
274
  var _ref2,
345
275
  _ref2$networkDisconne,
346
276
  networkDisconnect,
347
277
  _ref2$networkRetry,
348
278
  networkRetry,
349
- _args2 = arguments;
350
- return _regenerator.default.wrap(function _callee2$(_context2) {
351
- while (1) switch (_context2.prev = _context2.next) {
279
+ _args = arguments;
280
+ return _regenerator.default.wrap(function _callee$(_context) {
281
+ while (1) switch (_context.prev = _context.next) {
352
282
  case 0:
353
- _ref2 = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {}, _ref2$networkDisconne = _ref2.networkDisconnect, networkDisconnect = _ref2$networkDisconne === void 0 ? false : _ref2$networkDisconne, _ref2$networkRetry = _ref2.networkRetry, networkRetry = _ref2$networkRetry === void 0 ? false : _ref2$networkRetry;
283
+ _ref2 = _args.length > 0 && _args[0] !== undefined ? _args[0] : {}, _ref2$networkDisconne = _ref2.networkDisconnect, networkDisconnect = _ref2$networkDisconne === void 0 ? false : _ref2$networkDisconne, _ref2$networkRetry = _ref2.networkRetry, networkRetry = _ref2$networkRetry === void 0 ? false : _ref2$networkRetry;
354
284
  _loggerProxy.default.logger.info("ReconnectionManager:index#reconnect --> Reconnection start for meeting ".concat(this.meeting.id, "."));
355
285
  // First, validate that we can reconnect, if not, it will throw an error
356
- _context2.prev = 2;
286
+ _context.prev = 2;
357
287
  this.validate();
358
- _context2.next = 10;
288
+ _context.next = 10;
359
289
  break;
360
290
  case 6:
361
- _context2.prev = 6;
362
- _context2.t0 = _context2["catch"](2);
363
- _loggerProxy.default.logger.info('ReconnectionManager:index#reconnect --> Reconnection unable to begin.', _context2.t0);
364
- throw _context2.t0;
291
+ _context.prev = 6;
292
+ _context.t0 = _context["catch"](2);
293
+ _loggerProxy.default.logger.info('ReconnectionManager:index#reconnect --> Reconnection unable to begin.', _context.t0);
294
+ throw _context.t0;
365
295
  case 10:
366
296
  if (!networkRetry) {
367
297
  // Only log START metrics on the initial reconnect
368
298
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnect --> Sending reconnect start metric.');
369
-
370
- // @ts-ignore
371
- this.webex.internal.newMetrics.submitClientEvent({
372
- name: 'client.media.reconnecting',
373
- options: {
374
- meetingId: this.meeting.id
375
- }
299
+ _metrics.default.postEvent({
300
+ event: _config.eventType.MEDIA_RECONNECTING,
301
+ meeting: this.meeting
376
302
  });
377
303
  }
378
- return _context2.abrupt("return", this.executeReconnection({
304
+ return _context.abrupt("return", this.executeReconnection({
379
305
  networkDisconnect: networkDisconnect
306
+ }).then(function () {
307
+ _loggerProxy.default.logger.info('ReconnectionManager:index#reconnect --> Reconnection successful.');
308
+ _loggerProxy.default.logger.info('ReconnectionManager:index#reconnect --> Sending reconnect success metric.');
309
+ _metrics.default.postEvent({
310
+ event: _config.eventType.MEDIA_RECOVERED,
311
+ meeting: _this3.meeting,
312
+ data: {
313
+ recoveredBy: _config.reconnection.RECOVERED_BY_NEW
314
+ }
315
+ });
380
316
  }).catch(function (reconnectError) {
381
317
  if (reconnectError instanceof NeedsRetryError) {
382
318
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnect --> Reconnection not successful, retrying.');
@@ -393,23 +329,20 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
393
329
  // Reconnect has failed
394
330
  _loggerProxy.default.logger.error('ReconnectionManager:index#reconnect --> Reconnection failed.', reconnectError.message);
395
331
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnect --> Sending reconnect abort metric.');
396
-
397
- // @ts-ignore
398
- _this3.webex.internal.newMetrics.submitClientEvent({
399
- name: 'client.call.aborted',
400
- payload: {
332
+ var reconnectMetric = {
333
+ event: _config.eventType.CALL_ABORTED,
334
+ meeting: _this3.meeting,
335
+ data: {
401
336
  errors: [{
402
- category: 'expected',
337
+ category: _config.errorObjects.category.expected,
403
338
  errorCode: 2008,
404
339
  fatal: true,
405
- name: 'media-engine',
340
+ name: _config.errorObjects.name.mediaEngine,
406
341
  shownToUser: false
407
342
  }]
408
- },
409
- options: {
410
- meetingId: _this3.meeting.id
411
343
  }
412
- });
344
+ };
345
+ _metrics.default.postEvent(reconnectMetric);
413
346
  if (reconnectError instanceof NeedsRejoinError) {
414
347
  // send call aborded event with catogery as expected as we are trying to rejoin
415
348
 
@@ -421,9 +354,9 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
421
354
  }));
422
355
  case 12:
423
356
  case "end":
424
- return _context2.stop();
357
+ return _context.stop();
425
358
  }
426
- }, _callee2, this, [[2, 6]]);
359
+ }, _callee, this, [[2, 6]]);
427
360
  }));
428
361
  function reconnect() {
429
362
  return _reconnect.apply(this, arguments);
@@ -438,105 +371,94 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
438
371
  * @private
439
372
  * @memberof ReconnectionManager
440
373
  */
441
- )
442
374
  }, {
443
375
  key: "executeReconnection",
444
- value: (function () {
445
- var _executeReconnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(_ref3) {
376
+ value: function () {
377
+ var _executeReconnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(_ref3) {
446
378
  var _ref3$networkDisconne, networkDisconnect, wasSharing, media;
447
- return _regenerator.default.wrap(function _callee3$(_context3) {
448
- while (1) switch (_context3.prev = _context3.next) {
379
+ return _regenerator.default.wrap(function _callee2$(_context2) {
380
+ while (1) switch (_context2.prev = _context2.next) {
449
381
  case 0:
450
382
  _ref3$networkDisconne = _ref3.networkDisconnect, networkDisconnect = _ref3$networkDisconne === void 0 ? false : _ref3$networkDisconne;
451
383
  this.status = _constants.RECONNECTION.STATE.IN_PROGRESS;
452
384
  _loggerProxy.default.logger.info('ReconnectionManager:index#executeReconnection --> Attempting to reconnect to meeting.');
453
- wasSharing = this.meeting.shareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE;
454
- if (!wasSharing) {
455
- _context3.next = 7;
456
- break;
457
- }
458
- _context3.next = 7;
459
- return this.stopLocalShareStream(_constants.SHARE_STOPPED_REASON.MEDIA_RECONNECTION);
460
- case 7:
461
385
  if (!networkDisconnect) {
462
- _context3.next = 19;
386
+ _context2.next = 15;
463
387
  break;
464
388
  }
465
- _context3.prev = 8;
466
- _context3.next = 11;
389
+ _context2.prev = 4;
390
+ _context2.next = 7;
467
391
  return this.reconnectMercuryWebSocket();
468
- case 11:
392
+ case 7:
469
393
  _loggerProxy.default.logger.error('ReconnectionManager:index#executeReconnection --> Websocket reconnected.', this.webex.internal.device.url);
470
- _context3.next = 19;
394
+ _context2.next = 15;
471
395
  break;
472
- case 14:
473
- _context3.prev = 14;
474
- _context3.t0 = _context3["catch"](8);
396
+ case 10:
397
+ _context2.prev = 10;
398
+ _context2.t0 = _context2["catch"](4);
475
399
  _loggerProxy.default.logger.error('ReconnectionManager:index#executeReconnection --> Unable to reconnect to websocket, giving up.');
476
400
  this.status = _constants.RECONNECTION.STATE.FAILURE;
477
- throw _context3.t0;
478
- case 19:
479
- if (this.webex.credentials.isUnverifiedGuest) {
480
- _context3.next = 30;
481
- break;
482
- }
483
- _context3.prev = 20;
401
+ throw _context2.t0;
402
+ case 15:
403
+ wasSharing = this.meeting.shareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE;
404
+ _context2.prev = 16;
484
405
  _loggerProxy.default.logger.info('ReconnectionManager:index#executeReconnection --> Updating meeting data from server.');
485
- _context3.next = 24;
406
+ _context2.next = 20;
486
407
  return this.webex.meetings.syncMeetings();
487
- case 24:
488
- _context3.next = 30;
408
+ case 20:
409
+ _context2.next = 26;
489
410
  break;
411
+ case 22:
412
+ _context2.prev = 22;
413
+ _context2.t1 = _context2["catch"](16);
414
+ _loggerProxy.default.logger.info('ReconnectionManager:index#executeReconnection --> Unable to sync meetings, reconnecting.', _context2.t1);
415
+ throw new NeedsRetryError(_context2.t1);
490
416
  case 26:
491
- _context3.prev = 26;
492
- _context3.t1 = _context3["catch"](20);
493
- _loggerProxy.default.logger.info('ReconnectionManager:index#executeReconnection --> Unable to sync meetings, reconnecting.', _context3.t1);
494
- throw new NeedsRetryError(_context3.t1);
495
- case 30:
496
417
  if (!(!this.meeting || !this.webex.meetings.getMeetingByType(_constants._ID_, this.meeting.id))) {
497
- _context3.next = 33;
418
+ _context2.next = 29;
498
419
  break;
499
420
  }
500
- _loggerProxy.default.logger.info('ReconnectionManager:index#executeReconnection --> Meeting got deleted due to inactivity or ended remotely.');
501
- throw new Error('Unable to rejoin a meeting already ended or inactive.');
502
- case 33:
421
+ _loggerProxy.default.logger.info('ReconnectionManager:index#executeReconnection --> Meeting got deleted due to inactivity or ended remotely ');
422
+ throw new Error('Unable to rejoin a meeting already ended or inactive .');
423
+ case 29:
503
424
  _loggerProxy.default.logger.info("ReconnectionManager:index#executeReconnection --> Current state of meeting is ".concat(this.meeting.state));
504
425
 
505
426
  // If the meeting state was left, no longer reconnect media
506
427
  if (!(this.meeting.state === _constants._LEFT_)) {
507
- _context3.next = 38;
428
+ _context2.next = 34;
508
429
  break;
509
430
  }
510
431
  if (!(this.meeting.type === _constants._CALL_)) {
511
- _context3.next = 37;
432
+ _context2.next = 33;
512
433
  break;
513
434
  }
514
435
  throw new Error('Unable to rejoin a call in LEFT state.');
515
- case 37:
436
+ case 33:
516
437
  throw new NeedsRejoinError({
517
438
  wasSharing: wasSharing
518
439
  });
519
- case 38:
520
- _context3.prev = 38;
521
- _context3.next = 41;
440
+ case 34:
441
+ _context2.prev = 34;
442
+ _context2.next = 37;
522
443
  return this.reconnectMedia();
523
- case 41:
524
- media = _context3.sent;
525
- _loggerProxy.default.logger.log('ReconnectionManager:index#executeReconnection --> webRTC media connection renewed and local sdp offer sent');
526
- return _context3.abrupt("return", media);
527
- case 46:
528
- _context3.prev = 46;
529
- _context3.t2 = _context3["catch"](38);
530
- _loggerProxy.default.logger.error('ReconnectionManager:index#executeReconnection --> failed to renew webRTC media connection or initiate offer');
444
+ case 37:
445
+ media = _context2.sent;
446
+ _loggerProxy.default.logger.log('ReconnectionManager:index#executeReconnection --> Media reestablished');
447
+ this.status = _constants.RECONNECTION.STATE.COMPLETE;
448
+ return _context2.abrupt("return", media);
449
+ case 43:
450
+ _context2.prev = 43;
451
+ _context2.t2 = _context2["catch"](34);
452
+ _loggerProxy.default.logger.error('ReconnectionManager:index#executeReconnection --> Media reestablishment failed');
531
453
  this.status = _constants.RECONNECTION.STATE.FAILURE;
532
- throw _context3.t2;
533
- case 51:
454
+ throw _context2.t2;
455
+ case 48:
534
456
  case "end":
535
- return _context3.stop();
457
+ return _context2.stop();
536
458
  }
537
- }, _callee3, this, [[8, 14], [20, 26], [38, 46]]);
459
+ }, _callee2, this, [[4, 10], [16, 22], [34, 43]]);
538
460
  }));
539
- function executeReconnection(_x2) {
461
+ function executeReconnection(_x) {
540
462
  return _executeReconnection.apply(this, arguments);
541
463
  }
542
464
  return executeReconnection;
@@ -548,72 +470,82 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
548
470
  * @param {boolean} wasSharing
549
471
  * @returns {Promise}
550
472
  */
551
- )
552
473
  }, {
553
474
  key: "rejoinMeeting",
554
- value: (function () {
555
- var _rejoinMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
475
+ value: function () {
476
+ var _rejoinMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
556
477
  var wasSharing,
557
- _args4 = arguments;
558
- return _regenerator.default.wrap(function _callee4$(_context4) {
559
- while (1) switch (_context4.prev = _context4.next) {
478
+ previousCorrelationId,
479
+ _args3 = arguments;
480
+ return _regenerator.default.wrap(function _callee3$(_context3) {
481
+ while (1) switch (_context3.prev = _context3.next) {
560
482
  case 0:
561
- wasSharing = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : false;
562
- _context4.prev = 1;
483
+ wasSharing = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : false;
484
+ _context3.prev = 1;
563
485
  _loggerProxy.default.logger.info('ReconnectionManager:index#rejoinMeeting --> attemping meeting rejoin');
564
- _context4.next = 5;
486
+ previousCorrelationId = this.meeting.correlationId;
487
+ _context3.next = 6;
565
488
  return this.meeting.join({
566
489
  rejoin: true
567
490
  });
568
- case 5:
491
+ case 6:
569
492
  _loggerProxy.default.logger.info('ReconnectionManager:index#rejoinMeeting --> meeting rejoined');
570
- if (!wasSharing) {
571
- _context4.next = 9;
572
- break;
493
+ _collection.default.deleteSession(previousCorrelationId);
494
+ if (wasSharing) {
495
+ // Stop the share streams if user tried to rejoin
496
+ _media.default.stopTracks(this.meeting.mediaProperties.shareTrack);
497
+ this.meeting.isSharing = false;
498
+ if (this.shareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE) {
499
+ this.meeting.shareStatus = _constants.SHARE_STATUS.NO_SHARE;
500
+ }
501
+ this.meeting.mediaProperties.mediaDirection.sendShare = false;
502
+ _triggerProxy.default.trigger(this.meeting, {
503
+ file: 'reconnection-manager/index',
504
+ function: 'rejoinMeeting'
505
+ }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
506
+ reason: _constants.SHARE_STOPPED_REASON.MEETING_REJOIN
507
+ });
573
508
  }
574
- _context4.next = 9;
575
- return this.stopLocalShareStream(_constants.SHARE_STOPPED_REASON.MEETING_REJOIN);
576
- case 9:
577
- _context4.next = 23;
509
+ _context3.next = 23;
578
510
  break;
579
511
  case 11:
580
- _context4.prev = 11;
581
- _context4.t0 = _context4["catch"](1);
512
+ _context3.prev = 11;
513
+ _context3.t0 = _context3["catch"](1);
582
514
  this.rejoinAttempts += 1;
583
515
  if (!(this.rejoinAttempts <= this.maxRejoinAttempts)) {
584
- _context4.next = 19;
516
+ _context3.next = 19;
585
517
  break;
586
518
  }
587
- _loggerProxy.default.logger.info("ReconnectionManager:index#rejoinMeeting --> Unable to rejoin meeting, attempt #".concat(this.rejoinAttempts, ", retrying."), _context4.t0);
519
+ _loggerProxy.default.logger.info("ReconnectionManager:index#rejoinMeeting --> Unable to rejoin meeting, attempt #".concat(this.rejoinAttempts, ", retrying."), _context3.t0);
588
520
  this.rejoinMeeting();
589
- _context4.next = 23;
521
+ _context3.next = 23;
590
522
  break;
591
523
  case 19:
592
- _loggerProxy.default.logger.error('ReconnectionManager:index#rejoinMeeting --> Unable to rejoin meeting after max attempts.', _context4.t0);
524
+ _loggerProxy.default.logger.error('ReconnectionManager:index#rejoinMeeting --> Unable to rejoin meeting after max attempts.', _context3.t0);
593
525
  _metrics.default.sendBehavioralMetric(_constants2.default.MEETING_MAX_REJOIN_FAILURE, {
594
526
  locus_id: this.meeting.locusUrl.split('/').pop(),
595
- reason: _context4.t0.message,
596
- stack: _context4.t0.stack
527
+ reason: _context3.t0.message,
528
+ stack: _context3.t0.stack
597
529
  });
598
530
  this.status = _constants.RECONNECTION.STATE.FAILURE;
599
- throw _context4.t0;
531
+ throw _context3.t0;
600
532
  case 23:
601
- _context4.prev = 23;
602
- _context4.next = 26;
533
+ _context3.prev = 23;
534
+ _context3.next = 26;
603
535
  return this.reconnectMedia();
604
536
  case 26:
605
- _context4.next = 32;
537
+ _context3.next = 32;
606
538
  break;
607
539
  case 28:
608
- _context4.prev = 28;
609
- _context4.t1 = _context4["catch"](23);
610
- _loggerProxy.default.logger.error('ReconnectionManager:index#rejoinMeeting --> Unable to reestablish media after rejoining.', _context4.t1);
611
- throw _context4.t1;
540
+ _context3.prev = 28;
541
+ _context3.t1 = _context3["catch"](23);
542
+ _loggerProxy.default.logger.error('ReconnectionManager:index#rejoinMeeting --> Unable to reestablish media after rejoining.', _context3.t1);
543
+ throw _context3.t1;
612
544
  case 32:
613
545
  case "end":
614
- return _context4.stop();
546
+ return _context3.stop();
615
547
  }
616
- }, _callee4, this, [[1, 11], [23, 28]]);
548
+ }, _callee3, this, [[1, 11], [23, 28]]);
617
549
  }));
618
550
  function rejoinMeeting() {
619
551
  return _rejoinMeeting.apply(this, arguments);
@@ -625,112 +557,129 @@ var ReconnectionManager = exports.default = /*#__PURE__*/function () {
625
557
  * @private
626
558
  * @memberof ReconnectionManager
627
559
  */
628
- )
629
560
  }, {
630
561
  key: "reconnectMedia",
631
- value: (function () {
632
- var _reconnectMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
633
- var turnServerResult, iceServers;
634
- return _regenerator.default.wrap(function _callee5$(_context5) {
635
- while (1) switch (_context5.prev = _context5.next) {
636
- case 0:
637
- _loggerProxy.default.logger.log('ReconnectionManager:index#reconnectMedia --> do turn discovery');
562
+ value: function reconnectMedia() {
563
+ var _this4 = this;
564
+ _loggerProxy.default.logger.log('ReconnectionManager:index#reconnectMedia --> Begin reestablishment of media');
565
+ return ReconnectionManager.setupPeerConnection(this.meeting).then(function () {
566
+ return _media.default.attachMedia(_this4.meeting.mediaProperties, {
567
+ meetingId: _this4.meeting.id,
568
+ remoteQualityLevel: _this4.meeting.mediaProperties.remoteQualityLevel,
569
+ enableRtx: _this4.meeting.config.enableRtx,
570
+ enableExtmap: _this4.meeting.config.enableExtmap
571
+ });
572
+ }).then(function (peerConnection) {
573
+ return _this4.meeting.setRemoteStream(peerConnection);
574
+ }).then(function () {
575
+ _loggerProxy.default.logger.log('ReconnectionManager:index#reconnectMedia --> Sending ROAP media request');
576
+ return _this4.meeting.roap.sendRoapMediaRequest({
577
+ sdp: _this4.meeting.mediaProperties.peerConnection.sdp,
578
+ roapSeq: _this4.meeting.roapSeq,
579
+ meeting: _this4.meeting,
580
+ reconnect: true
581
+ });
582
+ });
583
+ }
638
584
 
639
- // do the TURN server discovery again and ignore reachability results since the TURN server might change
640
- _context5.next = 3;
641
- return this.meeting.roap.doTurnDiscovery(this.meeting, true, true);
642
- case 3:
643
- turnServerResult = _context5.sent;
644
- iceServers = [];
645
- if (turnServerResult.turnServerInfo) {
646
- iceServers.push({
647
- urls: turnServerResult.turnServerInfo.url,
648
- username: turnServerResult.turnServerInfo.username || '',
649
- credential: turnServerResult.turnServerInfo.password || ''
650
- });
651
- }
652
- _loggerProxy.default.logger.log('ReconnectionManager:index#reconnectMedia --> renew webRTC media connection and send local sdp offer');
653
- _context5.next = 9;
654
- return this.meeting.mediaProperties.webrtcMediaConnection.reconnect(iceServers);
655
- case 9:
656
- // resend media requests
657
- if (this.meeting.isMultistream) {
658
- (0, _values.default)(this.meeting.mediaRequestManagers).forEach(function (mediaRequestManager) {
659
- mediaRequestManager.clearPreviousRequests();
660
- mediaRequestManager.commit();
661
- });
662
- }
663
- case 10:
664
- case "end":
665
- return _context5.stop();
666
- }
667
- }, _callee5, this);
668
- }));
669
- function reconnectMedia() {
670
- return _reconnectMedia.apply(this, arguments);
671
- }
672
- return reconnectMedia;
673
- }()
674
585
  /**
675
586
  * Attempt to Reconnect Mercury Websocket
676
587
  * @returns {Promise}
677
588
  * @private
678
589
  * @memberof ReconnectionManager
679
590
  */
680
- )
681
591
  }, {
682
592
  key: "reconnectMercuryWebSocket",
683
- value: (function () {
684
- var _reconnectMercuryWebSocket = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
685
- return _regenerator.default.wrap(function _callee6$(_context6) {
686
- while (1) switch (_context6.prev = _context6.next) {
593
+ value: function () {
594
+ var _reconnectMercuryWebSocket = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
595
+ return _regenerator.default.wrap(function _callee4$(_context4) {
596
+ while (1) switch (_context4.prev = _context4.next) {
687
597
  case 0:
688
598
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnectMercuryWebSocket --> Reconnecting websocket.');
689
599
  // First, attempt to disconnect if we think we are already connected.
690
600
  if (!this.webex.internal.mercury.connected) {
691
- _context6.next = 13;
601
+ _context4.next = 13;
692
602
  break;
693
603
  }
694
604
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnectMercuryWebSocket --> Disconnecting existing websocket.');
695
- _context6.prev = 3;
696
- _context6.next = 6;
605
+ _context4.prev = 3;
606
+ _context4.next = 6;
697
607
  return this.webex.internal.mercury.disconnect();
698
608
  case 6:
699
609
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnectMercuryWebSocket --> Websocket disconnected successfully.');
700
- _context6.next = 13;
610
+ _context4.next = 13;
701
611
  break;
702
612
  case 9:
703
- _context6.prev = 9;
704
- _context6.t0 = _context6["catch"](3);
613
+ _context4.prev = 9;
614
+ _context4.t0 = _context4["catch"](3);
705
615
  // If we can't disconnect, the sdk is in such a bad state that reconnecting is not going to happen.
706
- _loggerProxy.default.logger.error('ReconnectionManager:index#reconnectMercuryWebSocket --> Unable to disconnect from websocket, giving up.', _context6.t0);
707
- throw _context6.t0;
616
+ _loggerProxy.default.logger.error('ReconnectionManager:index#reconnectMercuryWebSocket --> Unable to disconnect from websocket, giving up.', _context4.t0);
617
+ throw _context4.t0;
708
618
  case 13:
709
- _context6.prev = 13;
619
+ _context4.prev = 13;
710
620
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnectMercuryWebSocket --> Connecting websocket.');
711
- _context6.next = 17;
621
+ _context4.next = 17;
712
622
  return this.webex.internal.mercury.connect();
713
623
  case 17:
714
624
  _loggerProxy.default.logger.info('ReconnectionManager:index#reconnectMercuryWebSocket --> Websocket connected successfully.');
715
- _context6.next = 24;
625
+ _context4.next = 24;
716
626
  break;
717
627
  case 20:
718
- _context6.prev = 20;
719
- _context6.t1 = _context6["catch"](13);
720
- _loggerProxy.default.logger.error('ReconnectionManager:index#reconnectMercuryWebSocket --> Unable to connect to websocket, giving up.', _context6.t1);
721
- throw _context6.t1;
628
+ _context4.prev = 20;
629
+ _context4.t1 = _context4["catch"](13);
630
+ _loggerProxy.default.logger.error('ReconnectionManager:index#reconnectMercuryWebSocket --> Unable to connect to websocket, giving up.', _context4.t1);
631
+ throw _context4.t1;
722
632
  case 24:
723
633
  case "end":
724
- return _context6.stop();
634
+ return _context4.stop();
725
635
  }
726
- }, _callee6, this, [[3, 9], [13, 20]]);
636
+ }, _callee4, this, [[3, 9], [13, 20]]);
727
637
  }));
728
638
  function reconnectMercuryWebSocket() {
729
639
  return _reconnectMercuryWebSocket.apply(this, arguments);
730
640
  }
731
641
  return reconnectMercuryWebSocket;
732
- }())
642
+ }()
643
+ /**
644
+ * @param {Meeting} meeting
645
+ * @returns {undefined}
646
+ * @private
647
+ * @memberof ReconnectionManager
648
+ */
649
+ }], [{
650
+ key: "setupPeerConnection",
651
+ value: function () {
652
+ var _setupPeerConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(meeting) {
653
+ var turnServerResult;
654
+ return _regenerator.default.wrap(function _callee5$(_context5) {
655
+ while (1) switch (_context5.prev = _context5.next) {
656
+ case 0:
657
+ _loggerProxy.default.logger.log('ReconnectionManager:index#setupPeerConnection --> Begin resetting peer connection');
658
+ // close pcs, unset to null and create a new one with out closing any streams
659
+ _peerConnectionManager.default.close(meeting.mediaProperties.peerConnection);
660
+ meeting.mediaProperties.unsetPeerConnection();
661
+ _context5.next = 5;
662
+ return meeting.roap.doTurnDiscovery(meeting, true);
663
+ case 5:
664
+ turnServerResult = _context5.sent;
665
+ meeting.mediaProperties.reInitiatePeerconnection(turnServerResult.turnServerInfo);
666
+ _peerConnectionManager.default.setPeerConnectionEvents(meeting);
667
+
668
+ // update the peerconnection in the stats manager when ever we reconnect
669
+ meeting.statsAnalyzer.updatePeerconnection(meeting.mediaProperties.peerConnection);
670
+ case 9:
671
+ case "end":
672
+ return _context5.stop();
673
+ }
674
+ }, _callee5);
675
+ }));
676
+ function setupPeerConnection(_x2) {
677
+ return _setupPeerConnection.apply(this, arguments);
678
+ }
679
+ return setupPeerConnection;
680
+ }()
733
681
  }]);
734
682
  return ReconnectionManager;
735
683
  }();
684
+ exports.default = ReconnectionManager;
736
685
  //# sourceMappingURL=index.js.map