How to Set Up Cisco Unity Express for Voicemail and Unified Messaging

How to Set Up Cisco Unity Express for Voicemail

How to Set Up Cisco Unity Express for Voicemail

Small and mid-size branch offices rarely need — or want to pay for — a full standalone voicemail server infrastructure. That’s the exact gap Cisco Unity Express (CUE) was built to fill: voicemail and basic auto-attendant functionality running directly on an integrated services router or as a module, without requiring a separate Unity Connection server. Having deployed CUE across dozens of branch offices over the years, I can tell you it’s refreshingly straightforward once you understand the handful of pieces that need to line up. Here’s the complete configuration walkthrough.

What Unity Express Is (and Isn’t)

Unity Express is a voicemail and auto-attendant solution embedded in a Cisco Integrated Services Router (ISR) — either as a Network Module (NM), Advanced Integration Module (AIM), or in later generations, a virtualized service module. It integrates with Cisco Unified Communications Manager Express (CME) or full CUCM to provide:

It’s important to understand what CUE is not: it’s not designed for large-scale enterprise deployments (that’s Unity Connection’s job), and it has hard capacity limits depending on the hardware module — typically topping out around 250 mailboxes on higher-end modules.

Fundamentals: How CUE Fits Into the Call Flow

When a call comes into a branch office and isn’t answered, CUCM Express (or CUCM) forwards it to CUE using SCCP or SIP integration, depending on your deployment. CUE then plays the appropriate greeting, records the message, and — if unified messaging is configured — forwards that message as a WAV attachment via SMTP to the user’s email inbox.

The two integration modes matter a lot for how you configure things:

Pre-Deployment Planning

  1. Determine your integration mode (SCCP vs. SIP) based on whether you’re running CUCME or full CUCM at the site
  2. Mailbox capacity planning against your hardware module’s supported limits
  3. SMTP relay availability if you want voicemail-to-email unified messaging
  4. Storage sizing — voicemail messages consume flash/disk space on the module; plan retention policies accordingly

Step-by-Step Implementation

Step 1: Verify Module Installation and Initial Access

Once the CUE module is physically installed in the router, verify it’s recognized:

router# show interface | include Service-Engine
Service-Engine1/0 is up, line protocol is up

router# service-module service-Engine 1/0 status
Service Module is Cisco service-Engine1/0
Service Module supports session via TTY line
Service Module is in Steady state

Access the CUE module’s own CLI via a session:

router# service-module service-Engine 1/0 session
Trying 10.1.1.1, 2066 ... Open

CUE-Module> enable
CUE-Module# configure terminal

Step 2: Configure Basic Network Settings on the CUE Module

CUE-Module(config)# ip address 10.1.1.1 255.255.255.0
CUE-Module(config)# ip default-gateway 10.1.1.254
CUE-Module(config)# ip domain-name company.local
CUE-Module(config)# ip name-server 10.1.1.10
CUE-Module(config)# clock timezone CST -6
CUE-Module(config)# ntp server 10.1.1.5

Step 3: Configure CUCM Express Integration (SCCP Mode)

On the router hosting CUCM Express, define the CUE module as a voicemail service:

router(config)# telephony-service
router(config-telephony)# max-ephones 48
router(config-telephony)# max-dn 96
router(config-telephony)# voicemail 4000
router(config-telephony)# max-conferences 8
router(config-telephony)# exit

router(config)# ephone-dn 1
router(config-ephone-dn)# number 4000
router(config-ephone-dn)# name Voicemail

On the CUE module side, configure the SCCP integration parameters:

CUE-Module(config)# ccn subsystem sccp
CUE-Module(config-sccp)# ip source-address 10.1.1.1 port 2000
CUE-Module(config-sccp)# max-ephones 48
CUE-Module(config-sccp)# max-dn 96
CUE-Module(config-sccp)# exit

Step 4: Alternative — SIP Integration Mode

For SIP-based integration (recommended for newer deployments or full CUCM environments):

CUE-Module(config)# ccn subsystem sip
CUE-Module(config-sip)# gateway address 10.1.1.254 port 5060
CUE-Module(config-sip)# max-sessions 8
CUE-Module(config-sip)# exit

On CUCM, configure the CUE module as a SIP trunk destination for voicemail routing:

SIP Trunk Name: SIP-Trunk-CUE
Destination Address: 10.1.1.1
Destination Port: 5060

Voicemail Pilot: 4000
Voicemail Profile: VM-Branch-Default
  Voicemail Pilot: 4000

Step 5: Configure Voicemail Boxes

Back on the CUE module CLI, define subscribers (mailbox owners):

CUE-Module(config)# username jsmith create
CUE-Module(config-user)# phonenumber 4001
CUE-Module(config-user)# firstname John
CUE-Module(config-user)# lastname Smith
CUE-Module(config-user)# email jsmith@company.local
CUE-Module(config-user)# pin 135790
CUE-Module(config-user)# exit

