Chapter 3: Cisco Unity Express System Design Considerations

The "Chapter 2: Network Infrastructure Considerations for Cisco Unity Express" chapter addressed network infrastructure considerations such as IP addressing, date and time synchronization, and security features when deploying Cisco Unity Express in your network. Cisco Unity Express offers both an autoattendant (AA) and a voice mail application. Before describing these topics individually in subsequent chapters, this chapter addresses general Cisco Unity Express design considerations that apply at a system level is to both AA and voice mail. Topics in this chapter include how the "ports" on the system are set up and used by the applications, how language is customized, and system backup considerations.

AA and Voice-Mail Ports

Cisco Unity Express does not have any physical ports as it is a purely IP-based system. However, as is common for AA and voice mail systems, there is a limit on the maximum number of simultaneous calls that can be active in the system at any one time. This limit is referred to as ports or sessions.

Up to Cisco Unity Express 2.0, a combination of the mailbox license and the hardware that was purchased with a Cisco Unity Express system determined the number of ports the system had. You could not via the configuration. The number of ports included all calls into any of the system's pilot numbers (that is, the AA, the AVT as well as voice mail). Table 8 summarizes the ports for different hardware and licensing on Cisco Unity Express for releases up to Cisco Unity Express 2.0.

Table 8 Cisco Unity Express Ports for 1.0, 1.1 and 2.0

Cisco Unity Express Hardware

License

Ports

NM-CUE

12 mailbox

4

25 mailbox

4

50 mailbox

8

100 mailbox

8

AIM-CUE (512M and 1G CF)

12 mailbox

4

25 mailbox

4

50 mailbox

4

With Cisco Unity Express 2.1, the number of ports are decoupled from the license that is installed on the system, and instead has a dependency only on the Cisco Unity Express hardware form factor and the router platforms on which Cisco Unity Express is installed. Table 9 summarizes the ports for different hardware platforms on Cisco Unity Express for Cisco Unity Express 2.1 and later releases.

Table 9 Cisco Unity Express Ports for s 2.1 and Higher

Cisco Unity Express Hardware

License

Platform

Ports

NM-CUE

All

All

8

NM-CUE_EC

All

All

16

AIM-CUE (512M and 1G CF)

All

Cisco 2600XM, Cisco 2691

4

AIM-CUE (512M and 1G CF)

All

Cisco 2800, Cisco 3700 and Cisco 3800

6

Ports cannot be dedicated to either the AA or voice mail; the ports are shared by default. There is, however, separate configuration control of the maximum number of calls into each AA and the maximum number of calls in voice mail. You can have multiple AAs defined, each with its own pilot number.

Note For optimal system performance, retain the default system configuration, which is to share all system ports among all the AA and voice mail pilot numbers (that is, to have all the AA and voice mail session parameters set to the maximum number).

Use the following GUI windows if you want to change the default configuration and limit the maximum number of ports used by the following:

•AA—Voice Mail > Auto Attendant > select the appropriate AA > Next (Script Parameters) > Next (Call Handling) and change the maximum sessions field. The maximum sessions field is applicable to each individual AA pilot number and, as with the sharing arrangement with voice mail, the default operation here is also to share the system ports equally among all the different AA pilot numbers that are defined on the system (there can be up to five AAs defined).

AA and Voice Mail Operators

You can configure Cisco Unity Express at least two different operators on the system, that of the system AA and the voice mail operator. Additionally, you can define operators in your custom AA scripts.

Set the system "operator" fields, so that calls that encounter error conditions or do not make valid dual-tone multifrequency (DTMF) choices from the prompts and menus that are provided by the system (AA or voice mail), are redirected to an "operator" (likely a receptionist or an administrative assistant) who can help direct the caller.

Voice Mail Operator

Cisco Unity Express defines a system voice mail operator where calls are redirected if a caller does not respond to voice mail menus, or does not hang up after leaving a voice mail for a subscriber. The voice mail "operator" is triggered when the following voice mail prompt is reached:

"If you have a mailbox on the system, please press #, or you will be transferred to the operator."

By default, the voice mail operator is set to the AA pilot number. Alternately, you can set this to the extension of any employee in your office. To change this attribute, choose Voice Mail > Call Handling and change the "Voice Mail Operator Number" field.

