Skip to main content

Overview

CometChat’s Calls feature allows you to integrate one-on-one and group audio/video calling capabilities into your application. In V6, calling is built into the cometchat_chat_uikit package — no separate calls dependency needed.

Integration

Step 1: Add Dependency

Add the dependency to your pubspec.yaml:
pubspec.yaml

Step 2: Update build.gradle

Set minSdkVersion to at least 26 in android/app/build.gradle:

Step 3: Update iOS Podfile

In ios/Podfile, set the minimum iOS version to 15.1:
These are the Calls SDK’s own floors (minSdkVersion 26, platform :ios, '15.1' as of cometchat_calls_sdk 5.0.7), and they apply to every UI Kit app — the kit depends on the Calls SDK unconditionally, so you inherit them even without enabling calling. Gradle and CocoaPods take the maximum across the dependency graph, so a lower value is a build error rather than a warning.

Step 4: Modify UIKitSettings

Activate calling features by setting enableCalls to true in UIKitSettings:
To allow launching the Incoming Call screen from any widget, provide the navigator key:

Listeners

Register call listeners for top-level widgets:

Features

Incoming Call

The Incoming Call widget lets users receive real-time audio and video calls. When a call is received, it displays caller information with accept/reject options.

Outgoing Call

The Outgoing Call widget manages the outgoing call process. It displays recipient information and call status, and automatically transitions to the ongoing call screen when accepted.

Call Logs

The Call Logs widget displays records of call events including caller, time, and duration.