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()
)
“Connected” means:
the remote side has answered and the real communication layer is active.
This is different from:
User starts outgoing call
↓
CXStartCallAction sent
↓
CallKit accepts lifecycle
↓
Remote user answers
↓
App confirms media/session connected
↓
reportOutgoingCall(connectedAt:)
provider.reportOutgoingCall(
with: uuid,
connectedAt: Date()
)
This tells CallKit: