Construct a new Matrix Call.
Config options.
Private
_statePrivate
Optional
callPrivate
Optional
callPrivate
Optional
callPrivate
candidatePrivate
candidatePrivate
candidatesPrivate
Readonly
clientOptional
directionPrivate
feedsPrivate
Optional
Readonly
forceTURNOptional
groupOptional
hangupOptional
hangupPrivate
Optional
icePrivate
ignorePrivate
invitePrivate
Optional
inviteOptional
inviteePrivate
Readonly
isPrivate
makingPrivate
Optional
opponentPrivate
Optional
opponentPrivate
Optional
opponentPrivate
Optional
opponentPrivate
opponentPrivate
Optional
opponentPrivate
Optional
opponentOptional
peerPrivate
Optional
remotePrivate
remotePrivate
remotePrivate
Optional
remoteSDPStreamPrivate
Readonly
removePrivate
Optional
responseOptional
roomPrivate
Optional
stopPrivate
Optional
successorPrivate
transceiversPrivate
Readonly
turnPrivate
waitPrivate
hasPrivate
hasPrivate
addPrivate
addPrivate
checkPrivate
choosePrivate
collectPrivate
createCreate a datachannel using this call's peer connection.
A human readable label for this datachannel
An object providing configuration options for the data channel.
Private
createPrivate
createPrivate
deletePrivate
deletePrivate
deletePrivate
discardRest
...args: Parameters<CallEventHandlerMap[T]>Rest
...args: Parameters<CallEventHandlerMap[T]>Private
getPrivate
getPrivate
getGenerates and returns localSDPStreamMetadata
localSDPStreamMetadata
Private
getThis method removes all video/rtx codecs from screensharing video transceivers. This is necessary since they can cause problems. Without this the following steps should produce an error: Chromium calls Firefox Firefox answers Firefox starts screen-sharing Chromium starts screen-sharing Call crashes for Chromium with: [96685:23:0518/162603.933321:ERROR:webrtc_video_engine.cc(3296)] RTX codec (PT=97) mapped to PT=96 which is not in the codec list. [96685:23:0518/162603.933377:ERROR:webrtc_video_engine.cc(1171)] GetChangedRecvParameters called without any video codecs. [96685:23:0518/162603.933430:ERROR:sdp_offer_answer.cc(4302)] Failed to set local video description recv parameters for m-section with mid='2'. (INVALID_PARAMETER)
Private
getPrivate
gotPrivate
gotPrivate
gotPrivate
gotHangup a call.
The reason why the call is being hung up.
True to suppress emitting an event.
Private
initConfigure this call from a hangup or reject event. Used by MatrixClient.
The m.call.hangup event
Configure this call from an invite event. Used by MatrixClient.
The m.call.invite event
Check if local video is muted.
If there are multiple video tracks, all of the tracks need to be muted for this to return true. This means if there are no video tracks, this will return true.
True if the local preview video is muted, else false (including if the call is not set up yet).
Check if the microphone is muted.
If there are multiple audio tracks, all of the tracks need to be muted for this to return true. This means if there are no audio tracks, this will return true.
True if the mic is muted, else false (including if the call is not set up yet).
Private
mungeUsed by MatrixClient.
Private
onPrivate
onPrivate
onPrivate
onPrivate
onPrivate
onPrivate
partyPlace a call to this room with call feed.
if you have not specified a listener for 'error' events.
if have passed audio=false.
to use
Private
pushPrivate
pushPrivate
pushPrivate
queuePrivate
queuePrivate
queueOptional
event: EventEmitterEvents | CallEventReplace this call with a new call, e.g. for glare resolution. Used by MatrixClient.
The new call.
Private
sendPrivate
sendPrivate
sendStarts/stops screensharing
new screensharing state
the desired screensharing state
Optional
opts: IScreensharingOptsPrivate
setStarts/stops screensharing Should be used ONLY if the opponent doesn't support SDPStreamMetadata
new screensharing state
the desired screensharing state
Optional
opts: IScreensharingOptsPrivate
shouldPrivate
stopPrivate
terminateReplaces/adds the tracks from the passed stream to the localUsermediaStream
to use a replacement for the local usermedia stream
Private
updatePrivate
updatePrivate
upgradePrivate
wrappedGenerated using TypeDoc
Typed Event Emitter class which can act as a Base Model for all our model and communication events. This makes it much easier for us to distinguish between events, as we now need to properly type this, so that our events are not stringly-based and prone to silly typos.