skillfed

pyobjc-framework-CallKit

Wrappers for the framework CallKit on macOS

pyobjc-framework-callkit v12.2.2 654.5K downloads/30d#5,525 on PyPI803
Permissive license MIT Active released

What it is and what it does

pyobjc-framework-callkit is a thin Python wrapper around Apple's CallKit framework, part of the larger PyObjC project. It allows Python developers on macOS to interact with the native CallKit APIs for managing phone calls and VoIP integrations. The package does not include its own documentation; instead, it bridges Python code to Apple's Objective-C framework, requiring developers to consult both Apple's CallKit documentation and PyObjC's general translation guides.

The package depends on pyobjc-core and pyobjc-framework-Cocoa, which handle the underlying Objective-C bridge mechanics. It is actively maintained, supports Python 3.10 through 3.15 (including free-threading variants), and is distributed as pre-built wheels for macOS. Installation is straightforward on supported platforms, but the package is strictly macOS-bound and requires a minimum Python version.

Use it for:

  • Build a VoIP client application on macOS that integrates with the native phone call UI.
  • Create a call-screening or call-management utility that hooks into macOS call handling.
  • Develop a telephony automation tool that needs to respond to incoming calls programmatically.
  • Integrate a Python backend with macOS native calling features for a hybrid application.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python bindings for Apple's CallKit framework on macOS, enabling programmatic access to call handling and VoIP integration features.

Yes, if you are developing on macOS and need to integrate with CallKit. The package is actively maintained, carries no known vulnerabilities, uses a permissive MIT license, and supports current Python versions. Install friction is moderate due to platform and version constraints, but those are inherent to the framework itself, not the wrapper. If you are not on macOS or do not need CallKit integration, this package is not applicable.

Install

pyobjc-framework-callkit on PyPI

pip

pip install pyobjc-framework-callkit

uv

uv add pyobjc-framework-callkit

poetry

poetry add pyobjc-framework-callkit

Installing pyobjc-framework-CallKit

Before you install

Medium install friction due to platform and Python version specificity—wheels are provided for macOS only (10.9 and later depending on Python version) and require Python 3.10 or higher. The package is actively maintained with a recent release.

License in practice

MIT license permits commercial and private use with minimal restrictions, making it straightforward to integrate into proprietary or open-source projects.

Quickstart

pip install pyobjc-framework-callkit

import CallKit
# Access CallKit framework classes and methods via the imported module

macOS only; requires Python 3.10 or later and a compatible macOS version (10.9 minimum for older Python versions, 10.13+ for Python 3.12–3.13, 10.15+ for Python 3.14–3.15).

Verify before relying

  • Whether CallKit bindings support all current Apple CallKit APIs or only a subset.
  • Performance characteristics when handling concurrent call events.
  • Whether free-threading support (Python 3.13+) is fully tested in production scenarios.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction medium — platform-specific wheel
Runtime dependencies 2 — pyobjc-core, pyobjc-framework-Cocoa
Maintenance actively maintained — 3 days since the last release
Last repo commit
First released
Downloads 654,452/month — #5,525 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyobjc_framework_callkit-12.2.2-cp310-cp310-macosx_10_9_universal2.whl; pyobjc_framework_callkit-12.2.2-cp311-cp311-macosx_10_9_universal2.whl; pyobjc_framework_callkit-12.2.2-cp312-cp312-macosx_10_13_universal2.whl; pyobjc_framework_callkit-12.2.2-cp313-cp313-macosx_10_13_universal2.whl; pyobjc_framework_callkit-12.2.2-cp313-cp313t-macosx_10_13_universal2.whl; pyobjc_framework_callkit-12.2.2-cp314-cp314-macosx_10_15_universal2.whl; pyobjc_framework_callkit-12.2.2-cp314-cp314t-macosx_10_15_universal2.whl; pyobjc_framework_callkit-12.2.2-cp315-cp315-macosx_10_15_universal2.whl; pyobjc_framework_callkit-12.2.2-cp315-cp315t-macosx_10_15_universal2.whl

Keywords: PyObjC, CallKit

Development Status :: 5 - Production/StableEnvironment :: ConsoleEnvironment :: MacOS X :: CocoaIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: MacOS :: MacOS XProgramming Language :: Objective CProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Programming Language :: Python :: Free Threading :: 3 - StableProgramming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Libraries :: Python ModulesTopic :: Software Development :: User Interfaces

Tags

callkit python bindingsvoip integration macoscall handling framework pythonpyobjc callkit wrappermacos phone call apiobjective-c callkit python
macos-onlyvoipobjective-c-bridge

More Python Modules packages

idna

Converts domain names between Unicode and…

permissive · top 100 on PyPI

setuptools

Setuptools is a Python build backend and…

permissive · top 100 on PyPI

PyYAML

PyYAML parses and emits YAML 1.1 data format,…

permissive · top 100 on PyPI

pydantic

Pydantic validates Python data structures…

permissive · top 100 on PyPI

annotated-types

Provides reusable metadata objects for use with…

permissive · top 100 on PyPI

typing-inspection

Provides runtime tools to inspect and…

permissive · top 100 on PyPI

pyobjc-framework-InputMethodKit

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-Network

Provides Python bindings to Apple's Network…

permissive · top 15,000 on PyPI

pyobjc-framework-BusinessChat

Provides Python bindings for Apple's…

permissive · top 15,000 on PyPI

pyobjc-framework-SafariServices

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-ClassKit

Provides Python bindings to Apple's ClassKit…

permissive · top 15,000 on PyPI

pyobjc-framework-libxpc

Provides Python bindings to the macOS XPC…

permissive · top 15,000 on PyPI

pyobjc-framework-MapKit

Provides Python bindings to Apple's MapKit…

permissive · top 15,000 on PyPI

pyobjc-framework-EventKit

Provides Python bindings to macOS's EventKit…

permissive · top 15,000 on PyPI

pyobjc-framework-ContactsUI

Provides Python bindings to macOS's ContactsUI…

permissive · top 15,000 on PyPI

pyobjc-framework-Contacts

Provides Python bindings to macOS's Contacts…

permissive · top 15,000 on PyPI