janus_client library

This is a preliminary API providing most WebRTC Operations out of the box using Janus Server

Classes

AttachedStreams
AudioBridgeConfiguredEvent
AudioBridgeDestroyedEvent
AudioBridgeEvent
AudioBridgeJoinedEvent
AudioBridgeLeavingEvent
AudioBridgeNewParticipantsEvent
AudioBridgeParticipants
AudioBridgeTalkingEvent
AudioRoomCreatedResponse
BaseStream
BitrateMeasurement
Holds a bitrate sample in bits per second together with the sampled time.
CompactScreenSelectDialog
Minimal macOS-flavored layout: centered title, SegmentedButton for tabs, badge-style thumbnails, and tonal share action.
CompactScreenSelectDialogState
ConfigureStream
Represents a single remote simulcast layer configuration request.
CreateMediaItem
Dependencies
EventMessage
HangupResult
JanusAudioBridgePlugin
JanusClient
JanusClientInfo
JanusEchoTestPlugin
JanusError
JanusEvent
JanusPlugin
JanusPluginAudiobridge
JanusPluginEchotest
JanusPluginNosip
JanusPluginRecordplay
JanusPlugins
JanusPluginSip
JanusPluginStreaming
JanusPluginTextroom
JanusPluginVideocall
JanusPluginVideoroom
JanusPluginVoicemail
JanusSession
JanusSipPlugin
JanusStreamingPlugin
JanusStreamStats
Utility wrapper around RTCPeerConnection.getStats() that offers incremental bitrate and network quality helpers.
JanusTextRoom
room : 1234 description : "Demo Room" pin_required : false num_participants : 0 history : 0
JanusTextRoomPlugin
JanusTransport
JanusTransportHttp
JanusTransportNanomsg
JanusTransportWebsockets
JanusVideoCallPlugin
JanusVideoRoom
room : 1234 description : "
JanusVideoRoomPlugin
Wrapper around the Janus VideoRoom plugin with typed helpers.
JanusWebRTCHandle
Media
NetworkQualitySnapshot
Captures the outcome of a network quality evaluation.
NetworkQualityThresholds
Classification thresholds that translate bitrate samples into NetworkQuality values.
Participants
Plugindata
Plugins
Ports
Publishers
PublisherStream
RemoteTrack
RestJanusTransport
This transport class is provided to JanusClient instances in transport property in order to
inform the plugin that we need to use Rest as a transport mechanism for communicating with Janus Server.
therefore for events sent by Janus server is received with the help of polling.
Result
RTCIceServer
RtpForwarderCreated
RtpForwardStopped
RtpStreamQuery
Declarative matcher used to locate a specific RTP stats entry.
ScreenSelectDialog
Picker dialog for desktop display/window capture (DesktopCapturerSource).
ScreenSelectDialogState
ScreenSelectDialogStyle
Visual tokens for ScreenSelectDialog. Pass copyWith overrides for branding; unspecified fields fall back to sensible defaults at build time.
ScreenSelectThumbnail
Single desktop-capture source tile with live thumbnail/name updates.
SidebarScreenSelectDialog
Wider “studio” layout: left rail for category + source list, large preview on the right, outlined cancel + filled share.
SidebarScreenSelectDialogState
SipAcceptedEvent
SipAcceptedEventResult
SipCallingEvent
SipCallingEventResult
SipHangupEvent
SipIncomingCallEvent
SipIncomingCallEventResult
SipMissedCallEvent
SipMissedCallEventResult
SipProceedingEvent
SipProceedingEventResult
SipProgressEvent
SipProgressEventResult
SipRegisteredEvent
SipRegisteredEventResult
SipRingingEvent
SipRingingEventResult
SipTransferCallEvent
SipTransferCallEventResult
SipUnRegisteredEvent
SipUnRegisteredEventResult
StreamingMount
StreamingMountEdited
StreamingMountPoint
StreamingMountPointInfo
StreamingPluginPreparingEvent
StreamingPluginStoppingEvent
StreamingPluginStream
Streams
SubscriberUpdateStream
ThumbnailWidget
Legacy thumbnail tile; prefer ScreenSelectThumbnail.
Transports
TypedEvent<T>
UnsubscribeStreams
VideoCallAcceptedEvent
VideoCallCallingEvent
VideoCallEvent
VideoCallHangupEvent
VideoCallIncomingCallEvent
VideoCallRegisteredEvent
VideoCallRegisteredListEvent
VideoCallUpdateEvent
VideoRoomAttachedEvent
VideoRoomConfigured
VideoRoomEvent
VideoRoomJoinedEvent
VideoRoomLeavingEvent
VideoRoomListParticipantsResponse
VideoRoomListResponse
VideoRoomNewPublisherEvent
VideoRoomUnPublishedEvent
VideoRoomUpdatedEvent
WebSocketJanusTransport
This transport class is provided to JanusClient instances in transport property in order to
inform the plugin that we need to use WebSockets as a transport mechanism for communicating with Janus Server.
sendCompleterTimeout is used to set timeout duration for each send request to Janus server resolving against transaction.

Enums

BitrateUnit
Output unit that bitrates can be converted into when formatting results.
ConfigureStreamQuality
Quality tiers used when switching among simulcast layers.
NetworkQuality
High-level network state derived from bitrate samples.
NetworkQualityReason
Explains how a NetworkQualitySnapshot was resolved.
RtpStreamDirection
Describes which WebRTC statistics bucket should be inspected.
ScreenSelectionStyle
SipHoldState

Functions

getCameraDeviceId(dynamic front) Future<String>
getUuid() → Uuid
parse(dynamic dynamic) → dynamic
randomString({int len = 10, String charSet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#\$%^&*()_+'}) → dynamic
stopAllTracks(MediaStream? stream) Future<void>
stringify(dynamic dynamic) → dynamic

Typedefs

BitrateFormatter = String Function(BitrateMeasurement measurement)
Signature for functions that turn a BitrateMeasurement into display text.
ScreenSelectActionsBuilder = Widget Function(BuildContext context, VoidCallback onCancel, VoidCallback onShare, bool shareEnabled)
ScreenSelectEmptyBuilder = Widget Function(BuildContext context, SourceType type, String message)
ScreenSelectHeaderBuilder = Widget Function(BuildContext context, VoidCallback onClose, String title)
ScreenSelectLoadingBuilder = Widget Function(BuildContext context)
ScreenSourceTapCallback = void Function(DesktopCapturerSource source)
ScreenThumbnailBuilder = Widget Function(BuildContext context, DesktopCapturerSource source, bool selected, VoidCallback onTap)