# Manage AI Receptionist Skills

An AI receptionist is assembled from a set of independent skills, each governing a different part of how it handles a call. Because every skill can be switched on or off on its own, you can tailor a receptionist to do exactly what a given number or workflow needs. This page describes each available skill and how to configure it.

## Supported skills

| Skill | What it does |
|-------|--------------|
| Greeting | Plays a fixed or time-based message as soon as the receptionist answers. Leave it off and the receptionist waits for the caller to speak first. See [Configure greetings](#configure-greetings). |
| Knowledge Base | Gives the receptionist access to FAQs, documents, and other content you've uploaded so it can answer caller questions accurately. You can remove content from a receptionist when it's no longer relevant. See [Assign or unassign a knowledge base](#assign-or-unassign-a-knowledge-base). |
| Dial By Name | Lets the receptionist recognize an extension user's name spoken by the caller and transfer the call to that extension. See [Enable dial by name](#enable-dial-by-name). |
| Intent-Based Transfer | Routes calls by what the caller wants. The receptionist interprets the conversation and forwards the call to the destination that matches. See [Set up intent-based transfer](#set-up-intent-based-transfer). |
| Information Collection | Extracts specific details from the conversation and hands them to a human agent when the call transfers. See [Configure information collection](#configure-information-collection). |
| Tools | Connects the receptionist to external systems so it can fetch live data or perform actions mid-call. See [Assign or unassign tools](#assign-or-unassign-tools). |

## Open a skill card

Every skill is reached the same way:

1. In the Cloud Voice portal, go to **AI > AI Receptionist**.
2. Click the receptionist you want to edit. Its details page opens.
3. On the **Skill** tab, click the card for the skill you want to configure.

The sections below pick up from the open skill card.

## Configure greetings

The greeting is the first thing a caller hears when the receptionist answers. You can play the same message every time, or vary it by time of day and by holiday.

:::note
Time-based greetings rely on your business hours and holiday definitions. Before you set them up, make sure business hours and holidays are configured for the time zone you plan to use.
:::

On the **Greeting** card, set up either a fixed greeting or time-based greetings.

### Fixed greeting

![Greeting card with the greeting switch on and a message entered in the Greeting field](/images/pbx/configure-a-fixed-greeting.png)

1. Turn on the **Greeting** switch.
2. In the **Greeting** field, enter the message in the receptionist's primary language.
3. Optional: Select **Do Not Interrupt Greeting** to stop callers from talking over the message.
4. Click **Save**. The receptionist now plays this greeting whenever it answers a call.

### Time-based greetings

1. Turn on the **Greeting** switch.
2. Optional: Select **Do Not Interrupt Greeting** to stop callers from talking over the message.
3. Select **Time-based Greeting**.
4. In the **Time Zone** drop-down list, choose a time zone. The receptionist plays greetings according to the business hours and holidays configured for that time zone.
5. To vary the greeting by business hours, select **Based on business hours** and fill in the following fields in the receptionist's primary language.

   ![Business-hours and outside-business-hours greeting fields](/images/pbx/greetings-based-on-business-hours.png)

   | Setting | Description |
   |---------|-------------|
   | Greeting for Business Hours | Played when the receptionist answers during business hours and break hours. |
   | Greeting for Outside Business Hours | Played when the receptionist answers outside business hours, break hours, and holidays. |

6. To vary the greeting by holiday, select **Based on holidays**, then choose one of the following options.

   | Option | What to do |
   |--------|------------|
   | Same Greeting for All Holidays | Enter a message in the **Greeting for Holidays** field, in the receptionist's primary language. The receptionist plays this message on every holiday. |
   | Greeting for Specific Holidays | Enter a general message in the **Default Greeting for Holidays** field, then add per-holiday messages in the **Specific Holidays** section, all in the receptionist's primary language. The receptionist plays the specific message on a matched holiday and the default message on any other holiday. |

   ![Single greeting applied to all holidays](/images/pbx/greeting-for-same-holiday.png)

   ![Default holiday greeting with individual per-holiday greetings listed below it](/images/pbx/greeting-for-different-holidays.png)

7. Click **Save**.

## Assign or unassign a knowledge base

A knowledge base lets the receptionist look up your content in real time and answer caller questions from it.

**Prerequisite:** Before you can assign a knowledge base, you must have [added content to it](/pbx/ai-guide/add-contents-to-knowledge-base/).

On the **Knowledge Base** card, assign or unassign content.

### Assign a knowledge base

1. Turn on the **Knowledge Base** switch.
2. Click **Add**. A window lists every content entry in the knowledge base.
3. Search for and select the entries you want, then click **Save**.

   ![Knowledge base window with content entries selected for assignment](/images/pbx/assign-knowledage-base.png)

   :::note
   If the content you need isn't listed, add it on the spot with **Upload File** or **Add URL**. Anything you upload here is also added to the global knowledge base automatically.
   :::

4. At the bottom of the page, click **Save**. The selected content is now assigned, and the receptionist draws on it when answering callers.

### Unassign a knowledge base

![Knowledge base list with entries selected for removal](/images/pbx/unassign-kb.png)

1. In the receptionist's knowledge base list, select the checkbox for each entry you no longer need.
2. At the top of the list, click **Delete**.
3. In the confirmation window, click **OK**.
4. At the bottom of the page, click **Save**.

:::note
Unassigning only breaks the link to the receptionist. The content stays in the global knowledge base.
:::

## Enable dial by name

With this skill on, a caller can say an extension user's name and the receptionist transfers them to that extension.

On the **Dial By Name** card:

![Dial By Name card with the switch on and an extension range selected](/images/pbx/dial-by-name-setting.png)

1. Turn on the **Dial By Name** switch.
2. In the **Extensions allowed to be dialed** section, define which extensions callers can reach.

   | Setting | Description |
   |---------|-------------|
   | All Extensions | Every extension can be dialed. |
   | Allowed Extensions | Only the extensions you choose can be dialed. Move them from the **Available** box to the **Selected** box. |
   | Restricted Extensions | The extensions you choose cannot be dialed; all others can. Move the blocked extensions from the **Available** box to the **Selected** box. |

3. Click **Save**.

The receptionist now recognizes a spoken extension name and connects the caller to the matching extension.

## Set up intent-based transfer

Intent-based transfer routes calls by meaning rather than by menu key. The receptionist interprets what the caller says and forwards the call when a condition you've written is met.

A transfer rule can point to any of these destinations:

- Extension
- Inbound Queue
- Ring Group
- Conference
- Call Flow
- IVR (Interactive Voice Response, an automated phone menu)
- Group Voicemail

:::caution
A rule that transfers to a Group Voicemail will not work unless the **Leave a Voicemail for an Extension/Group Voicemail** feature is enabled first, at **Call Features > Feature Code > Voicemail**. This is easy to miss because the rule still saves without it.

![Voicemail feature code with the leave-a-voicemail option enabled](/images/pbx/vm-enabled.png)
:::

**Prerequisite:** Have the transfer destinations (extension, inbound queue, ring group, and so on) ready.

On the **Intent-Based Transfer** card:

1. Turn on the **Intent-Based Transfer** switch.
2. Click **Add** to create a transfer rule.

   :::note
   Each receptionist supports up to **200** transfer rules.
   :::

3. In the pop-up window, set up the rule:

   ![Transfer rule dialog with a destination and a plain-language transfer condition](/images/pbx/transfer-rule.png)

   a. In the **Destination** drop-down list, pick a destination type, then choose the specific destination.

   b. In the **Transfer Conditions** field, describe in plain language when the transfer should happen, for example, `User explicitly requests to speak to a human` or `User asks a question that the AI cannot answer`.

   c. Click **Save**.

4. At the bottom of the page, click **Save**.

The receptionist now analyzes each caller's speech and transfers the call whenever a rule's condition is met.

## Configure information collection

This skill has the receptionist pull specific details out of the conversation and pass them to a human agent when the call transfers, so the agent starts the conversation already informed.

On the **Information Collection** card:

1. Turn on the **Information Collection** switch.
2. Click **Add** to create a data collection rule.

   :::note
   Each receptionist supports up to **20** collection rules.
   :::

3. In the pop-up window, define the rule:

   ![Data collection rule dialog with fields for name, type, and instructions](/images/pbx/dc-rule.png)

   | Setting | Description |
   |---------|-------------|
   | Information Name | The label for the detail you're capturing, for example, Name, Email, or Phone Number. |
   | Required | Whether the detail is mandatory. When on, the receptionist keeps prompting the caller until it captures the value. |
   | Data Type | The format of the value, so it's stored correctly:<br />**String**: text such as names, emails, and addresses; letters, numbers, and special characters allowed.<br />**Boolean**: yes/no values, such as subscription consent or terms acceptance.<br />**Integer**: whole numbers without decimals, such as quantity, age, or a rating.<br />**Number**: numeric values that may include decimals, such as an order total, discount rate, or weight. |
   | Description | A plain-language instruction telling the receptionist how to capture the value. Examples: `Ask the caller for their email address`; `Identify the order number when the caller says "My order number is XXX"`; `Extract the severity level based on the caller's tone and keywords such as "urgent," "minor issue," or "not a big deal."` |
   | Optional Value | Optional. Click **Add Optional Value** to define preset values the receptionist can pick from when the detail matches one of them, for example, `High`, `Medium`, and `Low` for an issue-severity field. Available only for the **String** data type. |

   Then click **Save**.

4. At the bottom of the page, click **Save**.

The receptionist now captures the details you defined automatically as it speaks with callers.

### What the agent sees

When the call transfers to a human agent, the agent who answers sees the collected details alongside the receptionist's call transcript and summary in the Cloud Voice App, so they can help the caller more quickly.

| Cloud Voice App (Web/Desktop) | Cloud Voice App (Mobile) |
|---|---|
| ![Call window showing collected caller details, transcript, and summary](/images/pbx/ai-receptionist-call-window.png) | ![Mobile call insights view with collected caller details](/images/pbx/rn-ios-ai-insights.png) |

:::note
- To use this on mobile and desktop, update the Cloud Voice App to at least these versions:
  - Android: **5.26.10** or later
  - iOS: **5.26.15** or later
  - Windows Desktop: **1.23.3** or later
  - Mac Desktop: **1.23.3** or later
- The collected details appear only to the first human agent who answers the transferred call. Agents who join later through a transfer or a multi-party call don't see them.
- When you send an email from the call window in the Cloud Voice App (Web/Desktop), the collected details are included in the email.
- Transcripts generated by the AI receptionist do **not** draw down minutes from the AI Call Transcription feature.
:::

## Assign or unassign tools

Tools let the receptionist reach external systems mid-call to look up live information or carry out an action on the caller's behalf.

**Prerequisite:** Before you can assign tools, you must have [added them to Cloud Voice](/pbx/ai-guide/tool-overview/#tool-overview__section_vgr_wsf_ljc).

On the **Tools** card, assign or unassign tools.

### Assign tools

1. Turn on the **Tools** switch.
2. Click **Add**. A window lists every available tool.
3. Search for and select the tools you want, then click **Save**.

   ![Tool selection window with tools chosen for assignment](/images/pbx/assign-tool.png)

   :::note
   If the tool you need isn't listed, add it on the spot with **Add** or **Upload**. Anything you create here is also synchronized to the global tool list automatically.
   :::

4. At the bottom of the page, click **Save**. The receptionist can now trigger the assigned tools on its own, based on what a caller asks for.

:::tip
After assigning tools, add more detailed tool-calling guidance to the [receptionist's prompt](/pbx/ai-guide/update-settings-for-an-ai-receptionist/#update-settings-for-an-ai-receptionist__prompt). Clearer instructions help the receptionist use each tool at the right moment and improve its responses.
:::

:::note
Every tool call the receptionist makes during a call is logged in the Call Detail Records (CDR). Each entry shows the tool name, execution status, and the full request parameters and response, which helps when you're reviewing a call or troubleshooting.

![CDR entry listing a tool call with its status and parameters](/images/pbx/tool-record-in-cdr.png)
:::

### Unassign tools

![Tool list with entries selected for removal](/images/pbx/custom-tool-unassignment.png)

1. In the receptionist's tool list, select the checkbox for each tool you no longer need.
2. At the top of the list, click **Delete**.
3. At the bottom of the page, click **Save**.

:::note
Unassigning only breaks the link to the receptionist. The tools stay in the global tool list.
:::
