# Calls

> Make and receive phone calls in the browser, route callers with call flows, let AI agents answer or dial, and review every call with recordings and summaries.

Calls brings phone calls into Workstation. You connect or buy a phone number, and calls ring teammates in the browser. Missed calls, voicemails, recordings, and AI summaries land in [Inbox](https://workstation.repzo.com/docs/operations/inbox) as conversations, and the **Calls** page keeps the full call history.

Calls is part of the **Inbox & Calls** add-on. Call minutes, numbers, and recordings are paid from your [AI balance](https://workstation.repzo.com/docs/commerce/ai-balance).

## Set up calling

1. [Connect a phone number](#connect-a-number).
2. Give teammates calling access and extensions in **Settings → Inbox → Calls**.
3. Adjust the number's ring, voicemail, recording, and business-hours settings.
4. Optionally edit the number's [call flow](#call-flows) to add a phone menu, extensions, or an AI agent.
5. Check your microphone and speaker in **Settings → Your Account → Audio settings**.

### Connect a number

Open **Settings → Inbox → Channels → Connect a channel → Phone Calls**.

1. Choose a **Country**.
2. Under **Numbers assigned to you**, select **Connect** on a number already assigned to your workspace, or select **Select number** to buy one. You can search **By city**, **By area code**, or **Toll-free**.
3. Choose the inbox the number's conversations go to.
4. Confirm with **Add number**. A bought number renews monthly until you release it. You can turn on **Record answered calls** here.

Some numbers need regulatory verification and can't be bought from this screen yet.

### Number settings

Open the number from the channel list, or from **Settings → Inbox → Calls → Numbers**.

| Section | What you set |
|---|---|
| **Ring & voicemail** | Channel name, extra numbers to ring, **Ring timeout (seconds)**, voice language, and the **Voicemail greeting** |
| **Call recording** | On or off, and **Delete recordings after** 30 days, 90 days, 180 days, or 1 year |
| **Business hours** | Time zone and opening hours. Outside these hours, calls skip the team and go straight to voicemail |
| **Missed-call WhatsApp follow-up** | An approved WhatsApp template sent automatically after a missed call |
| **Outbound calling** | The countries you allow outbound calls to. Outbound calling stays off until you add at least one |

Recording calls may require the caller's consent where you operate. That responsibility is yours.

## Teammates and extensions

**Settings → Inbox → Calls** has three tabs:

- **Extensions** — turn **Calling access** on for each member and give them a 2–6 digit **Extension**. **Auto-assign all** numbers everyone in one step.
- **Numbers** — every call number, with links to its settings, plus **Connect a number**.
- **General** — your voice account status and outbound calling reach.

A teammate needs calling access to place and receive calls in the browser. In **Settings → Team**, open a member to set the numbers they may call from and their **Default calling number**.

## Make and receive calls

**Place a call** from:

- the **Dialer** (keypad icon in the header), with **Keypad**, **Contacts**, **Team**, and **Recents** tabs. The keypad can dial a phone number or a teammate's extension.
- the phone button on a contact record or an inbox conversation.

Choose the number to call from in **Call from**. The phone button's menu also offers **Call with AI agent…**, which has an AI agent place the call for you; you give it the reason for the call and see a cost estimate before you **Start call**.

**Incoming calls** show a card with the caller's number, the matched contact, and **Accept** or **Decline**. During a call you can mute, hang up, and open call details to check connection quality and switch microphone or speaker.

## Call flows

A call flow decides what happens when someone calls a number. Open a number's settings and select **Call flow**.

New numbers start with a **Default** flow that rings the team and then goes to voicemail. You can build other flows and choose which one is **Live**. Edits stay as **Unpublished changes** until you **Publish**.

Flows are built from steps:

| Step | What it does |
|---|---|
| **Ring users** | Ring teammates in the browser, plus any extra phone numbers |
| **Voicemail** | Record a message after a greeting |
| **Play message** | Speak a message to the caller |
| **Forward call** | Send the call to another phone number |
| **Phone menu** | "Press 1 for sales, 2 for support…" |
| **Dial by extension** | Let the caller type a teammate's extension |
| **Business hours** | Branch on whether the number is open or closed |
| **Go to** | Continue at another step |
| **AI agent** | Let one of your AI agents handle the call |

Steps branch on results such as **If call is missed**, **Open** or **Closed**, or the digit pressed.

The **Outbound AI calls** tab holds the flow for calls an AI agent places. It can check for an answering machine first and hang up or leave a message.

### AI on calls

The **AI agent** step hands the call to one of your [AI agents](https://workstation.repzo.com/docs/operations/ai-agents) that supports calling. Choose the agent, then set a **Maximum call length**. On outbound flows you also set the **Purpose of the call**, which the agent says right after introducing itself.

Everything else comes from the agent: its language, voice, welcome message, speaking style, and call functions such as transferring the caller to a teammate. The step shows a short summary of these settings and an **Open agent settings** link. Change them on the agent and publish it; every call flow that uses the agent picks up the change.

The agent must have a published calling model and voice before you can publish the flow. If an AI step has no agent, the call continues on its **Fallback** branch.

## Call history

The **Calls** page lists every inbound and outbound call:

| Column | Shows |
|---|---|
| **Call** | Direction and number; missed calls are marked |
| **Contact** | The matched contact, opened in a side panel |
| **Team member** | Who handled it, or **AI agent** |
| **Status** | Ringing, In Progress, Completed, Missed, No Answer, Voicemail, Busy, Failed, or Canceled |
| **Outcome** and **Sentiment** | The AI's classification of the call |
| **Recording** | Play the recording or voicemail |

**From**, **To**, and **AI summary** columns can be added from the column picker. Use **Search calls** to find a call.

While an AI agent is on a call, teammates with listen permission can select **Listen live** to hear it without being heard.

Each call also appears as a card in the Inbox conversation, with the recording, AI summary, any extracted details, and the transcript. The contact record's **Calls** tab lists calls with that person. Calls don't create CRM activities; log one manually in [Activities](https://workstation.repzo.com/docs/engagement/activities) if you need it on the timeline.

## Outbound campaigns

**Settings → Inbox → Outbound Campaigns** dials a list of numbers with an AI agent.

1. Select **New campaign** and set the name, **Calling line**, optional AI agent, and the objective.
2. Set **Concurrency** (calls at once), **Max attempts**, and the retry delay.
3. Open the campaign and paste numbers, one per line in international format.
4. Start, pause, or resume the campaign and follow each number's status.

Numbers on your do-not-call list, contacts marked **Do Not Call**, opted-out contacts, and countries you don't allow are skipped automatically.

## Test and measure

- **Settings → Inbox → Agent Testing** simulates callers against your AI agent before it goes live. Each scenario has a caller persona, goal, and a rubric of what a good call must do. A test run scores the call out of 100 with a transcript. Test runs never create real records.
- **Settings → Inbox → Voice Analytics** shows call volume, answer rate, AI-handled calls, talk time, cost, response latency, sentiment, and outcomes for the last 7, 30, or 90 days.

## Permissions

| Permission | Allows |
|---|---|
| `voice_calls.view` | Open the Calls page and Voice Analytics |
| `voice_calls.call` | Place and receive calls |
| `voice_calls.listen` | **Listen live** to AI calls |
| `voice_calls.settings` | Manage numbers, call flows, extensions, campaigns, and agent tests |

Sandbox workspaces can't connect numbers or place calls.

## Related pages

- [Inbox](https://workstation.repzo.com/docs/operations/inbox)
- [AI Agents](https://workstation.repzo.com/docs/operations/ai-agents)
- [AI Balance & Packs](https://workstation.repzo.com/docs/commerce/ai-balance)
- [Plans & Add-ons](https://workstation.repzo.com/docs/commerce/plans-and-add-ons)
- [Contacts](https://workstation.repzo.com/docs/sales/contacts)
