https://retellai.com/?utm_source=discord&utm_medium=seo logo
I set up an outbound agent when I called someone a...
# ❓・ai-evy-support
a
@AI Evy I set up an outbound agent when I called someone a system says press 1 to move on to call but AI was not able to pass it how to fix it
a
Thanks for tagging me @AK. I'll look through relevant sources and get back to you shortly.
### Answer Your outbound agent needs to navigate an IVR (Interactive Voice Response) system by sending DTMF tones (keypad presses) . Retell AI supports DTMF for IVR navigation, which allows your voice agent to press buttons like "1" to proceed through automated phone menus. [(1) ]() ## How to Fix This You need to prompt your agent to send DTMF tones when it encounters an IVR system. In your agent's prompt, include instructions for the agent to recognize when it needs to press a key and use DTMF to navigate. For example, you can add instructions like: > "When you hear a prompt asking to press a key (like 'Press 1 to continue') , send the appropriate DTMF tone to navigate through the menu." ## Key Points - DTMF (Navigate IVR) allows the voice agent to guide through IVR systems with button presses (e.g., "Press 1 to reach support") . - You configure this through your agent's prompt and settings. Check out the documentation for more details: [DTMF Documentation]() [(2) ]()
​ To learn more, see the sources I considered: [[1] Platform Changelogs | Retell AI](https://www.retellai.com/changelog) [[2] Capture DTMF input from user](https://docs.retellai.com/build/user-dtmf) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
a
@AI Evy its a conversational flow agent can you tell steps to fix it
a
Thanks for the follow-up, @AK. I'll get back to you soon.
### Answer For a Conversation Flow agent to press "1" and navigate an IVR, you need to add a Press Digit Tool and configure your flow properly. Here are the steps: ## Step 1: Add a Press Digit Tool In your Conversation Flow, add a Press Digit Tool to give your agent the ability to send DTMF tones. The tool description is optional—you can specify when and what digits to press if desired. [(1) ]() ## Step 2: Add Navigation Prompts In the node where your agent encounters the IVR, include clear instructions on when and what digits to press. Example prompt:
Copy code
## IVR Navigation
When interacting with automated systems, menus, or IVR prompts:
Your goal is to accept the call and proceed.

## IVR Interaction Rules
1) If the IVR explicitly instructs you to press a number:
   - Use the press_digit function with the instructed digit.
2) If you hear "Press 1 to take this call" or similar:
   - Immediately press digit 1.
## Step 3: Add Interaction Rules Include detailed instructions on when to press digits:
Copy code
## IVR Interaction Rules
1) If the IVR allows you to speak a department name or short phrase:
   - Speak the appropriate department name clearly.
2) If the IVR explicitly instructs you to press a number:
   - Use the press_digit function with the instructed digit.
3) If the IVR does not accept speech and requires numeric input:
   - Use the press_digit function to select the best option.
## Important Notes - Make sure your node is configured to allow barge in so the system can stop speaking when a digit needs to be pressed. [(2) ]() - Retell supports both In-band DTMF (audio tones) and Out-of-band via RFC2833/RTP events. SIP INFO-only DTMF is not currently supported. [(3) ]() - If the agent isn't pressing the digit properly, simplify your instructions—for example: "Navigate to take this call" or "Press 1 when prompted."
​ To learn more, see the sources I considered: [[1] Press digit (IVR navigation)](https://docs.retellai.com/build/single-multi-prompt/press-digit) [[2] User dtmf input issue / IIssue with IVR Node Keypress Handling](https://discord.com/channels/1186424376300679209/1397608688734175293) [[3] Conversation Flow: forwarded calls not accepting DTMF “1” (Press Digit node)](https://discord.com/channels/1186424376300679209/1449889950781804726) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
a
@AI Evy the ivr system is only set up in some people system not all so where should i add node so if it doesn't detect any system it goes normally
a
Thanks for the follow-up, @AK. I'll get back to you soon.
### Answer For handling calls where some recipients have an IVR system and others don't, you should configure your agent's prompt to conditionally use the Press Digit function only when an IVR is detected. The agent can listen for IVR prompts and respond accordingly, while proceeding normally with human conversations. ## How to Set This Up Add the Press Digit Tool to your agent, then include conditional navigation prompts that instruct the agent to only press digits when it hears IVR-specific phrases. [(1) ]() Example prompt to add:
Copy code
## IVR Navigation
When interacting with automated systems, menus, or IVR prompts:
Your goal is to reach the scheduling or appointments department.

## IVR Interaction Rules
1) If the IVR allows you to speak a department name or short phrase:
   - Speak the appropriate department name clearly.
2) If the IVR explicitly instructs you to press a number:
   - Use the press_digit function with the instructed digit.
3) If the IVR does not accept speech and requires numeric input:
   - Use the press_digit function to select the best option.
