1-1 Calls¶
Purpose¶
A 1-1 call is the simplest call experience: one caller, one callee, one encrypted media room. Internally it follows the same call setup rules as group calls, but the UI presents a focused two-person layout.
Business Flow¶
User taps audio/video call
-> app prepares local outgoing state
-> iOS registers the call with the system call UI
-> app verifies the callee's device keys
-> app creates a fresh session key
-> app encrypts that key for the callee
-> backend creates the call and notifies the callee
-> both devices join the LiveKit room
-> encrypted media starts
Key Rules¶
- 1-1 is the single-recipient case of the shared call pipeline.
- Identity verification happens before the session key is sent to the peer.
- The backend coordinates signaling and room access, but should not receive the raw session key.
- The UI uses the same participant state as larger calls; it only changes presentation when there are two people.
User Experience¶
| State | User sees |
|---|---|
| Calling | Outgoing CallKit/system call state and in-app waiting UI. |
| Ringing | Callee receives native incoming call UI. |
| Connected | Two-person call layout. |
| More participants added | UI can move to group layout. |
| Rejected/busy/missed | End-state screen with recall options when available. |