@webex/plugin-meetings 3.0.0-beta.9 → 3.0.0-bnr.0

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 (1033) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/breakouts/breakout.js +178 -0
  4. package/dist/breakouts/breakout.js.map +1 -0
  5. package/dist/breakouts/collection.js +23 -0
  6. package/dist/breakouts/collection.js.map +1 -0
  7. package/dist/breakouts/edit-lock-error.js +52 -0
  8. package/dist/breakouts/edit-lock-error.js.map +1 -0
  9. package/dist/breakouts/index.js +843 -0
  10. package/dist/breakouts/index.js.map +1 -0
  11. package/dist/breakouts/request.js +78 -0
  12. package/dist/breakouts/request.js.map +1 -0
  13. package/dist/breakouts/utils.js +56 -0
  14. package/dist/breakouts/utils.js.map +1 -0
  15. package/dist/common/browser-detection.d.ts +9 -0
  16. package/dist/common/browser-detection.js +1 -20
  17. package/dist/common/browser-detection.js.map +1 -1
  18. package/dist/common/collection.d.ts +48 -0
  19. package/dist/common/collection.js +5 -20
  20. package/dist/common/collection.js.map +1 -1
  21. package/dist/common/config.d.ts +2 -0
  22. package/dist/common/config.js +0 -7
  23. package/dist/common/config.js.map +1 -1
  24. package/dist/common/errors/captcha-error.d.ts +15 -0
  25. package/dist/common/errors/captcha-error.js +5 -26
  26. package/dist/common/errors/captcha-error.js.map +1 -1
  27. package/dist/common/errors/intent-to-join.d.ts +16 -0
  28. package/dist/common/errors/intent-to-join.js +5 -26
  29. package/dist/common/errors/intent-to-join.js.map +1 -1
  30. package/dist/common/errors/join-meeting.d.ts +17 -0
  31. package/dist/common/errors/join-meeting.js +6 -27
  32. package/dist/common/errors/join-meeting.js.map +1 -1
  33. package/dist/common/errors/media.d.ts +15 -0
  34. package/dist/common/errors/media.js +5 -26
  35. package/dist/common/errors/media.js.map +1 -1
  36. package/dist/common/errors/parameter.d.ts +15 -0
  37. package/dist/common/errors/parameter.js +5 -33
  38. package/dist/common/errors/parameter.js.map +1 -1
  39. package/dist/common/errors/password-error.d.ts +15 -0
  40. package/dist/common/errors/password-error.js +5 -26
  41. package/dist/common/errors/password-error.js.map +1 -1
  42. package/dist/common/errors/permission.d.ts +14 -0
  43. package/dist/common/errors/permission.js +4 -25
  44. package/dist/common/errors/permission.js.map +1 -1
  45. package/dist/common/errors/reconnection-in-progress.d.ts +9 -0
  46. package/dist/common/errors/reconnection-in-progress.js +0 -17
  47. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  48. package/dist/common/errors/reconnection.d.ts +15 -0
  49. package/dist/common/errors/reconnection.js +5 -26
  50. package/dist/common/errors/reconnection.js.map +1 -1
  51. package/dist/common/errors/stats.d.ts +15 -0
  52. package/dist/common/errors/stats.js +5 -26
  53. package/dist/common/errors/stats.js.map +1 -1
  54. package/dist/common/errors/webex-errors.d.ts +81 -0
  55. package/dist/common/errors/webex-errors.js +6 -41
  56. package/dist/common/errors/webex-errors.js.map +1 -1
  57. package/dist/common/errors/webex-meetings-error.d.ts +20 -0
  58. package/dist/common/errors/webex-meetings-error.js +1 -24
  59. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  60. package/dist/common/events/events-scope.d.ts +17 -0
  61. package/dist/common/events/events-scope.js +0 -22
  62. package/dist/common/events/events-scope.js.map +1 -1
  63. package/dist/common/events/events.d.ts +12 -0
  64. package/dist/common/events/events.js +0 -23
  65. package/dist/common/events/events.js.map +1 -1
  66. package/dist/common/events/trigger-proxy.d.ts +2 -0
  67. package/dist/common/events/trigger-proxy.js +0 -12
  68. package/dist/common/events/trigger-proxy.js.map +1 -1
  69. package/dist/common/events/util.d.ts +2 -0
  70. package/dist/common/events/util.js +0 -15
  71. package/dist/common/events/util.js.map +1 -1
  72. package/dist/common/logs/logger-config.d.ts +2 -0
  73. package/dist/common/logs/logger-config.js +0 -4
  74. package/dist/common/logs/logger-config.js.map +1 -1
  75. package/dist/common/logs/logger-proxy.d.ts +2 -0
  76. package/dist/common/logs/logger-proxy.js +1 -8
  77. package/dist/common/logs/logger-proxy.js.map +1 -1
  78. package/dist/common/logs/request.d.ts +34 -0
  79. package/dist/common/logs/request.js +35 -61
  80. package/dist/common/logs/request.js.map +1 -1
  81. package/dist/common/queue.d.ts +32 -0
  82. package/dist/common/queue.js +4 -14
  83. package/dist/common/queue.js.map +1 -1
  84. package/dist/config.d.ts +73 -0
  85. package/dist/config.js +6 -6
  86. package/dist/config.js.map +1 -1
  87. package/dist/constants.d.ts +924 -0
  88. package/dist/constants.js +143 -52
  89. package/dist/constants.js.map +1 -1
  90. package/dist/controls-options-manager/constants.d.ts +4 -0
  91. package/dist/controls-options-manager/constants.js +14 -0
  92. package/dist/controls-options-manager/constants.js.map +1 -0
  93. package/dist/controls-options-manager/enums.d.ts +5 -0
  94. package/dist/controls-options-manager/enums.js +16 -0
  95. package/dist/controls-options-manager/enums.js.map +1 -0
  96. package/dist/controls-options-manager/index.d.ts +120 -0
  97. package/dist/controls-options-manager/index.js +261 -0
  98. package/dist/controls-options-manager/index.js.map +1 -0
  99. package/dist/controls-options-manager/util.d.ts +7 -0
  100. package/dist/controls-options-manager/util.js +39 -0
  101. package/dist/controls-options-manager/util.js.map +1 -0
  102. package/dist/docs/markdown/index.md +12 -0
  103. package/dist/docs/markdown/plugin-meetings.constants._active_.md +11 -0
  104. package/dist/docs/markdown/plugin-meetings.constants._answer_.md +11 -0
  105. package/dist/docs/markdown/plugin-meetings.constants._call_.md +11 -0
  106. package/dist/docs/markdown/plugin-meetings.constants._conflict_.md +11 -0
  107. package/dist/docs/markdown/plugin-meetings.constants._conversation_url_.md +11 -0
  108. package/dist/docs/markdown/plugin-meetings.constants._created_.md +11 -0
  109. package/dist/docs/markdown/plugin-meetings.constants._error_.md +11 -0
  110. package/dist/docs/markdown/plugin-meetings.constants._forced_.md +11 -0
  111. package/dist/docs/markdown/plugin-meetings.constants._id_.md +11 -0
  112. package/dist/docs/markdown/plugin-meetings.constants._idle_.md +11 -0
  113. package/dist/docs/markdown/plugin-meetings.constants._in_.md +11 -0
  114. package/dist/docs/markdown/plugin-meetings.constants._in_lobby_.md +11 -0
  115. package/dist/docs/markdown/plugin-meetings.constants._in_meeting_.md +11 -0
  116. package/dist/docs/markdown/plugin-meetings.constants._inactive_.md +11 -0
  117. package/dist/docs/markdown/plugin-meetings.constants._incoming_.md +11 -0
  118. package/dist/docs/markdown/plugin-meetings.constants._join_.md +11 -0
  119. package/dist/docs/markdown/plugin-meetings.constants._joined_.md +11 -0
  120. package/dist/docs/markdown/plugin-meetings.constants._left_.md +11 -0
  121. package/dist/docs/markdown/plugin-meetings.constants._locus_id_.md +11 -0
  122. package/dist/docs/markdown/plugin-meetings.constants._meeting_.md +11 -0
  123. package/dist/docs/markdown/plugin-meetings.constants._meeting_center_.md +11 -0
  124. package/dist/docs/markdown/plugin-meetings.constants._meeting_id_.md +11 -0
  125. package/dist/docs/markdown/plugin-meetings.constants._meeting_link_.md +11 -0
  126. package/dist/docs/markdown/plugin-meetings.constants._meeting_uuid_.md +11 -0
  127. package/dist/docs/markdown/plugin-meetings.constants._move_media_.md +11 -0
  128. package/dist/docs/markdown/plugin-meetings.constants._none_.md +11 -0
  129. package/dist/docs/markdown/plugin-meetings.constants._not_in_meeting_.md +11 -0
  130. package/dist/docs/markdown/plugin-meetings.constants._observe_.md +11 -0
  131. package/dist/docs/markdown/plugin-meetings.constants._people_.md +11 -0
  132. package/dist/docs/markdown/plugin-meetings.constants._personal_room_.md +11 -0
  133. package/dist/docs/markdown/plugin-meetings.constants._receive_only_.md +11 -0
  134. package/dist/docs/markdown/plugin-meetings.constants._remove_.md +11 -0
  135. package/dist/docs/markdown/plugin-meetings.constants._requested_.md +11 -0
  136. package/dist/docs/markdown/plugin-meetings.constants._resource_room_.md +11 -0
  137. package/dist/docs/markdown/plugin-meetings.constants._room_.md +11 -0
  138. package/dist/docs/markdown/plugin-meetings.constants._s_line.md +11 -0
  139. package/dist/docs/markdown/plugin-meetings.constants._send_only_.md +11 -0
  140. package/dist/docs/markdown/plugin-meetings.constants._send_receive_.md +11 -0
  141. package/dist/docs/markdown/plugin-meetings.constants._sip_bridge_.md +11 -0
  142. package/dist/docs/markdown/plugin-meetings.constants._sip_uri_.md +11 -0
  143. package/dist/docs/markdown/plugin-meetings.constants._slides_.md +11 -0
  144. package/dist/docs/markdown/plugin-meetings.constants._unknown_.md +11 -0
  145. package/dist/docs/markdown/plugin-meetings.constants._user_.md +11 -0
  146. package/dist/docs/markdown/plugin-meetings.constants._wait_.md +11 -0
  147. package/dist/docs/markdown/plugin-meetings.constants._webex_meeting_.md +11 -0
  148. package/dist/docs/markdown/plugin-meetings.constants.alert.md +11 -0
  149. package/dist/docs/markdown/plugin-meetings.constants.alternate_redirect_true.md +11 -0
  150. package/dist/docs/markdown/plugin-meetings.constants.answer.md +11 -0
  151. package/dist/docs/markdown/plugin-meetings.constants.api.md +14 -0
  152. package/dist/docs/markdown/plugin-meetings.constants.audio.md +11 -0
  153. package/dist/docs/markdown/plugin-meetings.constants.audio_input.md +11 -0
  154. package/dist/docs/markdown/plugin-meetings.constants.audio_status.md +11 -0
  155. package/dist/docs/markdown/plugin-meetings.constants.available_resolutions.md +60 -0
  156. package/dist/docs/markdown/plugin-meetings.constants.bnr_status.md +16 -0
  157. package/dist/docs/markdown/plugin-meetings.constants.breakouts.md +51 -0
  158. package/dist/docs/markdown/plugin-meetings.constants.calendar.md +11 -0
  159. package/dist/docs/markdown/plugin-meetings.constants.calendar_events.md +17 -0
  160. package/dist/docs/markdown/plugin-meetings.constants.calendar_events_api.md +11 -0
  161. package/dist/docs/markdown/plugin-meetings.constants.call.md +11 -0
  162. package/dist/docs/markdown/plugin-meetings.constants.call_removed_reason.md +15 -0
  163. package/dist/docs/markdown/plugin-meetings.constants.claim.md +11 -0
  164. package/dist/docs/markdown/plugin-meetings.constants.cmr_meetings.md +11 -0
  165. package/dist/docs/markdown/plugin-meetings.constants.complete.md +11 -0
  166. package/dist/docs/markdown/plugin-meetings.constants.connection_state.md +18 -0
  167. package/dist/docs/markdown/plugin-meetings.constants.content.md +11 -0
  168. package/dist/docs/markdown/plugin-meetings.constants.controls.md +11 -0
  169. package/dist/docs/markdown/plugin-meetings.constants.conversation_service.md +11 -0
  170. package/dist/docs/markdown/plugin-meetings.constants.conversation_url.md +11 -0
  171. package/dist/docs/markdown/plugin-meetings.constants.correlation_id.md +11 -0
  172. package/dist/docs/markdown/plugin-meetings.constants.decline.md +11 -0
  173. package/dist/docs/markdown/plugin-meetings.constants.default_excluded_stats.md +11 -0
  174. package/dist/docs/markdown/plugin-meetings.constants.default_get_stats_filter.md +13 -0
  175. package/dist/docs/markdown/plugin-meetings.constants.development.md +11 -0
  176. package/dist/docs/markdown/plugin-meetings.constants.dialer_regex.md +15 -0
  177. package/dist/docs/markdown/plugin-meetings.constants.display_hints.md +51 -0
  178. package/dist/docs/markdown/plugin-meetings.constants.embedded_app_types.md +14 -0
  179. package/dist/docs/markdown/plugin-meetings.constants.end.md +11 -0
  180. package/dist/docs/markdown/plugin-meetings.constants.ended.md +11 -0
  181. package/dist/docs/markdown/plugin-meetings.constants.error.md +11 -0
  182. package/dist/docs/markdown/plugin-meetings.constants.error_dictionary.md +62 -0
  183. package/dist/docs/markdown/plugin-meetings.constants.event_triggers.md +82 -0
  184. package/dist/docs/markdown/plugin-meetings.constants.event_types.md +21 -0
  185. package/dist/docs/markdown/plugin-meetings.constants.events.md +26 -0
  186. package/dist/docs/markdown/plugin-meetings.constants.floor_action.md +15 -0
  187. package/dist/docs/markdown/plugin-meetings.constants.full_state.md +17 -0
  188. package/dist/docs/markdown/plugin-meetings.constants.gathering.md +11 -0
  189. package/dist/docs/markdown/plugin-meetings.constants.hecate.md +11 -0
  190. package/dist/docs/markdown/plugin-meetings.constants.host.md +11 -0
  191. package/dist/docs/markdown/plugin-meetings.constants.http_verbs.md +17 -0
  192. package/dist/docs/markdown/plugin-meetings.constants.https_protocol.md +11 -0
  193. package/dist/docs/markdown/plugin-meetings.constants.ice_fail_timeout.md +11 -0
  194. package/dist/docs/markdown/plugin-meetings.constants.ice_gathering_state.md +15 -0
  195. package/dist/docs/markdown/plugin-meetings.constants.ice_state.md +18 -0
  196. package/dist/docs/markdown/plugin-meetings.constants.ice_timeout.md +11 -0
  197. package/dist/docs/markdown/plugin-meetings.constants.intent_to_join.md +11 -0
  198. package/dist/docs/markdown/plugin-meetings.constants.ipv4_regex.md +11 -0
  199. package/dist/docs/markdown/plugin-meetings.constants.join.md +11 -0
  200. package/dist/docs/markdown/plugin-meetings.constants.layout_types.md +13 -0
  201. package/dist/docs/markdown/plugin-meetings.constants.leave.md +11 -0
  202. package/dist/docs/markdown/plugin-meetings.constants.live.md +11 -0
  203. package/dist/docs/markdown/plugin-meetings.constants.local.md +11 -0
  204. package/dist/docs/markdown/plugin-meetings.constants.loci.md +11 -0
  205. package/dist/docs/markdown/plugin-meetings.constants.locus.md +26 -0
  206. package/dist/docs/markdown/plugin-meetings.constants.locus_url.md +11 -0
  207. package/dist/docs/markdown/plugin-meetings.constants.locusevent.md +33 -0
  208. package/dist/docs/markdown/plugin-meetings.constants.locusinfo.md +43 -0
  209. package/dist/docs/markdown/plugin-meetings.constants.max_random_delay_for_meeting_info.md +11 -0
  210. package/dist/docs/markdown/plugin-meetings.constants.md +186 -0
  211. package/dist/docs/markdown/plugin-meetings.constants.media.md +11 -0
  212. package/dist/docs/markdown/plugin-meetings.constants.media_devices.md +15 -0
  213. package/dist/docs/markdown/plugin-meetings.constants.media_peer_connection_name.md +11 -0
  214. package/dist/docs/markdown/plugin-meetings.constants.media_state.md +14 -0
  215. package/dist/docs/markdown/plugin-meetings.constants.media_track_constraint.md +17 -0
  216. package/dist/docs/markdown/plugin-meetings.constants.mediacontent.md +14 -0
  217. package/dist/docs/markdown/plugin-meetings.constants.meet.md +11 -0
  218. package/dist/docs/markdown/plugin-meetings.constants.meet_m.md +11 -0
  219. package/dist/docs/markdown/plugin-meetings.constants.meeting_audio_state_machine.md +20 -0
  220. package/dist/docs/markdown/plugin-meetings.constants.meeting_end_reason.md +14 -0
  221. package/dist/docs/markdown/plugin-meetings.constants.meeting_errors.md +102 -0
  222. package/dist/docs/markdown/plugin-meetings.constants.meeting_info_failure_reason.md +16 -0
  223. package/dist/docs/markdown/plugin-meetings.constants.meeting_removed_reason.md +19 -0
  224. package/dist/docs/markdown/plugin-meetings.constants.meeting_state.md +25 -0
  225. package/dist/docs/markdown/plugin-meetings.constants.meeting_state_machine.md +31 -0
  226. package/dist/docs/markdown/plugin-meetings.constants.meeting_video_state_machine.md +20 -0
  227. package/dist/docs/markdown/plugin-meetings.constants.meetinginfo.md +11 -0
  228. package/dist/docs/markdown/plugin-meetings.constants.meetings.md +11 -0
  229. package/dist/docs/markdown/plugin-meetings.constants.metrics_join_times_max_duration.md +11 -0
  230. package/dist/docs/markdown/plugin-meetings.constants.moderator_false.md +11 -0
  231. package/dist/docs/markdown/plugin-meetings.constants.moderator_true.md +11 -0
  232. package/dist/docs/markdown/plugin-meetings.constants.mqa_inteval.md +11 -0
  233. package/dist/docs/markdown/plugin-meetings.constants.mqa_stats.md +82 -0
  234. package/dist/docs/markdown/plugin-meetings.constants.network_status.md +15 -0
  235. package/dist/docs/markdown/plugin-meetings.constants.network_type.md +16 -0
  236. package/dist/docs/markdown/plugin-meetings.constants.offline.md +11 -0
  237. package/dist/docs/markdown/plugin-meetings.constants.online.md +11 -0
  238. package/dist/docs/markdown/plugin-meetings.constants.participant.md +11 -0
  239. package/dist/docs/markdown/plugin-meetings.constants.participant_deltas.md +22 -0
  240. package/dist/docs/markdown/plugin-meetings.constants.password_status.md +16 -0
  241. package/dist/docs/markdown/plugin-meetings.constants.pc_bail_timeout.md +11 -0
  242. package/dist/docs/markdown/plugin-meetings.constants.peer_connection_state.md +14 -0
  243. package/dist/docs/markdown/plugin-meetings.constants.provisional_type_dial_in.md +11 -0
  244. package/dist/docs/markdown/plugin-meetings.constants.provisional_type_dial_out.md +11 -0
  245. package/dist/docs/markdown/plugin-meetings.constants.pstn_status.md +18 -0
  246. package/dist/docs/markdown/plugin-meetings.constants.quality_levels.md +19 -0
  247. package/dist/docs/markdown/plugin-meetings.constants.reachability.md +15 -0
  248. package/dist/docs/markdown/plugin-meetings.constants.ready.md +11 -0
  249. package/dist/docs/markdown/plugin-meetings.constants.reconnection.md +19 -0
  250. package/dist/docs/markdown/plugin-meetings.constants.recording_state.md +16 -0
  251. package/dist/docs/markdown/plugin-meetings.constants.remote.md +11 -0
  252. package/dist/docs/markdown/plugin-meetings.constants.resource.md +15 -0
  253. package/dist/docs/markdown/plugin-meetings.constants.retry_timeout.md +11 -0
  254. package/dist/docs/markdown/plugin-meetings.constants.roap.md +22 -0
  255. package/dist/docs/markdown/plugin-meetings.constants.self_roles.md +14 -0
  256. package/dist/docs/markdown/plugin-meetings.constants.send_dtmf_endpoint.md +11 -0
  257. package/dist/docs/markdown/plugin-meetings.constants.sendrecv.md +11 -0
  258. package/dist/docs/markdown/plugin-meetings.constants.share.md +11 -0
  259. package/dist/docs/markdown/plugin-meetings.constants.share_peer_connection_name.md +11 -0
  260. package/dist/docs/markdown/plugin-meetings.constants.share_status.md +16 -0
  261. package/dist/docs/markdown/plugin-meetings.constants.share_stopped_reason.md +14 -0
  262. package/dist/docs/markdown/plugin-meetings.constants.sip_uri.md +11 -0
  263. package/dist/docs/markdown/plugin-meetings.constants.stats.md +16 -0
  264. package/dist/docs/markdown/plugin-meetings.constants.type.md +11 -0
  265. package/dist/docs/markdown/plugin-meetings.constants.use_uri_lookup_false.md +11 -0
  266. package/dist/docs/markdown/plugin-meetings.constants.uuid_reg.md +11 -0
  267. package/dist/docs/markdown/plugin-meetings.constants.valid_email_address.md +11 -0
  268. package/dist/docs/markdown/plugin-meetings.constants.valid_pin.md +11 -0
  269. package/dist/docs/markdown/plugin-meetings.constants.valid_pmr_address.md +11 -0
  270. package/dist/docs/markdown/plugin-meetings.constants.valid_pmr_link.md +11 -0
  271. package/dist/docs/markdown/plugin-meetings.constants.video.md +11 -0
  272. package/dist/docs/markdown/plugin-meetings.constants.video_input.md +11 -0
  273. package/dist/docs/markdown/plugin-meetings.constants.video_resolutions.md +24 -0
  274. package/dist/docs/markdown/plugin-meetings.constants.video_status.md +11 -0
  275. package/dist/docs/markdown/plugin-meetings.constants.wbxappapi_service.md +11 -0
  276. package/dist/docs/markdown/plugin-meetings.constants.webex_dot_com.md +11 -0
  277. package/dist/docs/markdown/plugin-meetings.constants.whiteboard.md +11 -0
  278. package/dist/docs/markdown/plugin-meetings.constants.www_dot.md +11 -0
  279. package/dist/docs/markdown/plugin-meetings.md +28 -0
  280. package/dist/docs/markdown/plugin-meetings.meeting.default._constructor_.md +21 -0
  281. package/dist/docs/markdown/plugin-meetings.meeting.default.acknowledge.md +28 -0
  282. package/dist/docs/markdown/plugin-meetings.meeting.default.addmedia.md +28 -0
  283. package/dist/docs/markdown/plugin-meetings.meeting.default.admit.md +32 -0
  284. package/dist/docs/markdown/plugin-meetings.meeting.default.attrs.md +11 -0
  285. package/dist/docs/markdown/plugin-meetings.meeting.default.audio.md +11 -0
  286. package/dist/docs/markdown/plugin-meetings.meeting.default.breakouts.md +11 -0
  287. package/dist/docs/markdown/plugin-meetings.meeting.default.callevents.md +11 -0
  288. package/dist/docs/markdown/plugin-meetings.meeting.default.cancelphoneinvite.md +30 -0
  289. package/dist/docs/markdown/plugin-meetings.meeting.default.canupdatemedia.md +19 -0
  290. package/dist/docs/markdown/plugin-meetings.meeting.default.changevideolayout.md +38 -0
  291. package/dist/docs/markdown/plugin-meetings.meeting.default.clearmeetingdata.md +13 -0
  292. package/dist/docs/markdown/plugin-meetings.meeting.default.closelocalshare.md +21 -0
  293. package/dist/docs/markdown/plugin-meetings.meeting.default.closelocalstream.md +21 -0
  294. package/dist/docs/markdown/plugin-meetings.meeting.default.closepeerconnections.md +21 -0
  295. package/dist/docs/markdown/plugin-meetings.meeting.default.closeremotestream.md +26 -0
  296. package/dist/docs/markdown/plugin-meetings.meeting.default.closeremotetracks.md +19 -0
  297. package/dist/docs/markdown/plugin-meetings.meeting.default.controlsoptionsmanager.md +11 -0
  298. package/dist/docs/markdown/plugin-meetings.meeting.default.conversationurl.md +11 -0
  299. package/dist/docs/markdown/plugin-meetings.meeting.default.correlationid.md +11 -0
  300. package/dist/docs/markdown/plugin-meetings.meeting.default.createmediaconnection.md +26 -0
  301. package/dist/docs/markdown/plugin-meetings.meeting.default.decline.md +28 -0
  302. package/dist/docs/markdown/plugin-meetings.meeting.default.deferjoin.md +11 -0
  303. package/dist/docs/markdown/plugin-meetings.meeting.default.destination.md +11 -0
  304. package/dist/docs/markdown/plugin-meetings.meeting.default.destinationtype.md +11 -0
  305. package/dist/docs/markdown/plugin-meetings.meeting.default.deviceurl.md +11 -0
  306. package/dist/docs/markdown/plugin-meetings.meeting.default.dialindevicestatus.md +11 -0
  307. package/dist/docs/markdown/plugin-meetings.meeting.default.dialinurl.md +11 -0
  308. package/dist/docs/markdown/plugin-meetings.meeting.default.dialoutdevicestatus.md +11 -0
  309. package/dist/docs/markdown/plugin-meetings.meeting.default.dialouturl.md +11 -0
  310. package/dist/docs/markdown/plugin-meetings.meeting.default.disconnectphoneaudio.md +19 -0
  311. package/dist/docs/markdown/plugin-meetings.meeting.default.endcallinitiatejoinreq.md +11 -0
  312. package/dist/docs/markdown/plugin-meetings.meeting.default.endjoinreqresp.md +11 -0
  313. package/dist/docs/markdown/plugin-meetings.meeting.default.endlocalsdpgenremotesdprecvdelay.md +11 -0
  314. package/dist/docs/markdown/plugin-meetings.meeting.default.endmeetingforall.md +21 -0
  315. package/dist/docs/markdown/plugin-meetings.meeting.default.fetchmeetinginfo.md +29 -0
  316. package/dist/docs/markdown/plugin-meetings.meeting.default.fetchmeetinginfotimeoutid.md +11 -0
  317. package/dist/docs/markdown/plugin-meetings.meeting.default.floorgrantpending.md +11 -0
  318. package/dist/docs/markdown/plugin-meetings.meeting.default.forwardevent.md +29 -0
  319. package/dist/docs/markdown/plugin-meetings.meeting.default.getanalyzermetricsprepayload.md +32 -0
  320. package/dist/docs/markdown/plugin-meetings.meeting.default.getcallinitiatejoinreq.md +17 -0
  321. package/dist/docs/markdown/plugin-meetings.meeting.default.getdevices.md +13 -0
  322. package/dist/docs/markdown/plugin-meetings.meeting.default.getjoinreqresp.md +17 -0
  323. package/dist/docs/markdown/plugin-meetings.meeting.default.getlocalsdpgenremotesdprecvdelay.md +17 -0
  324. package/dist/docs/markdown/plugin-meetings.meeting.default.getmediaconnectiondebugid.md +15 -0
  325. package/dist/docs/markdown/plugin-meetings.meeting.default.getmediastreams.md +15 -0
  326. package/dist/docs/markdown/plugin-meetings.meeting.default.getmembers.md +21 -0
  327. package/dist/docs/markdown/plugin-meetings.meeting.default.getsendingmediadelayduration.md +24 -0
  328. package/dist/docs/markdown/plugin-meetings.meeting.default.getsetupdelayduration.md +24 -0
  329. package/dist/docs/markdown/plugin-meetings.meeting.default.getsupporteddevices.md +16 -0
  330. package/dist/docs/markdown/plugin-meetings.meeting.default.gettotaljmt.md +17 -0
  331. package/dist/docs/markdown/plugin-meetings.meeting.default.guest.md +11 -0
  332. package/dist/docs/markdown/plugin-meetings.meeting.default.handledatachannelurlchange.md +26 -0
  333. package/dist/docs/markdown/plugin-meetings.meeting.default.handleroapfailure.md +13 -0
  334. package/dist/docs/markdown/plugin-meetings.meeting.default.hasjoinedonce.md +11 -0
  335. package/dist/docs/markdown/plugin-meetings.meeting.default.haswebsocketconnected.md +11 -0
  336. package/dist/docs/markdown/plugin-meetings.meeting.default.hostid.md +11 -0
  337. package/dist/docs/markdown/plugin-meetings.meeting.default.id.md +11 -0
  338. package/dist/docs/markdown/plugin-meetings.meeting.default.inmeetingactions.md +11 -0
  339. package/dist/docs/markdown/plugin-meetings.meeting.default.invite.md +33 -0
  340. package/dist/docs/markdown/plugin-meetings.meeting.default.isaudioconnected.md +21 -0
  341. package/dist/docs/markdown/plugin-meetings.meeting.default.isaudiomuted.md +21 -0
  342. package/dist/docs/markdown/plugin-meetings.meeting.default.isaudioself.md +21 -0
  343. package/dist/docs/markdown/plugin-meetings.meeting.default.islocalsharelive.md +11 -0
  344. package/dist/docs/markdown/plugin-meetings.meeting.default.ismultistream.md +11 -0
  345. package/dist/docs/markdown/plugin-meetings.meeting.default.isreactionssupported.md +19 -0
  346. package/dist/docs/markdown/plugin-meetings.meeting.default.isroapinprogress.md +11 -0
  347. package/dist/docs/markdown/plugin-meetings.meeting.default.issharing.md +11 -0
  348. package/dist/docs/markdown/plugin-meetings.meeting.default.istranscriptionsupported.md +23 -0
  349. package/dist/docs/markdown/plugin-meetings.meeting.default.isvideoconnected.md +21 -0
  350. package/dist/docs/markdown/plugin-meetings.meeting.default.isvideomuted.md +21 -0
  351. package/dist/docs/markdown/plugin-meetings.meeting.default.isvideoself.md +21 -0
  352. package/dist/docs/markdown/plugin-meetings.meeting.default.join.md +28 -0
  353. package/dist/docs/markdown/plugin-meetings.meeting.default.joinedwith.md +11 -0
  354. package/dist/docs/markdown/plugin-meetings.meeting.default.joinwithmedia.md +36 -0
  355. package/dist/docs/markdown/plugin-meetings.meeting.default.keepalivetimerid.md +11 -0
  356. package/dist/docs/markdown/plugin-meetings.meeting.default.lastvideolayoutinfo.md +11 -0
  357. package/dist/docs/markdown/plugin-meetings.meeting.default.leave.md +31 -0
  358. package/dist/docs/markdown/plugin-meetings.meeting.default.lockmeeting.md +21 -0
  359. package/dist/docs/markdown/plugin-meetings.meeting.default.locusid.md +11 -0
  360. package/dist/docs/markdown/plugin-meetings.meeting.default.locusinfo.md +11 -0
  361. package/dist/docs/markdown/plugin-meetings.meeting.default.locusurl.md +11 -0
  362. package/dist/docs/markdown/plugin-meetings.meeting.default.md +227 -0
  363. package/dist/docs/markdown/plugin-meetings.meeting.default.mediaconnections.md +11 -0
  364. package/dist/docs/markdown/plugin-meetings.meeting.default.mediaid.md +11 -0
  365. package/dist/docs/markdown/plugin-meetings.meeting.default.medianegotiatedevent.md +13 -0
  366. package/dist/docs/markdown/plugin-meetings.meeting.default.mediaproperties.md +11 -0
  367. package/dist/docs/markdown/plugin-meetings.meeting.default.mediarequestmanagers.md +16 -0
  368. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingfinitestatemachine.md +11 -0
  369. package/dist/docs/markdown/plugin-meetings.meeting.default.meetinginfo.md +11 -0
  370. package/dist/docs/markdown/plugin-meetings.meeting.default.meetinginfofailurereason.md +11 -0
  371. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingjoinurl.md +11 -0
  372. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingnumber.md +11 -0
  373. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingrequest.md +11 -0
  374. package/dist/docs/markdown/plugin-meetings.meeting.default.meetingstate.md +11 -0
  375. package/dist/docs/markdown/plugin-meetings.meeting.default.members.md +11 -0
  376. package/dist/docs/markdown/plugin-meetings.meeting.default.movefrom.md +28 -0
  377. package/dist/docs/markdown/plugin-meetings.meeting.default.moveto.md +28 -0
  378. package/dist/docs/markdown/plugin-meetings.meeting.default.mute.md +29 -0
  379. package/dist/docs/markdown/plugin-meetings.meeting.default.muteaudio.md +21 -0
  380. package/dist/docs/markdown/plugin-meetings.meeting.default.mutevideo.md +21 -0
  381. package/dist/docs/markdown/plugin-meetings.meeting.default.namespace.md +11 -0
  382. package/dist/docs/markdown/plugin-meetings.meeting.default.networkqualitymonitor.md +11 -0
  383. package/dist/docs/markdown/plugin-meetings.meeting.default.networkstatus.md +11 -0
  384. package/dist/docs/markdown/plugin-meetings.meeting.default.options.md +11 -0
  385. package/dist/docs/markdown/plugin-meetings.meeting.default.orgid.md +11 -0
  386. package/dist/docs/markdown/plugin-meetings.meeting.default.owner.md +11 -0
  387. package/dist/docs/markdown/plugin-meetings.meeting.default.parsemeetinginfo.md +34 -0
  388. package/dist/docs/markdown/plugin-meetings.meeting.default.partner.md +11 -0
  389. package/dist/docs/markdown/plugin-meetings.meeting.default.passwordstatus.md +11 -0
  390. package/dist/docs/markdown/plugin-meetings.meeting.default.pauserecording.md +21 -0
  391. package/dist/docs/markdown/plugin-meetings.meeting.default.permissiontoken.md +11 -0
  392. package/dist/docs/markdown/plugin-meetings.meeting.default.policy.md +11 -0
  393. package/dist/docs/markdown/plugin-meetings.meeting.default.processnextqueuedmediaupdate.md +13 -0
  394. package/dist/docs/markdown/plugin-meetings.meeting.default.publishtracks.md +33 -0
  395. package/dist/docs/markdown/plugin-meetings.meeting.default.queuedmediaupdates.md +11 -0
  396. package/dist/docs/markdown/plugin-meetings.meeting.default.receiveslotmanager.md +11 -0
  397. package/dist/docs/markdown/plugin-meetings.meeting.default.reconnect.md +28 -0
  398. package/dist/docs/markdown/plugin-meetings.meeting.default.reconnectionmanager.md +11 -0
  399. package/dist/docs/markdown/plugin-meetings.meeting.default.recording.md +11 -0
  400. package/dist/docs/markdown/plugin-meetings.meeting.default.recordingcontroller.md +11 -0
  401. package/dist/docs/markdown/plugin-meetings.meeting.default.refreshcaptcha.md +21 -0
  402. package/dist/docs/markdown/plugin-meetings.meeting.default.remotemediamanager.md +11 -0
  403. package/dist/docs/markdown/plugin-meetings.meeting.default.remove.md +28 -0
  404. package/dist/docs/markdown/plugin-meetings.meeting.default.requiredcaptcha.md +11 -0
  405. package/dist/docs/markdown/plugin-meetings.meeting.default.resource.md +11 -0
  406. package/dist/docs/markdown/plugin-meetings.meeting.default.resourceid.md +11 -0
  407. package/dist/docs/markdown/plugin-meetings.meeting.default.resourceurl.md +11 -0
  408. package/dist/docs/markdown/plugin-meetings.meeting.default.resumerecording.md +21 -0
  409. package/dist/docs/markdown/plugin-meetings.meeting.default.roap.md +11 -0
  410. package/dist/docs/markdown/plugin-meetings.meeting.default.roapseq.md +11 -0
  411. package/dist/docs/markdown/plugin-meetings.meeting.default.selfid.md +11 -0
  412. package/dist/docs/markdown/plugin-meetings.meeting.default.senddtmf.md +28 -0
  413. package/dist/docs/markdown/plugin-meetings.meeting.default.sendreaction.md +29 -0
  414. package/dist/docs/markdown/plugin-meetings.meeting.default.setdisallowunmute.md +26 -0
  415. package/dist/docs/markdown/plugin-meetings.meeting.default.setendcallinitiatejoinreq.md +17 -0
  416. package/dist/docs/markdown/plugin-meetings.meeting.default.setendjoinreqresp.md +17 -0
  417. package/dist/docs/markdown/plugin-meetings.meeting.default.setendlocalsdpgenremotesdprecvdelay.md +17 -0
  418. package/dist/docs/markdown/plugin-meetings.meeting.default.setendsendingmediadelay.md +24 -0
  419. package/dist/docs/markdown/plugin-meetings.meeting.default.setendsetupdelay.md +24 -0
  420. package/dist/docs/markdown/plugin-meetings.meeting.default.setlocalsharetrack.md +28 -0
  421. package/dist/docs/markdown/plugin-meetings.meeting.default.setlocaltracks.md +28 -0
  422. package/dist/docs/markdown/plugin-meetings.meeting.default.setlocalvideoquality.md +26 -0
  423. package/dist/docs/markdown/plugin-meetings.meeting.default.setmeetingquality.md +31 -0
  424. package/dist/docs/markdown/plugin-meetings.meeting.default.setmercurylistener.md +21 -0
  425. package/dist/docs/markdown/plugin-meetings.meeting.default.setmuteall.md +28 -0
  426. package/dist/docs/markdown/plugin-meetings.meeting.default.setmuteonentry.md +26 -0
  427. package/dist/docs/markdown/plugin-meetings.meeting.default.setremotequalitylevel.md +26 -0
  428. package/dist/docs/markdown/plugin-meetings.meeting.default.setsipuri.md +26 -0
  429. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartcallinitiatejoinreq.md +17 -0
  430. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartjoinreqresp.md +17 -0
  431. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartlocalsdpgenremotesdprecvdelay.md +17 -0
  432. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartsendingmediadelay.md +24 -0
  433. package/dist/docs/markdown/plugin-meetings.meeting.default.setstartsetupdelay.md +24 -0
  434. package/dist/docs/markdown/plugin-meetings.meeting.default.setupbreakoutslistener.md +19 -0
  435. package/dist/docs/markdown/plugin-meetings.meeting.default.setupmediaconnectionlisteners.md +11 -0
  436. package/dist/docs/markdown/plugin-meetings.meeting.default.setupstatsanalyzereventhandlers.md +13 -0
  437. package/dist/docs/markdown/plugin-meetings.meeting.default.sharescreen.md +32 -0
  438. package/dist/docs/markdown/plugin-meetings.meeting.default.sharestatus.md +11 -0
  439. package/dist/docs/markdown/plugin-meetings.meeting.default.sipuri.md +11 -0
  440. package/dist/docs/markdown/plugin-meetings.meeting.default.startcallinitiatejoinreq.md +11 -0
  441. package/dist/docs/markdown/plugin-meetings.meeting.default.startjoinreqresp.md +11 -0
  442. package/dist/docs/markdown/plugin-meetings.meeting.default.startkeepalive.md +13 -0
  443. package/dist/docs/markdown/plugin-meetings.meeting.default.startlocalsdpgenremotesdprecvdelay.md +11 -0
  444. package/dist/docs/markdown/plugin-meetings.meeting.default.startrecording.md +21 -0
  445. package/dist/docs/markdown/plugin-meetings.meeting.default.startwhiteboardshare.md +29 -0
  446. package/dist/docs/markdown/plugin-meetings.meeting.default.state.md +11 -0
  447. package/dist/docs/markdown/plugin-meetings.meeting.default.statsanalyzer.md +11 -0
  448. package/dist/docs/markdown/plugin-meetings.meeting.default.stopkeepalive.md +13 -0
  449. package/dist/docs/markdown/plugin-meetings.meeting.default.stopreceivingtranscription.md +19 -0
  450. package/dist/docs/markdown/plugin-meetings.meeting.default.stoprecording.md +21 -0
  451. package/dist/docs/markdown/plugin-meetings.meeting.default.stopshare.md +28 -0
  452. package/dist/docs/markdown/plugin-meetings.meeting.default.stopwhiteboardshare.md +28 -0
  453. package/dist/docs/markdown/plugin-meetings.meeting.default.togglereactions.md +28 -0
  454. package/dist/docs/markdown/plugin-meetings.meeting.default.transcription.md +11 -0
  455. package/dist/docs/markdown/plugin-meetings.meeting.default.transfer.md +29 -0
  456. package/dist/docs/markdown/plugin-meetings.meeting.default.type.md +11 -0
  457. package/dist/docs/markdown/plugin-meetings.meeting.default.unlockmeeting.md +21 -0
  458. package/dist/docs/markdown/plugin-meetings.meeting.default.unmuteaudio.md +21 -0
  459. package/dist/docs/markdown/plugin-meetings.meeting.default.unmutevideo.md +21 -0
  460. package/dist/docs/markdown/plugin-meetings.meeting.default.unpublishtracks.md +26 -0
  461. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetlocalsharetrack.md +21 -0
  462. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetlocalvideotrack.md +21 -0
  463. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetpeerconnections.md +21 -0
  464. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetremotestream.md +26 -0
  465. package/dist/docs/markdown/plugin-meetings.meeting.default.unsetremotetracks.md +19 -0
  466. package/dist/docs/markdown/plugin-meetings.meeting.default.updateaudio.md +34 -0
  467. package/dist/docs/markdown/plugin-meetings.meeting.default.updatellmconnection.md +19 -0
  468. package/dist/docs/markdown/plugin-meetings.meeting.default.updatemedia.md +32 -0
  469. package/dist/docs/markdown/plugin-meetings.meeting.default.updatemediaconnections.md +11 -0
  470. package/dist/docs/markdown/plugin-meetings.meeting.default.updateshare.md +35 -0
  471. package/dist/docs/markdown/plugin-meetings.meeting.default.updatevideo.md +34 -0
  472. package/dist/docs/markdown/plugin-meetings.meeting.default.uploadlogs.md +28 -0
  473. package/dist/docs/markdown/plugin-meetings.meeting.default.usephoneaudio.md +28 -0
  474. package/dist/docs/markdown/plugin-meetings.meeting.default.userid.md +11 -0
  475. package/dist/docs/markdown/plugin-meetings.meeting.default.verifypassword.md +35 -0
  476. package/dist/docs/markdown/plugin-meetings.meeting.default.video.md +11 -0
  477. package/dist/docs/markdown/plugin-meetings.meeting.default.wirelessshare.md +11 -0
  478. package/dist/docs/markdown/plugin-meetings.meeting.md +18 -0
  479. package/dist/docs/markdown/plugin-meetings.meeting.media_update_type.md +17 -0
  480. package/dist/docs/markdown/plugin-meetings.meetings._constructor_.md +22 -0
  481. package/dist/docs/markdown/plugin-meetings.meetings.create.md +30 -0
  482. package/dist/docs/markdown/plugin-meetings.meetings.fetchuserpreferredwebexsite.md +19 -0
  483. package/dist/docs/markdown/plugin-meetings.meetings.geohintinfo.md +11 -0
  484. package/dist/docs/markdown/plugin-meetings.meetings.getallmeetings.md +31 -0
  485. package/dist/docs/markdown/plugin-meetings.meetings.getgeohint.md +19 -0
  486. package/dist/docs/markdown/plugin-meetings.meetings.getlogger.md +19 -0
  487. package/dist/docs/markdown/plugin-meetings.meetings.getmeetingbytype.md +29 -0
  488. package/dist/docs/markdown/plugin-meetings.meetings.getpersonalmeetingroom.md +21 -0
  489. package/dist/docs/markdown/plugin-meetings.meetings.getreachability.md +21 -0
  490. package/dist/docs/markdown/plugin-meetings.meetings.getscheduledmeetings.md +19 -0
  491. package/dist/docs/markdown/plugin-meetings.meetings.loggerrequest.md +11 -0
  492. package/dist/docs/markdown/plugin-meetings.meetings.md +57 -0
  493. package/dist/docs/markdown/plugin-meetings.meetings.media.md +11 -0
  494. package/dist/docs/markdown/plugin-meetings.meetings.meetingcollection.md +11 -0
  495. package/dist/docs/markdown/plugin-meetings.meetings.meetinginfo.md +11 -0
  496. package/dist/docs/markdown/plugin-meetings.meetings.namespace.md +11 -0
  497. package/dist/docs/markdown/plugin-meetings.meetings.personalmeetingroom.md +11 -0
  498. package/dist/docs/markdown/plugin-meetings.meetings.preferredwebexsite.md +11 -0
  499. package/dist/docs/markdown/plugin-meetings.meetings.reachability.md +11 -0
  500. package/dist/docs/markdown/plugin-meetings.meetings.register.md +21 -0
  501. package/dist/docs/markdown/plugin-meetings.meetings.registered.md +11 -0
  502. package/dist/docs/markdown/plugin-meetings.meetings.request.md +11 -0
  503. package/dist/docs/markdown/plugin-meetings.meetings.setreachability.md +21 -0
  504. package/dist/docs/markdown/plugin-meetings.meetings.startreachability.md +21 -0
  505. package/dist/docs/markdown/plugin-meetings.meetings.syncmeetings.md +21 -0
  506. package/dist/docs/markdown/plugin-meetings.meetings.unregister.md +21 -0
  507. package/dist/docs/markdown/plugin-meetings.meetings.uploadlogs.md +34 -0
  508. package/dist/docs/markdown/plugin-meetings.reactions.md +13 -0
  509. package/dist/docs/markdown/plugin-meetings.reactions.reactions.md +11 -0
  510. package/dist/docs/markdown/plugin-meetings.reactions.skintones.md +11 -0
  511. package/dist/docs/markdown/plugin-meetings.remotemedia.getmaxfs.md +26 -0
  512. package/dist/docs/markdown/plugin-meetings.remotemedia.md +31 -0
  513. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia._constructor_.md +22 -0
  514. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.csi.md +13 -0
  515. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.id.md +11 -0
  516. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.md +40 -0
  517. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.mediatype.md +13 -0
  518. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.memberid.md +13 -0
  519. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.setsizehint.md +25 -0
  520. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.sourcestate.md +13 -0
  521. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.stream.md +13 -0
  522. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemediaevents.md +14 -0
  523. package/dist/docs/markdown/plugin-meetings.remotemedia.remotemediaid.md +11 -0
  524. package/dist/docs/markdown/plugin-meetings.remotemedia.remotevideoresolution.md +11 -0
  525. package/dist/docs/markdown/plugin-meetings.remotemediagroup.md +12 -0
  526. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup._constructor_.md +24 -0
  527. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.getremotemedia.md +26 -0
  528. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.includes.md +27 -0
  529. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.ispinned.md +22 -0
  530. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.md +28 -0
  531. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.pin.md +25 -0
  532. package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.unpin.md +24 -0
  533. package/dist/docs/markdown/plugin-meetings.triggerproxy.md +11 -0
  534. package/dist/docs/metadata/index.api.json +14144 -0
  535. package/dist/docs/metadata/index.api.md +2075 -0
  536. package/dist/docs/metadata/index.d.ts +5594 -0
  537. package/dist/index.d.ts +4 -0
  538. package/dist/index.js +72 -17
  539. package/dist/index.js.map +1 -1
  540. package/dist/locus-info/controlsUtils.d.ts +2 -0
  541. package/dist/locus-info/controlsUtils.js +31 -29
  542. package/dist/locus-info/controlsUtils.js.map +1 -1
  543. package/dist/locus-info/embeddedAppsUtils.d.ts +2 -0
  544. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  545. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  546. package/dist/locus-info/fullState.d.ts +2 -0
  547. package/dist/locus-info/fullState.js +0 -15
  548. package/dist/locus-info/fullState.js.map +1 -1
  549. package/dist/locus-info/hostUtils.d.ts +2 -0
  550. package/dist/locus-info/hostUtils.js +4 -12
  551. package/dist/locus-info/hostUtils.js.map +1 -1
  552. package/dist/locus-info/index.d.ts +269 -0
  553. package/dist/locus-info/index.js +202 -201
  554. package/dist/locus-info/index.js.map +1 -1
  555. package/dist/locus-info/infoUtils.d.ts +2 -0
  556. package/dist/locus-info/infoUtils.js +3 -37
  557. package/dist/locus-info/infoUtils.js.map +1 -1
  558. package/dist/locus-info/mediaSharesUtils.d.ts +2 -0
  559. package/dist/locus-info/mediaSharesUtils.js +12 -38
  560. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  561. package/dist/locus-info/parser.d.ts +212 -0
  562. package/dist/locus-info/parser.js +88 -123
  563. package/dist/locus-info/parser.js.map +1 -1
  564. package/dist/locus-info/selfUtils.d.ts +2 -0
  565. package/dist/locus-info/selfUtils.js +80 -89
  566. package/dist/locus-info/selfUtils.js.map +1 -1
  567. package/dist/media/index.d.ts +32 -0
  568. package/dist/media/index.js +56 -146
  569. package/dist/media/index.js.map +1 -1
  570. package/dist/media/properties.d.ts +108 -0
  571. package/dist/media/properties.js +71 -117
  572. package/dist/media/properties.js.map +1 -1
  573. package/dist/media/util.d.ts +2 -0
  574. package/dist/media/util.js +2 -9
  575. package/dist/media/util.js.map +1 -1
  576. package/dist/mediaQualityMetrics/config.d.ts +233 -0
  577. package/dist/mediaQualityMetrics/config.js +505 -495
  578. package/dist/mediaQualityMetrics/config.js.map +1 -1
  579. package/dist/meeting/effectsState.d.ts +42 -0
  580. package/dist/meeting/effectsState.js +118 -192
  581. package/dist/meeting/effectsState.js.map +1 -1
  582. package/dist/meeting/in-meeting-actions.d.ts +79 -0
  583. package/dist/meeting/in-meeting-actions.js +31 -14
  584. package/dist/meeting/in-meeting-actions.js.map +1 -1
  585. package/dist/meeting/index.d.ts +1621 -0
  586. package/dist/meeting/index.js +2175 -2266
  587. package/dist/meeting/index.js.map +1 -1
  588. package/dist/meeting/muteState.d.ts +116 -0
  589. package/dist/meeting/muteState.js +252 -113
  590. package/dist/meeting/muteState.js.map +1 -1
  591. package/dist/meeting/request.d.ts +255 -0
  592. package/dist/meeting/request.js +297 -283
  593. package/dist/meeting/request.js.map +1 -1
  594. package/dist/meeting/request.type.js +7 -0
  595. package/dist/meeting/request.type.js.map +1 -0
  596. package/dist/meeting/state.d.ts +9 -0
  597. package/dist/meeting/state.js +21 -31
  598. package/dist/meeting/state.js.map +1 -1
  599. package/dist/meeting/util.d.ts +2 -0
  600. package/dist/meeting/util.js +63 -217
  601. package/dist/meeting/util.js.map +1 -1
  602. package/dist/meeting-info/collection.d.ts +20 -0
  603. package/dist/meeting-info/collection.js +3 -25
  604. package/dist/meeting-info/collection.js.map +1 -1
  605. package/dist/meeting-info/index.d.ts +57 -0
  606. package/dist/meeting-info/index.js +10 -33
  607. package/dist/meeting-info/index.js.map +1 -1
  608. package/dist/meeting-info/meeting-info-v2.d.ts +93 -0
  609. package/dist/meeting-info/meeting-info-v2.js +181 -268
  610. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  611. package/dist/meeting-info/request.d.ts +22 -0
  612. package/dist/meeting-info/request.js +1 -16
  613. package/dist/meeting-info/request.js.map +1 -1
  614. package/dist/meeting-info/util.d.ts +2 -0
  615. package/dist/meeting-info/util.js +98 -183
  616. package/dist/meeting-info/util.js.map +1 -1
  617. package/dist/meeting-info/utilv2.d.ts +2 -0
  618. package/dist/meeting-info/utilv2.js +137 -228
  619. package/dist/meeting-info/utilv2.js.map +1 -1
  620. package/dist/meetings/collection.d.ts +23 -0
  621. package/dist/meetings/collection.js +24 -20
  622. package/dist/meetings/collection.js.map +1 -1
  623. package/dist/meetings/index.d.ts +297 -0
  624. package/dist/meetings/index.js +566 -587
  625. package/dist/meetings/index.js.map +1 -1
  626. package/dist/meetings/request.d.ts +27 -0
  627. package/dist/meetings/request.js +23 -42
  628. package/dist/meetings/request.js.map +1 -1
  629. package/dist/meetings/util.d.ts +18 -0
  630. package/dist/meetings/util.js +151 -155
  631. package/dist/meetings/util.js.map +1 -1
  632. package/dist/member/index.d.ts +145 -0
  633. package/dist/member/index.js +80 -88
  634. package/dist/member/index.js.map +1 -1
  635. package/dist/member/types.js +15 -0
  636. package/dist/member/types.js.map +1 -0
  637. package/dist/member/util.d.ts +2 -0
  638. package/dist/member/util.js +90 -69
  639. package/dist/member/util.js.map +1 -1
  640. package/dist/members/collection.d.ts +24 -0
  641. package/dist/members/collection.js +12 -12
  642. package/dist/members/collection.js.map +1 -1
  643. package/dist/members/index.d.ts +298 -0
  644. package/dist/members/index.js +139 -204
  645. package/dist/members/index.js.map +1 -1
  646. package/dist/members/request.d.ts +50 -0
  647. package/dist/members/request.js +41 -55
  648. package/dist/members/request.js.map +1 -1
  649. package/dist/members/types.js +15 -0
  650. package/dist/members/types.js.map +1 -0
  651. package/dist/members/util.d.ts +2 -0
  652. package/dist/members/util.js +76 -46
  653. package/dist/members/util.js.map +1 -1
  654. package/dist/metrics/config.d.ts +169 -0
  655. package/dist/metrics/config.js +4 -14
  656. package/dist/metrics/config.js.map +1 -1
  657. package/dist/metrics/constants.d.ts +57 -0
  658. package/dist/metrics/constants.js +1 -6
  659. package/dist/metrics/constants.js.map +1 -1
  660. package/dist/metrics/index.d.ts +152 -0
  661. package/dist/metrics/index.js +53 -158
  662. package/dist/metrics/index.js.map +1 -1
  663. package/dist/multistream/mediaRequestManager.js +116 -52
  664. package/dist/multistream/mediaRequestManager.js.map +1 -1
  665. package/dist/multistream/receiveSlot.js +58 -65
  666. package/dist/multistream/receiveSlot.js.map +1 -1
  667. package/dist/multistream/receiveSlotManager.js +58 -93
  668. package/dist/multistream/receiveSlotManager.js.map +1 -1
  669. package/dist/multistream/remoteMedia.js +55 -74
  670. package/dist/multistream/remoteMedia.js.map +1 -1
  671. package/dist/multistream/remoteMediaGroup.js +6 -40
  672. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  673. package/dist/multistream/remoteMediaManager.js +466 -442
  674. package/dist/multistream/remoteMediaManager.js.map +1 -1
  675. package/dist/networkQualityMonitor/index.d.ts +70 -0
  676. package/dist/networkQualityMonitor/index.js +32 -59
  677. package/dist/networkQualityMonitor/index.js.map +1 -1
  678. package/dist/peer-connection-manager/index.d.ts +6 -0
  679. package/dist/peer-connection-manager/index.js +671 -0
  680. package/dist/peer-connection-manager/index.js.map +1 -0
  681. package/dist/peer-connection-manager/util.d.ts +6 -0
  682. package/dist/peer-connection-manager/util.js +110 -0
  683. package/dist/peer-connection-manager/util.js.map +1 -0
  684. package/dist/personal-meeting-room/index.d.ts +47 -0
  685. package/dist/personal-meeting-room/index.js +10 -45
  686. package/dist/personal-meeting-room/index.js.map +1 -1
  687. package/dist/personal-meeting-room/request.d.ts +14 -0
  688. package/dist/personal-meeting-room/request.js +2 -33
  689. package/dist/personal-meeting-room/request.js.map +1 -1
  690. package/dist/personal-meeting-room/util.d.ts +2 -0
  691. package/dist/personal-meeting-room/util.js +0 -13
  692. package/dist/personal-meeting-room/util.js.map +1 -1
  693. package/dist/plugin-meetings.d.ts +5399 -0
  694. package/dist/reachability/index.d.ts +139 -0
  695. package/dist/reachability/index.js +190 -199
  696. package/dist/reachability/index.js.map +1 -1
  697. package/dist/reachability/request.d.ts +35 -0
  698. package/dist/reachability/request.js +14 -23
  699. package/dist/reachability/request.js.map +1 -1
  700. package/dist/reactions/constants.js +13 -0
  701. package/dist/reactions/constants.js.map +1 -0
  702. package/dist/reactions/reactions.d.ts +4 -0
  703. package/dist/reactions/reactions.js +109 -0
  704. package/dist/reactions/reactions.js.map +1 -0
  705. package/dist/reactions/reactions.type.d.ts +32 -0
  706. package/dist/reactions/reactions.type.js +36 -0
  707. package/dist/reactions/reactions.type.js.map +1 -0
  708. package/dist/reconnection-manager/index.d.ts +112 -0
  709. package/dist/reconnection-manager/index.js +328 -465
  710. package/dist/reconnection-manager/index.js.map +1 -1
  711. package/dist/recording-controller/enums.d.ts +7 -0
  712. package/dist/recording-controller/enums.js +17 -0
  713. package/dist/recording-controller/enums.js.map +1 -0
  714. package/dist/recording-controller/index.d.ts +193 -0
  715. package/dist/recording-controller/index.js +343 -0
  716. package/dist/recording-controller/index.js.map +1 -0
  717. package/dist/recording-controller/util.d.ts +13 -0
  718. package/dist/recording-controller/util.js +63 -0
  719. package/dist/recording-controller/util.js.map +1 -0
  720. package/dist/roap/collection.d.ts +10 -0
  721. package/dist/roap/collection.js +63 -0
  722. package/dist/roap/collection.js.map +1 -0
  723. package/dist/roap/handler.d.ts +47 -0
  724. package/dist/roap/handler.js +279 -0
  725. package/dist/roap/handler.js.map +1 -0
  726. package/dist/roap/index.d.ts +116 -0
  727. package/dist/roap/index.js +27 -59
  728. package/dist/roap/index.js.map +1 -1
  729. package/dist/roap/request.d.ts +35 -0
  730. package/dist/roap/request.js +143 -134
  731. package/dist/roap/request.js.map +1 -1
  732. package/dist/roap/state.d.ts +9 -0
  733. package/dist/roap/state.js +127 -0
  734. package/dist/roap/state.js.map +1 -0
  735. package/dist/roap/turnDiscovery.d.ts +67 -0
  736. package/dist/roap/turnDiscovery.js +86 -101
  737. package/dist/roap/turnDiscovery.js.map +1 -1
  738. package/dist/roap/util.d.ts +2 -0
  739. package/dist/roap/util.js +76 -0
  740. package/dist/roap/util.js.map +1 -0
  741. package/dist/statsAnalyzer/global.d.ts +126 -0
  742. package/dist/statsAnalyzer/global.js +1 -95
  743. package/dist/statsAnalyzer/global.js.map +1 -1
  744. package/dist/statsAnalyzer/index.d.ts +190 -0
  745. package/dist/statsAnalyzer/index.js +356 -457
  746. package/dist/statsAnalyzer/index.js.map +1 -1
  747. package/dist/statsAnalyzer/mqaUtil.d.ts +22 -0
  748. package/dist/statsAnalyzer/mqaUtil.js +144 -94
  749. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  750. package/dist/transcription/index.d.ts +64 -0
  751. package/dist/transcription/index.js +13 -45
  752. package/dist/transcription/index.js.map +1 -1
  753. package/dist/types/breakouts/breakout.d.ts +8 -0
  754. package/dist/types/breakouts/collection.d.ts +5 -0
  755. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  756. package/dist/types/breakouts/index.d.ts +5 -0
  757. package/dist/types/breakouts/request.d.ts +22 -0
  758. package/dist/types/breakouts/utils.d.ts +8 -0
  759. package/dist/types/common/browser-detection.d.ts +9 -0
  760. package/dist/types/common/collection.d.ts +48 -0
  761. package/dist/types/common/config.d.ts +2 -0
  762. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  763. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  764. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  765. package/dist/types/common/errors/media.d.ts +15 -0
  766. package/dist/types/common/errors/parameter.d.ts +15 -0
  767. package/dist/types/common/errors/password-error.d.ts +15 -0
  768. package/dist/types/common/errors/permission.d.ts +14 -0
  769. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  770. package/dist/types/common/errors/reconnection.d.ts +15 -0
  771. package/dist/types/common/errors/stats.d.ts +15 -0
  772. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  773. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  774. package/dist/types/common/events/events-scope.d.ts +17 -0
  775. package/dist/types/common/events/events.d.ts +12 -0
  776. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  777. package/dist/types/common/events/util.d.ts +2 -0
  778. package/dist/types/common/logs/logger-config.d.ts +2 -0
  779. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  780. package/dist/types/common/logs/request.d.ts +34 -0
  781. package/dist/types/common/queue.d.ts +32 -0
  782. package/dist/types/config.d.ts +77 -0
  783. package/dist/types/constants.d.ts +944 -0
  784. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  785. package/dist/types/controls-options-manager/enums.d.ts +6 -0
  786. package/dist/types/controls-options-manager/index.d.ts +128 -0
  787. package/dist/types/controls-options-manager/util.d.ts +9 -0
  788. package/dist/types/index.d.ts +7 -0
  789. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  790. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  791. package/dist/types/locus-info/fullState.d.ts +2 -0
  792. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  793. package/dist/types/locus-info/index.d.ts +276 -0
  794. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  795. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  796. package/dist/types/locus-info/parser.d.ts +212 -0
  797. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  798. package/dist/types/media/index.d.ts +32 -0
  799. package/dist/types/media/properties.d.ts +108 -0
  800. package/dist/types/media/util.d.ts +2 -0
  801. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  802. package/dist/types/meeting/effectsState.d.ts +42 -0
  803. package/dist/types/meeting/in-meeting-actions.d.ts +101 -0
  804. package/dist/types/meeting/index.d.ts +1723 -0
  805. package/dist/types/meeting/muteState.d.ts +185 -0
  806. package/dist/types/meeting/request.d.ts +271 -0
  807. package/dist/types/meeting/request.type.d.ts +11 -0
  808. package/dist/types/meeting/state.d.ts +9 -0
  809. package/dist/types/meeting/util.d.ts +2 -0
  810. package/dist/types/meeting-info/collection.d.ts +20 -0
  811. package/dist/types/meeting-info/index.d.ts +57 -0
  812. package/dist/types/meeting-info/meeting-info-v2.d.ts +93 -0
  813. package/dist/types/meeting-info/request.d.ts +22 -0
  814. package/dist/types/meeting-info/util.d.ts +2 -0
  815. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  816. package/dist/types/meetings/collection.d.ts +31 -0
  817. package/dist/types/meetings/index.d.ts +316 -0
  818. package/dist/types/meetings/request.d.ts +27 -0
  819. package/dist/types/meetings/util.d.ts +18 -0
  820. package/dist/types/member/index.d.ts +156 -0
  821. package/dist/types/member/types.d.ts +21 -0
  822. package/dist/types/member/util.d.ts +2 -0
  823. package/dist/types/members/collection.d.ts +29 -0
  824. package/dist/types/members/index.d.ts +343 -0
  825. package/dist/types/members/request.d.ts +58 -0
  826. package/dist/types/members/types.d.ts +24 -0
  827. package/dist/types/members/util.d.ts +2 -0
  828. package/dist/types/metrics/config.d.ts +171 -0
  829. package/dist/types/metrics/constants.d.ts +53 -0
  830. package/dist/types/metrics/index.d.ts +152 -0
  831. package/dist/types/multistream/mediaRequestManager.d.ts +68 -0
  832. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  833. package/dist/types/multistream/receiveSlotManager.d.ts +49 -0
  834. package/dist/types/multistream/remoteMedia.d.ts +72 -0
  835. package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
  836. package/dist/types/multistream/remoteMediaManager.d.ts +263 -0
  837. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  838. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  839. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  840. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  841. package/dist/types/reachability/index.d.ts +152 -0
  842. package/dist/types/reachability/request.d.ts +37 -0
  843. package/dist/types/reactions/constants.d.ts +3 -0
  844. package/dist/types/reactions/reactions.d.ts +4 -0
  845. package/dist/types/reactions/reactions.type.d.ts +52 -0
  846. package/dist/types/reconnection-manager/index.d.ts +126 -0
  847. package/dist/types/recording-controller/enums.d.ts +7 -0
  848. package/dist/types/recording-controller/index.d.ts +193 -0
  849. package/dist/types/recording-controller/util.d.ts +13 -0
  850. package/dist/types/roap/index.d.ts +77 -0
  851. package/dist/types/roap/request.d.ts +38 -0
  852. package/dist/types/roap/turnDiscovery.d.ts +74 -0
  853. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  854. package/dist/types/statsAnalyzer/index.d.ts +195 -0
  855. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  856. package/dist/types/transcription/index.d.ts +64 -0
  857. package/dist/types/tsdoc-metadata.json +11 -0
  858. package/internal-README.md +7 -6
  859. package/package.json +28 -20
  860. package/src/breakouts/README.md +219 -0
  861. package/src/breakouts/breakout.ts +153 -0
  862. package/src/breakouts/collection.ts +19 -0
  863. package/src/breakouts/edit-lock-error.ts +25 -0
  864. package/src/breakouts/index.ts +745 -0
  865. package/src/breakouts/request.ts +55 -0
  866. package/src/breakouts/utils.ts +44 -0
  867. package/src/common/browser-detection.ts +9 -6
  868. package/src/common/collection.ts +3 -1
  869. package/src/common/errors/captcha-error.ts +6 -6
  870. package/src/common/errors/intent-to-join.ts +6 -6
  871. package/src/common/errors/join-meeting.ts +12 -8
  872. package/src/common/errors/media.ts +6 -6
  873. package/src/common/errors/parameter.ts +9 -6
  874. package/src/common/errors/password-error.ts +6 -6
  875. package/src/common/errors/permission.ts +5 -5
  876. package/src/common/errors/reconnection.ts +6 -6
  877. package/src/common/errors/stats.ts +6 -6
  878. package/src/common/errors/webex-errors.ts +7 -5
  879. package/src/common/errors/webex-meetings-error.ts +1 -1
  880. package/src/common/events/events-scope.ts +5 -1
  881. package/src/common/events/events.ts +5 -1
  882. package/src/common/events/trigger-proxy.ts +8 -3
  883. package/src/common/events/util.ts +1 -2
  884. package/src/common/logs/logger-proxy.ts +21 -10
  885. package/src/common/logs/request.ts +11 -8
  886. package/src/config.ts +16 -12
  887. package/src/constants.ts +92 -6
  888. package/src/controls-options-manager/constants.ts +5 -0
  889. package/src/controls-options-manager/enums.ts +7 -0
  890. package/src/controls-options-manager/index.ts +240 -0
  891. package/src/controls-options-manager/util.ts +30 -0
  892. package/src/index.ts +33 -0
  893. package/src/locus-info/controlsUtils.ts +63 -24
  894. package/src/locus-info/fullState.ts +15 -11
  895. package/src/locus-info/hostUtils.ts +4 -3
  896. package/src/locus-info/index.ts +148 -43
  897. package/src/locus-info/infoUtils.ts +16 -4
  898. package/src/locus-info/mediaSharesUtils.ts +4 -4
  899. package/src/locus-info/parser.ts +46 -68
  900. package/src/locus-info/selfUtils.ts +174 -56
  901. package/src/media/index.ts +131 -179
  902. package/src/media/properties.ts +43 -36
  903. package/src/media/util.ts +1 -1
  904. package/src/mediaQualityMetrics/config.ts +380 -378
  905. package/src/meeting/in-meeting-actions.ts +67 -3
  906. package/src/meeting/index.ts +2395 -1523
  907. package/src/meeting/muteState.ts +271 -68
  908. package/src/meeting/request.ts +228 -132
  909. package/src/meeting/request.type.ts +13 -0
  910. package/src/meeting/state.ts +45 -30
  911. package/src/meeting/util.ts +127 -111
  912. package/src/meeting-info/collection.ts +2 -1
  913. package/src/meeting-info/index.ts +32 -30
  914. package/src/meeting-info/meeting-info-v2.ts +108 -108
  915. package/src/meeting-info/request.ts +9 -3
  916. package/src/meeting-info/util.ts +54 -46
  917. package/src/meeting-info/utilv2.ts +59 -53
  918. package/src/meetings/collection.ts +21 -1
  919. package/src/meetings/index.ts +673 -466
  920. package/src/meetings/request.ts +29 -25
  921. package/src/meetings/util.ts +94 -30
  922. package/src/member/index.ts +86 -49
  923. package/src/member/types.ts +24 -0
  924. package/src/member/util.ts +92 -13
  925. package/src/members/collection.ts +8 -1
  926. package/src/members/index.ts +246 -129
  927. package/src/members/request.ts +67 -14
  928. package/src/members/types.ts +28 -0
  929. package/src/members/util.ts +103 -50
  930. package/src/metrics/config.ts +255 -90
  931. package/src/metrics/constants.ts +0 -6
  932. package/src/metrics/index.ts +90 -93
  933. package/src/multistream/mediaRequestManager.ts +144 -40
  934. package/src/multistream/receiveSlot.ts +69 -26
  935. package/src/multistream/receiveSlotManager.ts +50 -38
  936. package/src/multistream/remoteMedia.ts +30 -4
  937. package/src/multistream/remoteMediaGroup.ts +4 -3
  938. package/src/multistream/remoteMediaManager.ts +230 -66
  939. package/src/networkQualityMonitor/index.ts +24 -27
  940. package/src/personal-meeting-room/index.ts +12 -16
  941. package/src/personal-meeting-room/request.ts +10 -3
  942. package/src/personal-meeting-room/util.ts +3 -3
  943. package/src/reachability/index.ts +131 -79
  944. package/src/reachability/request.ts +43 -34
  945. package/src/reactions/constants.ts +4 -0
  946. package/src/reactions/reactions.ts +104 -0
  947. package/src/reactions/reactions.type.ts +62 -0
  948. package/src/reconnection-manager/index.ts +190 -111
  949. package/src/recording-controller/enums.ts +8 -0
  950. package/src/recording-controller/index.ts +315 -0
  951. package/src/recording-controller/util.ts +58 -0
  952. package/src/roap/index.ts +50 -42
  953. package/src/roap/request.ts +86 -53
  954. package/src/roap/turnDiscovery.ts +69 -38
  955. package/src/statsAnalyzer/global.ts +8 -104
  956. package/src/statsAnalyzer/index.ts +593 -376
  957. package/src/statsAnalyzer/mqaUtil.ts +203 -90
  958. package/src/transcription/index.ts +34 -32
  959. package/test/integration/spec/converged-space-meetings.js +176 -0
  960. package/test/integration/spec/journey.js +665 -464
  961. package/test/integration/spec/space-meeting.js +319 -204
  962. package/test/integration/spec/transcription.js +7 -8
  963. package/test/unit/spec/breakouts/breakout.ts +178 -0
  964. package/test/unit/spec/breakouts/collection.ts +15 -0
  965. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  966. package/test/unit/spec/breakouts/index.ts +1252 -0
  967. package/test/unit/spec/breakouts/request.ts +104 -0
  968. package/test/unit/spec/breakouts/utils.js +54 -0
  969. package/test/unit/spec/common/browser-detection.js +9 -28
  970. package/test/unit/spec/controls-options-manager/index.js +204 -0
  971. package/test/unit/spec/controls-options-manager/util.js +86 -0
  972. package/test/unit/spec/fixture/locus.js +92 -90
  973. package/test/unit/spec/locus-info/controlsUtils.js +133 -34
  974. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  975. package/test/unit/spec/locus-info/index.js +303 -2
  976. package/test/unit/spec/locus-info/infoUtils.js +41 -32
  977. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  978. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  979. package/test/unit/spec/locus-info/parser.js +3 -9
  980. package/test/unit/spec/locus-info/selfConstant.js +101 -103
  981. package/test/unit/spec/locus-info/selfUtils.js +165 -12
  982. package/test/unit/spec/media/index.ts +72 -8
  983. package/test/unit/spec/media/properties.ts +9 -9
  984. package/test/unit/spec/meeting/in-meeting-actions.ts +29 -2
  985. package/test/unit/spec/meeting/index.js +2479 -794
  986. package/test/unit/spec/meeting/muteState.js +164 -70
  987. package/test/unit/spec/meeting/request.js +141 -43
  988. package/test/unit/spec/meeting/utils.js +135 -164
  989. package/test/unit/spec/meeting-info/meetinginfov2.js +100 -73
  990. package/test/unit/spec/meeting-info/request.js +7 -9
  991. package/test/unit/spec/meeting-info/util.js +11 -12
  992. package/test/unit/spec/meeting-info/utilv2.js +110 -74
  993. package/test/unit/spec/meetings/collection.js +15 -1
  994. package/test/unit/spec/meetings/index.js +622 -263
  995. package/test/unit/spec/meetings/utils.js +65 -14
  996. package/test/unit/spec/member/index.js +24 -1
  997. package/test/unit/spec/member/util.js +359 -32
  998. package/test/unit/spec/members/index.js +294 -54
  999. package/test/unit/spec/members/request.js +50 -20
  1000. package/test/unit/spec/members/utils.js +147 -4
  1001. package/test/unit/spec/metrics/index.js +16 -21
  1002. package/test/unit/spec/multistream/mediaRequestManager.ts +369 -68
  1003. package/test/unit/spec/multistream/receiveSlot.ts +76 -17
  1004. package/test/unit/spec/multistream/receiveSlotManager.ts +60 -38
  1005. package/test/unit/spec/multistream/remoteMedia.ts +32 -2
  1006. package/test/unit/spec/multistream/remoteMediaGroup.ts +5 -5
  1007. package/test/unit/spec/multistream/remoteMediaManager.ts +549 -65
  1008. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  1009. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  1010. package/test/unit/spec/reachability/index.ts +176 -27
  1011. package/test/unit/spec/reachability/request.js +66 -0
  1012. package/test/unit/spec/reconnection-manager/index.js +58 -31
  1013. package/test/unit/spec/recording-controller/index.js +231 -0
  1014. package/test/unit/spec/recording-controller/util.js +102 -0
  1015. package/test/unit/spec/roap/index.ts +12 -8
  1016. package/test/unit/spec/roap/request.ts +217 -0
  1017. package/test/unit/spec/roap/turnDiscovery.ts +72 -49
  1018. package/test/unit/spec/stats-analyzer/index.js +108 -57
  1019. package/test/utils/cmr.js +44 -42
  1020. package/test/utils/constants.js +9 -0
  1021. package/test/utils/testUtils.js +98 -77
  1022. package/test/utils/webex-config.js +22 -18
  1023. package/test/utils/webex-test-users.js +57 -50
  1024. package/tsconfig.json +6 -0
  1025. package/dist/media/internal-media-core-wrapper.js +0 -22
  1026. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  1027. package/dist/multistream/multistreamMedia.js +0 -116
  1028. package/dist/multistream/multistreamMedia.js.map +0 -1
  1029. package/src/index.js +0 -15
  1030. package/src/media/internal-media-core-wrapper.ts +0 -9
  1031. package/src/meeting/effectsState.ts +0 -211
  1032. package/src/multistream/multistreamMedia.ts +0 -92
  1033. package/test/unit/spec/meeting/effectsState.js +0 -291
