Skip to main content
The JitsiConference class represents a video conference session and provides methods for managing participants, tracks, and conference state.

Overview

JitsiConference handles:
  • Conference room lifecycle (join, leave)
  • Participant management
  • Media track management (local and remote)
  • Conference properties and state
  • P2P and JVB connection modes
  • Recording, transcription, and advanced features

Creating a Conference

Conferences are created through a JitsiConnection:

Configuration Options

From JitsiConference.ts:84-151:
Room names must be lowercase. The JitsiConference constructor validates this and throws an error for invalid names.

Conference Lifecycle

Joining a Conference

When joining succeeds, the CONFERENCE_JOINED event is fired:

Leaving a Conference

The CONFERENCE_LEFT event is fired when leaving:

Conference Events

All conference events are defined in JitsiConferenceEvents.ts. Here are the most important ones:

Core Lifecycle Events

Participant Events

From JitsiConferenceEvents.ts:445-457:

Track Events

From JitsiConferenceEvents.ts:403-428:

Connection Events

From JitsiConferenceEvents.ts:134-151:

Advanced Events

Participant Management

Getting Participants

From JitsiConference.ts:292-367, the participants are stored in a Map:

Kicking Participants

Moderators can kick participants:

Muting Participants

Moderators can mute participants:

Track Management

Adding Local Tracks

The TRACK_ADDED event fires for each added track.

Removing Local Tracks

The TRACK_REMOVED event fires when a track is removed.

Replacing Tracks

Getting Tracks

Conference Properties

From JitsiConference.ts:158-164:
Conference properties are maintained by Jicofo and accessible via:
These properties include information about bridge count, sender limits, and visitor support.

P2P and JVB Modes

The conference can operate in two modes: Peer-to-Peer (P2P):
  • Direct connection between two participants
  • Lower latency, better quality for 1-on-1 calls
  • Automatically enabled when configured and only 2 participants present
Jitsi Videobridge (JVB):
  • Multi-party conferencing through the bridge
  • Used for 3+ participants
  • Supports advanced features like simulcast
From JitsiConference.ts:461-467:
Monitor P2P status:

Quality Control

LastN

Control how many video streams to receive:

Receiver Video Constraints

Set constraints for received video:

Room Management

Locking the Room

Subject

Set or get the room subject:

Advanced Features

Recording

Transcription

E2EE (End-to-End Encryption)

From JitsiConference.ts:488-492:
Check E2EE support:

Best Practices

Always handle conference lifecycle events:
Properly manage track addition and removal:
Listen for remote track events:

JitsiParticipant

Learn about participant properties and management

Media Tracks

Explore local and remote track handling

JitsiConnection

Understand XMPP connections