19#include "livekit/room_event_types.h"
20#include "livekit/visibility.h"
Interface for receiving room-level events.
Definition room_delegate.h:33
virtual void onTrackUnmuted(Room &, const TrackUnmutedEvent &)
Called when a track is unmuted.
Definition room_delegate.h:83
virtual void onByteStreamOpened(Room &, const ByteStreamOpenedEvent &)
Called when a high-level byte stream reader is opened.
Definition room_delegate.h:195
virtual void onLocalTrackUnpublished(Room &, const LocalTrackUnpublishedEvent &)
Called when a local track is unpublished.
Definition room_delegate.h:55
virtual void onRoomSidChanged(Room &, const RoomSidChangedEvent &)
Called when the room SID changes (e.g., after migration).
Definition room_delegate.h:100
virtual void onParticipantsUpdated(Room &, const ParticipantsUpdatedEvent &)
Called when a snapshot of participants has been updated.
Definition room_delegate.h:218
virtual void onRoomUpdated(Room &, const RoomUpdatedEvent &)
Called when any room info is updated.
Definition room_delegate.h:103
virtual void onLocalTrackPublished(Room &, const LocalTrackPublishedEvent &)
Called when a local track is successfully published.
Definition room_delegate.h:52
virtual void onParticipantConnected(Room &, const ParticipantConnectedEvent &)
Called when a new remote participant joins the room.
Definition room_delegate.h:42
virtual void onParticipantMetadataChanged(Room &, const ParticipantMetadataChangedEvent &)
Called when a participant's metadata is updated.
Definition room_delegate.h:113
virtual void onUserPacketReceived(Room &, const UserDataPacketEvent &)
Called when a user data packet (non-SIP) is received.
Definition room_delegate.h:168
virtual void onTokenRefreshed(Room &, const TokenRefreshedEvent &)
Called when the server refreshes the session access token.
Definition room_delegate.h:146
virtual void onActiveSpeakersChanged(Room &, const ActiveSpeakersChangedEvent &)
Called when the list of active speakers changes.
Definition room_delegate.h:90
virtual void onTrackPublished(Room &, const TrackPublishedEvent &)
Called when a remote participant publishes a track.
Definition room_delegate.h:65
virtual void onTrackSubscriptionFailed(Room &, const TrackSubscriptionFailedEvent &)
Called when subscribing to a remote track fails.
Definition room_delegate.h:77
virtual void onConnectionQualityChanged(Room &, const ConnectionQualityChangedEvent &)
Called when a participant's connection quality changes.
Definition room_delegate.h:129
virtual void onDisconnected(Room &, const DisconnectedEvent &)
Called when the room is disconnected.
Definition room_delegate.h:135
virtual void onParticipantAttributesChanged(Room &, const ParticipantAttributesChangedEvent &)
Called when a participant's attributes are updated.
Definition room_delegate.h:119
virtual void onTrackMuted(Room &, const TrackMutedEvent &)
Called when a track is muted.
Definition room_delegate.h:80
virtual void onReconnecting(Room &, const ReconnectingEvent &)
Called before the SDK attempts to reconnect.
Definition room_delegate.h:138
virtual void onLocalTrackSubscribed(Room &, const LocalTrackSubscribedEvent &)
Called when a local track gains its first subscriber.
Definition room_delegate.h:58
virtual void onParticipantNameChanged(Room &, const ParticipantNameChangedEvent &)
Called when a participant's name is changed.
Definition room_delegate.h:116
virtual void onDataTrackUnpublished(Room &, const DataTrackUnpublishedEvent &)
Called when a remote participant unpublishes a data track.
Definition room_delegate.h:211
virtual void onRoomEos(Room &, const RoomEosEvent &)
Called when the room reaches end-of-stream and will not emit further events.
Definition room_delegate.h:161
virtual void onDataChannelBufferedAmountLowThresholdChanged(Room &, const DataChannelBufferedAmountLowThresholdChangedEvent &)
Called when a data channel's buffered amount falls below its low threshold.
Definition room_delegate.h:187
virtual void onTrackUnsubscribed(Room &, const TrackUnsubscribedEvent &)
Called when a remote track is unsubscribed.
Definition room_delegate.h:74
virtual void onSipDtmfReceived(Room &, const SipDtmfReceivedEvent &)
Called when a SIP DTMF packet is received.
Definition room_delegate.h:171
virtual void onConnectionStateChanged(Room &, const ConnectionStateChangedEvent &)
Called when the room's connection state changes.
Definition room_delegate.h:132
virtual void onDataStreamHeaderReceived(Room &, const DataStreamHeaderReceivedEvent &)
Called when a data stream header is received.
Definition room_delegate.h:178
virtual void onParticipantDisconnected(Room &, const ParticipantDisconnectedEvent &)
Called when a remote participant leaves the room.
Definition room_delegate.h:45
virtual void onRoomMoved(Room &, const RoomMovedEvent &)
Called when the participant is moved to another room.
Definition room_delegate.h:106
virtual void onRoomMetadataChanged(Room &, const RoomMetadataChangedEvent &)
Called when the room's metadata changes.
Definition room_delegate.h:97
virtual void onReconnected(Room &, const ReconnectedEvent &)
Called after the SDK successfully reconnects.
Definition room_delegate.h:141
virtual void onParticipantEncryptionStatusChanged(Room &, const ParticipantEncryptionStatusChangedEvent &)
Called when a participant's encryption status changes.
Definition room_delegate.h:122
virtual void onDataStreamTrailerReceived(Room &, const DataStreamTrailerReceivedEvent &)
Called when a data stream trailer is received.
Definition room_delegate.h:184
virtual void onTextStreamOpened(Room &, const TextStreamOpenedEvent &)
Called when a high-level text stream reader is opened.
Definition room_delegate.h:198
virtual void onTrackUnpublished(Room &, const TrackUnpublishedEvent &)
Called when a remote participant unpublishes a track.
Definition room_delegate.h:68
virtual void onE2eeStateChanged(Room &, const E2eeStateChangedEvent &)
Called when a participant's end-to-end encryption state changes.
Definition room_delegate.h:153
virtual void onDataTrackPublished(Room &, const DataTrackPublishedEvent &)
Called when a remote participant publishes a data track.
Definition room_delegate.h:208
virtual void onDataStreamChunkReceived(Room &, const DataStreamChunkReceivedEvent &)
Called when a data stream chunk is received.
Definition room_delegate.h:181
virtual void onTrackSubscribed(Room &, const TrackSubscribedEvent &)
Called when a remote track is successfully subscribed.
Definition room_delegate.h:71
Represents a LiveKit room session.
Definition room.h:145
Public API for the LiveKit C++ Client SDK.
Definition audio_frame.h:25
Fired when the list of active speakers changes.
Definition room_event_types.h:500
Fired when a high-level byte stream reader is opened.
Definition room_event_types.h:666
Fired when a participant's connection quality estimate changes.
Definition room_event_types.h:563
Fired when the room's connection state changes.
Definition room_event_types.h:600
Fired when a data channel's buffered amount falls below its low threshold.
Definition room_event_types.h:657
Fired when a data stream chunk is received.
Definition room_event_types.h:639
Fired when a data stream trailer is received.
Definition room_event_types.h:648
Fired when a participant publishes a data track.
Definition room_event_types.h:715
Fired when a remote participant unpublishes a data track.
Definition room_event_types.h:721
Fired when the room is disconnected.
Definition room_event_types.h:606
Fired when a participant's E2EE state changes.
Definition room_event_types.h:702
Fired when a local track is successfully published.
Definition room_event_types.h:407
Fired when a local track gets its first subscriber.
Definition room_event_types.h:422
Fired when a local track is unpublished.
Definition room_event_types.h:416
Fired when a participant's attributes change.
Definition room_event_types.h:545
Fired when a remote participant joins the room.
Definition room_event_types.h:392
Fired when a remote participant leaves the room.
Definition room_event_types.h:398
Fired when a participant's encryption status changes.
Definition room_event_types.h:554
Fired when a participant's name changes.
Definition room_event_types.h:533
Fired when a batch of participants has been updated.
Definition room_event_types.h:696
Fired after successfully reconnecting.
Definition room_event_types.h:615
Fired just before attempting to reconnect.
Definition room_event_types.h:612
Fired when the room has reached end-of-stream (no more events).
Definition room_event_types.h:627
Fired when the participant has been moved to another room.
Definition room_event_types.h:690
Fired when the room SID changes (e.g., after migration).
Definition room_event_types.h:515
Fired when the room's info is updated.
Definition room_event_types.h:684
Fired when a SIP DTMF packet is received.
Definition room_event_types.h:588
Fired when a high-level text stream reader is opened.
Definition room_event_types.h:675
Fired when the server refreshes the session access token.
Definition room_event_types.h:621
Fired when a track is muted.
Definition room_event_types.h:482
Fired when a remote participant publishes a track.
Definition room_event_types.h:428
Fired when a remote track is successfully subscribed.
Definition room_event_types.h:446
Fired when subscribing to a remote track fails.
Definition room_event_types.h:470
Fired when a track is unmuted.
Definition room_event_types.h:491
Fired when a remote participant unpublishes a track.
Definition room_event_types.h:437
Fired when a remote track is unsubscribed.
Definition room_event_types.h:458
Fired when a user data packet (non-SIP) is received.
Definition room_event_types.h:572