VoIP class

The parent highlevel voip class, this trnslates matrix events to webrtc methods via CallSession or GroupCallSession methods

Constructors

VoIP(Client client, WebRTCDelegate delegate, {bool enableSFUE2EEKeyRatcheting = false})

Properties

calls Map<VoipId, CallSession>
no setter
client Client
final
currentCID ↔ VoipId?
getter/setter pair
currentGroupCID ↔ VoipId?
getter/setter pair
currentSessionId String
the current instance of voip, changing this will drop any ongoing mesh calls with that sessionId
getter/setter pair
delegate WebRTCDelegate
final
enableSFUE2EEKeyRatcheting bool
set to true if you want to use the ratcheting mechanism with your keyprovider remember to set the window size correctly on your keyprovider
final
groupCalls Map<VoipId, GroupCallSession>
no setter
hashCode int
The hash code for this object.
no setterinherited
incomingCallRoomId Map<String, String>
map of roomIds to the invites they are currently processing or in a call with used for handling glare in p2p calls
no setter
localParticipant CallParticipant?
no setter
localPartyId String
no setter
onIncomingCall → CachedStreamController<CallSession>
final
onIncomingGroupCall StreamController<GroupCallSession>
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

createGroupCallFromRoomStateEvent(CallMembership membership, {bool emitHandleNewGroupCall = true}) Future<void>
Create a new group call from a room state event.
createNewCall(CallOptions opts) CallSession
fetchOrCreateGroupCall(String groupCallId, Room room, CallBackend backend, String? application, String? scope) Future<GroupCallSession>
Create a new group call in an existing room.
getCallType(String sdp) CallType
getGroupCallById(String roomId, String groupCallId) GroupCallSession?
getIceServers() Future<List<Map<String, dynamic>>>
hasActiveCall(Room room) bool
inviteToCall(Room room, CallType type, {String? userId, String? deviceId}) Future<CallSession>
Make a P2P call to room
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onAssertedIdentityReceived(Room room, Map<String, dynamic> content) Future<void>
onCallAnswer(Room room, String remoteUserId, String? remoteDeviceId, Map<String, dynamic> content) Future<void>
onCallCandidates(Room room, Map<String, dynamic> content) Future<void>
onCallHangup(Room room, Map<String, dynamic> content) Future<void>
onCallInvite(Room room, String remoteUserId, String? remoteDeviceId, Map<String, dynamic> content) Future<void>
onCallNegotiate(Room room, Map<String, dynamic> content) Future<void>
onCallReject(Room room, Map<String, dynamic> content) Future<void>
onCallSelectAnswer(Room room, Map<String, dynamic> content) Future<void>
onSDPStreamMetadataChangedReceived(Room room, Map<String, dynamic> content) Future<void>
setGroupCallById(GroupCallSession groupCallSession) → void
toString() String
A string representation of this object.
inherited

Operators

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

Static Properties

customTxid String?
getter/setter pair