AI Integration Quick Reference
AI Integration Quick Reference
| Field | Value |
|---|---|
| Kotlin (XML Views) | com.cometchat:chat-uikit-kotlin + com.cometchat:calls-sdk-android |
| Jetpack Compose | com.cometchat:chat-uikit-compose + com.cometchat:calls-sdk-android |
| Required setup | CometChatUIKit.init() then CometChatUIKit.login() — Calls SDK must also be installed |
| Call features | Incoming Call, Outgoing Call, Call Logs, Call Buttons, Ongoing Call |
| Key components | CometChatCallButtons, CometChatIncomingCall, CometChatOutgoingCall, CometChatCallLogs, CometChatOngoingCall |
| Auto-detection | UI Kit automatically detects the Calls SDK and enables call UI components |
| Related | Getting Started, Core Features, Call Log Details Guide |
Integration
First, make sure that you’ve correctly integrated the UI Kit library into your project. If you haven’t done this yet or are facing difficulties, refer to our Getting Started guide. Once you’ve successfully integrated the UI Kit, the next step is to add the CometChat Calls SDK to your project. This is necessary to enable the calling features in the UI Kit.Step 1: Add Calls SDK Dependency
Add the following dependency to yourbuild.gradle.kts file:
- Kotlin (XML Views)
- Jetpack Compose
build.gradle.kts
Step 2: Verify Call Buttons Appear
Once the Calls SDK is integrated, you will see theCometChatCallButtons component automatically rendered in the MessageHeader component. This provides users with quick access to initiate audio and video calls.

Step 3: Add Call Listener for Incoming Calls
To receive incoming calls globally in your app, you will need to add aCallListener. This should be added before you initialize the CometChat UI Kit. We recommend creating a custom Application class and adding the call listener there.
When an incoming call is received, you can display the CometChatIncomingCall component using the current activity context.
- Kotlin (XML Views)
- Jetpack Compose
Call Components
The CometChat Android UI Kit provides five main components for implementing calling features in your app. Each component handles a specific part of the calling experience.Call Buttons
TheCometChatCallButtons component provides users with quick access to initiate audio and video calls. This component is automatically rendered in the MessageHeader when the Calls SDK is integrated.

Incoming Call
TheCometChatIncomingCall component displays when a user receives an incoming call. It provides a full-screen interface showing caller information and call controls.

Outgoing Call
TheCometChatOutgoingCall component manages the outgoing call experience. It displays while waiting for the recipient to answer and automatically transitions to the active call screen once accepted.

Call Logs
TheCometChatCallLogs component displays a history of all call activities, including missed, received, and dialed calls. Users can view call details and initiate new calls from the log.

Ongoing Call
TheCometChatOngoingCall component renders the active call screen with video feeds, mute/unmute controls, camera toggle, and end-call actions.