System AA Operator

The Cisco Unity Express system AA (the "autoattendant" script on the Voice Mail > Auto Attendant GUI window) has an operator extension to which calls are directed when you select "0" from the system AA menu to transfer to the operator. You can set this extension to any dialable digit string using the Voice Mail > Auto Attendant > autoattendant (aa.aef) > Next (Script Parameters) "operExtn" field. By default the "openExtn" field is set to 0 which might not be a meaningful or dialable string in your configuration. Ensure that either 0 is dialable and results in a call being routed to desired destination, or set this parameter to the extension number of a phone in your office.

Custom AA Operator

Any of your customized AA scripts can optionally provide menus or prompts to the caller to choose an operator (or receptionist). This operator setting is specific to each custom AA script and is independent of the system AA and voice mail operator system settings described in the "Voice Mail Operator" section and the preceding "System AA Operator" section.

Operator extensions in your custom AA scripts show up as parameters in the script and you can set the values of these fields by using the Voice Mail > Auto Attendant > [choose your custom AA script] > Next (Script Parameters) and change the field that corresponds to the script variable you chose for this field.

Codecs and Transcoding

Cisco Unity Express supports only G.711 voice streams, so all calls made into the system (including those from IP phones, PSTN gateway ports and any other VoIP equipment in your network) must use G.711 if they enter the AA or voice mail pilot numbers that terminate on Cisco Unity Express.

If you require that G.729A calls traverse IP segments of your network between sites, and that these calls forward or dial direct into Cisco Unity Express AA or voice mail, then you must use a transcoding resource collocated with Cisco Unity Express to change the voice stream from G.729A to G.711 before the voice stream enters the AA or voice mail pilot numbers.

Voice Activity Detection

For Cisco CME and Cisco SRST configurations, this is a setting controlled by the Session Initiation Protocol (SIP) dial-peer defining the routing for calls into Cisco Unity Express, as shown in the following configuration example. The configuration of the far-end device or dial-peer does not matter in this case because Cisco CME or Cisco SRST terminates the voice stream and re-originates it towards Cisco Unity Express.

The following example depicts VAD disabled on dial-peer with Cisco CME or Cisco SRST.

dial-peer voice 3100 voip

description VM-AA

destination-pattern 31..

session protocol sipv2

session target ipv4:172.19.153.37

dtmf-relay sip-notify

codec g711ulaw

no vad

For Cisco CallManager deployments with Cisco Unity Express, the VAD parameter is controlled by either Cisco CallManager (IP phones) or by the far-end PSTN gateway. If this is an H.323 gateway, then set the dial-peer on that gateway that is pointing the call towards Cisco CallManager to so that VAD is disabled.

Dual-Tone Multifrequency Relay Method Support

Cisco Unity Express supports only the SIP-notify out-of-band, dual-tone multifrequency (DTMF) relay method. Inband DTMF cannot be processed by Cisco Unity Express, regardless of whether this is inband tones via the speechpath, or inband DTMF relay using RFC 2833. While Cisco Unity Express uses a SIP interface to communicate with Cisco CME or Cisco SRST, SIP trunking calls and SIP phones are not currently supported by Cisco Unity Express—due to the lack of RFC 2833 support. A future release is planned to support RFC 2833-based features, but such support is not available in any release up to Cisco Unity Express 2.1.

VoIP trunking calls into Cisco Unity Express must be H.323, and IP phones with mailboxes on Cisco Unity Express must be controlled via Skinny Client Control Protocol (SCCP) by the call agent (Cisco CME, Cisco SRST or Cisco CallManager).

Subscriber Names and Directories