@@ -8,31 +8,21 @@ import uuid from 'uuid';
8
8
  import window from 'global/window';
9
9
  import anonymize from 'ip-anonymize';
10
10
 
11
+ import {getOSNameInternal} from '@webex/internal-plugin-metrics';
11
12
  import LoggerProxy from '../common/logs/logger-proxy';
12
13
  import {MEETING_ERRORS} from '../constants';
13
14
  import BrowserDetection from '../common/browser-detection';
14
15
 
15
16
  import {
16
- error, eventType, errorCodes as ERROR_CODE, OS_NAME, UNKNOWN, CLIENT_NAME,
17
- mediaType
17
+ error,
18
+ eventType,
19
+ errorCodes as ERROR_CODE,
20
+ UNKNOWN,
21
+ CLIENT_NAME,
22
+ mediaType,
18
23
  } from './config';
19
24
 
20
- const OSMap = {
21
- // @ts-ignore
22
- 'Chrome OS': OS_NAME.chrome,
23
- macOS: OS_NAME.MAC,
24
- Windows: OS_NAME.WINDOWS,
25
- iOS: OS_NAME.IOS,
26
- Android: OS_NAME.ANDROID,
27
- Linux: OS_NAME.LINUX
28
- };
29
-
30
- const {
31
- getOSName,
32
- getOSVersion,
33
- getBrowserName,
34
- getBrowserVersion
35
- } = BrowserDetection();
25
+ const {getOSName, getOSVersion, getBrowserName, getBrowserVersion} = BrowserDetection();
36
26
 
