SkylinkConstants

Namespace

Members

(static, constant) BUNDLE_POLICY :Object

Description:
  • Learn more about how ICE works in this article here.
    The list of available Peer connection bundle policies.
Source:
Since:
  • 0.6.18
Properties:
Name Type Description
MAX_COMPAT String

Value "max-compat" The value of the bundle policy to generate ICE candidates for each media type so each media type flows through different transports.

MAX_BUNDLE String

Value "max-bundle" The value of the bundle policy to generate ICE candidates for one media type so all media type flows through a single transport.

BALANCED String

Value "balanced" The value of the bundle policy to use MAX_BUNDLE if Peer supports it, else fallback to MAX_COMPAT.

NONE String

Value "none" The value of the bundle policy to not use any media bundle. This removes the a=group:BUNDLE line from session descriptions.

Learn more about how ICE works in this article here.
The list of available Peer connection bundle policies.
Type:
  • Object

(static, constant) CANDIDATE_GENERATION_STATE :Object

Description:
  • Learn more about how ICE works in this article here.
    The list of Peer connection ICE gathering states.
Source:
Since:
  • 0.4.1
Properties:
Name Type Description
GATHERING String

Value "gathering" The value of the state when Peer connection is gathering ICE candidates. These ICE candidates are sent to Peer for its connection to check for a suitable matching pair of ICE candidates to establish an ICE connection for stream audio, video and data. See ICE_CONNECTION_STATE for ICE connection status. This state cannot happen until Peer connection remote "offer" / "answer" session description is set. See PEER_CONNECTION_STATE for session description exchanging status.

COMPLETED String

Value "completed" The value of the state when Peer connection gathering of ICE candidates has completed.

Learn more about how ICE works in this article here.
The list of Peer connection ICE gathering states.
Type:
  • Object

(static, constant) CANDIDATE_PROCESSING_STATE :Object

Description:
  • Learn more about how ICE works in this article here.
    The list of Peer connection remote ICE candidate processing states for trickle ICE connections.
Source:
Since:
  • 0.6.16
Properties:
Name Type Description
RECEIVED String

Value "received" The value of the state when the remote ICE candidate was received.

DROPPED String

Value "received" The value of the state when the remote ICE candidate is dropped.

BUFFERED String

Value "buffered" The value of the state when the remote ICE candidate is buffered.

PROCESSING String

Value "processing" The value of the state when the remote ICE candidate is being processed.

PROCESS_SUCCESS String

Value "processSuccess" The value of the state when the remote ICE candidate has been processed successfully. The ICE candidate that is processed will be used to check against the list of locally generated ICE candidate to start matching for the suitable pair for the best ICE connection.

PROCESS_ERROR String

Value "processError" The value of the state when the remote ICE candidate has failed to be processed.

Learn more about how ICE works in this article here.
The list of Peer connection remote ICE candidate processing states for trickle ICE connections.
Type:
  • Object

(static, constant) DATA_CHANNEL_MESSAGE_ERROR :object

Description:
  • The list of Datachannel sending message error types.

Source:
Since:
  • 0.6.16
Properties:
Name Type Description
MESSAGE String

Value "message" The value of the Datachannel sending message error type when encountered during sending P2P message from sendP2PMessage.

TRANSFER String

Value "transfer" The value of the Datachannel sending message error type when encountered during data transfers from sendURLData or sendBlobData.

The list of Datachannel sending message error types.

Type:
  • object

(static, constant) DATA_CHANNEL_STATE :object

Description:
  • The list of Datachannel connection states.

Source:
Since:
  • 0.1.0
Properties:
Name Type Description
CONNECTING String

Value "connecting" The value of the state when Datachannel is attempting to establish a connection.

OPEN String

Value "open" The value of the state when Datachannel has established a connection.

CLOSING String

Value "closing" The value of the state when Datachannel connection is closing.

CLOSED String

Value "closed" The value of the state when Datachannel connection has closed.

ERROR String

Value "error" The value of the state when Datachannel has encountered an exception during connection.

CREATE_ERROR String

Value "createError" The value of the state when Datachannel has failed to establish a connection.

BUFFERED_AMOUNT_LOW String

Value "bufferedAmountLow" The value of the state when Datachannel when the amount of data buffered to be sent falls below the Datachannel threshold. This state should occur only during after sendBlobData or sendURLData or sendP2PMessage.

SEND_MESSAGE_ERROR String

Value "sendMessageError" The value of the state when Datachannel when data transfer packets or P2P message fails to send. This state should occur only during after sendBlobData or sendURLData or sendP2PMessage.

The list of Datachannel connection states.

Type:
  • object

(static, constant) DATA_CHANNEL_TYPE :object

Description:
  • The list of Datachannel types.

Source:
Since:
  • 0.6.1
Properties:
Name Type Description
MESSAGING String

