Web SDK Overview

The EnableX Web SDK integrates EnableX RTC sessions with your web applications. The Web SDK consists of a JavaScript library with APIs required to communicate with EnableX Signaling and Media servers and to listen to event-based notifications during a session. The library needs to be added to the HTML page.

Download Web SDK v2.3.30

Released: May 2, 2024

You can now build Video Application for Web Browser using Flutter SDK

Getting Started

To start working with the Web SDK, do the following:

  1. Download the SDK and extract the archive to get the EnxRtc.js file. This is a standard library which communicates with EnableX Signaling and Media servers.
  2. Use the EnxRtc.js file in your HTML file to utilize the SDK to build the EnableX powered client endpoint application as shown below.
<html>
<head>
<script language="javascript" src="path/EnxRtc.js"></script>
</head>
<body></body>
</html>

Errors and Exceptions

When an SDK method call encounters an issue and fails, a JSON object containing the details of the error is returned through callback. Below is an example of this JSON object:

{
"result": Number,
"error": "String",
"desc": "String"
}

The parameters added in this example are described below:

ParameterTypeDescription
resultNumberReturns an error code depending on the error encountered.
errorStringReturns an error message depending on the error encountered.
descStringOptional. Returns explanation of the error encountered.

SDK Methods

The SDK provides several methods for implementing different features and functionalities. For more information, see List of SDK Methods.

Media Devices

The SDK provides several methods to access device cameras and microphones that can be used to create media streams to publish into the video rooms.

For more information, see Get Media Devices.

Stream Configuration

The SDK supports the following stream configurations:

Room Connection

The SDK provides several methods for connecting to virtual rooms.

For more information, see Room Connection.

In-session Communication

The SDK provides several methods for managing in-session communication including chat, custom signalling, file sharing, screen sharing, canvas streaming, live streaming, HLS streaming, annotations, and live transcription.

For more information, see In-Session Communication.

Session Management

The SDK provides several methods for managing different aspects of video sessions including recording a session, watermarking a recorded file, live recording with UI, muting or unmuting a room or a participant, forcing room entry restrictions, disconnecting a user from a session, extending or concluding a session, switching participant roles, pinning or unpinning a user, spotlighting a user, and switching the room mode.

For more information, see Session Management.

Breakout Room

The SDK provides several methods for implementing breakout rooms.

For more information, see Breakout Room.

Floor Access Control

Participants can request for floor access in the Lecture mode. The SDK provides different methods to implement floor access.

For more information, see Floor Access Control.

Live Statistics

The SDK provides several methods to obtain live statistics of local, remote, canvas streaming, and screen sharing during a session.

For more information, see Live Statistics.

Utilities

The SDK provides several methods for managing different aspects of video sessions through different utilities.

For more information, see Utilities.