Skip to main content

Introduction to RealtimeKit

RealtimeKit offers solutions for integrating high-quality video/voice calls into your web, mobile, and desktop applications. The platform provides APIs and SDKs to capture, distribute, record, and render high quality audio and video applications.

Supported Platforms

RealtimeKit currently supports the following platforms:

  • Mobile: Flutter, Android (Java/Kotlin), iOS (Objective-C/Swift), React Native
  • Web: Javascript Core SDK + UI Kit for React JS, Angular, and Web Components for other frameworks.
  • Desktop: Electron

Components of RealtimeKit

  • Backend HTTP REST APIs: Your backend uses RealtimeKit REST APIs to perform actions such as, create meetings, add participants to a meeting etc.

  • Frontend SDKs: Your applications bundle RealtimeKit Core SDKs (and UI Kits) to acquire, transmit and play media, and manage network connections.

    • Core SDKs: These SDKs empower you to create custom video and voice calls with real-time communication. They are highly customizable and easy to integrate.
    • UI Kit: By utilizing RealtimeKit's prebuilt design library of UI components, you can seamlessly integrate video and voice calls into your app or website within minutes.
  • Developer Portal: The Developer Portal serves as a comprehensive platform, offering access to meeting logs, API key management, billing operations, and various other functionalities in one place.

Getting Started With RealtimeKit

This topic gives a quick walkthrough of the steps involved in integrating high-quality real-time communication features into your app using RealtimeKit.

Signup on the developer portal

If you had an account on RealtimeKit previously

  1. Enter your email in the developer portal

  2. Select your preferred sign in option and you should have access to the portal!

If you are a new user of RealtimeKit

  1. Enter your email in the developer portal

  2. If you have been accepted from the waitlist you may choose your preferred sign up option and access the portal

  3. If not, you will hear from us as soon as you're approved! (Make sure you have joined the waitlist)

Integrate RealtimeKit

  1. Copy the API Keys for your organization from the Developer portal. These API Keys are unique to your organization and are required to use RealtimeKit REST APIs such as when instantiating a meeting
API keyAPI key

  1. Create presets using the Developer portal. A preset is a set of permissions and UI configurations that would be applied to a participant
Preset Editor
  1. Create a RealtimeKit meeting using the Create Meeting API. This API returns a unique identifier for your meeting.
tip

You may want to persist the meeting ID in your database.

Preset Editor

Diagram explaining how RealtimeKit works

  1. After you've created the meeting, add each participant to the meeting using the Add Participant API (The presetName created earlier must be passed in the body of the Add Participant API request)

    The API response contains the user authentication token authToken.

  2. Use the authToken to initialize any of the frontend SDKs.

RealtimeKit meetings do not have a date or time associated with them, so you can create them in advance or just when users need to join the meeting. The idea is that your backend controls when to distribute authToken and thus you can share the tokens with the users at the scheduled time.

Glossary

Meeting

A communication channel created on RealtimeKit is termed as a meeting.

Participants

Anyone who joins the meeting, whether as an actual user or a machine user

Permission

A specific action allowed or not for a participant.

Preset

A preset is a set of permissions and UI configurations that are applied to participants. The presets define how the meeting will look, feel, and behave for the participants.

  • You can create presets for the Group Call and Webinar meeting type.
  • You can set the maximum number of people on screen, the maximum number of people sharing the screen, provide permissions to create poll, disable participant video, disable participant audio, modify text color, configure plugins, and so on. RealtimeKit also includes the following four prebuilt presets. These presets are pre-defined permissions and UI configurations for the participants.
    • webinar_viewer
    • webinar_presenter
    • group_call_host
    • group_call_participant

You can choose to use the default prebuild presets if you don't wish to create one.

Recording

You can record the meeting, and get a video / audio file.

Livestreaming

You can livestream the meeting to other streaming platforms that support RTMP, like YouTube, Twitch, etc.

Analytics

Get analytics data around your meetings, like number of minutes, number of recorded minutes, number of participants, etc.