Value "messaging" The value of the Datachannel type that is used only for messaging in sendP2PMessage. However for Peers that do not support simultaneous data transfers, this Datachannel type will be used to do data transfers (1 at a time). Each Peer connections will only have one of this Datachannel type and the connection will only close when the Peer connection is closed (happens when PEER CONNECTION STATE event triggers parameter payload state as CLOSED for Peer).

DATA String

[UNAVAILABLE] Value "data" The value of the Datachannel type that is used only for a data transfer in sendURLData and sendBlobData. The connection will close after the data transfer has been completed or terminated (happens when DATA TRANSFER STATE triggers parameter payload state as DOWNLOAD_COMPLETED, UPLOAD_COMPLETED, REJECTED, CANCEL or ERROR for Peer).

The list of Datachannel types.

Type:
  • object

(static, constant) DATA_TRANSFER_DATA_TYPE :Object

Description:
  • The list of supported data transfer data types.

Source:
Since:
  • 2.0.0
Properties:
Name Type Description
BINARY_STRING String

Value "binaryString" The value of data transfer data type when Blob binary data chunks encoded to Base64 encoded string are sent or received over the Datachannel connection for the data transfer session. Used only in sendBlobData when parameter sendChunksAsBinary value is false.

ARRAY_BUFFER String

Value "arrayBuffer" The value of data transfer data type when ArrayBuffer binary data chunks are sent or received over the Datachannel connection for the data transfer session. Used only in sendBlobData when parameter sendChunksAsBinary value is true.

BLOB String

Value "blob" The value of data transfer data type when Blob binary data chunks are sent or received over the Datachannel connection for the data transfer session. Used only in sendBlobData when parameter sendChunksAsBinary value is true.

STRING String

Value "string" The value of data transfer data type when only string data chunks are sent or received over the Datachannel connection for the data transfer session. Used only in sendURLData.

The list of supported data transfer data types.

Type:
  • Object

(static, constant) DATA_TRANSFER_DIRECTION :Object

Description:
  • The list of data transfers directions.

Source:
Since:
  • 2.2.5
Properties:
Name Type Description
UPLOAD String

Value "upload" The value of the data transfer direction when User is uploading data to Peer.

DOWNLOAD String

Value "download" The value of the data transfer direction when User is downloading data from Peer.

The list of data transfers directions.

Type:
  • Object

(static, constant) DATA_TRANSFER_SESSION_TYPE :Object

Description:
  • The list of data transfers session types.

Source:
Since:
  • 0.1.0
Properties:
Name Type Description
BLOB String

Value "blob" The value of the session type for sendBlobData data transfer.

DATA_URL String

Value "dataURL" sendURLData data transfer. The value of the session type for

The list of data transfers session types.

Type:
  • Object

(static, constant) DATA_TRANSFER_STATE :Object

Description:
  • The list of data transfer states.

Source:
Since:
  • 0.4.0
Properties:
Name Type Description
UPLOAD_REQUEST String

Value "request" The value of the state when receiving an upload data transfer request from Peer to User. At this stage, the upload data transfer request from Peer may be accepted or rejected with the Skylink#acceptDataTransfer invoked by User.

UPLOAD_STARTED String

Value "uploadStarted" The value of the state when the data transfer request has been accepted and data transfer will start uploading data to Peer. At this stage, the data transfer may be terminated with the Skylink#cancelDataTransfer.

DOWNLOAD_STARTED String

Value "downloadStarted" The value of the state when the data transfer request has been accepted and data transfer will start downloading data from Peer. At this stage, the data transfer may be terminated with the Skylink#cancelDataTransfer.

REJECTED String

Value "rejected" The value of the state when upload data transfer request to Peer has been rejected and terminated.

USER_REJECTED String

Value "userRejected" The value of the state when User rejected and terminated upload data transfer request from Peer.

UPLOADING String

Value "uploading" The value of the state when data transfer is uploading data to Peer.

DOWNLOADING String

Value "downloading" The value of the state when data transfer is downloading data from Peer.

UPLOAD_COMPLETED String

Value "uploadCompleted" The value of the state when data transfer has uploaded successfully to Peer.

DOWNLOAD_COMPLETED String

Value "downloadCompleted" The value of the state when data transfer has downloaded successfully from Peer.

CANCEL String

Value "cancel" The value of the state when data transfer has been terminated from / to Peer.

ERROR String

Value "error" The value of the state when data transfer has errors and has been terminated from / to Peer.

The list of data transfer states.

Type:
  • Object

(static, constant) GET_CONNECTION_STATUS_STATE :Object

Description:
Source:
Since:
  • 0.1.0
Properties:
Name Type Description
RETRIEVING number

Value 0 The value of the state when getConnectionStatus is retrieving the Peer connection stats.

RETRIEVE_SUCCESS number

