Configuring MS Exchange Server 2007/2010 Unified Messaging with 3CX Phone System

This article describes how to setup Microsoft Exchange 2007/2010 server as a Unified Messaging Server and configure 3CX Phone System to use it for voice mail and auto attendants. Information on how to do this with Microsoft Exchange 2013 can be found here.

Important Note: Office 365 Exchange cannot be used and is not supported. Only On-Premise installations of Exchange Servers are supported.

This guide has been tested with the following components: Exchange 2007 SP1 RU8 and Exchange 2010 RTM. This guide is for 3CX Phone System version 8.0 and above. Please make sure not to install 3CX Phone System on the same machine as the MS Exchange Server.

Step 1: Exchange Configuration

Exchange integration is not available in the free version of 3CX Phone System. Exchange Server 2007/2010 must be installed with “Unified Messaging Role” enabled. For SBS 2008 you need premium user licenses to enable UM for the users.

Figure 1: Main Exchange Server Setup

Figure 2: Creating a UM Dial Plan

  • Start up the Exchange Management Console.  Click on Microsoft Exchange / Organization Configuration / Unified Messaging / UM Dial Plans and create a new Dial Plan.
  • Important: Select the same number of digits for extension numbers as you have configured in 3CX Phone System. Name the Dial Plan “3CX Dial Plan”.


Figure 3: Adding Subscriber Access.

  • After creating the Dial Plan open the “3CX Dial Plan” and go to “Subscriber Access” and add 999 (in a 3 Digits installation) to it. This is only mandatory for Exchange 2010 but don’t harm on 2007 to make the access point clear..

Figure 4: Register the Dial Plan

  • Register the dial plan for Unified Messaging. Go to Microsoft Exchange / Server Configuration / Unified Messaging and click on “Select Server”.
  • Right click and select Properties / UM Settings. Click “Add” and choose “3CX Dial Plan”.

Step 2: Create Unified Messaging IP Gateway

Figure 5: New UM IP gateway

  • Go to Microsoft Exchange, select Organization Configuration, then Unified Messaging,then  UM IP Gateway.  Enter the IP address of the 3CX Phone System Server and select the dial plan you just created.

    Figure 6: Default Policy Properties

  •  Exchange automatically adds a “3CX Dial Plan Default Policy” which will be applied to the UM server. These can be changed according to the company requirements.

Figure 7:  Enable Unified Messaging in User’s Mail Boxes

  • Enable unified messaging on the Exchange user’s mailboxes in order to receive voice mail.  Select the user’s mailbox, right-click and click on ‘Enable Unified Messaging’.
  • Choose the “3CX Dial Plan Default Policy” and enter a valid PIN that matches the Default policy requirements. (This PIN number is for exchange authentication and has no relation with the Voice Mail pin number set in 3CX Phone System.)

Figure 8: User Extension
  • Enter the extension number for this user.  In this example the user “user No1” will have the extension number of 100..

Step 3: Configuring 3CX Phone System

Go to the 3CX Management Console and click on the Settings node / Advanced / and click on the “MS Exchange” tab.

NOTE: The Hostname must be the exactly written FQDN of the exchange server with caps and lower case letters  (Case Sensitive).

Figure 9: Exchange is Enabled in 3CX Phone System and will Send All Traffic to the Exchange Server.

  • Enable the feature, and enter the IP and port of the machine running the Exchange Server 2007/2010 Unified Messaging Role. After applying this configuration, all voicemail calls will be handled by exchange.  All voicemail messages will also be stored in Exchange.

Additional Information: If you prefer to use Exchange auto attendants rather than 3CX Phone System auto attendants, you can configure this as follows:

Figure 10: Digital Receptionist Section in 3CX Phone System

  • Create a Digital Receptionist on 3CX Phone System and check the option “Redirect to MS exchange”.
  • After that go to the Exchange server and create a UM Auto Attendant using the Exchange Management Console (Microsoft Exchange/Organization Configuration/Unified Messaging/UM Auto Attendants).

