Guides

End-to-end use cases for Audio Streaming. UC1–UC3 are also documented with full request tables on Consult & conference. UC4 lives here because you own the ASR and therefore the transcript.

UC1 — Consult

Bot escalates to a human agent via attended transfer. A collections bot answers, handles the routine flow, and when the caller asks for a person, it consults a human agent privately before deciding whether to hand off.

  1. Your LLM decides a human is needed and pauses the conversation.
  2. Call POST /sessions/{session_id}/consult with the agent's number. The caller is placed on hold with music while the agent is dialled.
  3. While the caller waits, the bot speaks privately to the agent. When the agent hangs up, the caller is automatically rejoined with the bot.

Full curl examples and status codes: Consult & conference.

UC2 — Transfer

Hand the caller fully to an agent and release the bot. Unlike a consult, a full transfer moves the caller to an agent and ends the bot's involvement. Use it when no warm hand-off briefing is needed.

  1. The bot decides to transfer and sends end_of_call after a short handoff message, or places a consult and then drops the bot leg once the agent answers.
  2. The caller and agent continue; Fonada closes the WebSocket for the bot session.

UC3 — Conference

Bring caller, bot, and a third party into one bridge. A three-way scenario: the caller, the bot, and a supervisor all hear each other.

Add with action: add and remove with action: delete. Current members are listed under conferenceNumbers in GET /sessions/{session_id}.

UC4 — Transcript

Capture a live transcript alongside the conversation. Because you own the ASR, you already have the transcript — persist it as the call runs rather than after the fact.

  1. On each inbound audio chunk, feed your streaming ASR and append interim/final results to your transcript store, keyed by session_id.
  2. On session_end, flush and finalise the transcript record.