ApiRTC Developer Center

Get your API key

Create your account,
Get your API key and play!

GET AN ACCOUNT

You already have an API key?

You are ready to progress and want to use our JS library? Please check our Quick Start


Quick Start

Introduction

ApiRTC is a library which allows a developer to easily integrate real-time communications (chat, audio, video) into a web or mobile application. Behind the scenes, the WebRTC technology is used : this means that the media flows are encrypted and exchanged in peer-to-peer when possible. Otherwise a media relay (TURN server) may be required.

ApiRTC is the entry point of our platform that will manage all connection establishments for you including user connection, user presence and media establishment.

ApiRTC library is available in different format depending of the integration you need :

  • Web or Hybrid Application : Javascript
  • Native Application : Swift for iOS, Java for Android

ApiRTC enables you to exchange different media content type :

  • Chat
  • Voice
  • Video
  • Screensharing
  • Whiteboard
  • Datachannel (files ...)
  • JSON data

And manage important features such as :

  • Conference
  • Media optimization
  • Firewall traversal
  • Network and QoS testing
  • Presence
  • SIP interconnection
  • Call recording and replay

ApiRTC call anatomy

Step 1: Initialize connection

Let's say that we have a mobile user that wants to call a desktop user (Client 1 calling Client 2). The signaling offer of the Client 1 goes through the signaling server (CCS), and is relayed to the desktop client who can choose to accept or refuse the call

Step 2: Initiate call

Now both clients are aware of the capabilities of each other (audio/video codecs supported for instance). In a typical scenario they will at this point also be able to “talk” to each other: the signaling server is essentially useless now. They are now able to exchange their media (audio/video) flux between each other.

Step 3: Peer to peer media exchange

As we see with this simple example, the signalisation phase is absolutely crucial to establish calls. There are also many factors not presented in this simple example (differences between browsers, media constraints, fallback if there are firewalls…), but this simple scenario is helpful to understand the following tutorials.

ApiRTC tutorials

These tutorials describes some of the possibilities of ApiRTC, the goal of our tutorials is to help you in the ApiRTC integration.

For more details, you can also check our complete API Reference

UserAgent tutorials

UserAgent is the starting point of apiRTC and enables you to manage several important aspects such as :

  • User registration
  • Media devices management
  • Offline features ...

More details on our UserAgent description and UserAgent API

UserAgent-1 : Registration : external user management

Manage your users in your database

UserAgent-2 : Registration with integrated users management

Users are managed on Apizee Cloud

Conversation tutorials

Conversation will enable you to manage multi-party communication : conference, whiteboard, groupChat ...

These tutorials describes some of the possibilities related to Conversation API

Conversation-1

Create a conversation to establish multi-party conference : audio, video

Conversation-2 : Conference with media devices selection

Create a conversation to establish multi-party conference : audio, video and select your media devices

Conversation-3 : Conference with QoS Monitoring and active speaker detection

Learn how to add QoS Monitoring and active speaker detection on your conference

Conversation-4 : Group Chat

Exchange chat messages between all users in a Conversation

Conversation-5 : Whiteboard

Learn how to start a multi-party Whiteboard on a conversation

Conversation-6 : Whiteboard with invitation

Learn how to start a Whiteboard and invite users

Conversation-7 : Advanced streams Pub/Sub

Learn how to select streams and media type on publish and subscribe

One-to-One Communication

Learn how to establish One-to-One communication on ApiRTC.

One-to-One-1 : Calls

Establish audio, video or screenSharing calls between two users

One-to-One-2 : Chat

Exchange instant messaging between two users

One-to-One-3 : send File

Exchange any type of file between two users

One-to-One-4 : Accept - Refuse calls

Establish audio, video or screenSharing calls between two users with accept/refuse possibility

Stream Management tutorials

Stream is used to manage MediaStream.

These tutorials describes some of the possibilities related to Stream API

Stream-1 : Select Media

This demo teaches you how to select a media device to start a stream

Stream-2 : Screensharing

Learn how to use screen display for communication

Stream-3 : Recording

This demo teaches you how to locally record a stream

Stream-4 : Snapshot

This demo teaches you how to create a snapshot image from a video stream

Hybrid mobile application tutorials

Learn how to integrate ApiRTC in your Hybrid mobile application.

Mobile - Cordova

Create an hybrid application using Cordova framework on Android and iOS

Mobile - Ionic framework

Check our github repository for an integration sample with Ionic