37
27
  // Apply a CIDR /28 format to the IPV4 and /96 to the IPV6 addresses
38
28
  // For reference : https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing
@@ -85,33 +75,33 @@ class Metrics {
85
75
  webex: any;
86
76
 
87
77
  /**
88
- * Create Metrics Object
89
- * @constructor
90
- * @public
91
- * @memberof Meetings
92
- */
78
+ * Create Metrics Object
79
+ * @constructor
80
+ * @public
81
+ * @memberof Meetings
82
+ */
93
83
  constructor() {
94
84
  if (!Metrics.instance) {
95
- /**
96
- * @instance
97
- * @type {Array}
98
- * @private
99
- * @memberof Metrics
100
- */
85
+ /**
86
+ * @instance
87
+ * @type {Array}
88
+ * @private
89
+ * @memberof Metrics
90
+ */
101
91
  this._events = [];
102
92
  /**
103
- * @instance
104
- * @type {MeetingCollection}
105
- * @private
106
- * @memberof Metrics
107
- */
93
+ * @instance
94
+ * @type {MeetingCollection}
95
+ * @private
96
+ * @memberof Metrics
97
+ */
108
98
  this.meetingCollection = null;
109
99
  /**
110
- * @instance
111
- * @type {MeetingCollection}
112
- * @private
113
- * @memberof Metrics
114
- */
100
+ * @instance
101
+ * @type {MeetingCollection}
102
+ * @private
103
+ * @memberof Metrics
104
+ */
115
105
  this.keys = Object.values(eventType);
116
106
  /**
117
107
  * @instance
@@ -122,6 +112,7 @@ class Metrics {
122
112
  Metrics.instance = this;
123
113
  }
124
114
 
115
+ // eslint-disable-next-line no-constructor-return
125
116
  return Metrics.instance;
126
117
  }
127
118
 
@@ -147,12 +138,14 @@ class Metrics {
147
138
  * @param {object} options.event
148
139
  * @returns {object} null
149
140
  */
150
- postEvent(options: { meeting?: any; meetingId?: string; data?: object; event?: any } | any) {
141
+ postEvent(options: {meeting?: any; meetingId?: string; data?: object; event?: any} | any) {
151
142
  const {meetingId, data = {}, event} = options;
152
143
  let {meeting} = options;
153
144
 
154
145
  if (this.keys.indexOf(event) === -1) {
155
- LoggerProxy.logger.error(`Metrics:index#postEvent --> Event ${event} doesn't exist in dictionary`);
146
+ LoggerProxy.logger.error(
147
+ `Metrics:index#postEvent --> Event ${event} doesn't exist in dictionary`
148
+ );
156
149
  }
157
150
 
158
151
  if (!meeting && meetingId) {
@@ -169,25 +162,25 @@ class Metrics {
169
162
  if (event === eventType.MEDIA_QUALITY) {
170
163
  data.event = event;
171
164
  meeting.sendMediaQualityAnalyzerMetrics(data);
172
- }
173
- else {
165
+ } else {
174
166
  meeting.callEvents.push(event);
175
167
  data.event = event;
176
168
  meeting.sendCallAnalyzerMetrics(data);
177
169
  }
178
- }
179
-
180
- else {
181
- LoggerProxy.logger.info(`Metrics:index#postEvent --> Event received for meetingId:${meetingId}, but meeting not found in collection.`);
170
+ } else {
171
+ LoggerProxy.logger.info(
172
+ `Metrics:index#postEvent --> Event received for meetingId:${meetingId}, but meeting not found in collection.`
173
+ );
182
174
  }
183
175
  }
184
176
 
185
177
  /**
186
178
  * Docs for Call analyzer metrics
187
- * https://sqbu-github.cisco.com/WebExSquared/call-analyzer/wiki
188
- * https://sqbu-github.cisco.com/WebExSquared/event-dictionary/blob/master/diagnostic-events.raml
189
- */
179
+ * https://sqbu-github.cisco.com/WebExSquared/call-analyzer/wiki
180
+ * https://sqbu-github.cisco.com/WebExSquared/event-dictionary/blob/master/diagnostic-events.raml
181
+ */
190
182
 
183
+ // eslint-disable-next-line @typescript-eslint/no-shadow
191
184
  initPayload(eventType, identifiers, options) {
192
185
  const payload: any = {
193
186
  eventId: uuid.v4(),
@@ -202,21 +195,21 @@ class Metrics {
202
195
  localNetworkPrefix: anonymizeIPAddress(this.webex.meetings.geoHintInfo?.clientAddress),
203
196
  osVersion: getOSVersion() || 'unknown',
204
197
  subClientType: options.subClientType,
205
- os: this.getOsName(),
198
+ os: getOSNameInternal(),
206
199
  browser: getBrowserName(),
207
- browserVersion: getBrowserVersion()
208
- }
200
+ browserVersion: getBrowserVersion(),
201
+ },
209
202
  },
210
203
  originTime: {
211
- triggered: new Date().toISOString()
204
+ triggered: new Date().toISOString(),
212
205
  },
213
206
  senderCountryCode: this.webex.meetings.geoHintInfo?.countryCode,
214
207
  event: {
215
208
  name: eventType,
216
209
  canProceed: true,
217
210
  identifiers,
218
- eventData: {webClientDomain: window.location.hostname}
219
- }
211
+ eventData: {webClientDomain: window.location.hostname},
212
+ },
220
213
  };
221
214
 
222
215
  // TODO: more options should be checked and some of them should be mandatory in certain conditions
@@ -248,22 +241,16 @@ class Metrics {
248
241
  if (options.isRoapCallEnabled) {
249
242
  payload.event.isRoapCallEnabled = options.isRoapCallEnabled;
250
243
  }
244
+ ['breakoutMoveId', 'breakoutSessionId', 'breakoutGroupId'].forEach((item) => {
245
+ if (options[item]) {
246
+ payload.event.identifiers[item] = options[item];
247
+ }
248
+ });
251
249
  }
252
250
 
253
251
  return payload;
254
252
  }
255
253
 
256
- /**
257
- * returns metrics friendly OS versions
258
- * @param {String} osName Os name
259
- * @returns {String}
260
- * @private
261
- * @memberof Metrics
262
- */
263
- private getOsName() {
264
- return OSMap[getOSName()] ?? OS_NAME.OTHERS;
265
- }
266
-
267
254
  /**
268
255
  * get the payload specific for a media quality event through call analyzer
269
256
  * @param {String} eventType the event name
@@ -279,16 +266,19 @@ class Metrics {
279
266
  * @memberof Metrics
280
267
  */
281
268
  public initMediaPayload(
269
+ // eslint-disable-next-line @typescript-eslint/no-shadow
282
270
  eventType: string,
283
271
  identifiers: {
284
272
  correlationId: string;
285
273
  locusUrl: string;
286
274
  locusId: string;
287
275
  },
288
- options: {
289
- intervalData: object;
290
- clientType: string;
291
- } | any = {}
276
+ options:
277
+ | {
278
+ intervalData: object;
279
+ clientType: string;
280
+ }
281
+ | any = {}
292
282
  ) {
293
283
  const {audioSetupDelay, videoSetupDelay, joinTimes} = options;
294
284
 
@@ -305,15 +295,15 @@ class Metrics {
305
295
  clientType: options.clientType, // TODO: Only clientType: 'TEAMS_CLIENT' is whitelisted
306
296
  clientVersion: `${CLIENT_NAME}/${this.webex.version}`,
307
297
  localNetworkPrefix: anonymizeIPAddress(this.webex.meetings.geoHintInfo?.clientAddress),
308
- os: this.getOsName(),
298
+ os: getOSNameInternal(),
309
299
  osVersion: getOSVersion() || UNKNOWN,
310
300
  subClientType: options.subClientType,
311
301
  browser: getBrowserName(),
312
- browserVersion: getBrowserVersion()
313
- }
302
+ browserVersion: getBrowserVersion(),
303
+ },
314
304
  },
315
305
  originTime: {
316
- triggered: new Date().toISOString()
306
+ triggered: new Date().toISOString(),
317
307
  },
318
308
  senderCountryCode: this.webex.meetings.geoHintInfo?.countryCode,
319
309
  event: {
@@ -323,16 +313,16 @@ class Metrics {
323
313
  intervals: [options.intervalData],
324
314
  joinTimes,
325
315
  eventData: {
326
- webClientDomain: window.location.hostname
316
+ webClientDomain: window.location.hostname,
327
317
  },
328
318
  sourceMetadata: {
329
319
  applicationSoftwareType: CLIENT_NAME,
330
320
  applicationSoftwareVersion: this.webex.version,
331
321
  mediaEngineSoftwareType: getBrowserName() || 'browser',
332
322
  mediaEngineSoftwareVersion: getOSVersion() || UNKNOWN,
333
- startTime: new Date().toISOString()
334
- }
335
- }
323
+ startTime: new Date().toISOString(),
324
+ },
325
+ },
336
326
  };
