# Language

Use the **Language** component to control which language callers hear for system prompts as they move through a Call Flow. By default every flow speaks English, so add this component at any point where you want a different language to take over.

## How it behaves

A Call Flow plays all system prompts in English unless you tell it otherwise. Dropping in a **Language** component overrides that default for every component placed after it, so callers continue in the language you choose until the flow ends or another **Language** component changes it again.

:::note
System prompts are the built-in voice messages the PBX (Private Branch Exchange, the phone system) plays automatically, such as "please enter your extension". The **Language** component only switches these built-in prompts. It does not translate custom audio files or text-to-speech (TTS) messages you supply yourself, so those play exactly as you recorded or typed them.
:::

:::caution
The language you set here has lower priority than an extension's own setting. When the caller is an internal extension that has a **System Prompt Language** configured under **Extension and Trunk > Extension > Language**, and that language is different from the one on the **Language** component, the extension's setting wins.
:::

### Available languages

Only **English** is offered out of the box. Before you can pick anything else in this component, download the language you need under **PBX Settings > Voice Prompt > System Prompt**. Once a language is installed there, it becomes selectable in the flow.

![System Prompt language list under Voice Prompt settings](/images/pbx/system-prompt-cfd.png)

:::tip
You can add more than one **Language** component to a single flow. Each one changes the language from its position onward, so you could greet callers in English and switch to another language just before a specific menu. If the language you want is missing from the drop-down, it has not been downloaded yet: install it under **PBX Settings > Voice Prompt > System Prompt** first.
:::

## Configure the component

1. Add the **Language** component to your Call Flow, then click it to open its settings.

   ![Language component placed on the Call Flow canvas](/images/pbx/language-cfd.png)

2. Open the **Language** drop-down and choose the language you want the following components to use.

   ![Language drop-down showing the installed languages](/images/pbx/language-select-cfd.png)

3. Click **Confirm** in the bottom-right corner. The language you picked is now shown on the component tile.

   ![Language component displaying the selected language](/images/pbx/language-selected-cfd.png)

## Connections

The **Language** component connects to exactly **one** downstream component. Any of the following can follow it.

| Component | What it does |
|-----------|--------------|
| [Prompt](/pbx/call-flow-designer-guide/prompt/) | Plays an audio prompt or a text-to-speech message to the caller. |
| [Business Hours](/pbx/call-flow-designer-guide/business-hours/) | Sends calls to different destinations depending on the time of day. |
| [Menu](/pbx/call-flow-designer-guide/menu/) | Offers callers a set of options and routes them by the DTMF (Dual-Tone Multi-Frequency, the tones a phone keypad makes) digit they press. |
| [User Input](/pbx/call-flow-designer-guide/user-input/) | Collects DTMF digits from the caller, usually paired with **Condition** to evaluate the entry and route the call. |
| [Language](/pbx/call-flow-designer-guide/language/) | Changes the system prompt language again for the components that follow. |
| [Record](/pbx/call-flow-designer-guide/record/) | Starts recording once the caller reaches another party, with optional start and in-progress prompts, or disables recording for calls that would otherwise be recorded. |
| [Dial by Number](/pbx/call-flow-designer-guide/dial-by-number/) | Lets callers dial a number directly to reach a destination. |
| [Dial by Name](/pbx/call-flow-designer-guide/dial-by-name/) | An end component that lets callers reach a user by entering the first three letters of that user's name. |
| [Transfer](/pbx/call-flow-designer-guide/transfer/) | An end component that transfers the caller to a chosen destination, with an optional transfer prompt. |
| [Hang Up Call](/pbx/call-flow-designer-guide/hang-up-call/) | An end component that disconnects the caller. |
| [Condition](/pbx/call-flow-designer-guide/condition/) | Routes calls according to logical expressions. |
| [Loop](/pbx/call-flow-designer-guide/loop/) | Repeats a group of components a set number of times or until a condition is satisfied. |
| Internal Data Ops | Reads from and writes to the PBX-native database. See [Get Extension Presence Status](/pbx/call-flow-designer-guide/get-extension-presence-status/), [Set Extension Presence Status](/pbx/call-flow-designer-guide/set-extension-presence-status/), [Get Queue Agent](/pbx/call-flow-designer-guide/get-queue-agent/), [Get Queue Info](/pbx/call-flow-designer-guide/get-queue-info/), [Get Agent Status](/pbx/call-flow-designer-guide/get-agent-status/), [Set Agent Status](/pbx/call-flow-designer-guide/set-agent-status/), [Get System Info](/pbx/call-flow-designer-guide/get-system-info/), [Get System Capacity](/pbx/call-flow-designer-guide/get-system-capacity/), [Get Extension Info](/pbx/call-flow-designer-guide/get-extension-info/), and [Get Company Contact Info](/pbx/call-flow-designer-guide/get-company-contact-info/). |
| [Email Sender](/pbx/call-flow-designer-guide/email-sender/) | Sends email for real-time notifications, alerts, or user-specific information. |
| [Database Access](/pbx/call-flow-designer-guide/database-access/) | Runs SQL operations against a database to read or update data during the flow. |
| [HTTP Request](/pbx/call-flow-designer-guide/http-request/) | Sends HTTP requests to external servers to exchange data with third-party services. |
