
Implementing an Auto Attendant Based on Cisco Solutions

When calling almost any company, we usually hear a pleasant or not very voice reminding us where we got through and offering to perform some actions. We hit ... hit the auto attendant. An auto attendant (eng. Auto Attendant / AA) is usually the simplest case of an Interactive Voice Response / IVR that allows you to dial an extension number, send a voice message or fax, and contact the secretary when you call the company.
In this article, I propose to get acquainted with the options for implementing an auto attendant based on Cisco solutions. There are at least four of them, and when introducing Cisco Unified Communications solutions, we are often asked the question of what exactly to implement this functionality on. Let's look at the pros and cons of each.
1. Development or use of ready-made scripts on TCL and VXML
This solution is fully software, the functionality is built into the Cisco IOS operating system, it is supported on routers with an activated Unified Communications (UC) feature set. There are a lot of examples of IVR scripts for Cisco equipment. For example, on a hub you can find options for TCL and VXML .
The advantages of this option include:
- No additional hardware is required, except for the Cisco router itself with UC functionality.
- A wide range of supported platforms: 1861, 2800, 3800, 2900, 3900, 4000, AS5000.
- Since you are programming, you can implement any required script operation algorithm - branching, submenu, several language versions, working / non-working hours, etc. It supports integration with speech recognition and synthesis systems (ASR, TTS) and much more.
- A larger set of supported codecs for greetings when using VXML than in all other options. It also supports what no one usually uses - a combination of greetings recorded using different voice codecs within a single application.
- Direct access to the gateway and its resources - for example, during a call you can catch a fax tone and immediately switch to a fax, and with an outgoing call you can understand (with some probability, of course) who answered the call: a person or an answering machine.
- VXML is an open standard supported by many developers of VoIP solutions (Audiocodes, Huawei, D-Link, Digium).
- There is a ready-made, quite functional script from Cisco, written on the basis of TCL - Basic automatic call distribution (B-ACD) and auto-attendant (AA) service.