Value 1 The value of the state when getConnectionStatus has retrieved the Peer connection stats successfully.

RETRIEVE_ERROR number

Value -1 The value of the state when getConnectionStatus has failed retrieving the Peer connection stats.

The list of Skylink#getConnectionStatus retrieval states.

Type:
  • Object

(static, constant) GET_PEERS_STATE :Object

Description:
  • Note that this feature requires "isPrivileged" flag to be enabled for the App Key provided in Skylink initOptions, as only Users connecting using the App Key with this flag enabled (which we call privileged Users / Peers) can retrieve the list of Peer IDs from Rooms within the same App space. Read more about privileged App Key feature here.
    The list of getPeers method retrieval states.
Source:
Since:
  • 0.6.1
Properties:
Name Type Description
ENQUIRED String

Value "enquired" The value of the state when getPeers is retrieving the list of Peer IDs from Rooms within the same App space from the Signaling server.

RECEIVED String

Value "received" The value of the state when getPeers has retrieved the list of Peer IDs from Rooms within the same App space from the Signaling server successfully.

Note that this feature requires "isPrivileged" flag to be enabled for the App Key provided in Skylink initOptions, as only Users connecting using the App Key with this flag enabled (which we call privileged Users / Peers) can retrieve the list of Peer IDs from Rooms within the same App space. Read more about privileged App Key feature here.
The list of getPeers method retrieval states.
Type:
  • Object

(static, constant) HANDSHAKE_PROGRESS :Object

Description:
  • The list of Peer connection states.

Source:
Since:
  • 0.1.0
Properties:
Name Type Description
ENTER String

Value "enter" The value of the connection state when Peer has just entered the Room. At this stage, PEER_JOINED is triggered.

WELCOME String

Value "welcome" The value of the connection state when Peer is aware that User has entered the Room. At this stage, PEER_JOINED is triggered and Peer connection may commence.

OFFER String

Value "offer" The value of the connection state when Peer connection has set the local / remote "offer" session description to start streaming connection.

ANSWER String

Value "answer" The value of the connection state when Peer connection has set the local / remote "answer" session description to establish streaming connection.

ANSWER_ACK string

Value "answerAck" The value of the connection state when Peer connection is aware that the user has received the answer and the handshake is complete.

ERROR string

Value "error" The value of the connection state when Peer connection has failed to establish streaming connection. This happens when there are errors that occurs in creating local "offer" / "answer", or when setting remote / local "offer" / "answer".

The list of Peer connection states.

Type:
  • Object

(static, constant) ICE_CONNECTION_STATE :Object

Description:
  • Learn more about how ICE works in this article here.
    The list of Peer connection ICE connection states.
Source:
Since:
  • 0.1.0
Properties:
Name Type Description
CHECKING String

Value "checking" The value of the state when Peer connection is checking for a suitable matching pair of ICE candidates to establish ICE connection. Exchanging of ICE candidates happens during CANDIDATE GENERATION STATE event.

CONNECTED String

Value "connected" The value of the state when Peer connection has found a suitable matching pair of ICE candidates to establish ICE connection but is still checking for a better suitable matching pair of ICE candidates for the best ICE connectivity. At this state, ICE connection is already established and audio, video and data streaming has already started.

COMPLETED String

Value "completed" The value of the state when Peer connection has found the best suitable matching pair of ICE candidates to establish ICE connection and checking has stopped. At this state, ICE connection is already established and audio, video and data streaming has already started. This may happen after CONNECTED.

FAILED String

Value "failed" The value of the state when Peer connection ICE connection has failed.

DISCONNECTED String

Value "disconnected" The value of the state when Peer connection ICE connection is disconnected. At this state, the Peer connection may attempt to revive the ICE connection. This may happen due to flaky network conditions.

CLOSED String

Value "closed" The value of the state when Peer connection ICE connection has closed. This happens when Peer connection is closed and no streaming can occur at this stage.

Learn more about how ICE works in this article here.
The list of Peer connection ICE connection states.
Type:
  • Object

(static, constant) LOG_LEVEL :Object

Description:
  • The list of the SDK console API log levels.

Source:
Since:
  • 0.5.4
Properties:
Name Type Description
DEBUG number

Value 4 The value of the log level that displays console debug, log, info, warn and error logs.

LOG number

Value 3 The value of the log level that displays only console log, info, warn and error logs.

INFO number

Value 2 The value of the log level that displays only console info, warn and error logs.

WARN number

Value 1 The value of the log level that displays only console warn and error logs.

ERROR number

Value 0 The value of the log level that displays only console error logs.

NONE number

Value -1 The value of the log level that displays no logs.

The list of the SDK console API log levels.

Type:
  • Object

(static, constant) MEDIA_ACCESS_FALLBACK_STATE :Object

Description:
Source:
Since:
  • 0.6.14
Properties:
Name Type Description
FALLBACKING Object

