Repository navigation
docs(android): correct the ringing pages against the SDK source (for #561) - #569
Merged
hritika-cometchat merged 1 commit intoOct 20, 2026
Conversation
Checked every page in this PR against calls-core prepare-session-flow (Calls SDK 5.1.0-beta.2), push-notifications-sdk-android release/2.0 (2.0.0-beta.3) and uikit-android ENG-39907-ringing-v2-incoming. Dependencies and setup - The UI Kit brings the Calls SDK only; no library module depends on the Push SDK. Getting Started (3 pages), Call Features and Calling Integration now say so, and Calling Integration's Gradle snippets add both push artifacts (UI Kit listed first, so its ring colours win). - UI Kit minSdk is 28, not 26. - Permissions: RECORD_AUDIO, CAMERA and POST_NOTIFICATIONS already merge in from the Calls SDK, the UI Kit and the calls module; pages now say "request at runtime" instead of "declare". - Push init runs in Application.onCreate on every start, before login: login/logout token registration only runs in a process where init ran. - setProviderId is required; setNotificationSmallIcon covers chat notifications only and defaults to a system icon. - Logout: a Chat logout unregisters the token; only a Calls logout stops a ring. Calls SDK - getActiveSession() is @nullable: Kotlin samples use ?. and the page explains registering after join or through CallSession.getInstance(). - A prepared session that expires (5 min) reports onConnectionClosed, not onSessionTimedOut; samples and tables updated. - Callee end reasons include `ended`; treat unknown reasons as "over". - joinSession ignores settings on a prepared session (callee settings are the Push SDK's). - The caller has no ring timer: recommend one, since nothing else ends a ring the callee never received for 5 minutes. - initiateCall accepts RECEIVER_TYPE_GROUP; group decline/busy is local. - A second init() with a different app ID re-initialises. - CometChatCallsConstants has been deprecated since 5.0. Push ringing samples - setShowWhenLocked/setTurnScreenOn guarded for API 27 (calls module minSdk is 26). - The answer activity is no longer singleTop in the manifest, and onNewIntent relaunches with FLAG_ACTIVITY_NEW_TASK only, as the UI Kit's CometChatOngoingCallActivity does; singleTop routed the relaunch back to the same instance. - Custom ring screen gets its manifest entry. UI Kit events - CometChatCallEvent.CallRejected fires only for End or the 45 s timer; CallEnded only when this device hangs up a call opened with a Call. - Compose CometChatIncomingCall: onAcceptClick runs after the default accept; use onAcceptRequested to answer through the Push SDK. - setOnError / onError take one parameter. - CometChatCallActivity cannot be the Push SDK's incoming-call activity. - initiateUserCall fails with CALL_IN_PROGRESS; ACTIVE_CALL is Call Buttons'. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
hritika-cometchat
merged commit Oct 20, 2026
2fcdc6a
into
feature/android-ringing-push-sdk
3 checks passed
7 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes for #561, found by checking every page against the SDK source. This PR targets
feature/android-ringing-push-sdk, so merging it updates #561.Sources checked against:
calls-coreprepare-session-flow(5.1.0-beta.2)push-notifications-sdk-androidrelease/2.0(2.0.0-beta.3)uikit-androidENG-39907-ringing-v2-incomingFixes that change integration steps
chatuikit-coredeclaresapidependencies on the Chat and Calls SDKs only; no library module depends on push. Getting Started (3 pages), Call Features and Calling Integration now say so, and Calling Integration's Gradle snippets add both push artifacts. The UI Kit is listed first, so its ring colours win.minSdkis 28, not 26 (chatuikit-core/build.gradle.kts:25).RECORD_AUDIO,CAMERAandPOST_NOTIFICATIONSare already declared by the Calls SDK, the UI Kit and the calls module. The pages now say "request at runtime" instead of "declare".initon every app start, before login. Login/logout token registration (TokenAutoRegistrar.start()) only runs in a process whereinitran; the restore path for a killed app doesn't start it.setProviderIdis required. Without it, registration fails withPROVIDER_REQUIRED.setNotificationSmallIconcovers chat notifications only, and defaults toic_dialog_email.getActiveSession()is@Nullable. The Kotlin samples now use?.. They didn't compile before.Behaviour corrections
onConnectionClosed, notonSessionTimedOut(session.tsonPrepareTimeout).ended.joinSessionsettings. On a prepared session they are ignored; the callee's settings come from the Push SDK.initiateCallacceptsRECEIVER_TYPE_GROUP, and a group decline or busy stays local.init()with a different app ID re-initialises the SDK.CometChatCallsConstantshas been deprecated since 5.0, not 5.1.Code samples
setShowWhenLocked/setTurnScreenOnare now guarded for API 27, because the calls module'sminSdkis 26.onNewIntent. With the activity declaredsingleTop, the relaunch went back to the same instance. The fix matchesCometChatOngoingCallActivity: nosingleTopin the manifest (the answer intent already carriesSINGLE_TOP), and the relaunch usessetFlags(FLAG_ACTIVITY_NEW_TASK)only.CometChatIncomingCall:onAcceptClickruns after the default accept. The page now answers throughonAcceptRequestedinstead.setOnError/onErrortake one parameter.UI Kit event scope
CallRejectedfires only for End or the 45 s timer.CallEndedfires only when this device hangs up a call opened with aCall.CometChatCallActivitycan't be the Push SDK's incoming-call activity: it never readsCallBundles.initiateUserCallfails withCALL_IN_PROGRESS;ACTIVE_CALLcomes from Call Buttons.Checks
<Tabs>are balanced on every page.mint dev.Not changed
TODO(RC)stays.docs/integration.mdhas the same "init once per install" error. That belongs in the SDK repo.🤖 Generated with Claude Code