If the algorithm of its operation suits you, we take, configure and use it.
The disadvantages of this option include:
- In the case of using TCL, programming skills and knowledge of the Cisco Voice Gateway API (VGAPI) are required. When using VXML, the threshold for entering the programming topic is much lower, especially for those who are already familiar with XML, knowledge of Cisco VGAPI is not required.
- Cisco IOS does not use a transcoder for calls handled by TCL applications, so you must use the same voice codec on both the input and the output of the application.
- Relatively weak scalability - from 7 (2800 series) to 360 (AS5400XM) simultaneous sessions (calls).
- No fault tolerance.
- The Cisco IOS Voice XML Browser functionality is licensed by the number of simultaneous calls (price * for 1 session FL-VXML-1 = $ 150, for 12 sessions FL-VXML-12 = $ 1440). FL-VXML licenses are of type Right to Use, i.e. upon purchase, you will receive a document on the right to use, without any serial numbers and product activation codes (“honor based”).
This option is suitable for a small load on the number of simultaneous calls and can be integrated with any PBX (not just Cisco).
2. Using Cisco Unity Express (CUE)
This solution is presented as a module (for example, SM-SRE-700-K9) in the Cisco 1861, 2800, 2900, 3800, 3900 series routers. The IVR script is created using the Cisco Unified Communications Express Editor. The solution is quite functional, and the process of creating the script and the logic of work intersects strongly with the older solution based on UCCX, which we will discuss below. Cisco Unity Express integrates with Cisco Unified Communications Manager and Cisco Unified Communications Manager Express, as an auto attendant can work in standalone mode.
The advantages of this option include:
- Convenient WEB management interface Cisco Unity Express - Administration.
- Feature rich.
- Convenient work with the schedule, weekends and holidays.
- The development of the IVR script in the Cisco Unified Communications Express Editor is quite simple and more like visual programming with dragging and dropping the necessary blocks and setting their properties.
- There is also a simpler one - Editor Express web-editor for scripts with support for basic actions:
- There are built-in system phrases in different languages, as well as a ready-made auto attendant script (aa.aef).
- Cisco Unity Express is a voicemail server; accordingly, with the introduction of CUE, in addition to the auto attendant, we get the functionality of voicemail on the router.
The disadvantages of this option include:
- Weak scalability. There is a strict limit on the maximum number of sessions (10 for ISM-SRE-300-K9 and 32 for SM-SRE-700 - SM-SRE-910).
- For greetings, only the G.711 u-law codec is supported.
- No fault tolerance.
- Requires installation, configuration, integration.
- Cost of the module and licenses for voice ports (number of simultaneous calls):
- The module itself: for example, ISM-SRE-300-K9 = $ 1000, includes a non-portable license for 2 voice ports FL-CUE-NR-PORT-2.
- License for 5pcs mailboxes FL-CUE-MBX-5 = $ 100.
- License for additional voice ports 2 pcs. - FL-CUE-PORT-2 = $ 500.
- License for IVR voice ports FL-CUE-IVR-2 = $ 1400 (only necessary if advanced IVR functions are used, such as sending emails, faxes, accessing external databases, running VXML scripts inside CUE IVR scripts, etc. .).
This option is most suitable for companies using the Cisco Unified Communications Manager Express as a PBX or for branches of companies where the Cisco Unified Communications Manager PBX is deployed at the central office and branch fault tolerance is provided by Cisco Unified Survivable Remote Site Telephony (SRST). This option, as well as in the case of TCL / VXML, can be integrated as a standalone auto attendant with any automatic telephone exchange.
3. Using Cisco Unity Connection (CUC)
This solution is a voicemail server and is installed on a separate virtual machine. Two CUC virtual machines are combined into a failover cluster. Built-in CUC tools allow you to create the logic of the auto attendant. The built-in call handlers are used - handlers.
The advantages of this option include:
- High scalability and fault tolerance - up to 250 simultaneous sessions (calls) on a single server, up to 500 in an active / active cluster.
- A fairly wide range of supported codecs (G.711 a / u-law, G.722, G.729, iLBC), as well as built-in transcoding capabilities. It is worth noting that transcoding in CUC always occurs.
- Convenient work with the schedule, weekends and holidays.
- Built-in ASR and TTS with Russian support.
- Cisco Unity Connection is a voicemail server; accordingly, with the introduction of CUC, in addition to the auto attendant, we get the functionality of voicemail in the IP telephony system.
- The ability to integrate with third-party (non-Cisco) PBXs.
The disadvantages of this option include:
- Weak functionality. Since built-in standard constructions (handlers) are used to create an auto attendant, the functionality that can be implemented is limited.
- Built-in phrases (for example, “called party busy”) cannot be replaced with your own.
- Requires installation, configuration, integration.
- The cost of the license for the 1st user of voicemail (mail box) UNITYCN11-STD-USR 78.75 $
This solution is suitable for companies that require a high load on the number of simultaneous calls and important fault tolerance.
4. Based on a contact center (Cisco Unified Contact Center Express or Cisco Unified Contact Center Enterprise). The
most functional and flexible solution. UCCX, like CUC, is installed on a separate virtual machine. Two virtual machines can be combined into a failover cluster. For an auto attendant, setting the IP IVR functionality is enough. We create the IVR script using the Cisco Unified CCX Editor. UCCX integrates with Cisco Unified Communications Manager. The maximum number of sessions is limited by the capacity of the virtual server (virtual machine template) and the number of licenses purchased.
The advantages of this option include:
- High scalability and resiliency.
- Support for the most commonly used codecs G.711 a / u-law, G.729.
- The richest in functionality.
- WEB management interface - Cisco Unified CCX Administration.
- Developing an IVR script in the Cisco Unified CCX Editor is relatively simple and resembles visual programming.
- There are built-in system phrases in different languages, as well as a ready-made auto attendant script (aa.aef).
The disadvantages of this option include:
- Requires installation, configuration, integration.
- Solution cost: Minimum promotional kit for 5 agents (operators) of the contact center and 100 voice ports (simultaneous calls): $ 1044.75
UCCX is a full-fledged contact center with support for advanced contact center technology, so use it only to create an auto attendant - shoot a sparrow from a cannon. This solution is suitable for companies with high demands on functionality, performance and reliability.
We examined various options for organizing an auto attendant. The choice largely depends on what solution is available or being implemented (CUCMe, CUCM, BE6K or a third-party exchange), as well as what requirements for functionality, performance and reliability are presented.
Conclusion
The easiest option is an IVR based on TCL / VXML, and the most functional and productive one based on Cisco Unified Contact Center Express / Enterprise.
The Cisco Unity Connection solution is not always deserved often overlooked. Typically, when you purchase Cisco Unified Communications products, Cisco Unity Connection is bundled with the licenses you purchase (for example, when you purchase UWL licenses, as well as in the Business Edition bundle). In this case, for the implementation of an auto attendant, nothing additional is required.
The Cisco Unity Express solution allows you to take off the load (compared to the TCL / VXML use case) for processing calls from the router; it occupies an intermediate position between the scripted solutions on IOS and the solutions on dedicated servers. It is quite simple and convenient, so it’s suitable for solving the problem of organizing an auto attendant using the IT department of the company on your own, because has a simple built-in web-editor for scripts with support for basic actions.
There are options for integrating Cisco IP telephony systems with third-party solutions for implementing the auto attendant function, but this is a completely different story ...