What problem does it solve?
This Skill helps you implement reliable VoIP calling experiences on iOS that integrate with the system call UI, including the tricky coordination between PushKit receipts, CallKit reporting, and audio/session lifecycle.
Core Features & Use Cases
- VoIP CallKit integration: Build incoming and outgoing call flows using CXProvider, CXCallController, and CXProviderDelegate so the system can display and manage calls.
- PushKit VoIP push handling: Register for VoIP pushes and report incoming calls immediately upon receipt to avoid app termination.
- Audio session coordination: Configure and start/stop audio only in the proper CallKit delegate callbacks to prevent silence and conflicts.
- Call Directory extension: Add caller identification and call blocking via CXCallDirectoryProvider and reload the extension after updates.
Quick Start
Implement a CXProvider with a CXProviderDelegate, then register for PKPushRegistry VoIP pushes and report each incoming VoIP push as a new incoming CallKit call before the PushKit completion handler returns.