JanusVideoRoomPlugin class Null safety

Inheritance

Constructors

JanusVideoRoomPlugin({dynamic handleId, dynamic context, dynamic transport, dynamic session})

Properties

data Stream<RTCDataChannelMessage>?
read / write, inherited
handleId int?
read / write, inherited
hashCode int
The hash code for this object. [...]
read-only, inherited
localStream Stream<MediaStream?>?
read / write, inherited
messages Stream<EventMessage>?
read / write, inherited
onData Stream<RTCDataChannelState>?
read / write, inherited
plugin String?
read / write, inherited
pollingActive bool
read / write, inherited
remoteStream Stream<MediaStream>?
read / write, inherited
remoteTrack Stream<RemoteTrack>?
read / write, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
typedMessages Stream<TypedEvent<JanusEvent>>?
read / write, inherited
webRTCHandle JanusWebRTCHandle?
read / write, inherited

Methods

createAnswer({bool audioRecv = true, bool videoRecv = true, bool audioSend = true, bool videoSend = true}) Future<RTCSessionDescription>
This method is used to create webrtc answer, sets local description on internal PeerConnection object It supports both style of answer creation that is plan-b and unified.
inherited
createNullableAnswer({bool audioRecv = true, bool videoRecv = true, bool audioSend = true, bool videoSend = true}) Future<RTCSessionDescription?>
inherited
createOffer({bool audioRecv = true, bool videoRecv = true, bool audioSend = true, bool videoSend = true}) Future<RTCSessionDescription>
This method is used to create webrtc offer, sets local description on internal PeerConnection object It supports both style of offer creation that is plan-b and unified.
inherited
createRoom(String roomId, {bool permanent = false, String? pin, Map<String, dynamic>? extras, List<String>? allowed, String? isPrivate, String description = '', String? secret}) Future
Used to create a new video room
destroyRoom(String roomId, {String? secret, bool? permanent}) Future
Used to destroy an existing video room, whether created dynamically or statically
dispose() Future<void>
This function takes care of cleaning up all the internal stream controller and timers used to make janus_client compatible with streams and polling support
inherited
editRoom(String roomId, {String? secret, String? newDescription, String? newSecret, String? newPin, String? newIsPrivate, String? newRequirePvtId, String? newBitrate, String? newFirFreq, int? newPublisher, bool? newLockRecord, Map? extras, bool? permanent}) Future
This allows you to modify the room description, secret, pin and whether it's private or not: you won't be able to modify other more static properties, like the room ID, the sampling rate, the extensions-related stuff and so on
exists(int roomId) Future
You can check whether a room exists using the exists
inherited
getRoomParticipants(String roomId) Future<VideoRoomListParticipantsResponse?>
get list of participants in a existing video room
getRooms() Future<VideoRoomListResponse?>
get list of all rooms
handleRemoteJsep(RTCSessionDescription? data) Future<void>
It allows you to set Remote Description on internal peer connection, Received from janus server
inherited
hangup() Future<void>
sends hangup request on current active JanusVideoRoomPlugin to tear off active PeerConnection in-effect leaving the room.
override
init() Future<void>
used internally for initializing plugin, exposed only to be called via JanusSession attach method. not useful for external operations
inherited
initDataChannel({RTCDataChannelInit? rtcDataChannelInit}) Future<void>
this method Initialize data channel on handle's internal peer connection object. It is mainly used for Janus TextRoom and can be used for other plugins with data channel support
inherited
initializeMediaDevices({bool? useDisplayMediaDevices = false, Map<String, dynamic>? mediaConstraints}) Future<MediaStream?>
method that generates MediaStream from your device camera that will be automatically added to peer connection instance internally used by janus client [...]
inherited
joinPublisher(String roomId, {String? pin, int? id, String? token, String? displayName}) Future<void>
joins the JanusVideoRoom as a media publisher on provided roomId with its name as displayName and optionally can provide your own id.
joinSubscriber(String roomId, {List<PublisherStream>? streams, int? privateId, int? feedId, String? pin, String? token}) Future<Future<void> Function({String? audioRecv, String? audioSend, String? videoRecv, String? videoSend})>
joins the JanusVideoRoom as a media publisher on provided roomId with its name as displayName and optionally can provide your own id.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
onCreate() → void
override
publishMedia({String? audioCodec, String? videCodec, int? bitrate, bool? record, String? filename, String? newDisplayName, int? audioLevelAverage, int? audioActivePackets, List<Map<String, String>>? descriptions, RTCSessionDescription? offer}) Future<void>
sends the publish request to JanusVideoRoom. It should be called once VideoRoomJoinedEvent is received from server.
send({dynamic data, RTCSessionDescription? jsep}) Future
This method is crucial for communicating with Janus Server's APIs it takes in data and optionally jsep for negotiating with webrtc peers
inherited
sendData(String message) Future<void>
Send text message on existing text room using data channel with same label as specified during initDataChannel() method call. [...]
inherited
subscribeToStreams(List<PublisherStream> streams) Future<void>
switchCamera() Future<bool>
a utility method which can be used to switch camera of user device if it has more than one camera
inherited
toString() String
A string representation of this object. [...]
inherited

Operators

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