Room class Room
Room is the primary construct for LiveKit conferences. It contains a group of Participants, each publishing and subscribing to Tracks. Notifies changes to its state via two ways, by assigning a delegate, or using it as a provider. Room will trigger a change notification update when
- state changes
- participant membership changes
- active speakers are different
- Inheritance
-
- Object
- ChangeNotifier
- Room
- Mixed-in types
- Available extensions
Constructors
- Room.new({@Deprecated('deprecated, please use connectOptions in room.connect()') ConnectOptions connectOptions = const ConnectOptions(), RoomOptions roomOptions = const RoomOptions(), Engine? engine})
Properties
-
activeSpeakers
→ UnmodifiableListView<
Participant< TrackPublication< >Track> > -
a list of participants that are actively speaking, including local participant.
no setter
- canPlaybackAudio → bool
-
Available on Room, provided by the RoomHardwareManagementMethods extension
no setter - connectionState → ConnectionState
-
connection state of the room
no setter
- connectOptions → ConnectOptions
-
no setter
- disposeFuncCount → int
-
no setterinherited
- e2eeManager → E2EEManager?
-
no setter
- engine → Engine
-
final
-
events
→ EventsEmitter<
RoomEvent> -
finalinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasListeners → bool
-
Whether any listeners are currently registered.
no setterinherited
- isDisposed → bool
-
no setterinherited
- isRecording → bool
-
no setter
- localParticipant → LocalParticipant?
-
the current participant
no setter
- metadata → String?
-
metadata of the room
no setter
- name → String?
-
name of the room
no setter
-
remoteParticipants
→ UnmodifiableMapView<
String, RemoteParticipant> -
map of identity: [
RemoteParticipant
]no setter - roomOptions → RoomOptions
-
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- selectedAudioInputDeviceId → String?
-
Available on Room, provided by the RoomHardwareManagementMethods extension
Get current audio input device.no setter - selectedAudioOutputDeviceId → String?
-
Available on Room, provided by the RoomHardwareManagementMethods extension
Get current audio output device.no setter - selectedVideoInputDeviceId → String?
-
Available on Room, provided by the RoomHardwareManagementMethods extension
Get current video input device.no setter - serverRegion → String?
-
Server region
no setter
- serverVersion → String?
-
Server version
no setter
- speakerOn → bool?
-
Available on Room, provided by the RoomHardwareManagementMethods extension
Get mobile device's speaker status.no setter
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be called when the object changes.
inherited
-
connect(
String url, String token, {ConnectOptions? connectOptions, RoomOptions? roomOptions, FastConnectOptions? fastConnectOptions}) → Future< void> -
createListener(
{bool synchronized = false}) → EventsListener< RoomEvent> -
inherited
-
disconnect(
) → Future< void> - Disconnects from the room, notifying server of disconnection.
-
dispose(
) → Future< bool> -
Discards any resources used by the object. After this is called, the
object is not in a usable state and should be discarded (calls to
addListener will throw after the object is disposed).
inherited
-
getParticipantByIdentity(
String identity) → Participant< TrackPublication< ?Track> > - retrieves a participant by identity
-
getSid(
) → Future< String> -
Available on Room, provided by the RoomPrivateMethods extension
server assigned unique room id. returns once a sid has been issued by the server. -
handleStreamChunk(
DataStream_Chunk chunk) → void -
Available on Room, provided by the DataStreamRoomMethods extension
-
handleStreamHeader(
DataStream_Header streamHeader, String participantIdentity) → Future< void> -
Available on Room, provided by the DataStreamRoomMethods extension
-
handleStreamTrailer(
DataStream_Trailer trailer) → void -
Available on Room, provided by the DataStreamRoomMethods extension
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notifyListeners(
) → void -
Call all the registered listeners.
inherited
-
onDispose(
OnDisposeFunc func) → void -
inherited
-
prepareConnection(
String url, String? token) → Future< void> - prepareConnection should be called as soon as the page is loaded, in order to speed up the connection attempt. This function will
-
registerByteStreamHandler(
String topic, ByteStreamHandler callback) → void -
Available on Room, provided by the DataStreamRoomMethods extension
-
registerRpcMethod(
String method, RpcRequestHandler handler) → void -
Available on Room, provided by the RoomRPCMethods extension
Register a handler for incoming RPC requests. @param method, the method name to listen for. When a request with this method name is received, the handler will be called. The handler should return a string payload to send back to the caller. If the handler returns null, an error will be sent back to the caller. -
registerTextStreamHandler(
String topic, TextStreamHandler callback) → void -
Available on Room, provided by the DataStreamRoomMethods extension
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that are
notified when the object changes.
inherited
-
sendSimulateScenario(
{int? speakerUpdate, bool? nodeFailure, bool? migration, bool? serverLeave, bool? switchCandidate, bool? signalReconnect, bool? fullReconnect, int? subscriberBandwidth}) → Future< void> -
Available on Room, provided by the RoomDebugMethods extension
To be used for internal testing purposes only. -
setAudioInputDevice(
MediaDevice device) → Future< void> -
Available on Room, provided by the RoomHardwareManagementMethods extension
Set audio input device. -
setAudioOutputDevice(
MediaDevice device) → Future< void> -
Available on Room, provided by the RoomHardwareManagementMethods extension
Set audio output device. -
setE2EEEnabled(
bool enabled) → Future< void> -
setSpeakerOn(
bool speakerOn, {bool forceSpeakerOutput = false}) → Future< void> -
Available on Room, provided by the RoomHardwareManagementMethods extension
speakerOn
set speakerphone on or off, by default wired/bluetooth headsets will still be prioritized even if set to true.forceSpeakerOutput
if true, will force speaker output even if headphones or bluetooth is connected, only supported on iOS for now -
setVideoInputDevice(
MediaDevice device) → Future< void> -
Available on Room, provided by the RoomHardwareManagementMethods extension
Set video input device. -
startAudio(
) → Future< void> -
Available on Room, provided by the RoomHardwareManagementMethods extension
-
toString(
) → String -
A string representation of this object.
inherited
-
unregisterByteStreamHandler(
String topic) → void -
Available on Room, provided by the DataStreamRoomMethods extension
-
unregisterRpcMethod(
String method) → void -
Available on Room, provided by the RoomRPCMethods extension
Unregister a handler for incoming RPC requests. @param method, the method name to unregister. -
unregisterTextStreamHandler(
String topic) → void -
Available on Room, provided by the DataStreamRoomMethods extension
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited