# Languages

> Call mode decides which languages your agent can follow; opening language decides which one it starts in. The difference, the eleven languages, and how to choose.

Source: https://docs.amomic.in/channels/voice-languages

---

Voice has two language settings and they do different jobs. Nearly every "the agent answered in the wrong language" report is someone who changed one and expected the other.

- **Call mode** — which languages the agent is able to understand and speak on this number, for the whole call.
- **Opening language** — which single language it says its first sentence in.

The mode is the boundary. The opening language is a starting point inside that boundary. You must set both, and the opening language must be one the mode allows.

## Call mode

Three values. The field is called **Call language** in the console; the values are exactly these strings.

| Value | Console label | What the agent can follow |
|---|---|---|
| `en` | `English only` | English. Nothing else. |
| `multi` | `Hindi + English` | Hindi and English, including callers who switch between them mid-sentence. |
| `indic` | `All Indian languages` | All eleven languages below, following the caller. |

The console describes them the same way, and the descriptions are accurate rather than promotional:

- `English only` — *"Highest transcription accuracy. Best when your callers speak English."*
- `Hindi + English` — *"Natural Hinglish — handles callers switching mid-sentence. The usual choice for India."*
- `All Indian languages` — *"Follows the caller across Hindi, Bengali, Marathi, Tamil, Telugu, Gujarati, Kannada, Malayalam, Punjabi and Odia — and switches the moment the caller asks."*

