> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.telekesher.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.telekesher.dev/_mcp/server.

# Keypad (DTMF)

Keypad input lets your application receive keypad presses from a caller or send
them to a remote party on a Session. Telephone keypads represent these presses
using [DTMF](https://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling)
signals.

For inbound input, handle [`dtmf.received`](/webhooks/dtmf-events#dtmfreceived)
events when each key press matters. Use [Play prompt and collect DTMF
digits](/api/keypad-input/collect) when you need a complete response, and
[cancel the collection](/api/keypad-input/cancel) if it should end early. The
completed response is delivered as a
[`digits.collected`](/webhooks/dtmf-events#digitscollected) event.

For outbound input, use [Send DTMF sequence](/api/keypad-input/send) to send
keys and timed waits to the remote party, such as when navigating an automated
phone menu.