337
327
 
338
328
  return payload;
@@ -353,8 +343,7 @@ class Metrics {
353
343
 
354
344
  if (err && err.statusCode && err.statusCode >= 500) {
355
345
  errorCode = 1003;
356
- }
357
- else if (err && err.body && err.body.errorCode) {
346
+ } else if (err && err.body && err.body.errorCode) {
358
347
  // locus error codes: https://sqbu-github.cisco.com/WebExSquared/locus/blob/master/server/src/main/resources/locus-error-codes.properties
359
348
  switch (ERROR_CODE[err.body.errorCode]) {
360
349
  case MEETING_ERRORS.FREE_USER_MAX_PARTICIPANTS_EXCEEDED:
@@ -453,17 +442,13 @@ class Metrics {
453
442
  default:
454
443
  errorCode = 4008;
455
444
  }
456
- }
457
- else {
445
+ } else {
458
446
  errorCode = 4008;
459
447
  }
460
448
 
461
- return this.generateErrorPayload(
462
- errorCode, showToUser, error.name.LOCUS_RESPONSE, err
463
- );
449
+ return this.generateErrorPayload(errorCode, showToUser, error.name.LOCUS_RESPONSE, err);
464
450
  }
465
451
 
466
-
467
452
  generateErrorPayload(errorCode, shownToUser, name, err) {
468
453
  if (error.errors[errorCode]) {
469
454
  const errorPayload: any = {
@@ -472,7 +457,7 @@ class Metrics {
472
457
  errorDescription: error.errors[errorCode][0],
473
458
  errorCode,
474
459
  fatal: !includes(error.notFatalErrorList, errorCode),
475
- name: name || error.name.OTHER
460
+ name: name || error.name.OTHER,
476
461
  };
477
462
 
478
463
  if (err && err.body) {
@@ -499,8 +484,14 @@ class Metrics {
499
484
  let browserInfo;
500
485
  const clientInfo = util.format('client=%s', `${this.webex.meetings?.metrics?.clientName}`);
501
486
 
502
- if (['chrome', 'firefox', 'msie', 'msedge', 'safari'].indexOf(getBrowserName().toLowerCase()) !== -1) {
503
- browserInfo = util.format('browser=%s', `${getBrowserName().toLowerCase()}/${getBrowserVersion().split('.')[0]}`);
487
+ if (
488
+ ['chrome', 'firefox', 'msie', 'msedge', 'safari'].indexOf(getBrowserName().toLowerCase()) !==
489
+ -1
490
+ ) {
491
+ browserInfo = util.format(
492
+ 'browser=%s',
493
+ `${getBrowserName().toLowerCase()}/${getBrowserVersion().split('.')[0]}`
494
+ );
504
495
  }
505
496
  const osInfo = util.format('os=%s', `${getOSName()}/${getOSVersion().split('.')[0]}`);
506
497
 
@@ -508,12 +499,18 @@ class Metrics {
508
499
  userAgentOption = `(${browserInfo}`;
509
500
  }
510
501
  if (osInfo) {
511
- userAgentOption = userAgentOption ? `${userAgentOption}; ${clientInfo}; ${osInfo}` : `${clientInfo}; (${osInfo}`;
502
+ userAgentOption = userAgentOption
503
+ ? `${userAgentOption}; ${clientInfo}; ${osInfo}`
504
+ : `${clientInfo}; (${osInfo}`;
512
505
  }
513
506
  if (userAgentOption) {
514
507
  userAgentOption += ')';
515
508
 
516
- return util.format('webex-js-sdk/%s %s', `${process.env.NODE_ENV}-${this.webex.version}`, userAgentOption);
509
+ return util.format(
510
+ 'webex-js-sdk/%s %s',
511
+ `${process.env.NODE_ENV}-${this.webex.version}`,
512
+ userAgentOption
513
+ );
517
514
  }
518
515
 
519
516
  return util.format('webex-js-sdk/%s', `${process.env.NODE_ENV}-${this.webex.version}`);
@@ -538,7 +535,7 @@ class Metrics {
538
535
  this.webex.internal.metrics.submitClientMetrics(metricName, {
539
536
  type: this.webex.config.metrics.type,
540
537
  fields: metricFields,
541
- tags: metricTags
538
+ tags: metricTags,
542
539
  });
543
540
  }
544
541
  }
@@ -1,9 +1,18 @@
1
1
  /* eslint-disable require-jsdoc */
2
- import {MediaConnection as MC} from '@webex/internal-media-core';
2
+ import {
3
+ MediaRequest as WcmeMediaRequest,
4
+ Policy,
5
+ ActiveSpeakerInfo,
6
+ ReceiverSelectedInfo,
7
+ CodecInfo as WcmeCodecInfo,
8
+ H264Codec,
9
+ } from '@webex/internal-media-core';
10
+ import {cloneDeep, debounce, isEmpty} from 'lodash';
3
11
 
4
12
  import LoggerProxy from '../common/logs/logger-proxy';
5
13
 
6
- import {ReceiveSlot, ReceiveSlotId} from './receiveSlot';
14
+ import {ReceiveSlot, ReceiveSlotEvents} from './receiveSlot';
15
+ import {getMaxFs} from './remoteMedia';
7
16
 
8
17
  export interface ActiveSpeakerPolicyInfo {
9
18
  policy: 'active-speaker';
@@ -35,6 +44,7 @@ export interface MediaRequest {
35
44
  policyInfo: PolicyInfo;
36
45
  receiveSlots: Array<ReceiveSlot>;
37
46
  codecInfo?: CodecInfo;
47
+ preferredMaxFs?: number;
38
48
  }
39
49
 
40
50
  export type MediaRequestId = string;
@@ -47,77 +57,152 @@ const CODEC_DEFAULTS = {
47
57
  },
48
58
  };
49
59
 
50
- type SendMediaRequestsCallback = (mediaRequests: MC.MediaRequest[]) => void;
60
+ const DEBOUNCED_SOURCE_UPDATE_TIME = 1000;
61
+
62
+ type DegradationPreferences = {
63
+ maxMacroblocksLimit: number;
64
+ };
65
+
66
+ type SendMediaRequestsCallback = (mediaRequests: WcmeMediaRequest[]) => void;
51
67
 
52
68
  export class MediaRequestManager {
53
69
  private sendMediaRequestsCallback: SendMediaRequestsCallback;
54
70
 
55
- private counter;
71
+ private counter: number;
56
72
 
57
73
  private clientRequests: {[key: MediaRequestId]: MediaRequest};
58
74
 
59
- private slotsActiveInLastMediaRequest: {[key: ReceiveSlotId]: ReceiveSlot};
75
+ private degradationPreferences: DegradationPreferences;
76
+
77
+ private sourceUpdateListener: () => void;
78
+
79
+ private debouncedSourceUpdateListener: () => void;
80
+
81
+ private previousWCMEMediaRequests: Array<WcmeMediaRequest> = [];
60
82
 
61
- constructor(sendMediaRequestsCallback: SendMediaRequestsCallback) {
83
+ constructor(
84
+ degradationPreferences: DegradationPreferences,
85
+ sendMediaRequestsCallback: SendMediaRequestsCallback
86
+ ) {
62
87
  this.sendMediaRequestsCallback = sendMediaRequestsCallback;
63
88
  this.counter = 0;
64
89
  this.clientRequests = {};
65
- this.slotsActiveInLastMediaRequest = {};
90
+ this.degradationPreferences = degradationPreferences;
91
+ this.sourceUpdateListener = this.commit.bind(this);
92
+ this.debouncedSourceUpdateListener = debounce(
93
+ this.sourceUpdateListener,
94
+ DEBOUNCED_SOURCE_UPDATE_TIME
95
+ );
66
96
  }
67
97
 
68
- private resetInactiveReceiveSlots() {
69
- const activeSlots: {[key: ReceiveSlotId]: ReceiveSlot} = {};
70
-
71
- // create a map of all currently used slot ids
72
- Object.values(this.clientRequests).forEach((request) =>
73
- request.receiveSlots.forEach((slot) => {
74
- activeSlots[slot.id] = slot;
75
- })
76
- );
98
+ public setDegradationPreferences(degradationPreferences: DegradationPreferences) {
99
+ this.degradationPreferences = degradationPreferences;
100
+ this.sendRequests(); // re-send requests after preferences are set
101
+ }
77
102
 
78
- // when we stop using some receive slots and they are not included in the new media request,
79
- // we will never get a 'no source' notification for them, so we reset their state,
80
- // so that the client doesn't try to display their video anymore
81
- for (const [slotId, slot] of Object.entries(this.slotsActiveInLastMediaRequest)) {
82
- if (!(slotId in activeSlots)) {
83
- LoggerProxy.logger.info(
84
- `multistream:mediaRequestManager --> resetting sourceState to "no source" for slot ${slot.id}`
103
+ private getDegradedClientRequests() {
104
+ const clientRequests = cloneDeep(this.clientRequests);
105
+ const maxFsLimits = [
106
+ getMaxFs('best'),
107
+ getMaxFs('large'),
108
+ getMaxFs('medium'),
109
+ getMaxFs('small'),
110
+ getMaxFs('very small'),
111
+ getMaxFs('thumbnail'),
112
+ ];
113
+
114
+ // reduce max-fs until total macroblocks is below limit
115
+ for (let i = 0; i < maxFsLimits.length; i += 1) {
116
+ let totalMacroblocksRequested = 0;
117
+ Object.entries(clientRequests).forEach(([id, mr]) => {
118
+ if (mr.codecInfo) {
119
+ mr.codecInfo.maxFs = Math.min(
120
+ mr.preferredMaxFs || CODEC_DEFAULTS.h264.maxFs,
121
+ mr.codecInfo.maxFs || CODEC_DEFAULTS.h264.maxFs,
122
+ maxFsLimits[i]
123
+ );
124
+ // we only consider sources with "live" state
125
+ const slotsWithLiveSource = this.clientRequests[id].receiveSlots.filter(
126
+ (rs) => rs.sourceState === 'live'
127
+ );
128
+ totalMacroblocksRequested += mr.codecInfo.maxFs * slotsWithLiveSource.length;
129
+ }
130
+ });
131
+ if (totalMacroblocksRequested <= this.degradationPreferences.maxMacroblocksLimit) {
132
+ if (i !== 0) {
133
+ LoggerProxy.logger.warn(
134
+ `multistream:mediaRequestManager --> too many streams with high max-fs, frame size will be limited to ${maxFsLimits[i]}`
135
+ );
136
+ }
137
+ break;
138
+ } else if (i === maxFsLimits.length - 1) {
139
+ LoggerProxy.logger.warn(
140
+ `multistream:mediaRequestManager --> even with frame size limited to ${maxFsLimits[i]} you are still requesting too many streams, consider reducing the number of requests`
85
141
  );
86
- slot.resetSourceState();
87
142
  }
88
143
  }
89
144
 
90
- this.slotsActiveInLastMediaRequest = activeSlots;
145
+ return clientRequests;
146
+ }
147
+
148
+ /**
149
+ * Returns true if two media requests are the same, false otherwise.
150
+ *
151
+ * @param {WcmeMediaRequest} mediaRequestA - Media request A for comparison.
152
+ * @param {WcmeMediaRequest} mediaRequestB - Media request B for comparison.
153
+ * @returns {boolean} - Whether they are equal.
154
+ */
155
+ // eslint-disable-next-line class-methods-use-this
156
+ public isEqual(mediaRequestA: WcmeMediaRequest, mediaRequestB: WcmeMediaRequest) {
157
+ return (
158
+ JSON.stringify(mediaRequestA._toJmpScrRequest()) ===
159
+ JSON.stringify(mediaRequestB._toJmpScrRequest())
160
+ );
161
+ }
162
+
163
+ /**
164
+ * Compares new media requests to previous ones and determines
165
+ * if they are the same.
166
+ *
167
+ * @param {WcmeMediaRequest[]} newRequests - Array with new requests.
168
+ * @returns {boolean} - True if they are equal, false otherwise.
169
+ */
170
+ private checkIsNewRequestsEqualToPrev(newRequests: WcmeMediaRequest[]) {
171
+ return (
172
+ !isEmpty(this.previousWCMEMediaRequests) &&
173
+ this.previousWCMEMediaRequests.length === newRequests.length &&
174
+ this.previousWCMEMediaRequests.every((req, idx) => this.isEqual(req, newRequests[idx]))
175
+ );
91
176
  }
92
177
 
93
178
  private sendRequests() {
94
- const wcmeMediaRequests: MC.MediaRequest[] = [];
179
+ const wcmeMediaRequests: WcmeMediaRequest[] = [];
95
180
 
96
- // todo: check how many streams we're asking for and what resolution and introduce some limits (spark-377701)
181
+ const clientRequests = this.getDegradedClientRequests();
97
182
  const maxPayloadBitsPerSecond = 10 * 1000 * 1000;
98
183
 
99
184
  // map all the client media requests to wcme media requests
100
- Object.values(this.clientRequests).forEach((mr) => {
185
+ Object.values(clientRequests).forEach((mr) => {
101
186
  wcmeMediaRequests.push(
102
- new MC.MediaRequest(
187
+ new WcmeMediaRequest(
103
188
  mr.policyInfo.policy === 'active-speaker'
104
- ? MC.Policy.ActiveSpeaker
105
- : MC.Policy.ReceiverSelected,
189
+ ? Policy.ActiveSpeaker
190
+ : Policy.ReceiverSelected,
106
191
  mr.policyInfo.policy === 'active-speaker'
107
- ? new MC.ActiveSpeakerInfo(
192
+ ? new ActiveSpeakerInfo(
108
193
  mr.policyInfo.priority,
109
194
  mr.policyInfo.crossPriorityDuplication,
110
195
  mr.policyInfo.crossPolicyDuplication,
111
196
  mr.policyInfo.preferLiveVideo
112
197
  )
113
- : new MC.ReceiverSelectedInfo(mr.policyInfo.csi),
198
+ : new ReceiverSelectedInfo(mr.policyInfo.csi),
114
199
  mr.receiveSlots.map((receiveSlot) => receiveSlot.wcmeReceiveSlot),
115
200
  maxPayloadBitsPerSecond,
116
201
  mr.codecInfo && [
117
- new MC.CodecInfo(
202
+ new WcmeCodecInfo(
118
203
  0x80,
119
- new MC.H264Codec(
120
- mr.codecInfo.maxFs || CODEC_DEFAULTS.h264.maxFs,
204
+ new H264Codec(
205
+ mr.codecInfo.maxFs,
121
206
  mr.codecInfo.maxFps || CODEC_DEFAULTS.h264.maxFps,
122
207
  mr.codecInfo.maxMbps || CODEC_DEFAULTS.h264.maxMbps,
123
208
  mr.codecInfo.maxWidth,
@@ -129,9 +214,17 @@ export class MediaRequestManager {
129
214
  );
130
215
  });
131
216
 
132
- this.sendMediaRequestsCallback(wcmeMediaRequests);
133
-
134
- this.resetInactiveReceiveSlots();
217
+ //! IMPORTANT: this is only a temporary fix. This will soon be done in the jmp layer (@webex/jmp-multistream)
218
+ // https://jira-eng-gpk2.cisco.com/jira/browse/WEBEX-326713
219
+ if (!this.checkIsNewRequestsEqualToPrev(wcmeMediaRequests)) {
220
+ this.sendMediaRequestsCallback(wcmeMediaRequests);
221
+ this.previousWCMEMediaRequests = wcmeMediaRequests;
222
+ LoggerProxy.logger.info(`multistream:sendRequests --> media requests sent. `);
223
+ } else {
224
+ LoggerProxy.logger.info(
225
+ `multistream:sendRequests --> detected duplicate WCME requests, skipping them... `
226
+ );
227
+ }
135
228
  }
136
229
 
137
230
  public addRequest(mediaRequest: MediaRequest, commit = true): MediaRequestId {
@@ -140,6 +233,14 @@ export class MediaRequestManager {
140
233
 
141
234
  this.clientRequests[newId] = mediaRequest;
142
235
 
236
+ mediaRequest.receiveSlots.forEach((rs) => {
237
+ rs.on(ReceiveSlotEvents.SourceUpdate, this.sourceUpdateListener);
238
+ rs.on(ReceiveSlotEvents.MaxFsUpdate, ({maxFs}) => {
239
+ mediaRequest.preferredMaxFs = maxFs;
240
+ this.debouncedSourceUpdateListener();
241
+ });
242
+ });
243
+
143
244
  if (commit) {
144
245
  this.commit();
145
246
  }
@@ -148,6 +249,10 @@ export class MediaRequestManager {
148
249
  }
149
250
 
150
251
  public cancelRequest(requestId: MediaRequestId, commit = true) {
252
+ this.clientRequests[requestId]?.receiveSlots.forEach((rs) => {
253
+ rs.off(ReceiveSlotEvents.SourceUpdate, this.sourceUpdateListener);
254
+ });
255
+
151
256
  delete this.clientRequests[requestId];
152
257
 
153
258
  if (commit) {
@@ -161,6 +266,5 @@ export class MediaRequestManager {
161
266
 
162
267
  public reset() {
163
268
  this.clientRequests = {};
164
- this.slotsActiveInLastMediaRequest = {};
165
269
  }
166
270
  }