CometChatIncomingCall renders when the logged-in user receives an incoming voice or video call, displaying the caller’s information and providing accept/reject controls.

Where It Fits
CometChatIncomingCall is a call-handling component. It renders the incoming call screen and transitions to the ongoing call screen when the user accepts. Wire it to CometChatOngoingCallActivity after the user accepts the call.
- Kotlin (XML Views)
- Jetpack Compose
activity_call.xml
Quick Start
- Kotlin (XML Views)
- Jetpack Compose
Add to your layout XML:Set the
Call object — this is required:CometChatUIKit.init(), a user logged in, and the UI Kit dependency added.
Actions and Events
Callback Methods
onAcceptClick
Fires when the user taps the accept button.
- Kotlin (XML Views)
- Jetpack Compose
onRejectClick
Fires when the user taps the reject button.
- Kotlin (XML Views)
- Jetpack Compose
onError
Fires on internal errors (network failure, call failure, SDK exception).
- Kotlin (XML Views)
- Jetpack Compose
Global UI Events (CometChatCallEvents)
| Event | Fires when | Payload |
|---|---|---|
ccCallAccepted | A call is accepted | Call |
ccCallRejected | A call is rejected | Call |
SDK Events (Real-Time, Automatic)
| SDK Listener | Internal behavior |
|---|---|
onIncomingCallReceived | Triggers the incoming call screen display |
onIncomingCallCancelled | Dismisses the incoming call screen |
Functionality
| Method (Kotlin XML) | Compose Parameter | Description |
|---|---|---|
setCall(call) | call = call | Set the Call object (required) |
setOnAcceptClick { } | onAcceptClick = { } | Override accept button behavior |
setOnRejectClick { } | onRejectClick = { } | Override reject button behavior |
setOnError { } | onError = { } | Error callback |
setDisableSoundForCalls(true) | disableSoundForCalls = true | Disable incoming call ringtone |
setCustomSoundForCalls(R.raw.tone) | customSoundForCalls = R.raw.tone | Custom ringtone |
Custom View Slots
Leading View
Replace the avatar / left section.
- Kotlin (XML Views)
- Jetpack Compose
Title View
Replace the caller name / title text.
- Kotlin (XML Views)
- Jetpack Compose
Trailing View
Replace the right section of the incoming call card.
- Kotlin (XML Views)
- Jetpack Compose
Item View
Replace the entire incoming call card.- Kotlin (XML Views)
- Jetpack Compose
Style
- Kotlin (XML Views)
- Jetpack Compose
Define a custom style in
themes.xml:themes.xml

Next Steps
Outgoing Call
Outgoing call screen with end-call button
Call Buttons
Voice and video call buttons
Call Logs
View call history
Conversations
Browse recent conversations