@webex/plugin-meetings 3.0.0-stream-classes.1 → 3.0.0-stream-classes.2
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.
- package/dist/types/annotation/annotation.types.d.ts +0 -1
- package/dist/types/annotation/index.d.ts +0 -7
- package/dist/types/breakouts/events.d.ts +7 -1
- package/dist/types/common/queue.d.ts +9 -7
- package/dist/types/constants.d.ts +44 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/locus-info/index.d.ts +8 -1
- package/dist/types/locus-info/parser.d.ts +65 -6
- package/dist/types/media/index.d.ts +2 -2
- package/dist/types/media/properties.d.ts +27 -20
- package/dist/types/meeting/in-meeting-actions.d.ts +14 -0
- package/dist/types/meeting/index.d.ts +181 -186
- package/dist/types/meeting/locusMediaRequest.d.ts +5 -0
- package/dist/types/meeting/muteState.d.ts +16 -16
- package/dist/types/meeting/request.d.ts +36 -17
- package/dist/types/meeting/util.d.ts +22 -3
- package/dist/types/meeting-info/index.d.ts +6 -1
- package/dist/types/meetings/index.d.ts +8 -11
- package/dist/types/member/index.d.ts +2 -1
- package/dist/types/member/types.d.ts +11 -0
- package/dist/types/metrics/index.d.ts +4 -128
- package/dist/types/multistream/sendSlotManager.d.ts +61 -0
- package/dist/types/reachability/index.d.ts +6 -0
- package/dist/types/reachability/request.d.ts +3 -1
- package/dist/types/reconnection-manager/index.d.ts +2 -2
- package/dist/types/recording-controller/index.d.ts +15 -1
- package/dist/types/recording-controller/util.d.ts +5 -4
- package/dist/types/roap/request.d.ts +2 -0
- package/dist/types/rtcMetrics/constants.d.ts +4 -0
- package/dist/types/rtcMetrics/index.d.ts +47 -0
- package/package.json +1 -1
- package/dist/common/browser-detection.d.ts +0 -9
- package/dist/common/collection.d.ts +0 -48
- package/dist/common/config.d.ts +0 -2
- package/dist/common/errors/captcha-error.d.ts +0 -15
- package/dist/common/errors/intent-to-join.d.ts +0 -16
- package/dist/common/errors/join-meeting.d.ts +0 -17
- package/dist/common/errors/media.d.ts +0 -15
- package/dist/common/errors/parameter.d.ts +0 -15
- package/dist/common/errors/password-error.d.ts +0 -15
- package/dist/common/errors/permission.d.ts +0 -14
- package/dist/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/common/errors/reconnection.d.ts +0 -15
- package/dist/common/errors/stats.d.ts +0 -15
- package/dist/common/errors/webex-errors.d.ts +0 -81
- package/dist/common/errors/webex-meetings-error.d.ts +0 -20
- package/dist/common/events/events-scope.d.ts +0 -17
- package/dist/common/events/events.d.ts +0 -12
- package/dist/common/events/trigger-proxy.d.ts +0 -2
- package/dist/common/events/util.d.ts +0 -2
- package/dist/common/logs/logger-config.d.ts +0 -2
- package/dist/common/logs/logger-proxy.d.ts +0 -2
- package/dist/common/logs/request.d.ts +0 -34
- package/dist/common/queue.d.ts +0 -32
- package/dist/config.d.ts +0 -73
- package/dist/constants.d.ts +0 -924
- package/dist/controls-options-manager/constants.d.ts +0 -4
- package/dist/controls-options-manager/enums.d.ts +0 -5
- package/dist/controls-options-manager/index.d.ts +0 -120
- package/dist/controls-options-manager/util.d.ts +0 -7
- package/dist/docs/markdown/index.md +0 -12
- package/dist/docs/markdown/plugin-meetings.constants._active_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._answer_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._call_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._conflict_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._conversation_url_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._created_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._error_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._forced_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._id_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._idle_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._in_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._in_lobby_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._in_meeting_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._inactive_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._incoming_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._join_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._joined_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._left_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._locus_id_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._meeting_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._meeting_center_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._meeting_id_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._meeting_link_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._meeting_uuid_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._move_media_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._none_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._not_in_meeting_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._observe_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._people_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._personal_room_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._receive_only_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._remove_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._requested_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._resource_room_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._room_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._s_line.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._send_only_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._send_receive_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._sip_bridge_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._sip_uri_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._slides_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._unknown_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._user_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._wait_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants._webex_meeting_.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.alert.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.alternate_redirect_true.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.answer.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.api.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.audio.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.audio_input.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.audio_status.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.available_resolutions.md +0 -60
- package/dist/docs/markdown/plugin-meetings.constants.bnr_status.md +0 -16
- package/dist/docs/markdown/plugin-meetings.constants.breakouts.md +0 -51
- package/dist/docs/markdown/plugin-meetings.constants.calendar.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.calendar_events.md +0 -17
- package/dist/docs/markdown/plugin-meetings.constants.calendar_events_api.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.call.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.call_removed_reason.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.claim.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.cmr_meetings.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.complete.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.connection_state.md +0 -18
- package/dist/docs/markdown/plugin-meetings.constants.content.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.controls.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.conversation_service.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.conversation_url.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.correlation_id.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.decline.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.default_excluded_stats.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.default_get_stats_filter.md +0 -13
- package/dist/docs/markdown/plugin-meetings.constants.development.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.dialer_regex.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.display_hints.md +0 -51
- package/dist/docs/markdown/plugin-meetings.constants.embedded_app_types.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.end.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.ended.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.error.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.error_dictionary.md +0 -62
- package/dist/docs/markdown/plugin-meetings.constants.event_triggers.md +0 -82
- package/dist/docs/markdown/plugin-meetings.constants.event_types.md +0 -21
- package/dist/docs/markdown/plugin-meetings.constants.events.md +0 -26
- package/dist/docs/markdown/plugin-meetings.constants.floor_action.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.full_state.md +0 -17
- package/dist/docs/markdown/plugin-meetings.constants.gathering.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.hecate.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.host.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.http_verbs.md +0 -17
- package/dist/docs/markdown/plugin-meetings.constants.https_protocol.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.ice_fail_timeout.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.ice_gathering_state.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.ice_state.md +0 -18
- package/dist/docs/markdown/plugin-meetings.constants.ice_timeout.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.intent_to_join.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.ipv4_regex.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.join.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.layout_types.md +0 -13
- package/dist/docs/markdown/plugin-meetings.constants.leave.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.live.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.local.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.loci.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.locus.md +0 -26
- package/dist/docs/markdown/plugin-meetings.constants.locus_url.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.locusevent.md +0 -33
- package/dist/docs/markdown/plugin-meetings.constants.locusinfo.md +0 -43
- package/dist/docs/markdown/plugin-meetings.constants.max_random_delay_for_meeting_info.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.md +0 -186
- package/dist/docs/markdown/plugin-meetings.constants.media.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.media_devices.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.media_peer_connection_name.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.media_state.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.media_track_constraint.md +0 -17
- package/dist/docs/markdown/plugin-meetings.constants.mediacontent.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.meet.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.meet_m.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.meeting_audio_state_machine.md +0 -20
- package/dist/docs/markdown/plugin-meetings.constants.meeting_end_reason.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.meeting_errors.md +0 -102
- package/dist/docs/markdown/plugin-meetings.constants.meeting_info_failure_reason.md +0 -16
- package/dist/docs/markdown/plugin-meetings.constants.meeting_removed_reason.md +0 -19
- package/dist/docs/markdown/plugin-meetings.constants.meeting_state.md +0 -25
- package/dist/docs/markdown/plugin-meetings.constants.meeting_state_machine.md +0 -31
- package/dist/docs/markdown/plugin-meetings.constants.meeting_video_state_machine.md +0 -20
- package/dist/docs/markdown/plugin-meetings.constants.meetinginfo.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.meetings.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.metrics_join_times_max_duration.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.moderator_false.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.moderator_true.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.mqa_inteval.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.mqa_stats.md +0 -82
- package/dist/docs/markdown/plugin-meetings.constants.network_status.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.network_type.md +0 -16
- package/dist/docs/markdown/plugin-meetings.constants.offline.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.online.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.participant.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.participant_deltas.md +0 -22
- package/dist/docs/markdown/plugin-meetings.constants.password_status.md +0 -16
- package/dist/docs/markdown/plugin-meetings.constants.pc_bail_timeout.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.peer_connection_state.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.provisional_type_dial_in.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.provisional_type_dial_out.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.pstn_status.md +0 -18
- package/dist/docs/markdown/plugin-meetings.constants.quality_levels.md +0 -19
- package/dist/docs/markdown/plugin-meetings.constants.reachability.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.ready.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.reconnection.md +0 -19
- package/dist/docs/markdown/plugin-meetings.constants.recording_state.md +0 -16
- package/dist/docs/markdown/plugin-meetings.constants.remote.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.resource.md +0 -15
- package/dist/docs/markdown/plugin-meetings.constants.retry_timeout.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.roap.md +0 -22
- package/dist/docs/markdown/plugin-meetings.constants.self_roles.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.send_dtmf_endpoint.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.sendrecv.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.share.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.share_peer_connection_name.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.share_status.md +0 -16
- package/dist/docs/markdown/plugin-meetings.constants.share_stopped_reason.md +0 -14
- package/dist/docs/markdown/plugin-meetings.constants.sip_uri.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.stats.md +0 -16
- package/dist/docs/markdown/plugin-meetings.constants.type.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.use_uri_lookup_false.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.uuid_reg.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.valid_email_address.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.valid_pin.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.valid_pmr_address.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.valid_pmr_link.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.video.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.video_input.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.video_resolutions.md +0 -24
- package/dist/docs/markdown/plugin-meetings.constants.video_status.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.wbxappapi_service.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.webex_dot_com.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.whiteboard.md +0 -11
- package/dist/docs/markdown/plugin-meetings.constants.www_dot.md +0 -11
- package/dist/docs/markdown/plugin-meetings.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default._constructor_.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.acknowledge.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.addmedia.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.admit.md +0 -32
- package/dist/docs/markdown/plugin-meetings.meeting.default.attrs.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.audio.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.breakouts.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.callevents.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.cancelphoneinvite.md +0 -30
- package/dist/docs/markdown/plugin-meetings.meeting.default.canupdatemedia.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.changevideolayout.md +0 -38
- package/dist/docs/markdown/plugin-meetings.meeting.default.clearmeetingdata.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.closelocalshare.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.closelocalstream.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.closepeerconnections.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.closeremotestream.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.closeremotetracks.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.controlsoptionsmanager.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.conversationurl.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.correlationid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.createmediaconnection.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.decline.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.deferjoin.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.destination.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.destinationtype.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.deviceurl.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.dialindevicestatus.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.dialinurl.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.dialoutdevicestatus.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.dialouturl.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.disconnectphoneaudio.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.endcallinitiatejoinreq.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.endjoinreqresp.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.endlocalsdpgenremotesdprecvdelay.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.endmeetingforall.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.fetchmeetinginfo.md +0 -29
- package/dist/docs/markdown/plugin-meetings.meeting.default.fetchmeetinginfotimeoutid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.floorgrantpending.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.forwardevent.md +0 -29
- package/dist/docs/markdown/plugin-meetings.meeting.default.getanalyzermetricsprepayload.md +0 -32
- package/dist/docs/markdown/plugin-meetings.meeting.default.getcallinitiatejoinreq.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.getdevices.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.getjoinreqresp.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.getlocalsdpgenremotesdprecvdelay.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.getmediaconnectiondebugid.md +0 -15
- package/dist/docs/markdown/plugin-meetings.meeting.default.getmediastreams.md +0 -15
- package/dist/docs/markdown/plugin-meetings.meeting.default.getmembers.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.getsendingmediadelayduration.md +0 -24
- package/dist/docs/markdown/plugin-meetings.meeting.default.getsetupdelayduration.md +0 -24
- package/dist/docs/markdown/plugin-meetings.meeting.default.getsupporteddevices.md +0 -16
- package/dist/docs/markdown/plugin-meetings.meeting.default.gettotaljmt.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.guest.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.handledatachannelurlchange.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.handleroapfailure.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.hasjoinedonce.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.haswebsocketconnected.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.hostid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.id.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.inmeetingactions.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.invite.md +0 -33
- package/dist/docs/markdown/plugin-meetings.meeting.default.isaudioconnected.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.isaudiomuted.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.isaudioself.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.islocalsharelive.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.ismultistream.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.isreactionssupported.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.isroapinprogress.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.issharing.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.istranscriptionsupported.md +0 -23
- package/dist/docs/markdown/plugin-meetings.meeting.default.isvideoconnected.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.isvideomuted.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.isvideoself.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.join.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.joinedwith.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.joinwithmedia.md +0 -36
- package/dist/docs/markdown/plugin-meetings.meeting.default.keepalivetimerid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.lastvideolayoutinfo.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.leave.md +0 -31
- package/dist/docs/markdown/plugin-meetings.meeting.default.lockmeeting.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.locusid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.locusinfo.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.locusurl.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.md +0 -227
- package/dist/docs/markdown/plugin-meetings.meeting.default.mediaconnections.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.mediaid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.medianegotiatedevent.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.mediaproperties.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.mediarequestmanagers.md +0 -16
- package/dist/docs/markdown/plugin-meetings.meeting.default.meetingfinitestatemachine.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.meetinginfo.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.meetinginfofailurereason.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.meetingjoinurl.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.meetingnumber.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.meetingrequest.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.meetingstate.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.members.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.movefrom.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.moveto.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.mute.md +0 -29
- package/dist/docs/markdown/plugin-meetings.meeting.default.muteaudio.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.mutevideo.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.namespace.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.networkqualitymonitor.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.networkstatus.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.options.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.orgid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.owner.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.parsemeetinginfo.md +0 -34
- package/dist/docs/markdown/plugin-meetings.meeting.default.partner.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.passwordstatus.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.pauserecording.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.permissiontoken.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.policy.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.processnextqueuedmediaupdate.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.publishtracks.md +0 -33
- package/dist/docs/markdown/plugin-meetings.meeting.default.queuedmediaupdates.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.receiveslotmanager.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.reconnect.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.reconnectionmanager.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.recording.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.recordingcontroller.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.refreshcaptcha.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.remotemediamanager.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.remove.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.requiredcaptcha.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.resource.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.resourceid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.resourceurl.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.resumerecording.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.roap.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.roapseq.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.selfid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.senddtmf.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.sendreaction.md +0 -29
- package/dist/docs/markdown/plugin-meetings.meeting.default.setdisallowunmute.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.setendcallinitiatejoinreq.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.setendjoinreqresp.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.setendlocalsdpgenremotesdprecvdelay.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.setendsendingmediadelay.md +0 -24
- package/dist/docs/markdown/plugin-meetings.meeting.default.setendsetupdelay.md +0 -24
- package/dist/docs/markdown/plugin-meetings.meeting.default.setlocalsharetrack.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.setlocaltracks.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.setlocalvideoquality.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.setmeetingquality.md +0 -31
- package/dist/docs/markdown/plugin-meetings.meeting.default.setmercurylistener.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.setmuteall.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.setmuteonentry.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.setremotequalitylevel.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.setsipuri.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.setstartcallinitiatejoinreq.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.setstartjoinreqresp.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.setstartlocalsdpgenremotesdprecvdelay.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meeting.default.setstartsendingmediadelay.md +0 -24
- package/dist/docs/markdown/plugin-meetings.meeting.default.setstartsetupdelay.md +0 -24
- package/dist/docs/markdown/plugin-meetings.meeting.default.setupbreakoutslistener.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.setupmediaconnectionlisteners.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.setupstatsanalyzereventhandlers.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.sharescreen.md +0 -32
- package/dist/docs/markdown/plugin-meetings.meeting.default.sharestatus.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.sipuri.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.startcallinitiatejoinreq.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.startjoinreqresp.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.startkeepalive.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.startlocalsdpgenremotesdprecvdelay.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.startrecording.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.startwhiteboardshare.md +0 -29
- package/dist/docs/markdown/plugin-meetings.meeting.default.state.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.statsanalyzer.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.stopkeepalive.md +0 -13
- package/dist/docs/markdown/plugin-meetings.meeting.default.stopreceivingtranscription.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.stoprecording.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.stopshare.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.stopwhiteboardshare.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.togglereactions.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.transcription.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.transfer.md +0 -29
- package/dist/docs/markdown/plugin-meetings.meeting.default.type.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.unlockmeeting.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.unmuteaudio.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.unmutevideo.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.unpublishtracks.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.unsetlocalsharetrack.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.unsetlocalvideotrack.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.unsetpeerconnections.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meeting.default.unsetremotestream.md +0 -26
- package/dist/docs/markdown/plugin-meetings.meeting.default.unsetremotetracks.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.updateaudio.md +0 -34
- package/dist/docs/markdown/plugin-meetings.meeting.default.updatellmconnection.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meeting.default.updatemedia.md +0 -32
- package/dist/docs/markdown/plugin-meetings.meeting.default.updatemediaconnections.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.updateshare.md +0 -35
- package/dist/docs/markdown/plugin-meetings.meeting.default.updatevideo.md +0 -34
- package/dist/docs/markdown/plugin-meetings.meeting.default.uploadlogs.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.usephoneaudio.md +0 -28
- package/dist/docs/markdown/plugin-meetings.meeting.default.userid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.verifypassword.md +0 -35
- package/dist/docs/markdown/plugin-meetings.meeting.default.video.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.default.wirelessshare.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meeting.md +0 -18
- package/dist/docs/markdown/plugin-meetings.meeting.media_update_type.md +0 -17
- package/dist/docs/markdown/plugin-meetings.meetings._constructor_.md +0 -22
- package/dist/docs/markdown/plugin-meetings.meetings.create.md +0 -30
- package/dist/docs/markdown/plugin-meetings.meetings.fetchuserpreferredwebexsite.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meetings.geohintinfo.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.getallmeetings.md +0 -31
- package/dist/docs/markdown/plugin-meetings.meetings.getgeohint.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meetings.getlogger.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meetings.getmeetingbytype.md +0 -29
- package/dist/docs/markdown/plugin-meetings.meetings.getpersonalmeetingroom.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meetings.getreachability.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meetings.getscheduledmeetings.md +0 -19
- package/dist/docs/markdown/plugin-meetings.meetings.loggerrequest.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.md +0 -57
- package/dist/docs/markdown/plugin-meetings.meetings.media.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.meetingcollection.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.meetinginfo.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.namespace.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.personalmeetingroom.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.preferredwebexsite.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.reachability.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.register.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meetings.registered.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.request.md +0 -11
- package/dist/docs/markdown/plugin-meetings.meetings.setreachability.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meetings.startreachability.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meetings.syncmeetings.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meetings.unregister.md +0 -21
- package/dist/docs/markdown/plugin-meetings.meetings.uploadlogs.md +0 -34
- package/dist/docs/markdown/plugin-meetings.reactions.md +0 -13
- package/dist/docs/markdown/plugin-meetings.reactions.reactions.md +0 -11
- package/dist/docs/markdown/plugin-meetings.reactions.skintones.md +0 -11
- package/dist/docs/markdown/plugin-meetings.remotemedia.getmaxfs.md +0 -26
- package/dist/docs/markdown/plugin-meetings.remotemedia.md +0 -31
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia._constructor_.md +0 -22
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.csi.md +0 -13
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.id.md +0 -11
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.md +0 -40
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.mediatype.md +0 -13
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.memberid.md +0 -13
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.setsizehint.md +0 -25
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.sourcestate.md +0 -13
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemedia.stream.md +0 -13
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemediaevents.md +0 -14
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotemediaid.md +0 -11
- package/dist/docs/markdown/plugin-meetings.remotemedia.remotevideoresolution.md +0 -11
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.md +0 -12
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup._constructor_.md +0 -24
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.getremotemedia.md +0 -26
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.includes.md +0 -27
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.ispinned.md +0 -22
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.md +0 -28
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.pin.md +0 -25
- package/dist/docs/markdown/plugin-meetings.remotemediagroup.remotemediagroup.unpin.md +0 -24
- package/dist/docs/markdown/plugin-meetings.triggerproxy.md +0 -11
- package/dist/docs/metadata/index.api.json +0 -14144
- package/dist/docs/metadata/index.api.md +0 -2075
- package/dist/docs/metadata/index.d.ts +0 -5594
- package/dist/index.d.ts +0 -4
- package/dist/locus-info/controlsUtils.d.ts +0 -2
- package/dist/locus-info/embeddedAppsUtils.d.ts +0 -2
- package/dist/locus-info/fullState.d.ts +0 -2
- package/dist/locus-info/hostUtils.d.ts +0 -2
- package/dist/locus-info/index.d.ts +0 -269
- package/dist/locus-info/infoUtils.d.ts +0 -2
- package/dist/locus-info/mediaSharesUtils.d.ts +0 -2
- package/dist/locus-info/parser.d.ts +0 -212
- package/dist/locus-info/selfUtils.d.ts +0 -2
- package/dist/media/index.d.ts +0 -32
- package/dist/media/properties.d.ts +0 -108
- package/dist/media/util.d.ts +0 -2
- package/dist/mediaQualityMetrics/config.d.ts +0 -233
- package/dist/meeting/effectsState.d.ts +0 -42
- package/dist/meeting/effectsState.js +0 -260
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/meeting/in-meeting-actions.d.ts +0 -79
- package/dist/meeting/index.d.ts +0 -1621
- package/dist/meeting/muteState.d.ts +0 -116
- package/dist/meeting/request.d.ts +0 -255
- package/dist/meeting/state.d.ts +0 -9
- package/dist/meeting/util.d.ts +0 -2
- package/dist/meeting-info/collection.d.ts +0 -20
- package/dist/meeting-info/index.d.ts +0 -57
- package/dist/meeting-info/meeting-info-v2.d.ts +0 -93
- package/dist/meeting-info/request.d.ts +0 -22
- package/dist/meeting-info/util.d.ts +0 -2
- package/dist/meeting-info/utilv2.d.ts +0 -2
- package/dist/meetings/collection.d.ts +0 -23
- package/dist/meetings/index.d.ts +0 -296
- package/dist/meetings/request.d.ts +0 -27
- package/dist/meetings/util.d.ts +0 -18
- package/dist/member/index.d.ts +0 -147
- package/dist/member/member.types.d.ts +0 -11
- package/dist/member/member.types.js +0 -18
- package/dist/member/member.types.js.map +0 -1
- package/dist/member/util.d.ts +0 -2
- package/dist/members/collection.d.ts +0 -24
- package/dist/members/index.d.ts +0 -298
- package/dist/members/request.d.ts +0 -50
- package/dist/members/util.d.ts +0 -2
- package/dist/metrics/config.d.ts +0 -169
- package/dist/metrics/config.js +0 -289
- package/dist/metrics/config.js.map +0 -1
- package/dist/metrics/constants.d.ts +0 -57
- package/dist/metrics/index.d.ts +0 -152
- package/dist/networkQualityMonitor/index.d.ts +0 -70
- package/dist/peer-connection-manager/index.d.ts +0 -6
- package/dist/peer-connection-manager/index.js +0 -671
- package/dist/peer-connection-manager/index.js.map +0 -1
- package/dist/peer-connection-manager/util.d.ts +0 -6
- package/dist/peer-connection-manager/util.js +0 -110
- package/dist/peer-connection-manager/util.js.map +0 -1
- package/dist/personal-meeting-room/index.d.ts +0 -47
- package/dist/personal-meeting-room/request.d.ts +0 -14
- package/dist/personal-meeting-room/util.d.ts +0 -2
- package/dist/plugin-meetings.d.ts +0 -5399
- package/dist/reachability/index.d.ts +0 -139
- package/dist/reachability/request.d.ts +0 -35
- package/dist/reactions/reactions.d.ts +0 -4
- package/dist/reactions/reactions.type.d.ts +0 -32
- package/dist/reconnection-manager/index.d.ts +0 -112
- package/dist/recording-controller/enums.d.ts +0 -7
- package/dist/recording-controller/index.d.ts +0 -193
- package/dist/recording-controller/util.d.ts +0 -13
- package/dist/roap/collection.d.ts +0 -10
- package/dist/roap/collection.js +0 -63
- package/dist/roap/collection.js.map +0 -1
- package/dist/roap/handler.d.ts +0 -47
- package/dist/roap/handler.js +0 -279
- package/dist/roap/handler.js.map +0 -1
- package/dist/roap/index.d.ts +0 -116
- package/dist/roap/request.d.ts +0 -35
- package/dist/roap/state.d.ts +0 -9
- package/dist/roap/state.js +0 -127
- package/dist/roap/state.js.map +0 -1
- package/dist/roap/turnDiscovery.d.ts +0 -67
- package/dist/roap/util.d.ts +0 -2
- package/dist/roap/util.js +0 -76
- package/dist/roap/util.js.map +0 -1
- package/dist/statsAnalyzer/global.d.ts +0 -126
- package/dist/statsAnalyzer/index.d.ts +0 -190
- package/dist/statsAnalyzer/mqaUtil.d.ts +0 -22
- package/dist/transcription/index.d.ts +0 -64
- package/dist/types/meeting/effectsState.d.ts +0 -42
- package/dist/types/metrics/config.d.ts +0 -195
- package/dist/types/tsdoc-metadata.json +0 -11
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_window","_interopRequireDefault","require","_sdpTransform","_metrics","_loggerProxy","_config","_constants","_constants2","_config2","_media","_parameter","_webexErrors","_browserDetection","_util","_createForOfIteratorHelper","o","allowArrayLike","it","_Symbol","_Symbol$iterator","_Array$isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","_Array$from","test","arr","len","arr2","Array","_BrowserDetection","BrowserDetection","isBrowser","pc","insertBandwidthLimit","sdpLines","index","limit","periodicKeyFrame","search","AUDIO","StaticConfig","meetings","bandwidth","audio","video","SDP","PERIODIC_KEYFRAME","splice","concat","B_LINE","setRemoteVideoConstraints","sdp","level","arguments","undefined","QUALITY_LEVELS","HIGH","maxFs","REMOTE_VIDEO_CONSTRAINTS","MAX_FS","ParameterError","modifiedSdp","PeerConnectionUtils","adjustH264Profile","setStartBitrateOnRemoteSdp","startBitrate","replace","checkH264Support","videoPresent","match","h264Present","isSdpInvalid","parsedSdp","sdpTransform","parse","_iterator","media","_step","_mediaLine$candidates","mediaLine","candidates","LoggerProxy","logger","error","BAD_MEDIA_PORTS","includes","port","icePwd","iceUfrag","limitBandwidth","offerSdp","split","CARRIAGE_RETURN","M_LINE","join","setContentSlides","screenPc","A_CONTENT_SLIDES","iceCandidate","peerConnection","_ref","remoteQualityLevel","_promise","default","resolve","reject","now","_now","doneGatheringIceCandidate","miliseconds","_parseInt2","Math","abs","localDescription","convertCLineToIpv4","invalidSdpPresent","InvalidSdpError","log","iceGatheringState","COMPLETE","onIceGatheringStateChange","GATHERING","onicecandidate","evt","candidate","_evt$candidate","_evt$candidate2","_evt$candidate3","_evt$candidate4","type","protocol","address","onicecandidateerror","event","replaceTrack","track","senders","getSenders","forEach","sender","kind","addStream","stream","tracksPresent","find","getTracks","addTrack","setRemoteSessionDetails","typeStr","remoteSdp","meetingId","signalingState","Metrics","postEvent","eventType","REMOTE_SDP_RECEIVED","data","canProceed","errors","generateErrorPayload","MEDIA_ENGINE","HAVE_LOCAL_OFFER","STABLE","OFFER","enableExtmap","setRemoteDescription","window","RTCSessionDescription","then","catch","metricName","BEHAVIORAL_METRICS","PEERCONNECTION_FAILURE","correlation_id","reason","message","stack","metadata","sendBehavioralMetric","MediaError","createOffer","_ref2","enableRtx","description","setLocalDescription","LOCAL_SDP_GENERATED","INVALID_ICE_CANDIDATE","code","close","rollBackLocalDescription","ROLLBACK","updatePeerConnection","params","_ref3","createAnswer","peerconnection","_ref4","HAVE_REMOTE_OFFER","sdpConstraints","answer","connectionState","PEER_CONNECTION_STATE","CLOSED","setPeerConnectionEvents","meeting","mediaProperties","connectionFailed","reconnectionManager","iceState","reconnect","networkDisconnect","ICE_END","uploadLogs","file","function","CONNECTION_FAILURE","correlationId","locus_id","locusId","oniceconnectionstatechange","info","iceConnectionState","ICE_STATE","CHECKING","ICE_START","COMPLETED","CONNECTED","CONNECTION_SUCCESS","setNetworkStatus","NETWORK_STATUS","iceReconnected","DISCONNECTED","waitForIceReconnect","FAILED","onconnectionstatechange","CONNECTION_STATE","NEW","CONNECTING","_default","exports"],"sources":["index.ts"],"sourcesContent":["// We need to figure out how to pass a webex logger instance to these util files\n\n/* globals RTCSessionDescription */\n\nimport window from 'global/window';\nimport sdpTransform from 'sdp-transform'; // https://github.com/clux/sdp-transform\n\nimport Metrics from '../metrics';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport StaticConfig from '../common/config';\nimport {\n COMPLETE,\n GATHERING,\n AUDIO,\n SDP,\n ICE_STATE,\n CONNECTION_STATE,\n NETWORK_STATUS,\n PEER_CONNECTION_STATE,\n OFFER,\n QUALITY_LEVELS,\n REMOTE_VIDEO_CONSTRAINTS,\n} from '../constants';\nimport BEHAVIORAL_METRICS from '../metrics/constants';\nimport {error, eventType} from '../metrics/config';\nimport MediaError from '../common/errors/media';\nimport ParameterError from '../common/errors/parameter';\nimport {InvalidSdpError} from '../common/errors/webex-errors';\nimport BrowserDetection from '../common/browser-detection';\n\nimport PeerConnectionUtils from './util';\n\nconst {isBrowser} = BrowserDetection();\n\n/**\n * @export\n * @public\n */\nconst pc: any = {};\n\n/**\n * munges the bandwidth limit into the sdp\n * @param {String} sdpLines\n * @param {Number} index\n * @returns {String}\n */\nconst insertBandwidthLimit = (sdpLines: any, index: number) => {\n // eslint-disable-next-line no-warning-comments\n // TODO convert to sdp parser\n let limit;\n let periodicKeyFrame = '';\n\n if (sdpLines[index].search(AUDIO) !== -1) {\n limit = StaticConfig.meetings.bandwidth.audio;\n } else {\n limit = StaticConfig.meetings.bandwidth.video;\n periodicKeyFrame = SDP.PERIODIC_KEYFRAME;\n sdpLines.splice(index + 2, 0, periodicKeyFrame);\n }\n sdpLines.splice(index + 1, 0, `${SDP.B_LINE}:${limit}`);\n\n return sdpLines;\n};\n\n/**\n * needed for calliope max-fs\n * @param {String} sdp\n * @param {String} [level=QUALITY_LEVELS.HIGH] quality level for max-fs\n * @returns {String}\n */\nconst setRemoteVideoConstraints = (sdp: string, level: string = QUALITY_LEVELS.HIGH) => {\n const maxFs = REMOTE_VIDEO_CONSTRAINTS.MAX_FS[level];\n\n if (!maxFs) {\n throw new ParameterError(\n `setRemoteVideoConstraints: unable to set max framesize, value for level \"${level}\" is not defined`\n );\n }\n\n const modifiedSdp = PeerConnectionUtils.adjustH264Profile(sdp, maxFs);\n\n return modifiedSdp;\n};\n\nconst setStartBitrateOnRemoteSdp = (sdp) => {\n if (StaticConfig.meetings.bandwidth.startBitrate) {\n sdp = sdp.replace(\n /(\\na=fmtp:(\\d+).*profile-level-id=.*)/gi,\n `$1;x-google-start-bitrate=${StaticConfig.meetings.bandwidth.startBitrate}`\n );\n }\n\n return sdp;\n};\n\n/**\n * checks that sdp has h264 codec in it\n * @param {String} sdp\n * @returns {boolean}\n */\nconst checkH264Support = (sdp: string) => {\n // eslint-disable-next-line no-warning-comments\n // TODO convert to sdp parser to read rtp.codec\n const videoPresent = sdp.match(/\\nm=video.*/g);\n const h264Present = sdp.match(/\\na=rtpmap:\\d+\\sH264.*/g);\n\n if (videoPresent) {\n return !!h264Present;\n }\n\n return true;\n};\n\n/**\n * validates the sdp, checks port, candidates, and ice info\n * @param {String} sdp\n * @returns {String}\n */\nconst isSdpInvalid = (sdp: string) => {\n const parsedSdp = sdpTransform.parse(sdp);\n\n for (const mediaLine of parsedSdp.media) {\n if (!mediaLine.candidates || mediaLine.candidates?.length === 0) {\n LoggerProxy.logger.error(\n 'PeerConnectionManager:index#isSdpInvalid --> iceCandidate: Ice candidate never completed'\n );\n\n return 'iceCandidate: Ice gathering never completed';\n }\n\n if (SDP.BAD_MEDIA_PORTS.includes(mediaLine.port)) {\n LoggerProxy.logger.error(\n 'PeerConnectionManager:index#isSdpInvalid --> iceCandidate: Found invalid port number for the ice candidate'\n );\n\n return 'iceCandidate: Found invalid port number for the ice candidate';\n }\n if (!mediaLine.icePwd || !mediaLine.iceUfrag) {\n LoggerProxy.logger.error(\n 'PeerConnectionManager:index#isSdpInvalid --> iceCandidate: ice ufrag and password not found'\n );\n\n return 'iceCandidate: ice ufrag and password not found';\n }\n }\n\n return '';\n};\n\n/**\n * munges the bandwidth into the sdp\n * @param {String} sdp\n * @returns {String}\n */\nconst limitBandwidth = (sdp: string) => {\n // TODO convert to sdp parser\n let offerSdp = sdp;\n let sdpLines = offerSdp.split(SDP.CARRIAGE_RETURN);\n\n for (let i = 0; i < sdpLines.length; i += 1) {\n if (sdpLines[i].search(SDP.M_LINE) !== -1) {\n sdpLines = insertBandwidthLimit(sdpLines, i);\n }\n }\n offerSdp = sdpLines.join(SDP.CARRIAGE_RETURN);\n\n return offerSdp;\n};\n\n/**\n * makes sure the screen pc sdp has content:slides for server\n * @param {RTCPeerConnection} screenPc\n * @returns {RTCPeerConnection}\n */\npc.setContentSlides = (screenPc: any) => {\n if (screenPc && screenPc.sdp) {\n screenPc.sdp += `${SDP.A_CONTENT_SLIDES}${SDP.CARRIAGE_RETURN}`;\n }\n\n return screenPc;\n};\n\n/**\n * handles ice trickling and establishes ICE connection onto peer connection object\n * @param {Object} peerConnection\n * @param {Object} options\n * @param {String} options.remoteQualityLevel\n * @returns {Promise.RTCPeerConnection}\n */\npc.iceCandidate = (\n peerConnection: any,\n {\n remoteQualityLevel,\n }: {\n remoteQualityLevel: string;\n }\n) =>\n new Promise<void>((resolve, reject) => {\n const now = Date.now();\n const doneGatheringIceCandidate = () => {\n // @ts-ignore\n const miliseconds = parseInt(Math.abs(Date.now() - now), 4);\n\n peerConnection.sdp = limitBandwidth(peerConnection.localDescription.sdp);\n peerConnection.sdp = PeerConnectionUtils.convertCLineToIpv4(peerConnection.sdp);\n peerConnection.sdp = setRemoteVideoConstraints(peerConnection.sdp, remoteQualityLevel);\n\n const invalidSdpPresent = isSdpInvalid(peerConnection.sdp);\n\n if (invalidSdpPresent) {\n LoggerProxy.logger.error(\n 'PeerConnectionManager:index#iceCandidate --> SDP not valid after waiting.'\n );\n reject(new InvalidSdpError(invalidSdpPresent));\n }\n LoggerProxy.logger.log(\n `PeerConnectionManager:index#iceCandidate --> Time to gather ice candidate ${miliseconds} miliseconds`\n );\n\n resolve();\n };\n\n // If ice has already been gathered\n if (peerConnection.iceGatheringState === COMPLETE) {\n doneGatheringIceCandidate();\n }\n\n peerConnection.onIceGatheringStateChange = () => {\n if (peerConnection.iceGatheringState === COMPLETE) {\n // @ts-ignore\n doneGatheringIceCandidate(peerConnection);\n }\n if (peerConnection.iceGatheringState === GATHERING) {\n LoggerProxy.logger.log(\n 'PeerConnectionManager:index#onIceGatheringStateChange --> Ice state changed to gathering'\n );\n }\n };\n\n peerConnection.onicecandidate = (evt) => {\n if (evt.candidate === null) {\n // @ts-ignore\n doneGatheringIceCandidate(peerConnection);\n } else {\n LoggerProxy.logger.log(\n `PeerConnectionManager:index#onicecandidate --> Candidate ${evt.candidate?.type} ${evt.candidate?.protocol} ${evt.candidate?.address}:${evt.candidate?.port}`\n );\n }\n };\n\n peerConnection.onicecandidateerror = (event) => {\n // we can often get ICE candidate errors (for example when failing to communicate with a TURN server)\n // they don't mean that the whole ICE connection will fail, so it's OK to ignore them\n LoggerProxy.logger.error(\n 'PeerConnectionManager:index#onicecandidateerror --> ignoring ice error:',\n event\n );\n };\n });\n\n/**\n * swapping tracks\n * @param {Object} peerConnection\n * @param {Object} track\n * @returns {undefined}\n */\npc.replaceTrack = (peerConnection: any, track: any) => {\n try {\n const senders = peerConnection.getSenders();\n\n if (senders.length > 0) {\n senders.forEach((sender) => {\n if (sender.track && sender.track.kind === track.kind) {\n sender.replaceTrack(track);\n }\n });\n }\n } catch (err) {\n LoggerProxy.logger.error(\n `PeerConnectionManager:index#replaceTrack --> Error replacing track, ${err}`\n );\n }\n};\n\n/**\n * adding streams to peerConnection\n * @param {Object} peerConnection\n * @param {Object} stream\n * @returns {undefined}\n */\npc.addStream = (peerConnection: any, stream: any) => {\n try {\n if (stream && !isBrowser('edge')) {\n const tracksPresent =\n peerConnection.getSenders &&\n peerConnection.getSenders().find((sender) => sender.track != null);\n\n if (tracksPresent) {\n stream.getTracks().forEach((track) => {\n pc.replaceTrack(peerConnection, track);\n });\n\n return;\n }\n stream.getTracks().forEach((track) => {\n peerConnection.addTrack(track, stream);\n });\n // // TODO : may come back disable addTracks for chrome they are moving back to addStream\n // // https://bugs.chromium.org/p/chromium/issues/detail?id=764414\n // // https://bugs.chromium.org/p/chromium/issues/detail?id=738918#c7\n // peerConnection.addStream(stream);\n } else if (isBrowser('edge')) {\n peerConnection.addStream(stream);\n }\n } catch (err) {\n LoggerProxy.logger.error(\n `PeerConnectionManager:index#addStream --> Error adding stream, error: ${error}`\n );\n }\n};\n\n/**\n * setting the remote description\n * @param {Object} peerConnection\n * @param {String} typeStr\n * @param {String} remoteSdp\n * @param {String} meetingId\n * @returns {undefined}\n */\npc.setRemoteSessionDetails = (\n peerConnection: any,\n typeStr: string,\n remoteSdp: string,\n meetingId: string\n) => {\n LoggerProxy.logger.log(\n `PeerConnectionManager:index#setRemoteSessionDetails --> Setting the remote description type: ${typeStr}State: ${peerConnection.signalingState}`\n );\n let sdp = remoteSdp;\n\n // making sure that the remoteDescription is only set when there is a answer for offer\n // or there is a offer from the server\n\n if (!sdp) {\n Metrics.postEvent({\n event: eventType.REMOTE_SDP_RECEIVED,\n meetingId,\n data: {\n canProceed: false,\n errors: [\n Metrics.generateErrorPayload(2001, true, error.name.MEDIA_ENGINE, 'missing remoteSdp'),\n ],\n },\n });\n }\n if (\n peerConnection.signalingState === SDP.HAVE_LOCAL_OFFER ||\n (peerConnection.signalingState === SDP.STABLE && typeStr === SDP.OFFER)\n ) {\n sdp = setStartBitrateOnRemoteSdp(sdp);\n\n if (!peerConnection.enableExtmap) {\n sdp = sdp.replace(/\\na=extmap.*/g, '');\n }\n\n // remove any xtls candidates\n sdp = sdp.replace(/^a=candidate:.*xTLS.*\\r\\n/gim, '');\n\n return (\n peerConnection\n .setRemoteDescription(\n new window.RTCSessionDescription({\n type: typeStr,\n sdp,\n })\n )\n .then(() => {\n if (peerConnection.signalingState === SDP.STABLE) {\n Metrics.postEvent({\n event: eventType.REMOTE_SDP_RECEIVED,\n meetingId,\n });\n }\n })\n // eslint-disable-next-line @typescript-eslint/no-shadow\n .catch((error) => {\n LoggerProxy.logger.error(\n `Peer-connection-manager:index#setRemoteDescription --> ${error} missing remotesdp`\n );\n\n const metricName = BEHAVIORAL_METRICS.PEERCONNECTION_FAILURE;\n const data = {\n correlation_id: meetingId,\n reason: error.message,\n stack: error.stack,\n };\n const metadata = {\n type: error.name,\n };\n\n Metrics.sendBehavioralMetric(metricName, data, metadata);\n\n return Metrics.postEvent({\n event: eventType.REMOTE_SDP_RECEIVED,\n meetingId,\n data: {\n canProceed: false,\n errors: [\n Metrics.generateErrorPayload(\n 2001,\n true,\n error.name.MEDIA_ENGINE,\n 'missing remoteSdp'\n ),\n ],\n },\n });\n })\n );\n }\n\n return Promise.reject(new MediaError('PeerConnection in wrong state'));\n};\n\n/**\n * Create offer with a valid parameter\n * @param {Object} peerConnection\n * @param {Object} meetingProperties\n * @param {string} meetingProperties.meetingId\n * @param {string} meetingProperties.remoteQualityLevel LOW|MEDIUM|HIGH\n * @param {string} meetingProperties.enableRtx\n * @param {string} meetingProperties.enableExtmap\n * @returns {RTCPeerConnection}\n */\npc.createOffer = (\n peerConnection: any,\n {\n meetingId,\n remoteQualityLevel,\n enableRtx,\n enableExtmap,\n }: {\n meetingId: string;\n remoteQualityLevel: string;\n enableRtx: string;\n enableExtmap: string;\n }\n) => {\n LoggerProxy.logger.log('PeerConnectionManager:index#createOffer --> creating a new offer');\n\n // saving the extMap State to use in setRemoteDescription\n\n peerConnection.enableExtmap = enableExtmap;\n\n return (\n peerConnection\n .createOffer()\n .then((description) => {\n // bug https://bugs.chromium.org/p/chromium/issues/detail?id=1020642\n // chrome currently generates RTX line irrespective of whether the server side supports it\n // we are removing apt as well because its associated with rtx line\n\n if (!enableRtx) {\n description.sdp = description.sdp.replace(/\\r\\na=rtpmap:\\d+ rtx\\/\\d+/g, '');\n description.sdp = description.sdp.replace(/\\r\\na=fmtp:\\d+ apt=\\d+/g, '');\n }\n\n return peerConnection.setLocalDescription(description);\n })\n .then(() => pc.iceCandidate(peerConnection, {remoteQualityLevel}))\n .then(() => {\n if (!checkH264Support(peerConnection.sdp)) {\n throw new MediaError(\n 'openH264 is downloading please Wait. Upload logs if not working on second try'\n );\n }\n\n if (!enableExtmap) {\n peerConnection.sdp = peerConnection.sdp.replace(/\\na=extmap.*/g, '');\n }\n\n pc.setContentSlides(peerConnection);\n\n Metrics.postEvent({\n event: eventType.LOCAL_SDP_GENERATED,\n meetingId,\n });\n\n return peerConnection;\n })\n // eslint-disable-next-line @typescript-eslint/no-shadow\n .catch((error) => {\n LoggerProxy.logger.error(`Peer-connection-manager:index#createOffer --> ${error}`);\n if (error instanceof InvalidSdpError) {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.INVALID_ICE_CANDIDATE, {\n correlation_id: meetingId,\n code: error.code,\n reason: error.message,\n });\n } else {\n const metricName = BEHAVIORAL_METRICS.PEERCONNECTION_FAILURE;\n const data = {\n correlation_id: meetingId,\n reason: error.message,\n stack: error.stack,\n };\n const metadata = {\n type: error.name,\n };\n\n Metrics.sendBehavioralMetric(metricName, data, metadata);\n }\n\n Metrics.postEvent({\n event: eventType.LOCAL_SDP_GENERATED,\n meetingId,\n data: {\n canProceed: false,\n errors: [\n // @ts-ignore\n Metrics.generateErrorPayload(2001, true, error.name.MEDIA_ENGINE),\n ],\n },\n });\n pc.close(peerConnection);\n throw error;\n })\n );\n};\n\n/**\n * rollBack local description in peerconnection\n * @param {Object} peerConnection\n * @returns {Promise.RTCPeerConnection}\n */\npc.rollBackLocalDescription = (peerConnection: any) =>\n peerConnection\n // @ts-ignore\n .setLocalDescription(new RTCSessionDescription({type: SDP.ROLLBACK}))\n .then(() => peerConnection)\n .catch((err) => {\n LoggerProxy.logger.error(`Peer-connection-manager:index#setLocalDescription --> ${err} `);\n\n // @ts-ignore\n return Promise.error(err);\n });\n\n/**\n * @param {Object} params {\n * @param {Boolean} params.offerToReceiveAudio\n * @param {Boolean} params.offerToReceiveVideo\n * @param {string} params.offerSdp\n * @param {MediaStream} params.stream\n * @param {Object} meetingProperties\n * @param {string} meetingProperties.meetingId\n * @param {string} meetingProperties.remoteQualityLevel LOW|MEDIUM|HIGH\n * @returns {Promise.<Array>} [MediaSDP, ScreenSDP]\n */\npc.updatePeerConnection = (\n params: {\n offerToReceiveAudio: boolean;\n offerToReceiveVideo: boolean;\n offerSdp: string;\n stream: MediaStream;\n peerConnection: any;\n },\n {\n meetingId,\n remoteQualityLevel,\n }: {\n meetingId: string;\n remoteQualityLevel: string;\n }\n) => {\n LoggerProxy.logger.log(\n `PeerConnectionManager:index#updatePeerConnection --> updating the peerConnection with params: ${params}`\n );\n\n const {peerConnection, offerSdp} = params;\n\n return pc\n .createAnswer(\n {\n peerConnection,\n offerSdp: offerSdp[0],\n },\n {meetingId, remoteQualityLevel}\n )\n .then((peerconnection) => {\n // The content slides should also be set when we are sending inactive\n pc.setContentSlides(peerconnection);\n\n return Promise.resolve([peerconnection.sdp]);\n });\n};\n\n/**\n * @param {Object} params\n * @param {Object} params.peerConnection\n * @param {Object} params.sdpConstraints\n * @param {Object} meetingProperties\n * @param {string} meetingProperties.meetingId\n * @param {string} meetingProperties.remoteQualityLevel LOW|MEDIUM|HIGH\n * @returns {RTCPeerConnection} peerConnection\n */\npc.createAnswer = (\n params: {\n peerConnection: any;\n sdpConstraints: object;\n offerSdp: any;\n },\n {\n meetingId,\n remoteQualityLevel,\n }: {\n meetingId: string;\n remoteQualityLevel: string;\n }\n) => {\n const {peerConnection} = params;\n\n // TODO: Some times to many mercury event comes at the same time\n // Need to maintain state of peerconnection\n if (peerConnection.signalingState === SDP.HAVE_REMOTE_OFFER) {\n return Promise.resolve(peerConnection);\n }\n\n return (\n pc\n .setRemoteSessionDetails(peerConnection, OFFER, params.offerSdp, meetingId)\n .then(() => peerConnection.createAnswer(params.sdpConstraints))\n .then((answer) => peerConnection.setLocalDescription(answer))\n .then(() => pc.iceCandidate(peerConnection, {remoteQualityLevel}))\n .then(() => {\n peerConnection.sdp = limitBandwidth(peerConnection.localDescription.sdp);\n peerConnection.sdp = PeerConnectionUtils.convertCLineToIpv4(peerConnection.sdp);\n peerConnection.sdp = setRemoteVideoConstraints(peerConnection.sdp, remoteQualityLevel);\n\n if (!checkH264Support(peerConnection.sdp)) {\n throw new MediaError(\n 'openH264 is downloading please Wait. Upload logs if not working on second try'\n );\n }\n\n return peerConnection;\n })\n // eslint-disable-next-line @typescript-eslint/no-shadow\n .catch((error) => {\n if (error instanceof InvalidSdpError) {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.INVALID_ICE_CANDIDATE, {\n correlation_id: meetingId,\n });\n } else {\n const metricName = BEHAVIORAL_METRICS.PEERCONNECTION_FAILURE;\n const data = {\n correlation_id: meetingId,\n reason: error.message,\n stack: error.stack,\n };\n const metadata = {\n type: error.name,\n };\n\n Metrics.sendBehavioralMetric(metricName, data, metadata);\n }\n\n LoggerProxy.logger.error(\n `PeerConnectionManager:index#setRemoteSessionDetails --> Error creating remote session, error: ${error}`\n );\n })\n );\n};\n\n/**\n * shut down the peer connection\n * @param {Object} peerConnection\n * @returns {undefined}\n */\npc.close = (peerConnection: any) => {\n // peerConnection.close() fails on firefox on network changes and gives a Dom exception\n // To avoid this we have added a try catch block.\n // Please refer to https://bugzilla.mozilla.org/show_bug.cgi?id=1274407 for more information\n LoggerProxy.logger.log(\n 'PeerConnectionManager:index#close --> pc: close() -> attempting to close the peer connection'\n );\n\n if (peerConnection && peerConnection.connectionState === PEER_CONNECTION_STATE.CLOSED) {\n LoggerProxy.logger.log(\n 'PeerConnectionManager:index#close --> pc: close() -> connection already closed'\n );\n\n return Promise.resolve();\n }\n LoggerProxy.logger.log(\n 'PeerConnectionManager:index#close --> pc: close() -> closing the mediaPeerConnection'\n );\n\n return Promise.resolve().then(() => {\n if (peerConnection && peerConnection.close) {\n peerConnection.close();\n }\n });\n};\n\npc.setPeerConnectionEvents = (meeting) => {\n // In case ICE fail\n const {peerConnection} = meeting.mediaProperties;\n\n const connectionFailed = () => {\n if (meeting.reconnectionManager.iceState.resolve) {\n // DISCONNECTED state triggers first then it goes to FAILED STATE\n // sometimes the failed state can happen before 10 seconds (Which is the timer for the reconnect for ice disconnect)\n meeting.reconnectionManager.iceState.resolve();\n }\n\n meeting.reconnect({networkDisconnect: true});\n Metrics.postEvent({\n event: eventType.ICE_END,\n meeting,\n data: {\n canProceed: false,\n errors: [\n // @ts-ignore\n Metrics.generateErrorPayload(2004, false, error.name.MEDIA_ENGINE),\n ],\n },\n });\n\n meeting.uploadLogs({\n file: 'peer-connection-manager/index',\n function: 'connectionFailed',\n });\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.CONNECTION_FAILURE, {\n correlation_id: meeting.correlationId,\n locus_id: meeting.locusId,\n });\n };\n\n peerConnection.oniceconnectionstatechange = () => {\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE CHANGE.'\n );\n switch (peerConnection.iceConnectionState) {\n case ICE_STATE.CHECKING:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE CHECKING.'\n );\n Metrics.postEvent({event: eventType.ICE_START, meeting});\n break;\n case ICE_STATE.COMPLETED:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE COMPLETED.'\n );\n break;\n case ICE_STATE.CONNECTED:\n // Ice connection state goes to connected when both client and server sends STUN packets and\n // Established connected between them. Firefox does not trigger COMPLETED and only trigger CONNECTED\n Metrics.postEvent({event: eventType.ICE_END, meeting});\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.CONNECTION_SUCCESS, {\n correlation_id: meeting.correlationId,\n locus_id: meeting.locusId,\n });\n meeting.setNetworkStatus(NETWORK_STATUS.CONNECTED);\n meeting.reconnectionManager.iceReconnected();\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE CONNECTED.'\n );\n break;\n case ICE_STATE.CLOSED:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE CLOSED.'\n );\n break;\n case ICE_STATE.DISCONNECTED:\n meeting.setNetworkStatus(NETWORK_STATUS.DISCONNECTED);\n meeting.reconnectionManager.waitForIceReconnect().catch(() => {\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE DISCONNECTED. Automatic Reconnection Timed Out.'\n );\n\n connectionFailed();\n });\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE DISCONNECTED.'\n );\n break;\n case ICE_STATE.FAILED:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> ICE STATE FAILED.'\n );\n // notify of ice failure\n // Ice failure is the only indicator currently for identifying the actual connection drop\n // Firefox takes sometime 10-15 seconds to go to failed state\n connectionFailed();\n break;\n default:\n break;\n }\n };\n\n peerConnection.onconnectionstatechange = () => {\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> CONNECTION STATE CHANGE.'\n );\n switch (peerConnection.connectionState) {\n case CONNECTION_STATE.NEW:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> CONNECTION STATE NEW.'\n );\n break;\n case CONNECTION_STATE.CONNECTING:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> CONNECTION STATE CONNECTING.'\n );\n break;\n case CONNECTION_STATE.CONNECTED:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> CONNECTION STATE CONNECTED.'\n );\n break;\n case CONNECTION_STATE.CLOSED:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> CONNECTION STATE CLOSED.'\n );\n break;\n case CONNECTION_STATE.DISCONNECTED:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> CONNECTION STATE DISCONNECTED.'\n );\n break;\n case CONNECTION_STATE.FAILED:\n LoggerProxy.logger.info(\n 'PeerConnectionManager:index#setPeerConnectionEvents --> CONNECTION STATE FAILED.'\n );\n // Special case happens only on chrome where there is no ICE FAILED event\n // only CONNECTION FAILED event gets triggered\n\n connectionFailed();\n break;\n default:\n break;\n }\n };\n};\n\nexport default pc;\n"],"mappings":"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"}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
5
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _parseInt2 = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/parse-int"));
|
|
10
|
-
var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
|
|
11
|
-
var _tsSdp = require("@webex/ts-sdp");
|
|
12
|
-
var PeerConnectionUtils = {};
|
|
13
|
-
|
|
14
|
-
// max-fs values for all H264 profile levels
|
|
15
|
-
var maxFsForProfileLevel = {
|
|
16
|
-
10: 99,
|
|
17
|
-
11: 396,
|
|
18
|
-
12: 396,
|
|
19
|
-
13: 396,
|
|
20
|
-
20: 396,
|
|
21
|
-
21: 792,
|
|
22
|
-
22: 1620,
|
|
23
|
-
30: 1620,
|
|
24
|
-
31: 3600,
|
|
25
|
-
32: 5120,
|
|
26
|
-
40: 8192,
|
|
27
|
-
41: 8192,
|
|
28
|
-
42: 8704,
|
|
29
|
-
50: 22080,
|
|
30
|
-
51: 36864,
|
|
31
|
-
52: 36864,
|
|
32
|
-
60: 139264,
|
|
33
|
-
61: 139264,
|
|
34
|
-
62: 139264
|
|
35
|
-
};
|
|
36
|
-
var framesPerSecond = 30;
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Convert C line to IPv4
|
|
40
|
-
* @param {string} sdp
|
|
41
|
-
* @returns {string}
|
|
42
|
-
*/
|
|
43
|
-
PeerConnectionUtils.convertCLineToIpv4 = function (sdp) {
|
|
44
|
-
var replaceSdp = sdp;
|
|
45
|
-
|
|
46
|
-
// TODO: remove this once linus supports Ipv6 c line.currently linus rejects SDP with c line having ipv6 candidates we are
|
|
47
|
-
// mocking ipv6 to ipv4 candidates
|
|
48
|
-
// https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-299232
|
|
49
|
-
replaceSdp = replaceSdp.replace(/c=IN IP6 .*/gi, 'c=IN IP4 0.0.0.0');
|
|
50
|
-
return replaceSdp;
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* estimate profile levels for max-fs & max-mbps values
|
|
55
|
-
* @param {string} sdp
|
|
56
|
-
* @param {number} maxFsValue
|
|
57
|
-
* @returns {string}
|
|
58
|
-
*/
|
|
59
|
-
PeerConnectionUtils.adjustH264Profile = function (sdp, maxFsValue) {
|
|
60
|
-
// converting with ts-sdp parser, no munging
|
|
61
|
-
var parsedSdp = (0, _tsSdp.parse)(sdp);
|
|
62
|
-
parsedSdp.avMedia.forEach(function (media) {
|
|
63
|
-
if (media.type === 'video') {
|
|
64
|
-
media.codecs.forEach(function (codec) {
|
|
65
|
-
var _codec$name;
|
|
66
|
-
if (((_codec$name = codec.name) === null || _codec$name === void 0 ? void 0 : _codec$name.toUpperCase()) === 'H264') {
|
|
67
|
-
// there should really be just 1 fmtp line, but just in case, we process all of them
|
|
68
|
-
codec.fmtParams = codec.fmtParams.map(function (fmtp) {
|
|
69
|
-
var parsedRegex = fmtp.match(/(.*)profile-level-id=(\w{4})(\w{2})(.*)/);
|
|
70
|
-
if (parsedRegex && parsedRegex.length === 5) {
|
|
71
|
-
var stuffBeforeProfileLevelId = parsedRegex[1];
|
|
72
|
-
var profile = parsedRegex[2].toLowerCase();
|
|
73
|
-
var levelId = (0, _parseInt2.default)(parsedRegex[3], 16);
|
|
74
|
-
var stuffAfterProfileLevelId = parsedRegex[4];
|
|
75
|
-
if (!maxFsForProfileLevel[levelId]) {
|
|
76
|
-
throw new Error("found unsupported h264 profile level id value in the SDP: ".concat(levelId));
|
|
77
|
-
}
|
|
78
|
-
if (maxFsForProfileLevel[levelId] === maxFsValue) {
|
|
79
|
-
// profile level already matches our desired max-fs value, so we don't need to do anything
|
|
80
|
-
return fmtp;
|
|
81
|
-
}
|
|
82
|
-
if (maxFsForProfileLevel[levelId] < maxFsValue) {
|
|
83
|
-
// profile level has too low max-fs, so we need to override it (this is upgrading)
|
|
84
|
-
return "".concat(fmtp, ";max-fs=").concat(maxFsValue, ";max-mbps=").concat(maxFsValue * framesPerSecond);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
// profile level has too high max-fs value, so we need to use a lower level
|
|
88
|
-
|
|
89
|
-
// find highest level that has the matching maxFs
|
|
90
|
-
var newLevelId = (0, _keys.default)(maxFsForProfileLevel).reverse().find(function (key) {
|
|
91
|
-
return maxFsForProfileLevel[key] === maxFsValue;
|
|
92
|
-
});
|
|
93
|
-
if (newLevelId) {
|
|
94
|
-
// Object.keys returns keys as strings, so we need to parse it to an int again and then convert to hex
|
|
95
|
-
var newLevelIdHex = (0, _parseInt2.default)(newLevelId, 10).toString(16);
|
|
96
|
-
return "".concat(stuffBeforeProfileLevelId, "profile-level-id=").concat(profile).concat(newLevelIdHex, ";max-mbps=").concat(maxFsValue * framesPerSecond).concat(stuffAfterProfileLevelId);
|
|
97
|
-
}
|
|
98
|
-
throw new Error("unsupported maxFsValue: ".concat(maxFsValue));
|
|
99
|
-
}
|
|
100
|
-
return fmtp;
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
return parsedSdp.toString();
|
|
107
|
-
};
|
|
108
|
-
var _default = PeerConnectionUtils;
|
|
109
|
-
exports.default = _default;
|
|
110
|
-
//# sourceMappingURL=util.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_tsSdp","require","PeerConnectionUtils","maxFsForProfileLevel","framesPerSecond","convertCLineToIpv4","sdp","replaceSdp","replace","adjustH264Profile","maxFsValue","parsedSdp","parse","avMedia","forEach","media","type","codecs","codec","_codec$name","name","toUpperCase","fmtParams","map","fmtp","parsedRegex","match","length","stuffBeforeProfileLevelId","profile","toLowerCase","levelId","_parseInt2","default","stuffAfterProfileLevelId","Error","concat","newLevelId","_keys","reverse","find","key","newLevelIdHex","toString","_default","exports"],"sources":["util.ts"],"sourcesContent":["import {parse} from '@webex/ts-sdp';\n\ninterface IPeerConnectionUtils {\n convertCLineToIpv4: (sdp: string) => string;\n adjustH264Profile: (sdp: string, maxFsValue: number) => string;\n}\n\nconst PeerConnectionUtils = {} as IPeerConnectionUtils;\n\n// max-fs values for all H264 profile levels\nconst maxFsForProfileLevel = {\n 10: 99,\n 11: 396,\n 12: 396,\n 13: 396,\n 20: 396,\n 21: 792,\n 22: 1620,\n 30: 1620,\n 31: 3600,\n 32: 5120,\n 40: 8192,\n 41: 8192,\n 42: 8704,\n 50: 22080,\n 51: 36864,\n 52: 36864,\n 60: 139264,\n 61: 139264,\n 62: 139264,\n};\n\nconst framesPerSecond = 30;\n\n/**\n * Convert C line to IPv4\n * @param {string} sdp\n * @returns {string}\n */\nPeerConnectionUtils.convertCLineToIpv4 = (sdp: string) => {\n let replaceSdp = sdp;\n\n // TODO: remove this once linus supports Ipv6 c line.currently linus rejects SDP with c line having ipv6 candidates we are\n // mocking ipv6 to ipv4 candidates\n // https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-299232\n replaceSdp = replaceSdp.replace(/c=IN IP6 .*/gi, 'c=IN IP4 0.0.0.0');\n\n return replaceSdp;\n};\n\n/**\n * estimate profile levels for max-fs & max-mbps values\n * @param {string} sdp\n * @param {number} maxFsValue\n * @returns {string}\n */\nPeerConnectionUtils.adjustH264Profile = (sdp: string, maxFsValue: number) => {\n // converting with ts-sdp parser, no munging\n const parsedSdp = parse(sdp);\n\n parsedSdp.avMedia.forEach((media) => {\n if (media.type === 'video') {\n media.codecs.forEach((codec) => {\n if (codec.name?.toUpperCase() === 'H264') {\n // there should really be just 1 fmtp line, but just in case, we process all of them\n codec.fmtParams = codec.fmtParams.map((fmtp) => {\n const parsedRegex = fmtp.match(/(.*)profile-level-id=(\\w{4})(\\w{2})(.*)/);\n\n if (parsedRegex && parsedRegex.length === 5) {\n const stuffBeforeProfileLevelId = parsedRegex[1];\n const profile = parsedRegex[2].toLowerCase();\n const levelId = parseInt(parsedRegex[3], 16);\n const stuffAfterProfileLevelId = parsedRegex[4];\n\n if (!maxFsForProfileLevel[levelId]) {\n throw new Error(\n `found unsupported h264 profile level id value in the SDP: ${levelId}`\n );\n }\n\n if (maxFsForProfileLevel[levelId] === maxFsValue) {\n // profile level already matches our desired max-fs value, so we don't need to do anything\n return fmtp;\n }\n if (maxFsForProfileLevel[levelId] < maxFsValue) {\n // profile level has too low max-fs, so we need to override it (this is upgrading)\n return `${fmtp};max-fs=${maxFsValue};max-mbps=${maxFsValue * framesPerSecond}`;\n }\n\n // profile level has too high max-fs value, so we need to use a lower level\n\n // find highest level that has the matching maxFs\n const newLevelId = Object.keys(maxFsForProfileLevel)\n .reverse()\n .find((key) => maxFsForProfileLevel[key] === maxFsValue);\n\n if (newLevelId) {\n // Object.keys returns keys as strings, so we need to parse it to an int again and then convert to hex\n const newLevelIdHex = parseInt(newLevelId, 10).toString(16);\n\n return `${stuffBeforeProfileLevelId}profile-level-id=${profile}${newLevelIdHex};max-mbps=${\n maxFsValue * framesPerSecond\n }${stuffAfterProfileLevelId}`;\n }\n\n throw new Error(`unsupported maxFsValue: ${maxFsValue}`);\n }\n\n return fmtp;\n });\n }\n });\n }\n });\n\n return parsedSdp.toString();\n};\n\nexport default PeerConnectionUtils;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAOA,IAAMC,mBAAmB,GAAG,CAAC,CAAyB;;AAEtD;AACA,IAAMC,oBAAoB,GAAG;EAC3B,EAAE,EAAE,EAAE;EACN,EAAE,EAAE,GAAG;EACP,EAAE,EAAE,GAAG;EACP,EAAE,EAAE,GAAG;EACP,EAAE,EAAE,GAAG;EACP,EAAE,EAAE,GAAG;EACP,EAAE,EAAE,IAAI;EACR,EAAE,EAAE,IAAI;EACR,EAAE,EAAE,IAAI;EACR,EAAE,EAAE,IAAI;EACR,EAAE,EAAE,IAAI;EACR,EAAE,EAAE,IAAI;EACR,EAAE,EAAE,IAAI;EACR,EAAE,EAAE,KAAK;EACT,EAAE,EAAE,KAAK;EACT,EAAE,EAAE,KAAK;EACT,EAAE,EAAE,MAAM;EACV,EAAE,EAAE,MAAM;EACV,EAAE,EAAE;AACN,CAAC;AAED,IAAMC,eAAe,GAAG,EAAE;;AAE1B;AACA;AACA;AACA;AACA;AACAF,mBAAmB,CAACG,kBAAkB,GAAG,UAACC,GAAW,EAAK;EACxD,IAAIC,UAAU,GAAGD,GAAG;;EAEpB;EACA;EACA;EACAC,UAAU,GAAGA,UAAU,CAACC,OAAO,CAAC,eAAe,EAAE,kBAAkB,CAAC;EAEpE,OAAOD,UAAU;AACnB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACAL,mBAAmB,CAACO,iBAAiB,GAAG,UAACH,GAAW,EAAEI,UAAkB,EAAK;EAC3E;EACA,IAAMC,SAAS,GAAG,IAAAC,YAAK,EAACN,GAAG,CAAC;EAE5BK,SAAS,CAACE,OAAO,CAACC,OAAO,CAAC,UAACC,KAAK,EAAK;IACnC,IAAIA,KAAK,CAACC,IAAI,KAAK,OAAO,EAAE;MAC1BD,KAAK,CAACE,MAAM,CAACH,OAAO,CAAC,UAACI,KAAK,EAAK;QAAA,IAAAC,WAAA;QAC9B,IAAI,EAAAA,WAAA,GAAAD,KAAK,CAACE,IAAI,cAAAD,WAAA,uBAAVA,WAAA,CAAYE,WAAW,EAAE,MAAK,MAAM,EAAE;UACxC;UACAH,KAAK,CAACI,SAAS,GAAGJ,KAAK,CAACI,SAAS,CAACC,GAAG,CAAC,UAACC,IAAI,EAAK;YAC9C,IAAMC,WAAW,GAAGD,IAAI,CAACE,KAAK,CAAC,yCAAyC,CAAC;YAEzE,IAAID,WAAW,IAAIA,WAAW,CAACE,MAAM,KAAK,CAAC,EAAE;cAC3C,IAAMC,yBAAyB,GAAGH,WAAW,CAAC,CAAC,CAAC;cAChD,IAAMI,OAAO,GAAGJ,WAAW,CAAC,CAAC,CAAC,CAACK,WAAW,EAAE;cAC5C,IAAMC,OAAO,GAAG,IAAAC,UAAA,CAAAC,OAAA,EAASR,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;cAC5C,IAAMS,wBAAwB,GAAGT,WAAW,CAAC,CAAC,CAAC;cAE/C,IAAI,CAACtB,oBAAoB,CAAC4B,OAAO,CAAC,EAAE;gBAClC,MAAM,IAAII,KAAK,8DAAAC,MAAA,CACgDL,OAAO,EACrE;cACH;cAEA,IAAI5B,oBAAoB,CAAC4B,OAAO,CAAC,KAAKrB,UAAU,EAAE;gBAChD;gBACA,OAAOc,IAAI;cACb;cACA,IAAIrB,oBAAoB,CAAC4B,OAAO,CAAC,GAAGrB,UAAU,EAAE;gBAC9C;gBACA,UAAA0B,MAAA,CAAUZ,IAAI,cAAAY,MAAA,CAAW1B,UAAU,gBAAA0B,MAAA,CAAa1B,UAAU,GAAGN,eAAe;cAC9E;;cAEA;;cAEA;cACA,IAAMiC,UAAU,GAAG,IAAAC,KAAA,CAAAL,OAAA,EAAY9B,oBAAoB,CAAC,CACjDoC,OAAO,EAAE,CACTC,IAAI,CAAC,UAACC,GAAG;gBAAA,OAAKtC,oBAAoB,CAACsC,GAAG,CAAC,KAAK/B,UAAU;cAAA,EAAC;cAE1D,IAAI2B,UAAU,EAAE;gBACd;gBACA,IAAMK,aAAa,GAAG,IAAAV,UAAA,CAAAC,OAAA,EAASI,UAAU,EAAE,EAAE,CAAC,CAACM,QAAQ,CAAC,EAAE,CAAC;gBAE3D,UAAAP,MAAA,CAAUR,yBAAyB,uBAAAQ,MAAA,CAAoBP,OAAO,EAAAO,MAAA,CAAGM,aAAa,gBAAAN,MAAA,CAC5E1B,UAAU,GAAGN,eAAe,EAAAgC,MAAA,CAC3BF,wBAAwB;cAC7B;cAEA,MAAM,IAAIC,KAAK,4BAAAC,MAAA,CAA4B1B,UAAU,EAAG;YAC1D;YAEA,OAAOc,IAAI;UACb,CAAC,CAAC;QACJ;MACF,CAAC,CAAC;IACJ;EACF,CAAC,CAAC;EAEF,OAAOb,SAAS,CAACgC,QAAQ,EAAE;AAC7B,CAAC;AAAC,IAAAC,QAAA,GAEa1C,mBAAmB;AAAA2C,OAAA,CAAAZ,OAAA,GAAAW,QAAA"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
2
|
-
/**
|
|
3
|
-
* @class PersonalMeetingRoom
|
|
4
|
-
*/
|
|
5
|
-
export default class PersonalMeetingRoom extends StatelessWebexPlugin {
|
|
6
|
-
link: any;
|
|
7
|
-
meetingInfo: any;
|
|
8
|
-
name: any;
|
|
9
|
-
personalMeetingRoomRequest: any;
|
|
10
|
-
pmr: any;
|
|
11
|
-
sipUri: any;
|
|
12
|
-
userId: any;
|
|
13
|
-
meetingLink: any;
|
|
14
|
-
number: any;
|
|
15
|
-
namespace: string;
|
|
16
|
-
/**
|
|
17
|
-
*
|
|
18
|
-
* @param {Object} attrs
|
|
19
|
-
* @param {Object} options
|
|
20
|
-
*/
|
|
21
|
-
constructor(attrs: any, options: any);
|
|
22
|
-
/**
|
|
23
|
-
* claims a pmr and updates the cached PMR values
|
|
24
|
-
* @param {String} link
|
|
25
|
-
* @param {String} pin
|
|
26
|
-
* @param {Boolean} [preferred] defaults to true to set this claimed PMR as the preferred
|
|
27
|
-
* @returns {Promise}
|
|
28
|
-
* @public
|
|
29
|
-
* @memberof PersonalMeetingRoom
|
|
30
|
-
*/
|
|
31
|
-
claim(link: string, pin: string, preferred?: boolean): any;
|
|
32
|
-
/**
|
|
33
|
-
* @param {Object} body the response body from meeting info request
|
|
34
|
-
* @returns {undefined}
|
|
35
|
-
* @private
|
|
36
|
-
* @memberof PersonalMeetingRoom
|
|
37
|
-
*/
|
|
38
|
-
private set;
|
|
39
|
-
/**
|
|
40
|
-
* TODO: implement TTL for syncing and caching so to not request again and again
|
|
41
|
-
* @param {Object} options
|
|
42
|
-
* @returns {Promise}
|
|
43
|
-
* @public
|
|
44
|
-
* @memberof PersonalMeetingRoom
|
|
45
|
-
*/
|
|
46
|
-
get(): any;
|
|
47
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
2
|
-
/**
|
|
3
|
-
* @class MeetingInfoRequest
|
|
4
|
-
*/
|
|
5
|
-
export default class PersonalMeetingRoomRequest extends StatelessWebexPlugin {
|
|
6
|
-
namespace: string;
|
|
7
|
-
/**
|
|
8
|
-
*
|
|
9
|
-
* @param {Object} options with format of {userId, passcode, meetingAddress, preferred}
|
|
10
|
-
* @returns {Promise} returns a promise that resolves/rejects the result of the request
|
|
11
|
-
* @memberof PersonalMeetingRoomRequest
|
|
12
|
-
*/
|
|
13
|
-
claimPmr(options: any): any;
|
|
14
|
-
}
|