Voice Tools
DTMF Input
Send and receive dial-tone keypress signals during voice calls for IVR navigation and numeric input.
DTMF Input
DTMF (Dual-Tone Multi-Frequency) is the technical term for the tones produced when you press keys on a phone keypad. The DTMF tool lets your voice agent send and receive keypress signals during a call.
Use Cases
Receiving DTMF from Callers
Let callers press keys to make selections instead of speaking:
Agent: "Press 1 for sales, 2 for support, or 3 for billing."
Caller: *presses 2*
Agent: "Connecting you with support. How can I help?"This is useful when:
- The caller is in a noisy environment
- You need a definitive selection (not ambiguous speech)
- You're collecting numeric input (account numbers, PINs)
Sending DTMF for IVR Navigation
For outbound calls, your agent can navigate existing IVR systems by sending keypress signals:
IVR: "Press 1 for English, 2 for Spanish."
Agent: *sends DTMF 1*
IVR: "Enter your account number followed by pound."
Agent: *sends DTMF 1234567890#*Configuration
Via the Dashboard
- Open your agent and scroll to Voice Settings.
- Enable DTMF Input.
- Configure options:
| Setting | Description | Default |
|---|---|---|
| Receive DTMF | Allow callers to press keys | Enabled |
| Send DTMF | Allow agent to send key tones (for IVR nav) | Disabled |
| Digit timeout | Seconds to wait for additional digits | 3 seconds |
| Finish key | Key that signals end of input (e.g., #) | # |
Via the API
curl -X PATCH https://api.thinnest.ai/agents/agent_abc123 \
-H "Authorization: Bearer $THINNESTAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"voice_tools": {
"dtmf": {
"enabled": true,
"receive": true,
"send": true,
"digit_timeout_seconds": 3,
"finish_key": "#"
}
}
}'System Prompt Guidance
When collecting an account number, ask the caller to enter it using their
keypad followed by the pound key. Wait for the DTMF input before proceeding.
For outbound calls to businesses with IVR menus, navigate the menu by
sending the appropriate keypress. For example, press 1 for English,
then enter the extension number.Collecting Multi-Digit Input
When your agent needs to collect a multi-digit number (account number, ZIP code, etc.), configure the finish_key so the agent knows when the caller is done entering digits.
Agent: "Please enter your 6-digit account number, followed by the pound key."
Caller: *presses 1-2-3-4-5-6-#*
Agent: "Got it. Your account number is 123456. Let me look that up."