Value 0 The value of the state when getUserMedia method will retrieve audio track only when retrieving audio and video tracks failed. This can be configured by Skylink initOptions audioFallback option.

FALLBACKED Object

Value 1 The value of the state when getUserMedia or shareScreen method retrieves camera / screensharing Stream successfully but with missing originally required audio or video tracks.

ERROR Object

Value -1 The value of the state when getUserMedia method failed to retrieve audio track only after retrieving audio and video tracks failed.

The list of getUserMedia or shareScreen Stream fallback states.

Type:
  • Object

(static, constant) MEDIA_SOURCE :Object

Description:
  • The list of available screensharing media sources configured in the shareScreen.

Source:
Since:
  • 0.5.10
Properties:
Name Type Description
SCREEN String

Value "screen" The value of the option to share entire screen.

WINDOW String

Value "window" The value of the option to share application windows.

TAB String

Value "tab" The value of the option to share browser tab. Note that this is only supported by from Chrome 52+ and Opera 39+.

TAB_AUDIO String

Value "audio" The value of the option to share browser tab audio. Note that this is only supported by Chrome 52+ and Opera 39+. options.audio has to be enabled with TAB also requested to enable sharing of tab audio.

APPLICATION String

Value "application" The value of the option to share applications. Note that this is only supported by Firefox currently.

BROWSER String

Value "browser" The value of the option to share browser. Note that this is only supported by Firefox currently, and requires toggling the media.getUserMedia.browser.enabled in about:config.

CAMERA String

Value "camera" The value of the option to share camera. Note that this is only supported by Firefox currently.

The list of available screensharing media sources configured in the shareScreen.

Type:
  • Object

(static, constant) MEDIA_STATE

Description:
  • The state of the media.

Source:
Since:
  • 2.0
Properties:
Name Type Description
MUTED String

The state when the MediaTrack enabled flag is set to false. The MediaTrack is sending black frames.

ACTIVE String

The state when the MediaTrack enabled flag and active flag is set to true. The MediaTrack is sending frames with content.

STOPPED String

The state when the MediaTrack active flag is false. The MediaTrack is not sending any frames.

UNAVAILABLE String

The state when the MediaTrack is no longer available or has been disposed.

The state of the media.

(static, constant) MEDIA_STATUS :Object

Description:
  • The status of media on the stream.

Source:
Since:
  • 1.0
Properties:
Name Type Description
MUTED number

Value 0 The media is present in the stream and muted

ACTIVE number

Value 1 The media is present in the stream and active

UNAVAILABLE number

Value -1 The media is not present in the stream

The status of media on the stream.

Type:
  • Object

(static, constant) MEDIA_TYPE

Description:
  • The list of media types.

Source:
Since:
  • 2.0
Properties:
Name Type Description
AUDIO_MIC String

Audio from a microphone.

VIDEO_CAMERA String

Video from a Camera of any type.

VIDEO_SCREEN String

Video of the Screen captured for screen sharing.

VIDEO_OTHER String

Video from source other than Camera.

AUDIO String

Audio from an unspecified MediaType.

VIDEO String

Video from an unspecified MediaType.

The list of media types.

(static, constant) PEER_CERTIFICATE :Object

Description:
  • Learn more about how ICE works in this article here.
    The list of available Peer connection certificates cryptographic algorithm to use.
Source:
Since:
  • 0.6.18
Properties:
Name Type Description
RSA String

Value "RSA" The value of the Peer connection certificate algorithm to use RSA-1024.

ECDSA String

Value "ECDSA" The value of the Peer connection certificate algorithm to use ECDSA.

AUTO String

Value "AUTO" The value of the Peer connection to use the default certificate generated.

Learn more about how ICE works in this article here.
The list of available Peer connection certificates cryptographic algorithm to use.
Type:
  • Object

(static, constant) PEER_CONNECTION_STATE :Object

Description:
  • Learn more about how ICE works in this article here.
    The list of Peer connection session description exchanging states.
Source:
Since:
  • 0.5.0
Properties:
Name Type Description
STABLE String

Value "stable" The value of the state when there is no session description being exchanged between Peer connection.

HAVE_LOCAL_OFFER String

Value "have-local-offer" The value of the state when local "offer" session description is set. This should transition to STABLE state after remote "answer" session description is set. See HANDSHAKE_PROGRESS for a more detailed exchanging of session description states.

HAVE_REMOTE_OFFER String

Value "have-remote-offer" The value of the state when remote "offer" session description is set. This should transition to STABLE state after local "answer" session description is set. See HANDSHAKE_PROGRESS for a more detailed exchanging of session description states.

CLOSED String

Value "closed" The value of the state when Peer connection is closed and no session description can be exchanged and set.

CONNECTING String

Value "connecting" The value of the state when Peer connection is trying to establish a connection and negotiation has started.

CONNECTED String

