VoxaTransport class abstract

Media-transport abstraction the engine talks to.

Deliberately free of LiveKit types (plan §10, last row): the engine and event translator are written and tested against this interface; only livekit_adapter.dart may touch livekit_client.

Constructors

VoxaTransport()

Properties

events Stream<VoxaTransportEvent>
Room events, in arrival order.
no setter
hashCode int
The hash code for this object.
no setterinherited
remoteIdentities List<String>
Identities of remote participants currently in the room.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
tokenExpiresAt DateTime?
Expiry of the app-level (Agora) token used to join, when known — populated by the gateway exchange; null in raw-JWT dev mode.
no setter

Methods

audioLevels() Map<String?, double>
Instantaneous audio levels in 0.0–1.0; key null = local participant, otherwise the remote identity. Polled by the engine's volume-indication timer.
connect({required String url, required String token, String? channelId, String? identity}) Future<void>
Connect to the media server. Completes when the room is joined; throws VoxaTransportException on failure.
connectionQualities() Map<String?, VoxaConnectionQuality>
Connection quality per participant; key null = local. Polled by the engine's stats timer for onNetworkQuality.
disconnect() Future<void>
dispose() Future<void>
Release underlying resources. The transport is unusable afterwards.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
renewToken(String token) Future<DateTime?>
Validate a renewed app-level token and store it for future reconnect exchanges. Returns the new expiry when known. The engine's Agora renewToken maps here.
setCameraEnabled(bool enabled) Future<void>
setCameraPosition({required bool front}) Future<void>
true = front camera, false = back camera.
setMicrophoneEnabled(bool enabled) Future<void>
setRemoteAudioEnabled({required String identity, required bool enabled}) Future<void>
setRemoteVideoEnabled({required String identity, required bool enabled}) Future<void>
setRemoteVideoQuality({required String identity, required bool high}) Future<void>
Subscription layer selection for a remote's video (Agora setRemoteVideoStreamType: high=true → high stream).
setScreenShareEnabled(bool enabled) Future<void>
Screen-share publishing on/off (Agora start/stopScreenCapture).
setSimulcastEnabled(bool enabled) Future<void>
Publish-side simulcast (Agora dual-stream). Must be set before connect to take effect (Agora's documented usage too).
setSpeakerphoneOn(bool on) Future<void>
setVideoEncoderConfig({int? width, int? height, int? frameRate, int? bitrateKbps}) Future<void>
Video capture/encode parameters for camera publishing — applied to the current track when live, and to subsequent publishes.
startLocalPreview() Future<void>
Pre-connect local camera preview (Agora startPreview before join). The preview track is released when the room connects; publishing then recreates the camera via the normal enable path.
stopLocalPreview() Future<void>
toString() String
A string representation of this object.
inherited
videoTrackFor(String? identity) Object?
The renderable video track for identity, or the local camera track when identity is null. Returns null when no track is available. Typed Object to keep this interface media-engine agnostic; the view layer casts to the concrete track type.

Operators

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