Skip to content
AI Voice Agents
AI Voice Agents11 min0 views

Android Telecom Framework + AI Voice Agents: ConnectionService and CallsManager (2026)

Self-managed ConnectionService is the Android-blessed path for AI voice agents. Here is how to ship it with WebRTC, FCM, and the new Core-Telecom Jetpack CallsManager.

Android's Telecom framework is the equivalent of CallKit, but with two layers: the legacy ConnectionService and the modern Core-Telecom Jetpack CallsManager. AI voice agents in 2026 should target the latter and let it wrap the former for older devices.

Background

Android's Telecom framework manages calls system-wide and routes audio through the same pipeline used by the dialer app. A "self-managed" ConnectionService lets a third-party app advertise calls without taking over the dialer UI — exactly what an AI voice agent app needs. In November 2023 Google released the Core-Telecom Jetpack library, which introduces a new `CallsManager` class that obsoletes ConnectionService for new code while wrapping it on Android 8.0+.

In 2026, AI voice agent apps should write against `CallsManager`. It interoperates with system telephony, with other standalone calling apps, and with the new "stream call audio to your tablet" feature Google is rolling out across the device family.

Architecture

```mermaid flowchart LR Server[Voice Agent Backend] -- FCM high-priority --> FCM[(Firebase FCM)] FCM --> App[Android App] App -- addCall --> CallsManager[Core-Telecom CallsManager] CallsManager -- CallControlScope --> WebRTC[WebRTC PeerConnection] WebRTC -- DTLS-SRTP --> Gateway[Pion Go gateway 1.23] Gateway -- NATS --> Pod[6-container agent pod] ```

Hear it before you finish reading

Talk to a live CallSphere AI voice agent in your browser — 60 seconds, no signup.

Try Live Demo →

CallSphere implementation

CallSphere's Android client matches the iOS architecture across the same six verticals:

  • Real Estate (OneRoof) — Inbound calls land on the Pion Go gateway 1.23 → NATS → 6-container pod (CRM, MLS, calendar, SMS, audit, transcript). The Android app uses self-managed CallsManager + WebRTC. See /industries/real-estate.
  • Healthcare — Same Android stack, OpenAI Realtime backend, full HIPAA + SOC 2 controls. See /industries/healthcare.
  • /demo browser path — Plain Chrome on Android also works without Telecom framework. Try it at /demo.

37 agents, 90+ tools, 115+ database tables, 6 verticals, 14-day /trial, 22% affiliate at /affiliate. Pricing $149/$499/$1499.

Build steps with code

```kotlin // 1. Build a CallsManager and register capabilities val callsManager = CallsManager(context) callsManager.registerAppWithTelecom( capabilities = CallsManager.CAPABILITY_BASELINE or CallsManager.CAPABILITY_SUPPORTS_VIDEO_CALLING )

// 2. On FCM high-priority message, add the call suspend fun onFcmIncoming(payload: Map<String, String>) { val attributes = CallAttributesCompat( displayName = payload["from"] ?: "AI Agent", address = Uri.parse("voice:agent"), direction = CallAttributesCompat.DIRECTION_INCOMING, callType = CallAttributesCompat.CALL_TYPE_AUDIO_CALL, callCapabilities = CallAttributesCompat.SUPPORTS_SET_INACTIVE, ) callsManager.addCall(attributes, onAnswer = { type -> startWebRTC() // negotiate peer connection here }, onDisconnect = { reason -> stopWebRTC() }) } ```

```xml

\`\`\`

Pitfalls

  • Failing to register capabilities — `registerAppWithTelecom` must run before `addCall`; otherwise the call silently never reaches the system.
  • Skipping the foreground-service-phone-call permission — Android 14+ rejects ongoing-call services without it.
  • Holding RECORD_AUDIO without an active call session — Doze mode kills mics; let CallsManager hold the focus.
  • Using a regular FCM message instead of high-priority — Android deprioritizes future pushes if you fail to show a call UI.
  • Manually managing AudioManager mode — let CallsManager set `MODE_IN_COMMUNICATION` automatically.

FAQ

Is ConnectionService deprecated? Not yet — but the Jetpack CallsManager is the path forward. CallsManager wraps ConnectionService on older devices automatically.

Still reading? Stop comparing — try CallSphere live.

CallSphere ships complete AI voice agents per industry — 14 tools for healthcare, 10 agents for real estate, 4 specialists for salons. See how it actually handles a call before you book a demo.

Does it interoperate with CallKit on iOS? No — Telecom and CallKit are separate, but they expose semantically similar APIs (incoming/outgoing/answer/disconnect) that fit a single cross-platform abstraction.

Can I show my own UI? Yes for self-managed; the system handles audio routing while you own the screen.

Does it work with WebRTC? Yes — Telecom controls the audio mode and focus; WebRTC negotiates SRTP and renders into AudioTrack.

What about Bluetooth headsets? CallsManager + AudioManager-IN_COMMUNICATION routes correctly to Bluetooth SCO when one is connected.

Sources

Try CallSphere on Android via the WebRTC /demo, pricing at /pricing, or start a /trial.

Share

Try CallSphere AI Voice Agents

See how AI voice agents work for your industry. Live demo available -- no signup required.

Related Articles You May Like

AI Infrastructure

Defense, ITAR & AI Voice Vendor Compliance in 2026

ITAR technical-data definitions don't care if a human or an LLM produced the output. CMMC Level 2 has been mandatory since November 2025. Here is what an AI voice vendor needs to ship to defense in 2026.

AI Voice Agents

WebRTC Mobile Testing with BrowserStack + Sauce Labs (2026)

BrowserStack offers 30,000+ real devices; Sauce Labs ships deep Appium automation. Here is how AI voice agent teams use both for WebRTC mobile QA in 2026.

AI Infrastructure

WebRTC Over QUIC and the Future of Realtime: Where Voice AI Goes After 2026

WebTransport is Baseline as of March 2026. Media Over QUIC ships in production within the year. Here is what changes for AI voice agents — and what stays the same.

AI Engineering

Latency vs Cost: A Decision Matrix for Voice AI Spend in 2026

Every 100ms of latency costs you. So does every cent per minute. Here is the decision matrix we use across 6 verticals to pick where to spend and where to save on voice AI infrastructure.

AI Strategy

AI Agent M&A Activity 2026: Aircall–Vogent, Meta–PlayAI, OpenAI's Six Deals

Q1 2026 saw a record acquisition wave: Aircall bought Vogent (May), Meta acquired Manus and PlayAI, OpenAI closed six deals. The voice AI consolidation phase has begun.

AI Infrastructure

OpenAI's May 2026 WebRTC Rearchitecture: How Voice Latency Got Real

On May 4 2026 OpenAI published its Realtime stack rebuild — split-relay plus transceiver edge. Here is what changed and what it means for production voice agents.