Figure 11: New UM Auto Attendant

  • Select the dial plan you previously created for the voice mail integration. Specify the extension number of the Digital receptionist pre-created in 3CX in the Extension numbers section and click on Add.
  • Select the check box “Create auto attendant as enabled” and click on New.  The Exchange Auto Attendant is now configured.
  • Note: Due to an integration problem, when an Exchange Auto Attendant is used, and an extension number is entered via DTMF, there is no feedback or music on hold played from exchange side until the destination answers the call.

Known Exchange Limitations:

  1. Exchange 2007 UM does not support MWI (Message Waiting Indicator).
  2. Exchange 2010 UM does support MWI (Message Waiting Indicator) must be set up accordingly in the handset.
  1. Jim

    Hi,

    Are there any advantages of using Microsoft Exchange as Auto Attendant instead of the Digital Receptionist in 3CX?

    March 3, 2010 at 5:16 am
  2. Not particularly in my opinion. It does offer voice recognition though but probably it wont work in Sweden.

    March 4, 2010 at 5:20 pm
  3. I have this configured in my test lab for a while now. Every now and then I encounter a timeout when 3CX tries to connect to Exchange 2010. This was the same when being connected to Exchange 2007. The transfer fails in that case. When trying again directly after that, it does work. Anyone encountered the same problem and perhaps knows a resolution? I’m guessing it might have something to do with my lab being virtualized using Hyper-V.

    March 4, 2010 at 5:18 pm
  4. Check event viewer and exchange logs. You will see why this is happening. Could be virtualization problem yes.

    March 4, 2010 at 5:51 pm
  5. Gerryvs

    I’ve made a test setup with 3cx and Exchange 2010 Unified Messaging, Voice mail works fine, but the MWI seems to be a different story.

    The Exchange server is having troubles letting 3CX know that the MWI indicator should be switched on for an extension. The events logged in Exchange are :

    An error occurred while sending MWI notification ’1/4 (unread/read)’ for mailbox ‘user1(f3e478e3-5b11-417e-a3c6-36e06786e9d2)’ associated with UM extension ’406′. The target selected was ‘My-3cx’. A different target will be attempted. Additional information: Microsoft.Exchange.UM.UMCommon.MwiTargetException: An error occurred while attempting to deliver an MWI message using target Zoe-PB-0001. —> Microsoft.SpeechServer.SipPeerException: A SIP NOTIFY message has failed. —> ResponseCode=405 ResponseText=Method Not Allowed
    Microsoft.Rtc.Signaling.FailureResponseException: The requested operation failed.
    at Microsoft.Rtc.Signaling.SipAsyncResult.ThrowIfFailed()
    at Microsoft.Rtc.Signaling.Helper.EndAsyncOperation[T](Object owner, IAsyncResult asyncResult)
    at Microsoft.Rtc.Signaling.RealTimeEndpoint.EndSendMessage(IAsyncResult asyncResult)
    at Microsoft.SpeechServer.Core.TelephonyManager.SendNotifyMessageCallback(IAsyncResult result)

    — End of inner exception stack trace —
    — End of inner exception stack trace —

    followed by event :

    The Unified Messaging server failed to deliver the MWI notification ’1/4 (unread/read)’ for the UM-enabled mailbox ‘User1(f3e478e3-5b11-417e-a3c6-36e06786e9d2)’ associated with UM extension ’406′. Additional information: Microsoft.Exchange.UM.UMCommon.MwiNoTargetsAvailableException: There are no more targets available to send an MWI message for user User1

    Any ideas ?

    Best Regards,
    Gerry

    March 5, 2010 at 1:06 am
  6. We have tested MWI and it works in 2010 but not in 2007 (Exchange 2007 does not support MWI). Please open up a support ticket via the 3Cx support portal so our support dept can help you.

    March 5, 2010 at 12:35 pm
  7. Stefan Walther

    Hello,

    reg. Exchange 2010 and MWI. You have to set the WMI in the Phone to look at the exchange status and not more to the 3CX PBX.
    I will relook into it and see if we can make a way that you dont have to change the Phones to a new MWI Server.

    Plz open a ticket at support.3cx.com and ask for Stefan in it.
    Thx

    March 5, 2010 at 3:27 pm