Hierarchy (view full)

Constructors

  • Parameters

    • connection: Connection
    • id: string
    • owner: string
    • name: string
    • pin: string
    • userId: string
    • nickname: string
    • creationTime: number
    • config: RoomExtendedConfig
    • waitingRoomEnabled: boolean
    • Optional loggerPrefix: PrefixFunction
    • Optional conferenceType: ConferenceType
    • Optional webRTCMetricsServerDescription: RTCMetricsServerDescription

    Returns RoomExtended

Properties

#_conferenceType: ConferenceType = ConferenceType.GLOBAL
#_creationTime: number
#_httpStatSender: RTCMetricsHttpSender
#_pc: RTCPeerConnection
#_role: ParticipantRole = ParticipantRole.PARTICIPANT
#_statCollector: RTCMetricsCollector
#_state: RoomState = RoomState.NEW
#dChannel: RTCDataChannel
#incomingMessageQueue: {
    [key: string]: FragmentedMessage[];
} = {}

Type declaration

#inviteId: string
#owner: string
#vacantTransceivers: {
    audio: Queue<RTCRtpTransceiver>;
    video: Queue<RTCRtpTransceiver>;
}

Type declaration

  • audio: Queue<RTCRtpTransceiver>
  • video: Queue<RTCRtpTransceiver>
#waitingRoomEnabled: boolean
#wrappedDataChannel: WrappedDatachannel
_crutch: {
    mutex: Mutex;
    tid: string;
}

Type declaration

  • mutex: Mutex
  • tid: string
_id: string
_mediaSessionId: string
_name: string
_nickname: string
_pin: string
_uid: string
_userId: string
_webRTCMetricsServerDescription: RTCMetricsServerDescription
connection: Connection
logger: default

Methods

  • Parameters

    • sdp: string
    • config: {
          [key: string]: string;
      }
      • [key: string]: string

    Returns string

  • Parameters

    • msg: string

    Returns void

  • Parameters

    • action: InternalApi
    • data: object
    • resolve: Function
    • reject: Function

    Returns void

  • Parameters

    Returns void

  • Authorize or fail authorization for user from waiting List

    Room owner will receive RoomEvent.WAITING_LIST with WaitingListEvent

    If authorized = true - user will join to the room and other participants will receive RoomEvent.JOINED with JoinedRoom. If authorized = false - user will receive error RoomError.AUTHORIZATION_FAILED

    Parameters

    • userId: string
    • authorized: boolean

    Returns Promise<void>

  • Change the quality of the requested track

    Parameters

    • trackId: string
    • quality: string
    • tid: number

    Returns Promise<void>

  • Configure waiting room

    Waiting room configuration, on/off switch for now

    Waiting room must be empty

    Parameters

    • enabled: boolean

      flag indicates whether it's enabled or not

    Returns Promise<WaitingRoomUpdate>

  • Returns number

  • Parameters

    • track: MediaStreamTrack
    • type: StatsType
    • callback: Function

    Returns void

  • Returns string

  • Returns string

  • Join the room

    Parameters

    • pc: RTCPeerConnection

      peer connection

    • Optional nickname: string

      user nickname

    • Optional config: {
          [key: string]: string;
      }

      [track.id] : track content type

      • [key: string]: string
    • Optional predefinedTracksCount: number

      Initial number of allocated transceivers.

    • Optional transportType: TransportType

      Ice transport protocol. "UDP"/"TCP".

    Returns Promise<JoinedRoom>

  • Move user to waiting room

    User will receive RoomEvent.DETACHED. Other participants will receive RoomEvent.LEFT with LeftRoom

    Room owner will receive RoomEvent.WAITING_LIST with WaitingListEvent

    Parameters

    • userId: string

    Returns Promise<void>

  • Returns string

  • Returns string

  • Returns string

  • Returns RTCPeerConnection

  • Returns string

  • Reclaim owner rights

    Participants will receive RoomEvent.ROLE_ASSIGNED with RoleAssigned

    Returns Promise<void>

  • Sending control message inside the room

    Recipients will receive RoomEvent.CONTROL_MESSAGE with ControlMessageEvent

    Parameters

    • msg: string
    • broadcast: boolean

      sending for all room participants, if true

    • Optional to: string

      sending for user. Should use with broadcast = false

    Returns Promise<void>

  • Parameters

    • msg: string

    Returns Promise<void>

  • Set room can change nickname

    Participants will receive RoomEvent.ROOM_CAN_CHANGE_NICKNAME with boolean value.

    Parameters

    • canChange: boolean

    Returns Promise<boolean>

  • Set room chat muted

    Participants will receive RoomEvent.ROOM_CHAT_MUTED with boolean value and RoomEvent.PARTICIPANT_CONFIG with ParticipantConfigEvent

    Chat receive policy will be ChatReceivePolicy.EVERYONE or ChatReceivePolicy.NOBODY.

    Chat members will receive SfuEvent.CHAT_UPDATED with UpdateChatEvent

    Parameters

    • muted: boolean

    Returns Promise<boolean>

  • Set room initial screen sharing muted

    Parameters

    • muted: boolean

    Returns Promise<boolean>

  • Set room lock

    Participants will receive RoomEvent.ROOM_LOCKED with boolean value

    Parameters

    • locked: boolean

    Returns Promise<boolean>

  • Returns Promise<void>

  • Returns Promise<void>

  • Turn off participant's screen sharing

    Participant(s) will receive RoomEvent.STOP_SCREEN_SHARING with StopScreenSharingEvent

    Parameters

    • Optional userId: string
    • Optional reason: string

    Returns Promise<void>

  • Parameters

    • name: string

    Returns void

  • Used for SDP exchange

    Parameters

    • Optional config: {
          [key: string]: string;
      }
      • [key: string]: string

    Returns Promise<void>

  • Returns string

  • Returns boolean