## Key Point The agent will only use the Press Digit function when it actually hears an IVR prompt (like "Press 1 to continue") . If a human answers directly, the agent will proceed with normal conversation because no IVR trigger phrase was detected. You don't need a separate node for IVR vs. non-IVR calls—the agent's prompt-based logic handles both scenarios dynamically based on what it hears at the start of the call.
​ To learn more, see the sources I considered: [[1] Press digit (IVR navigation)](https://docs.retellai.com/build/single-multi-prompt/press-digit) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
a
@AI Evy So there is a Begin button then I have added the first message node then other nodes now where should I add the Press digit node?
a
Thanks for the follow-up, @AK. I'll get back to you soon.
### Answer For a Conversation Flow agent handling outbound calls where some recipients have an IVR and some don't, you should place the Press Digit Node immediately after your Begin node (before your first message node) . [(1) ]() ## Recommended Flow Structure
Copy code
Begin
   ↓
Press Digit Node (for IVR navigation)
   ↓
First Message Node
   ↓
Other Nodes...
## How the Press Digit Node Works When in the Press Digit Node, the agent will not speak. Instead, it evaluates whether it should press a digit each time the IVR system finishes speaking. If a digit press is needed, the agent will infer the appropriate digit and press it. ## Configure Transitions for Both Scenarios Set up transition conditions to handle both IVR and non-IVR calls: - **IVR detected**: Condition like
Reached scheduling department
or
Call accepted
→ routes to your First Message Node - **Human answered directly**: Condition like
Human answered, no IVR detected
→ routes directly to your First Message Node - **Edge cases**: Conditions like
Menu repeated 3 times
or
Reached wrong department
## Detection Delay Set the detection delay to around 1 second so the agent doesn't make a decision prematurely before the whole IVR menu is captured. This way, if there's no IVR, the agent will quickly transition to your normal conversation flow. If an IVR is detected, it will navigate it first.
​ To learn more, see the sources I considered: [[1] Press Digit Node](https://docs.retellai.com/build/conversation-flow/press-digit-node) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
a
@AI Evy what does the tool result looks like when it uses press didgit 1
a
Thanks for the follow-up, @AK. I'll get back to you soon.
### Answer When the agent uses the press_digit function, the tool call and result appear in the
transcript_with_tool_calls
field. Here's what the structure looks like: [(1) ]() Tool Call (what the LLM sends) :
Copy code
json
{"digit_to_press": "1"}
Tool Result (what comes back) :
Copy code
json
{"tool_call_id": "72c416edf862956c", "success": true, "latency_ms": 150, "result": null}
When successful,
success
will be
true
. If the DTMF tone failed to send, you'll see
success: false
with
latency_ms: 0
. If you're using a Custom LLM via WebSocket, you can also send the
digit_to_press
field in your response event, and Retell will press the digit after the associated content is spoken. [(2) ]()
​ To learn more, see the sources I considered: [[1] press-digit error](https://discord.com/channels/1186424376300679209/1465530187633655994) [[2] LLM WebSocket](https://docs.retellai.com/api-references/llm-websocket) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
a
@AI Evy its showing tool result as Tool Result 0:10 tool_call_id: e5737f7b829ef863 {"status":"digit pressed"}
a
Thanks for the follow-up, @AK. I'll get back to you soon.
### Answer The tool result
{"status":"digit pressed"}
indicates that the press_digit function was invoked and the digit was sent. [(1) ]() If the IVR system still isn't responding after seeing this result, there are a few things to check: 1. Verify the IVR is receiving the DTMF tone Some IVRs don't recognize DTMF tones from certain carriers or configurations. There are documented cases where press_digit calls show as executed but the IVR doesn't respond. [(2) ]() 2. Add interaction rules to your prompt Make sure your agent waits for the IVR to finish speaking before pressing digits. Example prompt: [(1) ]()
Copy code
## IVR Interaction Rules
1) If the IVR explicitly instructs you to press a number:
   - Use the press_digit function with the instructed digit.
2) If you are transferred:
   - Wait silently or respond with NO_RESPONSE_NEEDED if prompted to hold.
   - Resume navigation or follow the live agent flow once connected.
3. Test the call manually Try calling the same number from a regular phone and pressing "1" to confirm the IVR accepts standard DTMF input. If manual presses work but the agent's don't, this may be a carrier-specific issue. [(2) ]() If the digit is being pressed (as your result shows) but the IVR isn't advancing, the issue is likely on the receiving end rather than with your agent configuration.
​ To learn more, see the sources I considered: [[1] Press digit (IVR navigation)](https://docs.retellai.com/build/single-multi-prompt/press-digit) [[2] Press_digit Always Returns success: false - DTMF Never Works](https://community.retellai.com/t/press-digit-always-returns-success-false-dtmf-never-works/631) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.