How to Configure Cisco CallManager Express for Exchange 2007/2010 Unified Messaging

This is an easy tutorial for configuring a Cisco CallManager Express (CME) system to use Exchange 2007/2010 Unified Messaging for voice mail and other Exchange messaging needs. For what it’s worth, I highly recommend using 2010 instead of 2007 due to the MWI (Message Waiting Indicators) functionality, but there are add-ons for 2007 to enable it as well.

First of all, to configure the CME you need to add the following commands to your configuration:

dial-peer voice 550 voip
description ** Exchange Unified Messaging **
destination-pattern 550
session protocol sipv2
session target ipv4:192.168.10.4
session transport tcp
dtmf-relay rtp-nte
codec g711ulaw
fax rate disable
fax protocol pass-through g711ulaw
no vad
!
telephony-service
voicemail 550

Notes:

  • You need to change 550 to an extension number appropriate for your environment, so if you’re using a 4+ digit dial pattern, change this accordingly.
  • You need to change the 192.168.10.4 IP address to be the appropriate IP for your Exchange server.
  • The voicemail 550 command in the telephony-service section instructs your phones to call the Exchange box instead Unity or other VM system.

Next, you need to configure all the call forwarding options for your extensions…

ephone-dn 1
call-forward busy 550
call-forward noan 550 timeout 18

Note: Again, change the 550 to your appropriate extension. Obviously, changing ephone-dn 1 to each extension as appropriate. You can also do this from the web interface or Cisco Configuration Professional if you prefer.

Next, you need to configure the system to accept MWI’s from the Exchange server…

sip-ua
mwi-server ipv4:192.168.10.4 expires 3600 port 5060 transport tcp unsolicited

Now it’s time to configure the Exchange Server.

  1. Start by opening the Exchange Management Console.
  2. Go to Organization, Unified Messaging.
  3. Create a New Dial Plan with the parameters:
    • Telephone Extension
    • Unsecured
    • Your extension dialing digit pattern (usually 3-7)
    • Country Region Code is 1 for US, etc.
  4. Create a UM Gateway with the parameters:
    • IP address of your CME device, in my case 192.168.10.1 since it also acts as my primary gateway router (using a 2821 Integrated Service Router).
    • Pick your Dial Plan from earlier.
    • Create a UM Hunt Group with the Pilot Number of the extension you’ve been using to replace 550.
  5. Create a UM Policy with the parameters:
    • Pick your Dial Plan from earlier.
    • Double-click and configure the options according to your security policies.
  6. Create a UM Auto-Attendant with the parameters:
    • Pick your Dial Plan from earlier.
    • Set the Pilot Number as extension + 1 (551).
    • Enable with Voice Commands.
  7. Go to Server Configuration, Unified Messaging.
  8. Right click on the server, and click Properties.
  9. Click the UM Settings tab.
  10. Assign the Dial Plan to the server.
  11. Select any appropriate languages, set startup mode to Dual, and set the maximum connections.
  12. Click OK.

Finally, enable Unified Messaging for your users…

  1. Go to Recipient Configuration, Mailbox.
  2. Right click on the user, and click Enable Unified Messaging.
    • Pick your Dial Plan from earlier.
    • Set a pin manually, and require it to be changed upon setup.
    • Manually assign the extension of their existing phone (ie. 400, 401, etc.)

That’s all there is to it for the basics. To confirm it’s working, dial your 550 extension and you should hear the EUM prompt for your login info. Of course, you’ll want to play around and become more familiar with the options available.

6 Responses to “How to Configure Cisco CallManager Express for Exchange 2007/2010 Unified Messaging”

  1. On December 14th, 2009 at 10:53 PM kbvoip wrote:

    In response to MWI request with Exchange 2010. For some reason getting the 481 call leg transaction not exist. During your setup did you have the same problem? I’ve followed your instructions, but still doesn’t work. Tried other changes, but not successful. I’m running RTM 2010 with CME 7.1.

  2. On December 15th, 2009 at 5:15 PM kbvoip wrote:

    Ok.. Its working now.. Not sure why I had to put a broadcast address for the mwi-server, but here is the configuration for CME 7.1 with Exchange 2010 that works great..

    oice service voip
    no notify redirect ip2ip
    no supplementary-service sip moved-temporarily
    no supplementary-service sip refer
    sip
    session transport tcp
    header-passing
    no update-callerid

    sip-ua
    mwi-server ipv4:255.255.255.255 expires 3600 port 5065 transport tcp unsolicited
    refer-ood enable
    handle-replaces

    telephony-service
    mwi relay

    ephone-dn 1 dual-line
    mwi sip

  3. On December 29th, 2009 at 9:34 AM ShaunBender wrote:

    Is your Exchange UM server on the same network as CME? Also, do you have all the roles installed on the same server?

  4. On January 30th, 2010 at 11:16 AM Aaron Hall wrote:

    In my case it’s on a different IP subnet, so I had to make sure my router and firewall had the appropriate route statements. Also, yes, I have only one Exchange server with all roles installed on it rather than multiple. I plan to add a second server to the mix that will serve as a Database Availability Group for mailbox resiliency soon.

  5. On February 3rd, 2010 at 5:03 PM Logannj wrote:

    Hi,
    Our current setup is CUCME 4.1 and exchange 2k7 SP1. We have calls and vm working fine to cme. When there is a vm, cme sends email to exchange and user gets vm in mailbox. All we want to add now is just inbound faxes for users on exchange 2k7. Could you post a cme config that will send faxes users get on cme to the exchange server?

    thanks for any help.

  6. On February 3rd, 2010 at 6:54 PM Aaron Hall wrote:

    I wish I could help on that, but I haven’t dived into faxing yet, although it’s definitely something I want to do in the future. By the way, I definitely recommend upgrading to CME7.1… as long as you’re a SmartNet member, should be able to download and upgrade at no cost. Likewise for CUE7.1. Quite a bit more stable.