Value "connected" The value of the state when Peer connection is connected after successful negotiation.

FAILED String

Value "failed" The value of the state when Peer connection has failed. A renegotiation is required to re-establish the connection.

DISCONNECTED String

Value "disconnected" The value of the state when Peer connection is disconnected. State may change to "connected" or "failed".

Learn more about how ICE works in this article here.
The list of Peer connection session description exchanging states.
Type:
  • Object

(static, constant) READY_STATE_CHANGE :Object

Description:
Source:
Since:
  • 0.1.0
Properties:
Name Type Description
INIT number

Value 0 The value of the state when init() has just started.

LOADING number

Value 1 The value of the state when init() is authenticating App Key provided (and with credentials if provided as well) with the Auth server.

COMPLETED number

Value 2 The value of the state when init() has successfully authenticated with the Auth server. Room session token is generated for joining the <codRoom provided in init(). Room session token has to be generated each time User switches to a different Room in joinRoom method.

ERROR number

Value -1 The value of the state when init() has failed authenticating with the Auth server.

The list of Skylink initOptions ready states.

Type:
  • Object

(static, constant) READY_STATE_CHANGE_ERROR :Object

Description:
  • The list of Skylink initOptions ready state failure codes.

Source:
Since:
  • 0.4.0
Properties:
Name Type Description
API_INVALID number

Value 4001 The value of the failure code when provided App Key in init() does not exists. To resolve this, check that the provided App Key exists in the Temasys Console.

API_DOMAIN_NOT_MATCH number

Value 4002 The value of the failure code when "domainName" property in the App Key does not match the accessing server IP address. To resolve this, contact our support portal.

API_CORS_DOMAIN_NOT_MATCH number

Value 4003 The value of the failure code when "corsurl" property in the App Key does not match accessing CORS. To resolve this, configure the App Key CORS in the Temasys Console.

API_CREDENTIALS_INVALID number

Value 4004 The value of the failure code when there is no CORS present in the HTTP headers during the request to the Auth server present nor options.credentials.credentials configuration provided in the init(). To resolve this, ensure that CORS are present in the HTTP headers during the request to the Auth server.

API_CREDENTIALS_NOT_MATCH number

Value 4005 The value of the failure code when the options.credentials.credentials configuration provided in the init() does not match up with the options.credentials.startDateTime, options.credentials.duration or that the "secret" used to generate options.credentials.credentials does not match the App Key's "secret property provided. To resolve this, check that the options.credentials.credentials is generated correctly and that the "secret" used to generate it is from the App Key provided in the init().

API_INVALID_PARENT_KEY number

Value 4006 The value of the failure code when the App Key provided does not belong to any existing App. To resolve this, check that the provided App Key exists in the Developer Console.

API_NO_MEETING_RECORD_FOUND number

Value 4010 The value of the failure code when provided options.credentials does not match any scheduled meetings available for the "Persistent Room" enabled App Key provided. See the Persistent Room article to learn more.

API_OVER_SEAT_LIMIT number

Value 4020 The value of the failure code when App Key has reached its current concurrent users limit.

API_RETRIEVAL_FAILED number

Value 4021 The value of the failure code when App Key retrieval of authentication token fails. If this happens frequently, contact our support portal.

API_WRONG_ACCESS_DOMAIN number

Value 5005 The value of the failure code when App Key makes request to the incorrect Auth server. To resolve this, ensure that the roomServer is not configured. If this persists even without roomServer configuration, contact our support portal.

XML_HTTP_REQUEST_ERROR number

Value -1 The value of the failure code when requesting to Auth server has timed out.

XML_HTTP_NO_REPONSE_ERROR number

Value -2 The value of the failure code when response from Auth server is empty or timed out.

NO_SOCKET_IO number

Value 1 The value of the failure code when dependency Socket.IO client is not loaded. To resolve this, ensure that the Socket.IO client dependency is loaded before the Skylink SDK. You may use the provided Socket.IO client CDN here.

NO_XMLHTTPREQUEST_SUPPORT number

Value 2 The value of the failure code when XMLHttpRequest API required to make request to Auth server is not supported. To resolve this, display in the Web UI to ask clients to switch to the list of supported browser as listed in here.

NO_WEBRTC_SUPPORT number

Value 3 The value of the failure code when RTCPeerConnection API required for Peer connections is not supported. To resolve this, display in the Web UI to ask clients to switch to the list of supported browser as listed in here. For plugin supported browsers, if the clients does not have the plugin installed, there will be an installation toolbar that will prompt for installation to support the RTCPeerConnection API.

NO_PATH number

Value 4 The value of the failure code when provided init() configuration has errors.

ADAPTER_NO_LOADED number

Value 7 The value of the failure code when dependency AdapterJS is not loaded. To resolve this, ensure that the AdapterJS dependency is loaded before the Skylink dependency. You may use the provided AdapterJS CDN here.

