# Keypad Input (/docs/agents/voice-agents/keypad-input)

> For the complete documentation index, see [llms.txt](https://docs.tandemcx.ai/llms.txt). Any page on this site can be fetched as Markdown by appending `.md` to its URL.

**Keypad Input** sends the digits a caller types on their phone straight to the agent, the
same way it handles something they said out loud. There's no tool call involved and nothing
for the agent to arm first — a keypress just becomes the next turn.

The whole row is **Voice only**. It is absent, and so is anything to configure here, on an
agent with **Voice** switched off in its
[Channels](/docs/agents/voice-agents/persona#channels).

## Off by default

Keypad Input is **off** for every agent until you turn it on. Open the **Keypad Input** row,
in the **Tools & Skills** group on the editor's **Conversation** step, and switch the enable
toggle at the top of the panel. Turning it on changes how every keypress on a live call
behaves, so it's opt-in per agent rather than something that changes under an agent already in
production.

## How a run of keypresses becomes one turn

A caller rarely presses one key and stops, so keypresses are grouped: everything typed close
together arrives as a single turn instead of one turn per digit. A group ends — and ships to the
agent — on whichever of these happens first:

- the caller pauses longer than the **inter-digit gap**
- the caller presses the **submit key**
- the group reaches **maximum digits**

## Settings

**Inter-digit gap** — how long to wait after the last keypress before treating the digits typed
so far as one message. Default 1,500 ms. The agent stays quiet for this long after the last
digit, so a large value is a long silence: the agent editor caps it at 10,000 ms.

**Submit key** — a key that ends the group immediately: `#`, `*`, or **None**. Default `#`.
The submit key itself is not part of what the agent receives; only the digits typed before
it are. A caller who types `1234#` sends the agent `1234`.

**Maximum digits** — stops collecting after this many digits even with no submit key pressed.
1–32. Default 32.

**Interrupt the agent** — on by default. The first keypress of a group stops the agent
mid-sentence, the same way caller speech does when
[**Allow barge-in**](/docs/agents/voice-agents/voice-and-speech#allow-barge-in) is on, and the
agent stays quiet for as long as the caller keeps typing.

Turning it off delays the interruption rather than preventing it. The keypress itself no longer
cuts the agent off, so it keeps talking while the caller types. The digits still stop it once
the group closes: a closed group arrives as a caller turn, and a caller turn always cancels
whatever the agent was saying. The agent is interrupted either way, on the first keypress with
this on and up to one inter-digit gap later with it off.

## Keypad Input vs. Capture keypad digits

Keypad Input is a different mechanism from the
[**Capture keypad digits**](/docs/agents/voice-agents/built-in-tools#capture-keypad-digits)
built-in tool, and the two answer different questions:

- **Capture keypad digits** is a tool the agent calls when it needs a specific answer — it
  speaks a prompt, opens a collection window, and blocks until the caller responds or the
  window times out.
- **Keypad Input** has no prompt and nothing to arm. Any keypresses the caller makes reach the
  agent as a turn, whether or not the agent asked for them.

Both can be on for the same agent. While a **Capture keypad digits** collection is open, the
keypresses go into that collection instead of becoming a Keypad Input turn. Once the collection
closes, keypresses go back to arriving as ordinary turns.

If a caller starts typing before the collection opens — over the tail of the agent's spoken
prompt, for instance — those early digits aren't lost and aren't delivered twice: whatever was
typed into the open Keypad Input group is carried into the collection as its starting digits the
moment it arms.

## Limits and defaults

| Setting                 | Value                                          |
| ----------------------- | ---------------------------------------------- |
| **Keypad Input**        | Off by default                                 |
| **Inter-digit gap**     | 1–10,000 ms in the editor; default 1,500       |
| **Submit key**          | `#`, `*`, or None; default `#`                 |
| **Maximum digits**      | 1–32; default 32                               |
| **Interrupt the agent** | On by default; off delays it, does not stop it |

## Next steps

<Cards>
    <Card
        title="Built-in Tools"
        href="/docs/agents/voice-agents/built-in-tools"
        description="Capture keypad digits, transfers, and the other call-control actions."
    />
    <Card
        title="Voice & Speech"
        href="/docs/agents/voice-agents/voice-and-speech"
        description="Barge-in, the voice cascade, and turn-taking sensitivity."
    />
</Cards>
