SightCall Developer Center

Account Login Support
v. 7.2.20
Class: RtccCall

Used to manage a Rtcc call. It can be accessed in outgoing and incoming call scenarios.

RtccCall
new RtccCall()
Example
 rtcc.on('call.create', function(callObj) {
	currentCall = callObj;
}

Methods

accept
accept(callsetup)

Answers incoming call.

Parameters:
Name Type Argument Description
callsetup (Object) <optional>

If provided, specify if audio or video should start {audio:true, video:true}

acceptNoVideo
acceptNoVideo()

Answers incoming call in no video mode DEPRECATED - use accept({audio:true, video:false})

audioMute
audioMute()

Mutes the outgoing audio stream

audioUnMute
audioUnMute()

Unmutes the outgoing audio stream

deafen
deafen(id)

In conference, deafen the specified participant

Parameters:
Name Type Description
id (Integer)

of the participant to deafen

deafenAll
deafenAll()

In conference, deafen all other participants

dropAllAttendees
dropAllAttendees()

In conference, drop all other participants

getDirection
getDirection() → {String}

returns the call direction (incoming or outgoing)

Returns:
(String)

direction incoming or outgoing

getQualityIndicators
getQualityIndicators()

Plugin only

retrieves the current Network Quality Indicators

hangup
hangup()

Hangs-up current call.

kick
kick(id)

In conference, drop the specified participant

Parameters:
Name Type Description
id (Integer)

of the participant to drop

lock
lock()

In conference, lock the conference : no one else can enter

lockActiveSpeaker
lockActiveSpeaker(id)

In conference, sets the floor to the specified participant

Parameters:
Name Type Description
id (Integer)

of the participant to be the active speaker

mirror
mirror()

In conference, turn on mirror mode. There must be only one participant.

mute
mute(id)

In conference, mute the specified participant

Parameters:
Name Type Description
id (Integer)

of the participant to mute

muteAll
muteAll()

In conference, mute all other participants

noPip
noPip()

Hides outgoing video stream in picture-in-picture

off
off(event, callback, context)

Removes callbacks previously bound with RtccCall#on, filtered by event name, function and context.
A callback will be removed only if all arguments provided match how it was bound.

Parameters:
Name Type Argument Description
event (String) | (Array)

The name of the event, or an array of event names

callback (function) <optional>

If provided, only callbacks matching the function will be removed. If not, all callbacks will be removed, which will impact the default user interface.

context (Object) <optional>

If provided, only callbacks with a matching context will be removed.

offAll
offAll(callback, context)

Removes callbacks previously bound with Rtcc#onAll, filtered by function and context.
A callback will be removed only if all arguments provided match how it was bound.

Parameters:
Name Type Argument Description
callback (function) <optional>

If provided, only callbacks matching the function will be removed.

context (Object) <optional>

If provided, only callbacks with a matching context will be removed.

on
on(event, callback, context)

Binds a callback to an event triggered by the API.

Parameters:
Name Type Argument Description
event (String) | (Array)

The name of the event, or an array of event names

callback (function)

The callback that will be invoked when the event triggers.

context (Object) <optional>

Context that will be passed to the callback, as the this keyword.

onAll
onAll(callback, context)

Binds a callback to all events triggered by the API.

Parameters:
Name Type Argument Description
callback (function)

The callback that will be invoked every time an event triggers.

context (Object) <optional>

Context that will be passed to the callback, as the this keyword.
A property eventName will be added to the context, containing the name of the event triggered, as a string.

pause
pause()

Plugin only

pauses the outgoing video stream

pip
pip()

Shows outgoing video stream in picture-in-picture

recordBookmark
recordBookmark(name)

In conference, insert a bookmark in the current recording

Parameters:
Name Type Argument Description
name (String) <optional>

name of the bookmark

recordPause
recordPause()

In conference, pause recording

recordResume
recordResume()

In conference, resume recording

recordStart
recordStart(url, mode)

In conference, starts recording

Parameters:
Name Type Argument Description
url (String)

where to store recording.

mode (String) <optional>

decimal number to select which frames have to be stored

recordStop
recordStop()

In conference, stops recording

requestRemoteVideoProfile
requestRemoteVideoProfile(An)

Request the peer to send a different video profile.
This will trigger a video.profile.request event at the peer.

Parameters:
Name Type Description
An (String)

element of RtccCall#videoProfile

resume
resume()

Plugin only

resumes the outgoing video stream

sendInbandMessage
sendInbandMessage(message)

Send message to call peer. in case of conference, message will be broadcast to all participants

Parameters:
Name Type Description
message (string)

to send

settings
settings()

Plugin Standalone only

Displays settings window.

setWindowSize
setWindowSize(An)

Sets the size of call window

Parameters:
Name Type Description
An (String)

element of Rtcc.videoboxSize

shareList
shareList()

Plugin only

Requests the list of shareable windows.

shareSave
shareSave(filename, islocal)

Plugin only

save a snapshot of current screen share session on the local drive as a PNG

Parameters:
Name Type Argument Description
filename (String) <optional>

name of the file to save

islocal (bool) <optional>

optional: true to save sent screen sharing session, default saves remote session

shareSaveJs
shareSaveJs(islocal)

Plugin only

save a snapshot of current screen share session, as a base 64 Blob in 'image.share.save' event

Parameters:
Name Type Argument Description
islocal (bool) <optional>

optional: true to save sent screen sharing session, default saves remote session

shareSavePdf
shareSavePdf(filename, islocal)

Plugin only

save a snapshot of current screen share session on the local drive as a PDF

Parameters:
Name Type Argument Description
filename (String) <optional>

name of the file to save

islocal (bool) <optional>

optional: true to save sent screen sharing session, default saves remote session

shareShow
shareShow()

Plugin only

Bring back remote share window to front.

shareStart
shareStart(appId)

Start screen sharing.
In Plugin mode, it is possible to specify the shared app id (retrieved with shareList)

Parameters:
Name Type Argument Description
appId (String) <optional>

id of the application to share (Plugin only). if undefined, the selection list will be displayed '00000000' allows to share the full desktop

shareStop
shareStop()

Stop the current screen share.

startRemoteControl
startRemoteControl()

Plugin only

Start remote control session, once an active screen share reception is ongoing

stopRemoteControl
stopRemoteControl()

Plugin only

Stops current remote control session

switchHost
switchHost(id)

Plugin only

In conference, gives the host role to the specified participant

Parameters:
Name Type Description
id (Integer)

of the participant to be the new conference host

turnFlashOff
turnFlashOff()

Plugin only

If available, turn off the flash light

turnFlashOn
turnFlashOn()

Plugin only

If available, turn on the flash light

turnOffActiveSpeaker
turnOffActiveSpeaker()

In conference, disable active speaker stream reception

turnOnActiveSpeaker
turnOnActiveSpeaker()

In conference, enable active speaker stream reception

undeafen
undeafen(id)

In conference, undeafen the specified participant

Parameters:
Name Type Description
id (Integer)

of the participant to undeafen

undeafenAll
undeafenAll()

In conference, undeafen all other participants

unlock
unlock()

In conference, unlock the conference

unlockActiveSpeaker
unlockActiveSpeaker()

In conference, release the floor lock

unmute
unmute(id)

In conference, unmute the specified participant

Parameters:
Name Type Description
id (Integer)

of the participant to unmute

unmuteAll
unmuteAll()

In conference, unmute all other participants

updateSentVideoProfile
updateSentVideoProfile(An)

Selects the outgoing video profile (resolution).

Parameters:
Name Type Description
An (String)

element of RtccCall#videoProfile

videoSave
videoSave(filename)

Plugin only

save a snapshot of current displayed video on the local drive as a PNG

Parameters:
Name Type Argument Description
filename (String) <optional>

name of the file to save

videoSaveJs
videoSaveJs()

Plugin only

save a snapshot of current displayed video, as a base 64 Blob in 'image.video.save' event

videoSavePdf
videoSavePdf(filename)

Plugin only

save a snapshot of current displayed video on the local drive as a PDF

Parameters:
Name Type Argument Description
filename (String) <optional>

name of the file to save

videoStart
videoStart()

Starts the outgoing video stream

videoStop
videoStop()

Stops the outgoing video stream

Events

chrome.screenshare.missing
chrome.screenshare.missing

WebRtc Only
Triggered when chrome screenshare extension not present and sharestart command is issued
Callback is called with parameter: screenshareUrl - the url of the extension download page of the extension

conference.fullstatus
conference.fullstatus

Triggered when the list of participants changes in a conference. Callback argument is a fullstatus object

conference.passiveboxes
conference.passiveboxes

Triggered to inform the UI of passive streams (webRTC only) Callback argument is an array of objects {src, pid}

conference.participants.order
conference.participants.order

Triggered when the floor list order changes in a conference. Callback argument is an array of participant id

error.unavailable
error.unavailable

Triggered when a function is not available with this client type. Callback argument is the name of the function

active
active

Triggered when the call has started

nqi
nqi

Triggered as a request to getQualityIndicators method
Callback is called with an object { "LNQIA":integer, "LNQIV":integer, "RNQIA":integer, "RNQIV":integer}

proceeding
proceeding

Triggered when the outgoing call is proceeding

setlocalstream
setlocalstream

Triggered to inform the UI of local stream change (webRTC only) Callback argument is the local stream id

setremotestream
setremotestream

Triggered to inform the UI of main remote stream change (webRTC only) Callback argument is the remote stream id

terminate
terminate

Triggered when the call is finished
Callback is called with the parameter: (String) reason

inband.message.ready
inband.message.ready

Triggered when it's possible to send and receive inband messages

inband.message.receive
inband.message.receive

Triggered when an inband message has been received.
Callback is called with the parameter: (String) message

peer.disconnect
peer.disconnect

Triggered when a peer has disconnected.
Callback is called with the optional parameter: (String) uid of peer

peer.reconnect
peer.reconnect

Triggered when a peer has reconnected.
Callback is called with the optional parameter: (String) uid of peer

record.bookmark
record.bookmark

Triggered when a bookmark has been inserted
Callback is called with the parameter: timestamp - the timestamp of the inserted bookmark

record.start
record.start

Triggered when the recording starts
Callback is called with the parameter: filename - the filename of the started recording.

record.stop
record.stop

Triggered when the recording stops
Callback is called with the parameter: reason - the reason for which the recording has stopped.

share.local.list
share.local.list

Triggered as an answer to shareList Callback argument is an object {item_number, item_id, item_name}

share.local.start
share.local.start

Triggered when the local share starts

share.local.stop
share.local.stop

Triggered when the local share stops

share.remote.framesize
share.remote.framesize

Triggered when the remote share resolution changes (WebRTC only) Callback argument is an object {width, height}

share.remote.start
share.remote.start

Triggered when the remote share starts Callback argument is the share stream id (webRTC only)

share.remote.stop
share.remote.stop

Triggered when the remote share stops

share.remote.remotecontrol.start
share.remote.remotecontrol.start

Plugin only Triggered when the remote share starts remote control

share.remote.remotecontrol.stop
share.remote.remotecontrol.stop

Plugin only Triggered when the remote share stops remote control

sound.mute
sound.mute

Triggered when the sound is disabled

sound.unmute
sound.unmute

Triggered when the sound is enabled

torch_light.ko
torch_light.ko

Triggered if torchlight is not available (plugin only)

torch_light.ok
torch_light.ok

Triggered if torchlight is available (plugin only)

video.framesize
video.framesize

Triggered when the decoded framesize changes.
Callback is called with the parameter VideoFrameSize and contains the video dimensions.

video.local.start
video.local.start

Triggered when the local video starts

video.local.stop
video.local.stop

Triggered when the local video stops

video.remote.start
video.remote.start

Triggered when the remote video starts

video.remote.stop
video.remote.stop

Triggered when the remote video stops