![The Agent & voice tab of a number with the Call language choice: English only, Hindi + English (selected) and All Indian languages](https://docs.amomic.in/screens/voice/phone-agent-voice.light.webp)

*Call language is the first setting under How it sounds on this number.*

Call mode is set per number, on the deployment that binds an agent to it. Two numbers in the same workspace can run in two different modes. See [Manage a number](/channels/phone-workspace#how-it-sounds-on-this-number).

A new number starts at **English only**, or at **Hindi + English** when the answering agent's own language is Hindi + English. Change it before the first call if that is not what you want.

## The eleven languages

These are the language codes for the opening language. The names are the ones the console shows.

| Code | Language |
|---|---|
| `EN` | English |
| `HI` | Hindi |
| `BN` | Bengali |
| `MR` | Marathi |
| `TA` | Tamil |
| `TE` | Telugu |
| `GU` | Gujarati |
| `KN` | Kannada |
| `ML` | Malayalam |
| `PA` | Punjabi |
| `OR` | Odia |

The console renders each one as `English name · native script` — `Hindi · हिन्दी`, `Tamil · தமிழ்`, and so on.

## What each mode allows

The mode gates the opening language. Pick a mode and the console greys out every language it does not allow.

| Call mode | Opening language may be | Default |
|---|---|---|
| `en` | `EN` only | `EN` |
| `multi` | `EN` or `HI` | `HI` |
| `indic` | Any of the eleven | `HI` |

Two things follow from that table.

**`en` collapses the choice.** With English-only mode there is exactly one legal opening language, so the picker is disabled. That is not a bug in the console — there is nothing to pick.

**`multi` defaults to Hindi, not English.** If you want a Hinglish-capable number that opens in English, set the opening language to `EN` explicitly. Leaving it alone gets you Hindi.

If you try to save an impossible pair, you are stopped:

> That opening language isn't available in this call language mode.

The console explains the same thing in place, naming the way out:

> Only English available on this call language. Choose "Hindi + English" or "All Indian languages" above to greet in another language.

::: note A stale combination is repaired, not fatal
Settings get edited in two steps and out of order — someone narrows a number from `indic` to `en` while its opening language is still `TA`. That combination is nonsense, and it does not fail the call. At call time the mismatch is resolved to a language the mode does allow, and the call proceeds normally.

A caller never hears a failure because of this. But the greeting they hear is not the one you configured, so if a number is opening in an unexpected language, check the mode before you check anything else.
:::

## Choosing a mode

The right answer is usually `multi`, and the reasoning is worth having in full because the wrong choice is quiet — it does not error, it just degrades every call.

### `multi` — the right default for Indian support

Real callers do not stay in one language. A caller opens in English, gets frustrated, switches to Hindi for the complaint, then reads out an order number in English again. `multi` is built for exactly that sentence and handles the switch without a beat.

Choose it unless you have a specific reason not to. It is the mode most support lines in India should run in. It is not always what a new number starts on, so check it.

### `en` — when you genuinely only serve English

Constraining the model to one language is the single biggest accuracy win available on this channel. There is no code-switching to detect and no ambiguity between two plausible transcriptions, so English names, addresses and reference codes come through more reliably.

The condition is real, though: *genuinely* only English. If one caller in twenty speaks Hindi, `en` does not politely handle them — it transcribes their Hindi as garbled English and the agent answers the garbage. Pick `en` for an international product line or an internal desk where the language is a given, not because most of your callers speak English.

### `indic` — when your callers span regions

A national helpline, a service with customers across states, a number printed on a product sold everywhere. `indic` lets the caller lead and follows them.

The cost is breadth: recognising eleven languages is a harder problem than recognising two, and accuracy on any one of them is not what a narrower mode gives you. Do not choose `indic` "just in case" on a number whose callers are all in Delhi. Choose it when the spread is real.

::: tip One number per language community beats one number for everyone
If you have both a Mumbai line and a Chennai line, two numbers — `multi` on one, `indic` on the other, or `indic` opening in `TA` — will outperform a single `indic` number for both. Mode and opening language are per number precisely so you can do this.
:::

## Switching language mid-call

Inside whatever the call language allows, the agent follows the caller. The opening language is only where it starts: *It changes language only when the caller asks for another one.* If a **Hindi + English** call opens in Hindi and the caller asks to speak English, the agent continues in English, and its voice moves with it.

Two consequences worth knowing:

- **A stray word will not flip the call.** "Haan" in an English call is not a request to switch to Hindi.
- **The call language is still the boundary.** On **English only**, a caller who asks for Tamil cannot be followed. On **Hindi + English**, the agent can move between those two only.

## Where to set it

Both settings live in the same place, on the deployment that puts an agent on a number.

::: steps

::: step Open the number's voice settings

From the channel, **Channels → Phone / Voice**, select the number, then **Agent & voice**. From the agent, open the phone deployment and choose **Voice settings**. Both edit the same settings.

:::

::: step Set the call language first

**Call language** is the radio group at the top. Setting it first is not a style preference — it decides which options the language picker below it will even offer.

:::

::: step Then set the opening language

**Greet callers in** lists the eleven languages with the disallowed ones greyed out. If the one you want is greyed out, the mode above is the reason.

:::

::: step Translate the opening line if you changed language

The opening line is spoken exactly as written. When you change **Greet callers in**, the form offers *Translate the opening line to {language}?* Choose **Translate** to rewrite it, or **Keep as written**. The counter under the field reads `{n}/500 · spoken in {language}`; check that the second half matches the language the text is in.

:::

::: step Save, then make a real call

Saving makes the change on the next call; calls in progress finish on the old settings. Then dial the number yourself. A test call is thirty seconds and catches the greeting-in-the-wrong-language mistake before a customer does.

:::

:::

There is no workspace-wide version of these settings to edit. A number set up long ago may still be missing a value of its own — its opening language, most often — and fall back to an older workspace-level default. The form shows the value the call actually uses either way, and the first save writes every setting onto the number, so from then on nothing outside it decides how it sounds.

## Related language behaviour

**The greeting is text, in the language you chose.** The opening line is spoken exactly as written. If the opening language is `TA` and the line is in English, the call opens with English words in the Tamil voice. Accept the **Translate** offer when you change language, or rewrite the line yourself.

**The recording notice follows the opening language.** With **Agent says it in the greeting**, the agent says the notice in the language it opens in. With **Automated announcement first**, the recorded message plays in the opening language; Odia calls hear the English message. See [Recording](/channels/voice#recording).

**Calls you place open in English or Hindi/English.** The fixed opening on an outbound call is in English when the number opens in English, and in Hindi/English when it opens in Hindi. For other opening languages it follows the call language: English on **English only**, Hindi/English otherwise. See [Outbound calls](/channels/outbound-calls#what-the-customer-hears-first).

## Troubleshooting

::: details The greeting language picker is disabled
The call mode is `en`, which allows one opening language. Change the mode first, then the language.
:::

::: details I set the opening language and the call opened in a different one
The mode did not allow it and the value was repaired at call time. Check the call language first, then **Greet callers in**, and save.
:::

::: details The agent understands the caller but replies in the wrong language
Check the mode. On `en`, a Hindi caller is transcribed as approximate English and the agent replies in English to something the caller did not say. That is a mode problem, not an instruction problem — no amount of prompting fixes it.
:::

::: details Callers switch to Hindi and the agent stays in English
It needs more than a word or two of evidence before switching. Read the transcript: if the caller genuinely spoke a full Hindi sentence and the agent stayed in English, check that the number is on `multi` or `indic` rather than `en`.
:::

::: details Can I force a call to stay in one language
Yes — set the mode to `en`. There is no per-language lock inside `multi` or `indic`; following the caller is what those modes are for.
:::

## Next

::: cards

::: card How voice works
[The call path end to end](/channels/voice) — routing, the opening line, transcripts, and outcomes.
:::

::: card Manage a number
[Where these settings live](/channels/phone-workspace#how-it-sounds-on-this-number), and every other per-number option.
:::

::: card Outbound calls
[What the customer hears first](/channels/outbound-calls) on a call you placed, in each register.
:::

:::