Bulk provisioning for larger branch sites is possible via CSV import through the GUI (https://<CUE-IP>/ccn), which is far more practical than manual entry beyond a handful of users.

Step 6: Configure Unified Messaging (Voicemail-to-Email)

CUE-Module(config)# ccn subsystem sip
CUE-Module(config-sip)# exit
CUE-Module(config)# mailbox owner jsmith
CUE-Module(config-mailbox)# notification-preference imap
CUE-Module(config-mailbox)# exit

CUE-Module(config)# smtp server address 10.1.1.15 port 25
CUE-Module(config)# smtp server timeout 30

Verify SMTP connectivity for message forwarding:

CUE-Module# test smtp-server
Connecting to 10.1.1.15:25 ... Success
SMTP handshake: OK

Step 7: Configure Auto-Attendant (AA)

Auto-attendant scripts route incoming calls through menu options (e.g., “Press 1 for Sales, Press 2 for Support”). Using the built-in default script:

CUE-Module(config)# ccn application AABranchMain
CUE-Module(config-application)# description "Branch Main Auto Attendant"
CUE-Module(config-application)# script "aa.aef"
CUE-Module(config-application)# parameter "MaxRetry" "3"
CUE-Module(config-application)# parameter "operExtn" "4000"
CUE-Module(config-application)# parameter "welcomePrompt" "AABranchWelcome.wav"
CUE-Module(config-application)# exit

CUE-Module(config)# ccn trigger sip phonenumber 4100
CUE-Module(config-trigger)# application AABranchMain
CUE-Module(config-trigger)# enabled
CUE-Module(config-trigger)# exit

Custom greeting prompts get uploaded through the CUE GUI under Voice Mail > Prompts, since recording high-quality WAV prompts via CLI isn’t practical.

Step 8: Verification and Testing

Check overall module status:

CUE-Module# show ccn subsystem sccp
SCCP Subsystem is READY
Number of active calls: 3
Number of registered ephones: 46/48

CUE-Module# show voice mail status
Voicemail System Status: In Service
Total Mailboxes: 46
Storage Used: 210MB / 1024MB

Test a mailbox greeting playback and confirm SMTP delivery by leaving a test voicemail and checking the recipient’s inbox for the WAV attachment.

Real-World Enterprise Scenario

A regional insurance company with 15 small branch offices, each with 20–40 employees, needed voicemail without the cost of provisioning full Unity Connection licensing at every site. Deploying CUE modules integrated with CUCME at each branch gave every employee a functioning voicemail box with email notification, and a simple auto-attendant handled after-hours calls routing to the appropriate regional on-call number. Because CUE runs directly on the branch router hardware they already had for WAN connectivity, there was no additional server hardware to rack, patch, or maintain at each site — a meaningful operational win for a company without dedicated branch-level IT staff.

Best Practices

Common Configuration Mistakes

  1. Mismatched max-ephones/max-dn values between CUCME and the CUE module, causing registration failures.
  2. Forgetting SMTP relay authentication requirements, silently breaking voicemail-to-email even though local voicemail still works fine.
  3. Weak or default PINs left unchanged, creating security exposure.
  4. Not planning storage capacity, leading to full mailboxes during high call volume periods like holidays.
  5. Overly complex auto-attendant trees that frustrate callers instead of helping them.

Performance Tuning

Troubleshooting

Messages button on phones doesn’t light up: Check the SCCP integration’s max-dn/max-ephones alignment and confirm the voicemail pilot number matches on both CUCME and CUE.

Voicemail-to-email not arriving: Test SMTP connectivity directly from the module (test smtp-server) and check for relay authentication or firewall blocking port 25 outbound.

Auto-attendant plays default prompt instead of custom greeting: Confirm the custom WAV file was uploaded correctly and referenced by the correct filename in the application’s welcomePrompt parameter — filename mismatches are the most common cause.

FAQs

Is Cisco Unity Express still sold and supported? CUE reached end-of-sale status for most hardware platforms; existing deployments remain supported per Cisco’s standard lifecycle policy, but new deployments increasingly favor cloud-based or Unity Connection solutions — check current Cisco EoL bulletins before new purchases.

Can CUE integrate with full CUCM instead of just CUCM Express? Yes, via SIP integration, CUE can serve as a branch voicemail solution even when the call processing is handled by a centralized CUCM cluster.

What’s the maximum mailbox capacity? It depends on the specific hardware module (NM, AIM, or service module variant) — ranges generally span from around 6 to 250 mailboxes.

Does CUE support visual voicemail? Limited support depending on phone model and firmware; it’s primarily an audio-based voicemail system with basic web access rather than a full visual voicemail experience.

Summary

Cisco Unity Express fills a specific and valuable niche: dependable, low-maintenance voicemail and auto-attendant functionality for branch offices that don’t need the scale of a full Unity Connection deployment. The setup process comes down to getting the SCCP or SIP integration correctly aligned between CUCME/CUCM and the module, provisioning mailboxes with sane security policies, and testing unified messaging delivery end to end. Once configured, it tends to run quietly in the background for years with minimal intervention — exactly what a branch office needs.

References

Exit mobile version