PARSE_CODECS number

Value 8 The value of the failure code when codecs support cannot be parsed and retrieved.

The list of Skylink initOptions ready state failure codes.

Type:
  • Object

(static, constant) RECORDING_STATE :Object

Description:
  • The list of recording states.

Source:
Since:
  • 0.6.16
Properties:
Name Type Description
START number

Value 0 The value of the state when recording session has started.

STOP number

Value 1 The value of the state when recording session has stopped.
At this stage, the recorded videos will go through the mixin server to compile the videos.

LINK number

Value 2 The value of the state when recording session mixin request has been completed.

ERROR number

Value -1 The value of the state state when recording session has errors. This can happen during recording session or during mixin of recording videos, and at this stage, any current recording session or mixin is aborted.

The list of recording states.

Type:
  • Object

(static, constant) RTCP_MUX_POLICY :Object

Description:
  • Learn more about how ICE works in this article here.
    The list of available Peer connection RTCP mux policies.
Source:
Since:
  • 0.6.18
Properties:
Name Type Description
REQUIRE String

Value "require" The value of the RTCP mux policy to generate ICE candidates for RTP only and RTCP shares the same ICE candidates.

NEGOTIATE String

Value "negotiate" The value of the RTCP mux policy to generate ICE candidates for both RTP and RTCP each.

Learn more about how ICE works in this article here.
The list of available Peer connection RTCP mux policies.
Type:
  • Object

(static, constant) RTMP_STATE :Object

Description:
  • The list of RTMP states.

Source:
Since:
  • 0.6.34
Properties:
Name Type Description
START number

Value 0 The value of the state when live streaming session has started.

STOP number

Value 1 The value of the state when live streaming session has stopped.
At this stage, the recorded videos will go through the mixin server to compile the videos.

ERROR number

Value -1 The value of the state state when live streaming session has errors.

The list of RTMP states.

Type:
  • Object

(static, constant) SDP_SEMANTICS :Object

Description:
  • The options available for SDP sematics while create a PeerConnection.

Source:
Since:
  • 0.6.32
Properties:
Name Type Description
PLAN_B String

The value of option to prefer plan-b sdp.

UNIFIED String

The value of option to prefer unified-plan sdp.

The options available for SDP sematics while create a PeerConnection.

Type:
  • Object

(static, constant) SM_PROTOCOL_VERSION :string

Description:
  • Note that this is used only for SDK developer purposes.
    Current version: 2.1.0
    The value of the current version of the Signaling socket message protocol.
Source:
Since:
  • 0.6.0
Note that this is used only for SDK developer purposes.
Current version: 2.1.0
The value of the current version of the Signaling socket message protocol.
Type:
  • string

(static, constant) SOCKET_ERROR :Object

Description:
  • The list of joinRoom socket connection failure states.

Source:
Since:
  • 0.5.6
Properties:
Name Type Description
CONNECTION_FAILED number

Value 0 The value of the failure state when joinRoom socket connection failed to establish with the Signaling server at the first attempt.

RECONNECTION_FAILED number

Value -1 The value of the failure state when joinRoom socket connection failed to establish the Signaling server after the first attempt.

CONNECTION_ABORTED number

Value -2 The value of the failure state when joinRoom socket connection will not attempt to reconnect after the failure of the first attempt in CONNECTION_FAILED as there are no more ports or transports to attempt for reconnection.

RECONNECTION_ABORTED number

Value -3 The value of the failure state when joinRoom socket connection will not attempt to reconnect after the failure of several attempts in RECONNECTION_FAILED as there are no more ports or transports to attempt for reconnection.

RECONNECTION_ATTEMPT number

Value -4 The value of the failure state when joinRoom socket connection is attempting to reconnect with a new port or transport after the failure of attempts in CONNECTION_FAILED or RECONNECTED_FAILED.

The list of joinRoom socket connection failure states.

Type:
  • Object

(static, constant) SOCKET_FALLBACK :Object

Description:
  • The list of joinRoom socket connection reconnection states.

Source:
Since:
  • 0.5.6
Properties:
Name Type Description
NON_FALLBACK String

Value "nonfallback" The value of the reconnection state when joinRoom socket connection is at its initial state without transitioning to any new socket port or transports yet.

FALLBACK_PORT String

Value "fallbackPortNonSSL" The value of the reconnection state when joinRoom socket connection is reconnecting with another new HTTP port using WebSocket transports to attempt to establish connection with Signaling server.

FALLBACK_PORT_SSL String

Value "fallbackPortSSL" The value of the reconnection state when joinRoom socket connection is reconnecting with another new HTTPS port using WebSocket transports to attempt to establish connection with Signaling server.

LONG_POLLING String

Value "fallbackLongPollingNonSSL" The value of the reconnection state when joinRoom socket connection is reconnecting with another new HTTP port using Polling transports to attempt to establish connection with Signaling server.

