callkit

Community

Seamless native VoIP call integration.

AuthorKumarAdi8
Version1.0.0
Installs0

System Documentation

What problem does it solve?

Provides clear, production-minded guidance to integrate VoIP calling with the iOS system UI so incoming and outgoing calls are reliably reported, managed, and presented by CallKit while coordinating PushKit notifications and audio sessions.

Core Features & Use Cases

  • Configure and retain a single CXProvider and CXCallController for app lifetime.
  • Report incoming calls from VoIP pushes and implement CXProviderDelegate to handle answer, end, hold, and mute actions.
  • Start outgoing calls via CXStartCallAction and report connecting/connected timestamps.
  • Register and refresh VoIP tokens with PKPushRegistry and forward them to your server.
  • Coordinate AVAudioSession activation/deactivation with provider callbacks and avoid starting audio before activation.
  • Implement Call Directory extensions for caller ID and blocking with incremental updates.
  • Includes a review checklist and common mistakes to prevent app termination, missed pushes, and audio glitches.

Quick Start

Report an incoming VoIP push by sending the push payload to your call manager so it generates a UUID, builds a CXCallUpdate with the caller handle and localized name, and calls reportNewIncomingCall before the PushKit handler completes.

Dependency Matrix

Required Modules

None required

Components

references

💻 Claude Code Installation

Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.

Please help me install this Skill:
Name: callkit
Download link: https://github.com/KumarAdi8/AgentKit/archive/main.zip#callkit

Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
View Source Repository

Agent Skills Search Helper

Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.