An IVR (Interactive Voice Response) is a PABX application that communicates with a caller through configurable voice driven menus. Callers can be played different announcements (using WAV audio files), and can optionally be presented with different menu options, where the IVR can be programmed to perform different actions depending on the callers menu response (via keypad DTMF input).

IVRs can be very complex, or very simple. Some IVRs may contain hundreds of lines of priorities while others may only contain one or two that perform basic call routing tasks.

An IVR is programmed on a line by line basis from top to bottom. Each line (from top to bottom) is executed by order of priority, from lowest to highest. When a call is routed to an IVR, the first priority that will be executed is priority 1, and then 2, and 3, and so on.