RoomConnection Types
MediaStreamConstraints
MediaStream
MediaDeviceInfo
LocalMediaOptions: <Object>
audio:boolean
Enable audio
video:boolean
Enable video
WherebyClientOptions: <Object>
localMediaOptions: localMediaOptions
Options for starting local media
displayName?: string
Display name of the client
roomUrl?: string
Room url of the session
assistantKey?: string | null
If initializing Assistant
the assistantKey
is required
roomKey?: string | null
URL of the room to join
externalId?: string | null
A custom identifier for the participant. Gets saved in Insights data
isNodeSDK?: boolean
True if initializing in a Node environment
isAssistant
True if initializing an Assistant
RemoteParticipantState<Object>
displayName: string
Display name of the remote participant
id: string
Id of the remote
participant
roleName: string
The role of the local participant. This will be one of the following values:
none
, visitor
, granted_visitor
, viewer
, granted_viewer
, host
, recorder
, streamer
stream?:MediaStream
Stream of the remote participant
isAudioEnabled:boolean
The remote participant has their camera enabled
isVideoEnabled:boolean
The remote participant has their microphone enabled
isLocalParticipant:boolean
For remote participants, this value is always false
presentationStream: MediaStream | null
Screenshare stream if the participant is presenting
externalId: string | null
A custom identifier for the participant.
stickyReaction?: StickyReaction
Whether the participant has hand raised
isDialIn: boolean
True if participant is a dial in agent
WaitingParticipantState: <Object>
id: string
Id of the participant in the waiting room
displayName?: string | null
Display name of the participant in the waiting room
ChatMessage: <Object>
senderId: string
Id of the participant who sent the chat message
text: string
Content of the chat message
timestamp: string
Timestamp of when the message was sent
LocalScreenshareStatus:<string>
"inactive"
Local screenshare is inactive
"starting"
Local screenshare is currently starting, eg the local user is selecting what to share
"active"
Local screenshare is active
CloudRecordingState: <Object>
status:"recording"|"requested"|"error"
Cloud recording is active
startedAt?: number
When the recording started
error?: string
If error when starting cloud recording
ClientView: <Object>
A client view can be either a participant or a screenshare.
id: string
Internal id
clientId: string
Id of the participant
displayName?: string
Display name of the participant or screenshare
stream?: MediaStream
Media stream of the client view
isLocalCliend: boolean
Is the client view owned by the local participant?
isAudioEnabled: boolean
The client view has their microphone enabled
isVideoEnabled: boolean
The client view has their camera enabled
isPresentation: boolean
The client view is a presentation (screenshare)
ScreenshareState: <Object>
participantId: string
Id of the participant owning the screenshare
id: string
Id of the screenshare
hasAudioTrack: boolean
stream?
:MediaStream
Media stream of the screenshare
isLocal: boolean
Is the screenshare owned by the local participant?
LiveStreamState: <Object>
status: "streaming"
Live streaming is in progress
startedAt: number
When the live stream started
BreakoutState: <Object>
isActive: boolean
The state of the breakout session. If it's true, a breakout session is currently ongoing in the room
currentGroup: { id: string, name: string } | null
An object containing the information of the breakout group that the participant is currently in. null
if the SDK participant is not in a group.
groupedParticipants: { clients:
RemoteParticipant
[], group: { id: string, name: string } []
List of the groups in the current breakout session, including the participants in each group.
participantsInCurrentGroup:
RemoteParticipant
[]
Participants in the current breakout group. Empty list if the SDK participants is not currently in a group.
ConnectionStatus<string>
"ready"
Ready to join the room
"connecting"
Currently in the process of doing the initial connection in the room
"connected"
Connected in the room, this is the "stable" state
"room_locked"
Connection failed due to the room being locked, a knock is required to proceed
"knocking"
Waiting for the room host to respond to the knock request
"knock_rejected"
The host rejected your knock request
"kicked"
The current participant was kicked from the room.
This can happen in the following scenarios:
when a meeting host ends the meeting for all participants in the room
when a meeting host kicks the current participant individually from the room
"leaving"
The current participant has invoked the leaveRoom
action to exit the room.
"left"
The current participant has now successfully left the room and all other room participants have been notified.
"disconnected"
The current participant has been disconnected from the room due to an unplanned loss of network connection.
This can happen during temporary network outage (e.g. loss of network or switching networks). If/when the network connection returns the SDK will change the room connection status to reconnecting
automatically.
"reconnecting"
A lost internet connection has been re-established.
The SDK will now automatically re-connect the current participant to the previous room and the room connection state will change to either: a.) knocking
if the room is locked, or; b.) connected
if the room is unlocked.
LocalParticipantState<Object>
displayName: string
Display name of the local participant (you)
id:string
Local participant id
roleName:string
The role of the local participant. This will be one of the following values:
none
, visitor
, granted_visitor
, viewer
, granted_viewer
, host
, recorder
, streamer
stream?:
MediaStream
When set, the media stream (audio & video) of
the local participant
isAudioEnabled:boolean
The local participant has their microphone enabled
isVideoEnabled:boolean
The local participant has their camera enabled
isLocalParticipant:true
Always set to true. Can be used to easily identify the local participant if in an array with eg remote participants
isScreensharing:boolean
True if the local participant is screen sharing
clientClaim?:string
breakoutGroupAssigned:string
The name of the breakout group the participant is assigned to (if any)
RoomJoinedEvent<Object>
isLocked: boolean
True if room is locked
selfId: string
Id of the participant who joined the room
Last updated
Was this helpful?