> ## Documentation Index
> Fetch the complete documentation index at: https://docs.threetone.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Keypad tones

> Prepare DTMF tool preferences and distinguish generated keypad tones from caller input and transfer extension settings.

Keypad tones, also called DTMF tones, are used by telephone menus. The system-tool contract describes how an agent would send them; it does not provide an available IVR navigation or live calling workflow.

<Note>
  You can author the DTMF preferences below. Saving them does not prove tone delivery, compatibility with a carrier or IVR, or a working phone connection. Voice publication remains unavailable.
</Note>

## Configure the preferences

<Steps>
  <Step title="Document the intended menu interaction">
    Record the approved destination, the expected menu prompt, and the intended option. Include a response for an unexpected menu rather than assuming every prompt matches the preparation material.
  </Step>

  <Step title="Open Play DTMF Tones">
    On the agent's **Tools > System tools** panel, enable **Play DTMF Tones** and open its settings. Review **Use out-of-band DTMF** and **Suppress turn after DTMF**.
  </Step>

  <Step title="Save the tool definition">
    **Save** updates the working copy. For API authoring, use `conversation_config.agent.prompt.built_in_tools.play_keypad_touch_tone` and preserve the reviewed definition in a complete [server draft](/agents-platform/deploy/versioning).
  </Step>

  <Step title="Read back the flags">
    Confirm the discriminator and both flags in the stored draft. Keep tone delivery and menu-result verification pending until the applicable telephony path is available.
  </Step>
</Steps>

## Tool-specific parameters

| Field | Authored meaning |
| - | - |
| `system_tool_type` | Must be `play_keypad_touch_tone`. |
| `use_out_of_band_dtmf` | Defaults to `true`; requests tones separate from the call audio. The contract limits this option to SIP-trunk imported numbers. |
| `suppress_turn_after_dtmf` | Defaults to `false`; requests no further agent speech after the tones. |

These are configuration flags. The parameters do not define a saved sequence of digits or a general-purpose menu script. Do not add an invented `digits` field to this object.

Caller keypad collection is separate: its settings live under `conversation_config.conversation.dtmf_input_settings`. Transfer extension settings are also separate and use `post_dial_digits` in a transfer rule. None of these fields establish a live telephony feature by themselves.

## Frequently asked questions

<AccordionGroup>
  <Accordion title="Does this collect digits entered by the caller?" id="faq-keypad-input">
    No. The tool describes generated keypad tones. Caller-input settings are a separate configuration, and their runtime behavior needs its own verification.
  </Accordion>

  <Accordion title="Does out-of-band mode work on every channel?" id="faq-keypad-channel">
    No universal support is established. The authored option is scoped to SIP-trunk imported numbers; review [telephony availability](/agents-platform/deploy/telephony/overview) and the actual carrier path separately.
  </Accordion>
</AccordionGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.