LONG_POLLING_SSL String

Value "fallbackLongPollingSSL" The value of the reconnection state when joinRoom socket connection is reconnecting with another new HTTPS port using Polling transports to attempt to establish connection with Signaling server.

The list of joinRoom socket connection reconnection states.

Type:
  • Object

(static, constant) SYSTEM_ACTION :Object

Description:
  • The list of Signaling server reaction states during joinRoom.

Source:
Since:
  • 0.5.1
Properties:
Name Type Description
WARNING String

Value "warning" The value of the state when Room session is about to end.

REJECT String

Value "reject" The value of the state when Room session has failed to start or has ended.

LOCKED String

Value "locked" The value of the state when Room sis locked.

The list of Signaling server reaction states during joinRoom.

Type:
  • Object

(static, constant) SYSTEM_ACTION_REASON :Object

Description:
  • The list of Signaling server reaction states reason of action code during joinRoom.

Source:
Since:
  • 0.5.2
Properties:
Name Type Description
CREDENTIALS_EXPIRED String

Value "oldTimeStamp" The value of the reason code when Room session token has expired. Happens during joinRoom request. Results with: REJECT

CREDENTIALS_ERROR String

Value "credentialError" The value of the reason code when Room session token provided is invalid. Happens during joinRoom request.

DUPLICATED_LOGIN String

Value "duplicatedLogin" The value of the reason code when Room session token has been used already. Happens during joinRoom request. Results with: REJECT

ROOM_NOT_STARTED String

Value "notStart" The value of the reason code when Room session has not started. Happens during joinRoom request. Results with: REJECT

EXPIRED String

Value "expired" The value of the reason code when Room session has ended already. Happens during joinRoom request. Results with: REJECT

ROOM_LOCKED String

Value "locked" The value of the reason code when Room is locked. Happens during joinRoom request. Results with: REJECT

FAST_MESSAGE String

Value "fastmsg" The value of the reason code when User is flooding socket messages to the Signaling server that is sent too quickly within less than a second interval. Happens after Room session has started. This can be caused by various methods like sendMessage, muteStreams Results with: WARNING

ROOM_CLOSING String

Value "toClose" The value of the reason code when Room session is ending. Happens after Room session has started. This serves as a prerequisite warning before ROOM_CLOSED occurs. Results with: WARNING

ROOM_CLOSED String

Value "roomclose" The value of the reason code when Room session has just ended. Happens after Room session has started. Results with: REJECT

SERVER_ERROR String

Value "serverError" The value of the reason code when Room session fails to start due to some technical errors. Happens during joinRoom request. Results with: REJECT

KEY_ERROR String

Value "keyFailed" The value of the reason code when Room session fails to start due to some technical error pertaining to App Key initialization. Happens during joinRoom request. Results with: REJECT

The list of Signaling server reaction states reason of action code during joinRoom.

Type:
  • Object

(static, constant) TURN_TRANSPORT :Object

Description:
  • Note that configuring the protocol may not necessarily result in the desired network transports protocol used in the actual TURN network traffic as it depends which protocol the browser selects and connects with. This simply configures the TURN ICE server urls query option when constructing the Peer connection. When all protocols are selected, the ICE servers urls are duplicated with all protocols.
    The list of TURN network transport protocols options when constructing Peer connections configured in Skylink initOptions. Example .urls inital input: ["turn:server.com?transport=tcp", "turn:server1.com:3478", "turn:server.com?transport=udp"]
Source:
Since:
  • 0.5.4
Properties:
Name Type Description
TCP String

Value "tcp" The value of the option to configure using only TCP network transport protocol. Example .urls output: ["turn:server.com?transport=tcp", "turn:server1.com:3478?transport=tcp"]

UDP String

Value "udp" The value of the option to configure using only UDP network transport protocol. Example .urls output: ["turn:server.com?transport=udp", "turn:server1.com:3478?transport=udp"]

ANY String

Value "any" The value of the option to configure using any network transport protocols configured from the Signaling server. Example .urls output: ["turn:server.com?transport=tcp", "turn:server1.com:3478", "turn:server.com?transport=udp"]

NONE String

Value "none" The value of the option to not configure using any network transport protocols. Example .urls output: ["turn:server.com", "turn:server1.com:3478"] Configuring this does not mean that no protocols will be used, but rather removing ?transport=(protocol) query option in the TURN ICE server .urls when constructing the Peer connection.

ALL String

Value "all" The value of the option to configure using both TCP and UDP network transport protocols. Example .urls output: ["turn:server.com?transport=tcp", "turn:server.com?transport=udp", "turn:server1.com:3478?transport=tcp", "turn:server1.com:3478?transport=udp"]

