> ## Documentation Index
> Fetch the complete documentation index at: https://docs.assist.fm/llms.txt
> Use this file to discover all available pages before exploring further.

# Inbound calls

> How inbound calls are routed to your agent and processed.

## Call flow

When someone dials your agent's phone number:

**1. Call received**

Telnyx receives the inbound call and sends a webhook to AssistPulse.

**2. Agent lookup**

The system identifies which agent is linked to the called number and loads its configuration (instructions, voice, tools, knowledge base).

**3. Session created**

A real-time session is established with OpenAI's Realtime API using your agent's settings.

**4. Conversation begins**

The agent greets the caller based on its instructions. Audio streams bidirectionally in real time.

**5. Tools and knowledge**

During the conversation, the agent may:

* Search the knowledge base for relevant information
* Invoke connected tools (APIs, Google Maps, etc.)
* Follow the configured call flow for transfers

**6. Call ends**

When the call ends (caller hangs up, transfer, or timeout), the system:

* Saves the call record with duration and metadata
* Generates a transcript (if transcription is enabled)
* Runs AI analysis for summary and sentiment
* Logs token usage

## Call transfers

If the agent determines a transfer is needed (based on instructions or the flow builder), it:

1. Announces the transfer to the caller.
2. Initiates a SIP transfer to the configured number.
3. The call is handed off to the destination number.

> [!NOTE]
>
> Transfer numbers must be configured in the [flow builder](https://docs.assist.fm/agents/flow-builder) or as a fallback number in agent settings.

## Recording

Call recording can be enabled per agent in the agent settings. When enabled:

* The full audio of each call is recorded
* Recordings are stored securely
* Recordings are accessible from the call detail view

> [!WARNING]
>
> Ensure you comply with local laws regarding call recording. Many jurisdictions require informing the caller that the call is being recorded. Include this in your agent's instructions.

## Fallback behavior

If something goes wrong during a call (API error, timeout), the system falls back to:

1. The agent's **fallback number** (if configured) — transfers the call to a human
2. A polite error message if no fallback is available


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.