Cisco Unity Express has an embedded, local Lightweight Directory Access Protocol (LDAP) directory where user definitions are stored. There is no external access to this LDAP directory (from an outside application to Cisco Unity Express's directory), nor does Cisco Unity Express offer any means to coordinate its internal user information with an external directory such as Active Directory (from Cisco Unity Express to an external application).

There is a user import function in Cisco Unity Express where it can access either the Cisco CME router configuration, or the Cisco CallManager database to draw out new user definitions that do not exist in Cisco Unity Express's directory. As a result, you do not need to retype this information. The import function is a one-time, manually initiated activity. The import function is not a directory synchronization feature.

Cisco Unity Express's internal LDAP directory drives the dial-by-name feature available in the AA. Users that are not defined on the Cisco Unity Express system configuration do not show up in the dial-by-name directory. You can insert user definitions on Cisco Unity Express that do not have mailboxes on the system if you want them to be accessible via the AA dial-by-name feature. The user name defined in Cisco Unity Express is independent of any user names defined for phone display purposes or directories of other IP telephony systems in your network.

Language Customization

Releases prior to Cisco Unity Express 2.0 support only U.S English. As of Cisco Unity Express 2.0, three additional languages are supported:

•European French

•German

•European Spanish

A Cisco Unity Express system can only support one language at a time, so if you install one of the alternate languages (U.S. English is the default), that language replaces the current language on the system.

Language customization in Cisco Unity Express affects the system AA and voice mail prompts. Language customization does not affect the CLI, GUI, custom prompts, user spoken names, or user greetings. The administrative interfaces (CLI and GUI) are always English only. Custom AA prompts, user spoken names, and user greetings can be in any language you like and are not controlled by the language customization of the system.

While the strategy of individual product roadmaps strive to support the same languages for different Cisco products in your IP telephony network, there is no technical dependency or coordination between the languages that are supported by the different systems, including Cisco Unity Express, Cisco Unity, Cisco CME, and Cisco CallManager. Each of these systems is independently configured and customized with languages.

Backup and Restore

Backup and restore operations use FTP to an FTP server. Flash or other types of media cannot be used for backup and restore.

Cisco Unity Express backup must be initiated manually; there is no mechanism within the system itself to schedule unattended backups. As the backup functionality is available via the CLI (as well as the GUI), it is possible for you to develop a script on another server that will automatically (such as based on time-of-day) log in to the Cisco Unity Express system's CLI and initiate a backup. If you do scheduled backups in this manner, take the following into consideration:

•Doing a backup requires the system to be offline, and taking the system offline disconnects all calls in progress. So if the backup is triggered by a script where the warnings about call disconnection are not seen (due to a scripted interface), this may cause you to do backups during normal day-time use of the system and thereby disrupting the operation of the system. Write your script to initiate backup during a time of day when no calls are expected to be active.

•If any errors occur, ensure that your script provides a notification to an administrator to investigate.

Directory Path for Backup

A backup from a Cisco Unity Express system is done to a configured FTP server, and the directory location specified in the configuration cannot be the root path of the FTP system. Figure 12 shows an example configuration where ftp://b.19.153.33/CUE-site6 is the backup path. A value of ftp://b.19.153.33/ is unacceptable. To enter the backup server path, the FTP server must be in contact with Cisco Unity Express. As a result, the FTP location must exist, and Cisco Unity Express validates the location during configuration entry.

Figure 12 Backup FTP Server Configuration

The preceding configuration is shown in the following CLI example.

Note Note that the password is not printed in either the GUI or the CLI - this is done for security purposes. It is strongly recommended that the FTP server user account you use for backups is password protected. The backup files are not encrypted by Cisco Unity Express.

Cisco Unity Express logs into the FTP server with the account user ID specified in the configuration. In the preceding example, this is group1. The backup directory specified in the configuration (CUE-site6) is therefore a subdirectory from the "home" location of the user ID on the server. In this example it is:

/home/group1/CUE-site6

Backing Up Multiple, Networked Cisco Unity Express Systems

Backup processes done from one Cisco Unity Express system have no knowledge of backups or server paths used by other Cisco Unity Express systems in the same network. If multiple Cisco Unity Express sites are configured to back up to the same FTP server, ensure that a separate directory is used for each site and that the directories are named in a recognizable manner, for example by use of site numbers (as shown below) or geographical tags of sites:

•ftp://b.19.153.33/CUE-site6

•ftp://b.19.153.33/CUE-site7

•ftp://b.19.153.33/CUE-site8

There is nothing in the actual backup file naming that indicates what site this backup belongs to—all site file names are the same as shown in the following example. If multiple Cisco Unity Express systems point their backups to the same directory location on the FTP server, the Cisco Unity Express systems will interfere with each other and the backup will not be successful. Also, the administrator will be unable to tell which backup belongs to which Cisco Unity Express system, making restore operations unsuccessful.

The following output example depicts backup file names:

[backup-server]$ cd /home/group1/CUE-site6

[backup-server]$ ls -l

total 40

drwxr-xr-x 2 cue cue 4096 Mar 11 19:42 Configuration_1

drwxr-xr-x 2 cue cue 4096 Mar 6 19:00 Configuration_2

drwxr-xr-x 2 cue cue 4096 Mar 19 11:38 Configuration_3

drwxr-xr-x 2 cue cue 4096 Mar 19 12:52 Configuration_4

drwxr-xr-x 2 cue cue 4096 Mar 5 17:00 Data_1

drwxr-xr-x 2 cue cue 4096 Mar 6 18:58 Data_2

drwxr-xr-x 2 cue cue 4096 Mar 13 21:15 Data_3

drwxr-xr-x 2 cue cue 4096 Mar 19 11:38 Data_4

-rw-r--r-- 1 cue cue 5178 Mar 19 13:15 history.log

Configuration and Data in the Backup

The router configuration is not backed up or restored—only the Cisco Unity Express application configuration and data are backed up and restorable. A Cisco Unity Express backup provides a choice of configuration or data categories, or both.

Configuration information includes:

•System configuration

•Voice Mail configuration

•User Information and Spoken Names

•AA scripts and prompts

Data information includes:

•Voice Mail greetings

•Voice Mail message content

For a large system (many mailboxes with many messages), the data information is the bulk of the size of the information to be backed up, and the configuration is small in comparison. For example, in a test on a 40 user system with 40 minutes of voice mail, 22 megabyte of the 24 MB backup was in the voice message (data) part of the backup. The data is also what changes most frequently and what must be backed up daily. There is little incentive to back up one set of information without the other, and the recommendation is to back up configuration and data daily during a time when no voice calls are likely to be active in the system. Backing up configuration and data at all times also simplifies restore operations—ensuring that the configuration (of mailboxes) and the voice messages (content of the mailboxes) coincide.

As the configuration of the system is part of the backup, it is important to back up from, and restore to the same system. If a backup is done from Site-1 and this is restored onto Site-2, the Site-2 system will assume the identity and all the characteristics of Site-1, including DNS settings, hostname, and IP address settings, which is almost certainly undesirable. Such a system could be recovered (identity changed back to Site-2) by retaining the user and mailbox definitions and message content of the Site-1 system, but considerable manual configuration will be required to do so and this is not recommended.

Selective Backup

While there is a choice to back up configuration or data or both as discussed in the "Configuration and Data in the Backup" section, the particular feature does not provide a selective backup capability. Instead, the backup and restore feature in Cisco Unity Express is designed as a disaster protection mechanism. A backup or restore operation is per system; it is not per mailbox and not per message. It is not designed to facilitate moving user mailboxes from one system to another as they move between sites and there is no way to accomplish this in Cisco Unity Express 2.0 software. Nor is there any way to restore a message that a user accidentally deleted.

Multiple Generations of Backups

Up to 50 generations of backups are kept (if configured to do so) by the Cisco Unity Express Backup and Restore facility. The default is 10. When a backup exceeds the configured maximum number of generations, the oldest backup is automatically deleted—the backup attempt does not fail. So the number of generations of backups kept by the system, such as 15, is a moving window of the most recent 15 backups done on the system.

There is no date/time stamp in the backup itself or in the file names that are used, so ensure that the clock is set correctly on the FTP server where the backups are stored, so that file timestamps are an accurate indication of the last backup date. The Backup History on the Cisco Unity Express system does contain a time and date stamp for when the backup was done. Sample output of the CLI backup history command is shown in the following example. The same information is available via the GUI and navigating to Administration > Backup/Restore > Configuration.

The following show an example backup history:

cue# show backup history

#Start Operation

Category: Configuration

Backup Server: ftp://b.19.153.33/CUE-site6

Operation: Backup

Backupid: 1

Description: Site 6

Date: Sun Apr 21 06:42:34 PDT 2004

Result: Success

Reason:

#End Operation

#Start Operation

Category: Data

Backup Server: ftp://b.19.153.33/CUE-site6

backups

Operation: Backup

Backupid: 1

Description: Site 6

Date: Sun Apr 21 06:42:41 PDT 2004

Result: Success

Reason:

#End Operation

If more than 50 generations of backups must be kept (or 50 days assuming backups are run daily), this can be accomplished by using a succession of different directories for backups. For example, ftp://b.19.153.33/CUE-site6 could be the backup directory that is configured for the first 50 backup days, and then change the configuration to ftp://b.19.153.33/CUE-site6-2, and this will cause another 50 backups to be stored in the second directory without affecting the ones in the initial directory. The backup generations is controlled by the history.log file stored in the backup directory, shown earlier in the "Backing Up Multiple, Networked Cisco Unity Express Systems" section. This file controls the number of backups and is used to determine which backup should be deleted if the maximum number of generations is exceeded. This file also controls the restore view (in the GUI navigate to Administration > Backup / Restore > Start Restore) should you select to do a restore. The restore view is built from the current directory configured for backups, so by changing the configuration (temporarily) you can get a view of an older directory and select a restore from there.

Note Do not move or change individual files within a backup directory (such as CUE-site6). Doing so invalidates the history.log control file and therefore the ability to restore any of the backups from this directory. You can move or copy (or encrypt with an offline utility) the entire directory, but do not perform such operations on individual files within the directory.

Backup File Sizes

The largest contribution in size to a Cisco Unity Express backup is the actual voice mail message content. Messages are stored in G.711, which is a 64 kilobit codec, so the size can be calculated at 64000/8=8000 bytes per second, therefore 8 kilobyte file size per second of recorded voice. This factor applies to mailbox greetings, spoken names, and voice message content.

The components of a Cisco Unity Express system that determines the backups file size include:

•The base system configuration

•User and mailbox definitions, including spoken names and greetings

•Voice message content

•Custom AA scripts and prompts

If the following attributes of the system are known, you can estimate the backup size:

•AA script and prompt sizes

•Greeting time per user (in seconds)

•Spoken name time per user (in seconds)

•Number of users

•Total voice mail minutes

All the non-AA information, with the exception of spoken name time, is available from the Cisco Unity Express system as shown in the following example. The same information can be seen in the GUI by navigating to Reports > Voice Mail. Spoken name time can be estimated at 3 seconds per mailbox.

The following output example illustrates system summary:

cue# show voicemail usage

personal mailboxes: 40

general delivery mailboxes: 0

orphaned mailboxes: 0

capacity of voicemail (minutes): 6000

allocated capacity (minutes): 3310.0

message time used (seconds): 2400

message count: 33

average message length (seconds): 72.72727272727273

greeting time used (seconds): 308

greeting count: 40

average greeting length (seconds): 7.7

total time used (seconds): 2708

total time used (minutes): 45.13333511352539

percentage used time (%): 1

You can derive the size of AA information from the file sizes given in the Voice Mail > Prompts and Voice Mail > Scripts GUI windows. Similarly, the show ccn prompts and show ccn scripts CLI commands can be used to see the same information.

An estimate of the backup file size for a particular Cisco Unity Express system can be made with the following calculation (the figures given here are based on Cisco Unity Express 1.2) and adding together all the components:

Backup Bandwidth

FTP is a protocol that uses all the bandwidth it can get to communicate between two systems. The more bandwidth is available, the quicker the FTP session will be. It is recommended that you insert a QoS policy on the WAN link of the router that carries the Cisco Unity Express backup traffic to regulate the bandwidth available to FTP traffic. Once this available bandwidth is determined and you have an estimate of the backup size for a particular site (using the information given in the "Backup Bandwidth" section), you can estimate how long a typical backup will take. Cisco Unity Express does not perform incremental backups; it completes a full backup of all information every time.

If you have LAN connectivity between the Cisco Unity Express system and the FTP server, a typical backup takes two to three minutes.

Best Practices

The folowing list gives the best practises to follow when configuring and performing backups on a Cisco Unity Express system:

•Ensure that the running configuration is written out to the start-up configuration before a backup is done. From the Cisco Unity Express CLI, enter the write command, or from the GUI, go to the Administration > Control Panel and click the Save Unity Express Configuration button.

•Restore onto the same system that was backed up. However, if you must restore onto a different system, then it is best to do so on a system that has been newly installed (that is, it has no preexisting configuration) with a license that matches that of the system that created the backup. License mismatches are encountered when restoring onto a different system than the one from which data was backed up—which can cause unpredictable results.

•Do a backup at the end of the business day when users are no longer using the system and incoming calls are zero at a minimum.

•Back up both Configuration and Data daily.

•Back up each system in a network to a uniquely named directory on the FTP server.

•Ensure that the clock is set correctly on the FTP server.

•Ensure that there is enough disk space on the FTP server for the backups to complete successfully.

•Do not modify or delete individual files within a backup directory.

Shutdown, Linux and OIR

Cisco Unity Express is a Linux-based system and therefore, like all Unix and Linux systems, must be shut down before you turn off the system. Not doing so runs the risk of corrupting the file system which will require a software install and restore from a backup to recover.

Of the platforms supporting Cisco Unity Express, only the Cisco 3745 and Cisco 3845 have online insertion and removal (OIR) capability. OIR is an attribute of the platform, not of the NM, so the NM-CUE or NM-CUE-EC can be removed and replaced during OIR, as can any other NM on an OIR-capable platform.

If OIR is done on the NM-CUE or NM-CUE-EC:

•Manually shut down Cisco Unity Express application prior to removing the NM from the chassis.

•Replace only like-for-like modules (that is if you remove an NM-CUE module, insert another NM-CUE module into the same slot). This is a requirement for all NMs replaced via OIR.

Do not use OIR to insert an NM-CUE module into a system that has never had an NM-CUE resident and configured in that same slot before. For example, if slot 2/0 is open on an existing running router, the NM-CUE cannot be added without requiring a reboot of the router. The router does not recognize unconfigured hardware during an OIR operation, only replacement of the existing hardware.

Upgrades and Downgrades

Two types of upgrades can be done on a Cisco Unity Express system:

•Software upgrade where the software release level is changed.

•License upgrade where the capacity of the system (the number of mailboxes) is changed.

A downgrade is defined as going backwards in either software release (such as Cisco Unity Express 2.0.2 to 2.0.1) or license level (such as 25 mailboxes to 12 mailboxes) while maintaining the system configuration and data on the disk.

Software Upgrades

There is no particular software upgrade procedure as such in Cisco Unity Express. Software upgrades are accomplished by:

•Doing a backup procedure.

•Installing a new release of software.

•Doing a restore procedure.

If only the software release level changes during an upgrade, then no action with regard to license installation has to be taken. The existing license survives a software release change.

Note A software install cleans the disk, so no configuration or voice message data survives a software install or upgrade; it is imperative to do a system backup before you start the upgrade.

In Cisco Unity Express releases prior to 2.0, a full installation was done every time, which means the entire software image file (of about 70 MB) was downloaded from the FTP server to the Cisco Unity Express system during the install/upgrade procedure. Cisco Unity Express 2.0 and later releases support an incremental upgrade capability where file and component checks are done, and only the incremental changes are downloaded from the FTP server.

For upgrades of minor releases, for example Cisco Unity Express 2.0.1 to Cisco Unity Express 2.0.2, this should save a significant amount of downloading time, especially if your FTP server is accessible only via a WAN link. A major release upgrade (for example, from 2.0 to 2.1) will likely contain much more incremental changes and therefore be closer in size to the full download time. The actual download time varies, depending on the current and target release of the upgrade and the exact file changes between the two releases.

License Upgrades

If the capacity of the system is changed, for example from a 12-mailbox system to a 25 mailbox system, then install a new license file on the Cisco Unity Express system. If a license installation is done in isolation (that is, the software level remains the same), then the disk contents survive and the system is operational after the license install.

Note It is always good practice to do a backup before any installation or upgrade, so while it may not be needed, it is recommended to do a backup before a license install.

If the capacity of the system (license) is changed at the same time that the software level is also changed, then a backup is mandatory, and the disk will be cleaned during the software upgrade operation.

Downgrades

Limited software downgrade capability is supported as of Cisco Unity Express 2.0. A downgrade of the license level (while preserving the configuration and data of the system) of a Cisco Unity Express system is not supported and doing so may cause unpredictable results.