Node catalogue
The Flow Designer canvas mixes two families of nodes. Conversation nodes are the steps that actually run when a session is in progress. Virtual nodes explain what surrounds the conversation — where the call comes in, which providers transcribe / generate / speak, what actions the agent can take.
Both are clickable; both have inspectors on the right.
Conversation nodes
These are the steps that the runtime walks at call time, in transition order.
Voice agent (voice_agent)
The headline conversation step: an LLM-driven AI agent that listens and speaks.
- Instructions — the system prompt for the agent.
- Tools — JavaScript actions the agent can call (defined as platform tools or inline).
- Action capabilities — surfaced as small chips beneath the node (DTMF, external API, browser action, transfer, hangup, silence).
- Transitions — outbound edges driven by the agent's decisions or tool results.
This is the most common node. A flow can have many of them in sequence (e.g. greeter → routing → specialist).
STT transcribe (stt_transcribe)
Speech-to-text on a stand-alone basis (separate from the agent's own STT). Useful when you need a transcript for analysis or translation without involving an LLM.
- Source language, chunking mode, optional translations.
Interpretation transform (interpretation_transform)
Runs an interpretation / translation prompt against a chunk of text. Often paired with stt_transcribe upstream.
LLM query (llm_query)
A one-shot LLM call without the conversation harness. Useful for short prompts that compute a value or branch.
TTS playback (tts_playback)
Plays a fixed piece of text through the configured TTS provider. Used for greetings, fallbacks and farewells.
DTMF collect (dtmf_collect)
Captures DTMF digits from the caller and writes them to a flow variable.
- Max digits, terminator, timeout, result variable name.
Action request (action_request)
Asks the connected client (browser SDK) to perform a browser action — open a URL, show a modal, fire a webhook on the page. Whether the flow waits for a result is configurable.
Webhook (webhook)
External HTTP call from the flow. Request method, URL, headers, body, response parsing into variables.
Condition (condition)
A branch point with one or more rule-based transitions. Inputs come from flow variables and previous step outputs.
Transfer (transfer)
PSTN / SIP transfer to another destination. Method and target are configured per node. Requires an egress base number on the parent endpoint.
End (end)
Marks the end of a flow. An optional reason is surfaced on the resulting conversation record.
Virtual nodes (the bits and pieces)
These nodes are rendered from the flow definition to make the surrounding plumbing visible on the canvas. They are not "extra config" — clicking one opens the part of the flow settings that owns it.
Start node
The root of the graph. Click it to open Flow Settings — that's where endpoints, the default provider, app-level settings, and language live.
When the flow has at least one endpoint the Start node displays a phone icon; otherwise it shows a "+" to invite you to add the first endpoint.
Entry Point
One chip per endpoint on the flow. Three types are rendered:
- Phone — inbound PSTN / SIP. Shows the base number + extension.
- Web Voice — browser voice calls via the SDK. Shows the slug. Feature
webrtc - Web Chat — text / chat sessions via the SDK.
Clicking opens the Endpoint Inspector. Adding or removing endpoints is also done here.
Default Provider
Up to four chips — one each for STT, LLM, TTS, and Realtime — visualising the providers that handle audio by default. Clicking any chip jumps straight into the relevant section of Flow Settings.
Voice agent nodes can override the default per node; the chips show what the rest of the flow falls back to.
Surface group
A container that groups channels for browser sessions (Voice / Chat / Actions) or for phone calls. The chip indicates which channels are enabled, sourced from the Web Voice endpoint configuration.
Action capability
Small chips attached to a voice_agent node summarising what the agent can do in addition to talking: collect DTMF, call an external API, ask the browser to perform an action, transfer, hang up, or pause. The chips are derived from the agent's tools and routing rules.
Side flow trigger
When the flow definition contains side flows (sub-graphs triggered by an action or browser event), the canvas renders a trigger node so the side flow is reachable. Click it to drill into the side flow's nodes.
Managed LLM
A special-purpose node used by Vodafone TOBi and other managed LLM integrations. It encapsulates the LLM, its enabled managed actions, and its transition handles in one node.
Managed action
The transfer / hangup actions that belong to a managed LLM. Rendered as a child node of the managed LLM with an enabled / disabled badge.
How nodes connect
Each conversation node exposes one or more transition handles on the right side. Edges connect a handle on the source to the next node — straight-through, branched, or back into a previous step. Transitions hold their own metadata (label, optional condition); click an edge to edit them.
Virtual nodes (entry point, default provider, surface group) connect into the conversation flow at fixed anchor points; they aren't directly editable as transitions.
See also
- Inspectors — the right-panel editors for each node type.
- Source view — the same nodes as JSON.
- Providers (concept)
- Endpoints (concept)