Skip to main content
The CometChat Calls SDK enables real-time voice and video calling capabilities in your React Native application. Built on top of WebRTC, it provides a complete calling solution with built-in UI components and extensive customization options.
Faster Integration with UI KitsIf you’re using CometChat UI Kits, voice and video calling is already integrated with ready-to-use components:
  • Incoming & outgoing call screens
  • Call buttons with one-tap calling
  • Call logs with history
👉 React Native UI Kit Call FeaturesUse this Calls SDK directly only if you need custom call UI or advanced control.

Prerequisites

Before integrating the Calls SDK, ensure you have:
  1. CometChat Account: Sign up and create an app to get your App ID, Region, and API Key
  2. CometChat Users: Users must exist in CometChat to use calling features. For testing, create users via the Dashboard or REST API. Authentication is handled by the Calls SDK - see Authentication
  3. React Native Requirements:
    • React Native 0.71 or later
    • Node.js 18 or later
    • iOS: Minimum iOS 13.0, Xcode 14.0+
    • Android: Minimum SDK API Level 24 (Android 7.0)
  4. Permissions: Camera and microphone permissions for video/audio calls

Call Flow

Features

Architecture

The SDK is organized around these core components:
ComponentDescription
CometChatCallsMain entry point for SDK initialization, authentication, and session management
CallAppSettingsBuilderConfiguration builder for SDK initialization (App ID, Region)
CallSettingsBuilderConfiguration builder for individual call sessions
CometChatCalls.ComponentReact component that renders the call UI
OngoingCallListenerEvent listener class for call events