LiveSeatStore class abstract

Live seat management related interfaces, managing seat operations such as taking seat, leaving seat, locking seat, and releasing seat.

LiveSeatStore Live seat management class for managing seat operations such as taking seat, leaving seat, locking seat, and releasing seat. LiveSeatStore provides a complete set of seat management APIs, including taking seat, leaving seat, locking seat, unlocking seat, kicking user off seat, remote device control, etc. Through this class, seat management functionality can be implemented in the live room.

Key Features

  • Seat Management:Take seat, leave seat, lock seat, unlock seat operations
  • User Management:Kick user off seat, move user to specified seat
  • Device Control:Remote control of user's camera and microphone
  • Event Listening:Listen to seat-related events

Important: Use the LiveSeatStore.create factory method to create a LiveSeatStore instance, passing a valid live room ID.

Note: Seat state updates are delivered through the liveSeatState publisher. Subscribe to it to receive real-time updates of seat data in the room.

Seat Management Operations Overview

Operation Method Description
Take Seat takeSeat User takes seat
Leave Seat leaveSeat User leaves seat
Lock Seat lockSeat Lock seat
Unlock unlockSeat Unlock seat
Kick kickUserOutOfSeat Kick user off seat
Move moveUserToSeat Move user to specified seat

Remote Device Control

Operation Method Description
Open Camera openRemoteCamera Remotely open user's camera
Close Camera closeRemoteCamera Remotely close user's camera
Open Microphone openRemoteMicrophone Remotely open user's microphone
Close Microphone closeRemoteMicrophone Remotely close user's microphone

Topics

Creating Instance

Observing State and Events

Seat Operations

User Management

Remote Device Control

See Also

Constructors

LiveSeatStore()

Properties

hashCode int
The hash code for this object.
no setterinherited
liveSeatState LiveSeatState
Seat state data provided by LiveSeatStore.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

addLiveSeatEventListener(LiveSeatListener listener) → void
Add seat event listener
closeRemoteCamera(String userID) Future<CompletionHandler>
Close remote camera
closeRemoteMicrophone(String userID) Future<CompletionHandler>
Close remote microphone
kickUserOutOfSeat(String userID) Future<CompletionHandler>
Kick user off seat
leaveSeat() Future<CompletionHandler>
Leave seat
lockSeat(int seatIndex) Future<CompletionHandler>
Lock seat
moveUserToSeat({required String userID, required int targetIndex, MoveSeatPolicy policy = MoveSeatPolicy.abortWhenOccupied}) Future<CompletionHandler>
Move user to seat
muteMicrophone() → void
Mute microphone
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
openRemoteCamera({required String userID, required DeviceControlPolicy policy}) Future<CompletionHandler>
Open remote camera
openRemoteMicrophone({required String userID, required DeviceControlPolicy policy}) Future<CompletionHandler>
Open remote microphone
removeLiveSeatEventListener(LiveSeatListener listener) → void
Remove seat event listener
takeSeat(int seatIndex) Future<CompletionHandler>
Take seat
toString() String
A string representation of this object.
inherited
unlockSeat(int seatIndex) Future<CompletionHandler>
Unlock seat
unmuteMicrophone() Future<CompletionHandler>
Unmute microphone

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

create(String liveID) LiveSeatStore
Create LiveSeatStore instance