Repository navigation
docs(ios): ringing through the Calls SDK and Push Notifications SDK - #570
Open
jitvarpatil wants to merge 2 commits into
Open
jitvarpatil wants to merge 2 commits into
jitvarpatil wants to merge 2 commits into
Conversation
The iOS counterpart of the Android ringing docs (#561). iOS calling no longer signals through the Chat SDK: Calls SDK 5.1 creates, joins and ends calls, and Push Notifications SDK 2.0 rings the device through PushKit and CallKit in every app state. Calls SDK (calls/ios/) - ringing: rewritten for the Calls SDK flow (initiateCall, prepared-session events, incoming-call listener, answer through presentCall, decline, cancel, ring timeout, leave(), call waiting, group calls, logout). - migrating-from-legacy-ringing: new; steps, method mapping, checklist. - setup (5.1, push products, iOS 15.1), events (getActiveSession, onConnected/onParticipantConnected, incoming-call and login listeners), actions and custom-control-panel (leave, isSessionActive), overview, migration-guide-v5 (5.0 -> 5.1), troubleshooting. Push Notifications SDK - calls/ios/voip-calling rewritten as Push Ringing (slug kept): products, capabilities and Info.plist, initialise on every launch, configuration defaults, presentCall/callDidEnd, ring readiness, how a ring ends, call waiting, killed app, logout, CallKit branding, troubleshooting. - notifications/ios-push-notifications-sdk rewritten for 2.0; pointer notes on the APNs and FCM pages. Chat SDK: calling-overview and the delegates page note that the Chat SDK calling APIs are superseded. Every API, default and behaviour was checked against calls-core prepare-session-flow (5.1.0-beta.2), push-notifications-sdk-ios release/2.0 (2.0.0-beta.2) and the Connect iOS app, then reviewed again independently. Also fixes a broken in-page anchor on the events page. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
7 tasks
- Prerequisites: the provider's Bundle ID must be the app's (VoIP topic <bundle id>.voip) and its APNs environment must match the build (Enable Production Mode off for Xcode builds, on for TestFlight/App Store). - Push Ringing troubleshooting: a running app can ring over its live connection, so only a killed app proves the push; new "Check the push itself" section on reading Notifications → Logs (200 vs 400/403). - Same note in the Push Notifications SDK setup and the Calls troubleshooting table. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
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.
Summary
The iOS counterpart of the Android ringing docs (#561). iOS calling no longer signals through the Chat SDK. Calls SDK 5.1 creates, joins and ends calls. Push Notifications SDK 2.0 rings the device in every app state through PushKit and CallKit. On iOS every call uses CallKit, so there is no custom incoming-call screen to build.
Consumer wording is "ringing" and "legacy ringing"; the pages never say v1 or v2.
Calls SDK (
calls/ios/)ringing.mdx(rewritten), Calls SDK only:initiateCall, prepared-session events ("Ringing…" / answered) andaddIncomingCallListenerwith its reason table.presentCall, decline, cancel, the ring timeout, ending withleave(), call waiting, group calls and logout.migrating-from-legacy-ringing.mdx(new, in the Migration Guide navigation group): before/after, seven steps, a method mapping table and a checklist.setup: 5.1, the push products ringing needs, Info.plist and capability notes, and iOS 15.1 (the source floor).events:getActiveSession(it can return nil),onConnected/onParticipantConnected, prepared-session semantics, and the Incoming Call and Login listener sections.actionsandcustom-control-panel:leave()andisSessionActive().overview,migration-guide-v5(5.0 → 5.1) andtroubleshooting: updated to match.Push Notifications SDK
calls/ios/voip-calling.mdxis rewritten as Push Ringing; the slug is unchanged, so no redirect is needed. It covers:didFinishLaunchingon every launch;presentCall/callDidEnd, and ring readiness and diagnostics;unregisterTokensfirst), CallKit branding and troubleshooting.notifications/ios-push-notifications-sdk.mdxis rewritten for 2.0. The APNs and FCM pages get a short pointer note.Chat SDK
sdk/ios/calling-overviewandsdk/ios/all-real-time-delegates-listenersnote that the Chat SDK calling APIs are superseded.How it was checked
calls-coreprepare-session-flow(5.1.0-beta.2),push-notifications-sdk-iosrelease/2.0(2.0.0-beta.2) and the Connect iOS app.Before merging
CometChatCallsSDK 5.1.0and Push Notifications SDK2.0.0. Do not merge before they are published.cometchat/push-notifications-sdk-ioshas only tag 1.0.0.sourcetogithub.com/cometchat/push-notifications-ios, which doesn't exist.Package.swiftdepends on the privatecometchat-team/calls-core..p8APNs provider). Confirm with the backend that this works (planios-voip-push-sdk§7.15/§7.20). The older APNs page still describes separate Device and VoIP providers.TODO(RC)stays until then.SWIFT_INSTALL_OBJC_HEADER = NO, already the case in 5.0.4), so the Objective-C tabs on the iOS Calls pages, old and new, can't be used as written. Either ship the header, or drop the Objective-C tabs site-wide.feat/ringing-v2,ENG-39915). Its pages come in a follow-up.ringing,voip-calling,events,setupand others. Whichever merges second resolves the conflicts.mint dev.SDK issues found while writing (not docs)
defaultRingTimeoutMsis saved but never used; the ringer always uses 45 s. Left out of the docs.notificationContentModifierhas no effect, because the modified copy is thrown away. Listed as "no effect" in the upgrade table.CometChatPushNotificationsCalls.answer(sessionId:)says it acts "exactly as CallKit's Answer" but bypasses CallKit, so the CallKit call isn't updated and no audio session is set up. The docs call it test-only.Related: ENG-39907.
🤖 Generated with Claude Code