Note that configuring the protocol may not necessarily result in the desired network transports protocol used in the actual TURN network traffic as it depends which protocol the browser selects and connects with. This simply configures the TURN ICE server urls query option when constructing the Peer connection. When all protocols are selected, the ICE servers urls are duplicated with all protocols.
The list of TURN network transport protocols options when constructing Peer connections configured in Skylink initOptions. Example .urls inital input: ["turn:server.com?transport=tcp", "turn:server1.com:3478", "turn:server.com?transport=udp"]
Type:
  • Object

(static, constant) VIDEO_QUALITY :Object

Description:
  • The options available for video and audio bitrates (kbps) quality.

Source:
Since:
  • 0.6.32
Properties:
Name Type Description
HD Object

Value { video: 3200, audio: 80 } The value of option to prefer high definition video and audio bitrates.

HQ Object

Value { video: 1200, audio: 50 } The value of option to prefer high quality video and audio bitrates.

SQ Object

Value { video: 800, audio: 30 } The value of option to prefer standard quality video and audio bitrates.

LQ Object

Value { video: 500, audio: 20 } The value of option to prefer low quality video and audio bitrates.

The options available for video and audio bitrates (kbps) quality.

Type:
  • Object

(static, constant) VIDEO_RESOLUTION :Object

Description:
  • Note that currently getUserMedia method only configures the maximum resolution of the Stream due to browser interopability and support.
    The list of video resolutions sets configured in the getUserMedia method.
Source:
Since:
  • 0.5.6
Properties:
Name Type Description
QQVGA Object

Value { width: 160, height: 120 } The value of the option to configure QQVGA resolution. Aspect ratio: 4:3 Note that configurating this resolution may not be supported depending on browser and device supports.

HQVGA Object

Value { width: 240, height: 160 } The value of the option to configure HQVGA resolution. Aspect ratio: 3:2 Note that configurating this resolution may not be supported depending on browser and device supports.

QVGA Object

Value { width: 320, height: 240 } The value of the option to configure QVGA resolution. Aspect ratio: 4:3

WQVGA Object

Value { width: 384, height: 240 } The value of the option to configure WQVGA resolution. Aspect ratio: 16:10 Note that configurating this resolution may not be supported depending on browser and device supports.

HVGA Object

Value { width: 480, height: 320 } The value of the option to configure HVGA resolution. Aspect ratio: 3:2 Note that configurating this resolution may not be supported depending on browser and device supports.

VGA Object

Value { width: 640, height: 480 } The value of the option to configure VGA resolution. Aspect ratio: 4:3

WVGA Object

Value { width: 768, height: 480 } The value of the option to configure WVGA resolution. Aspect ratio: 16:10 Note that configurating this resolution may not be supported depending on browser and device supports.

FWVGA Object

Value { width: 854, height: 480 } The value of the option to configure FWVGA resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

SVGA Object

Value { width: 800, height: 600 } The value of the option to configure SVGA resolution. Aspect ratio: 4:3 Note that configurating this resolution may not be supported depending on browser and device supports.

DVGA Object

Value { width: 960, height: 640 } The value of the option to configure DVGA resolution. Aspect ratio: 3:2 Note that configurating this resolution may not be supported depending on browser and device supports.

WSVGA Object

Value { width: 1024, height: 576 } The value of the option to configure WSVGA resolution. Aspect ratio: 16:9

HD Object

Value { width: 1280, height: 720 } The value of the option to configure HD resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on device supports.

HDPLUS Object

Value { width: 1600, height: 900 } The value of the option to configure HDPLUS resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

FHD Object

Value { width: 1920, height: 1080 } The value of the option to configure FHD resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on device supports.

QHD Object

Value { width: 2560, height: 1440 } The value of the option to configure QHD resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

WQXGAPLUS Object

Value { width: 3200, height: 1800 } The value of the option to configure WQXGAPLUS resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

UHD Object

Value { width: 3840, height: 2160 } The value of the option to configure UHD resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

UHDPLUS Object

Value { width: 5120, height: 2880 } The value of the option to configure UHDPLUS resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

FUHD Object

Value { width: 7680, height: 4320 } The value of the option to configure FUHD resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

QUHD Object

Value { width: 15360, height: 8640 } The value of the option to configure QUHD resolution. Aspect ratio: 16:9 Note that configurating this resolution may not be supported depending on browser and device supports.

Note that currently getUserMedia method only configures the maximum resolution of the Stream due to browser interopability and support.
The list of video resolutions sets configured in the getUserMedia method.
Type:
  • Object

Type Definitions

DT_PROTOCOL_VERSION

Description:
  • Note that this is used only for SDK developer purposes.
    Current version: 0.1.3
    The value of the current version of the data transfer protocol.
Source:
Since:
  • 2.0.0
Note that this is used only for SDK developer purposes.
Current version: 0.1.3
The value of the current version of the data transfer protocol.
Type:
  • string