← kwindla hultman kramer

AI voice agents often encounter automated phone tree systems

September 17, 2025

AI voice agents often encounter automated phone tree systems.

Here's a very boring video showing an agent navigating a phone tree. Feel free to watch it on 3x speed. One of the great things about voice agents is that they are a lot more patient than I am. Sample code for this agent, below ...

The industry acronym for this kind of phone tree is "IVR," which stands for Interactive Voice Response. (Think about the calls you've made where the phone system says something like, "Press or say 1 to continue in English.")

@pipecat_ai developers have built agents that interact with IVR systems since very early on in the evolution of voice AI agents.

LLMs are good at understanding what to do in an IVR context. For a voice agent that can call an IVR system and retrieve specific data or navigate to a human in a specific department you need:

- a telephony connection,
- a voice agent pipeline that integrates audio input, turn detection, context management, LLM inference, and voice generation,
- a good prompt,
- the ability to send touch tones, and
- some tool calls

The Pipecat 0.0.83 release added an IVRNavigator helper that bundles all of this together in a higher-level abstraction.

You can still write an IVR navigation flow from scratch, of course. But this new helper class makes it a little easier and also shows you how to do things like spin up a web client to listen in on the bot's interactions, support mixed voice and touch-tone modes, write a test IVR system for development and evals, and deploy to Pipecat Cloud for production.

Sample code[1]

IVR Navigation guide:
[2]

  1. https://github.com/pipecat-ai/pipecat-examples/tree/main/ivr-navigation
  2. https://docs.pipecat.ai/guides/fundamentals/ivr