JitsiParticipant represents a remote participant in a conference. It provides access to participant properties, tracks, and features.
Overview
Participant objects are created automatically by the conference and provided through events. You cannot construct them directly.Identity Information
getId()
Returns the unique identifier of the participant.string
Participant’s unique ID (typically 8 hex characters)
getJid()
Returns the full XMPP JID of the participant.string
Full JID (e.g.,
room@conference.domain/participantId)getDisplayName()
Returns the participant’s display name.string
The participant’s display name, or empty string if not set
getStatsID()
Returns the statistics ID for this participant.string
Statistics identifier for analytics
getStatus()
Returns the participant’s status text.string
Participant’s status text
getIdentity()
Returns the XMPP identity object (defined in JWT context claims).object | undefined
Identity object from JWT, or undefined if not available
Role & Permissions
getRole()
Returns the participant’s role.string
Role:
'moderator', 'participant', or 'none'isModerator()
Checks if the participant is a moderator.boolean
true if participant is a moderatorTrack Information
getTracks()
Returns all media tracks for this participant.Array<JitsiRemoteTrack>
Array of all remote tracks from this participant
getTracksByMediaType()
Returns tracks filtered by media type.'audio' | 'video'
required
Media type to filter
Array<JitsiRemoteTrack>
Array of tracks of the specified media type
isAudioMuted()
Checks if the participant’s audio is muted.boolean
true if audio is mutedisVideoMuted()
Checks if the participant’s video is muted.boolean
true if video is mutedSource Information
getSources()
Returns source information for all media tracks.Map<MediaType, Map<string, object>>
Nested map structure:
- Outer key: Media type (
'audio'or'video') - Inner key: Source name
- Inner value: Source info object with
muted(boolean) andvideoType(string) properties
Features & Capabilities
getFeatures()
Returns the set of features supported by this participant.Promise<Set<string>>
Promise resolving to a Set of feature URNs
hasFeature()
Checks if the participant has a specific feature.string
required
Feature URN to check
boolean
true if participant has the featuresupportsDTMF()
Checks if the participant supports DTMF.boolean
true if DTMF is supportedCustom Properties
getProperty()
Gets a custom property value.string
required
Property name
any
Property value, or undefined if not set
Special Participant Types
isHidden()
Checks if this is a hidden participant (e.g., recorder, transcriber).true if participant is hidden from UIisHiddenFromRecorder()
Checks if participant should be hidden from recordings.true if participant should not appear in recordingsgetBotType()
Returns the bot type if this participant is a bot.string | undefined
Bot type (e.g.,
'poltergeist' for load testing bots), or undefined for human participantsisSilent()
Checks if participant joined without audio.boolean
true if participant joined silently (no audio capability)isReplacing()
Checks if this participant is replacing another participant.boolean
true if participant is replacing anotherisReplaced()
Checks if this participant is being replaced.boolean
true if participant will be replaced and kickedConnection Information
getConnectionJid()
Returns the connection JID (useful for visitors/observers).string | undefined
Connection JID, or undefined if not available
getConference()
Returns the conference this participant belongs to.JitsiConference
The parent conference object