Definition

A call is considered “connected” when the communication session between both participants becomes active and media/audio communication can begin.

In CallKit, outgoing calls are typically marked as connected using:

provider.reportOutgoingCall(
    with: uuid,
    connectedAt: Date()
)

Core Concept

“Connected” means:

the remote side has answered and the real communication layer is active.

This is different from:


Outgoing Call Connection Flow

User starts outgoing call
        ↓
CXStartCallAction sent
        ↓
CallKit accepts lifecycle
        ↓
Remote user answers
        ↓
App confirms media/session connected
        ↓
reportOutgoingCall(connectedAt:)

Reporting Connection

provider.reportOutgoingCall(
    with: uuid,
    connectedAt: Date()
)

This tells CallKit: