Voice & video calls
In-chat 1:1 calls with optional recording.
Chatasist supports 1:1 voice and video calls inside a conversation through managed, low-latency calling infrastructure. Chatasist authorizes each call and tracks both sides.
Where calls start#
- From the agent inbox (operator side).
- From the website widget and Flutter SDK (customer side).
Calls are blocked while a conversation is still AI-controlled or unassigned — assign it to a human first.
On the website widget you can hide the voice and/or video call buttons per channel from Settings → Channels — useful if you'd rather not offer calls to visitors on a given site. See Turn voice or video calls off. Your agents can still start a call from the inbox.
Calls are a paid feature: audio calls are included on Growth, and audio + video on Scale and above. Starting a call on a plan without calls is rejected. See Plan limits & enforcement.
How authorization works#
Each participant gets a short-lived HS256 JWT (5-minute lifetime) carrying the call ID,
chat ID, workspace ID, role (operator or customer), and whether recording is enabled. The
browser refreshes the token mid-call as needed. Real-time call signaling rides the same
real-time channels as the inbox (call.incoming, call.answered, call.ended).
Recording#
Recording is optional and gated per plan via the token's recording_enabled claim. When
a recording finishes, the recording provider calls an authenticated webhook and Chatasist
stores the recording's ID and URL against the call.
Recording incurs provider cost (roughly $0.001/hr audio, $0.034/hr video at 720p, and $0.05/GB egress). It's off unless enabled for the workspace's plan.
Measure satisfaction when conversations resolve.

