EnableX platform allows developers to embed real-time, high-quality interactive video, voice, messaging, screen-sharing, and more to Web, iOS and Android applications. The platform provides APIs, SDKs and toolkits for rapid implementation of use cases such as one-to-one calling, group video conferencing, webinars & interactive classrooms.

EnableX platform provides a set of REST APIs to create and embed different real-time communication capabilities:

  • One-to-one real-time video applications – High Definition one-to-one chat, calling & conferencing
  • One-to-many real-time video applications – Live WebRTC video conferencing and streaming with IP/PSTN support. These can be designed to be single or bi-directional interactive services.
  • Many-to-many interactive real-time communication applications.

Additionally, the platform also provides various addon features which allow you to pre-process and post-process the real-time and in-session data collected during the session.

EnableX platform only provides the SDK interfaces for embedding real-time video into different web & mobile applications. We also provide UI rendering elements which can directly bind to the specific DOM elements/view handler to render user streams in the browser or native or hybrid mobile SDKs.

The document covers API specifications for desktop/Mobile App clients.  RTC applications hosted on EnableX platform runs natively on supported set of web browsers & mobile devices without any additional plugin downloads.

The documentation describes the application-level interfaces with sample code in GitHub on how these interfaces can be called to create embedded enterprise-grade video solutions with ease.

Application Workflow using EnableX

Creating embedded RTC Application requires 2 components. An Application Server running as a Web Service and Client Application running on client’s endpoints to initiate and perform real-time communications sessions hosted on EnableX platform. 

Application Server

Your Application Server will make use of the EnableX Server API to authenticate your Application to provision, create, and monitor hosted RTC Applications. Your Application Server acts as a single-entry point to access EnableX Platform using Server API.

Live Video Call API

Client End Application

The Client Application runs on Web Browser or Mobile Devices. It needs to make use of EnableX Client Toolkits/SDKs (Available for Web, iOS, Android and hybrid frameworks including ReactNative, Flutter & Cordova) to establish an RTC session with EnableX Platform. The first step is for the Client Application to obtain a token via the Application Server. The token is used by the Client Application to get authenticated and connected to an EnableX Room to begin a RTC session.

Video call for Web, Android and iOS

Depending on end user’s device requirements, you can use any of the following Toolkits below to develop your Client End Applications:

  • Web Toolkit: To build Web Browser based End Point Applications.
  • Android Toolkit: To build Native Android Device Applications.
  • iOS Toolkit: To build Native iOS Device Apps.
  • React Native, Flutter & Cordova Toolkits: To build Hybrid Apps for Android & iOS Platform

Application Diagram

Refer the following Application Workflow diagram to understand how your Application Server and Client End Point will communicate with the EnableX platform:

Client and Server Video call API

Type of Communication APIs

Server API

Server API is a Rest API service meant to be called from developer’s Application Server to provision video-enabled virtual meeting spaces referred to as “Room”. A Room is a virtual entity within which the Real-time communication “session” takes place.  The user connects to the session using a secured authenticated token issued by the EnableX server. The Server Rest API service is the single-entry point for requisition/provisioning the virtual meeting room. The Server API is used for provisioning the room, requesting a token to start the session and for post-session reporting.

Know more…

Client API

Client APIs are called from embedded Javascript Code/Native SDK code which runs in the client browsers/Native mobile application on desktop and mobile respectively. A lightweight Java Script Client SDK/Mobile SDK is required to be included in the client applications. The SDK provides API and associated helper functions to communicate with EnableX platform. Additionally, it also provides helper functions for monitoring client-side state of the RTC session. Typical usage consists of connection to the desired room, using the token retrieved in the backend (explained at Server API), management of local audio and video, client event handling ( room level events/stream level events) , and so on. Client API consists of three major entities.

Know more…