Message Waiting Indication and Access to Unified Voicemail on Communicator Mobile (CoMo) for Nokia

This blog will explain how the Message Waiting indicator (MWI) works and how end-user can access their enterprise voice mails from CoMo for Nokia and prerequisites for these features to work properly.

CoMo for Nokia client can receive notification of unread voice mail count or in other words offers MWI feature, the unread voice mail count is shown in the homescreen like shown in picture below:

On clicking on the homescreen it launches the conversation list window (shown in picture below) that will allow accessing the voice mail.

As you already know that the Unified Messaging (UM) component of Exchange 2007 is the designed to be the voice mail solution for Office Communications Server 2007 (OCS).  The UM server role component must be deployed with Exchange 2007 to support this integration with OCS. What it means is that anyone can dial an OCS user and leave a voice mail which will then be delivered to that user's Outlook inbox, the integration of UM of Exchange 2007 will give enterprise users the added benefit of having e-mail, voice mail, and fax messages consolidated in their inbox. Moreover, certain voice mail features can now be accessed using Office Communicator (OC) clients.  In an integrated environment when a call to a person is not answered (busy, ring no answer, or diverted to voice mail) it gets routed to the UM server. The front end server role of OCS (or the Director) is responsible for processing and routing the call to the UM server. For more detail information on UM you can refer to TechNet and to this blog.

For CoMo for Nokia user to get this feature followings components are also required apart from the UM server role component deployment that we already mentioned

  • Voice mail configuration.   CoMo for Nokia user account must be configured with an Exchange mailbox, and it must be enabled for Enterprise Voice to have this feature.
  • Client Access Server (CAS) of Exchange 2007--The Autodiscover Service. This is the middle-tier server that hosts the client protocols, such as Post Office Protocol 3 (POP3), Internet Message Access Protocol 4 (IMAP4), Secure Hypertext Transfer Protocol (HTTPS), Outlook Anywhere, Availability service, and Autodiscover service. The CAS role accepts connections to your Exchange 2007 server from a variety of different clients, including mobile devices. The CAS also hosts Web services. The Autodiscover service is a new Web service that is included in Microsoft Exchange Server 2007. The Autodiscover service provides client application configuration information, including external and internal URLs, for Web services, such as Availability and Unified Messaging, that are included in Exchange Web Services (EWS). For more information you can refer to TechNet.
  • Communicator Web Access (CWA) server-legacyImpersonationPolicy parameter. For this feature to work, you need to change the legacyImpersonationPolicy parameter value to False (the default is True) on the Communicator Web Access server. To perform this change, use the procedure identified in TechNet.
     

Now let us see step by step on how CoMo for Nokia client on the Internet can use the Autodiscover service to retrieve the service binding to the Exchange Web Services endpoint to get the count of unread voice mail:

  • As shown in the diagram, MCX server is an Exchange Web Services client in this case impersonates as the CoMo for Nokia logged in user to authenticate with Active Directory (AD) so that it can query the AD for Autodiscover service connection point (SCP) object that were created during CAS role installation
  • The SCP object contains the ServiceBindingInformation attribute that has the Client Access server/Autodiscover service URL in the form of https://CAS01/autodiscover/autodiscover.xml, where CAS01 is the fully qualified domain name (FQDN) of the CAS
  • After the client obtains and enumerates the instances of the Autodiscover service, it connects to the first CAS in the enumerated list
  • CAS returns back the profile information in the form of XML data that is needed to connect to the user's mailbox
  • Using EWS push method the EWS callback hosted within MCX server receives all notifications subscription for ModifiedEvent on the Voice Mail search folder that is identified as DistinguishedFolderIdNameType.voicemail in exchange, for more information on EWS push notification you can refer to MSDN article
  • When there is a new voice mail, new unread email in Voice Mail search folder get created which triggers ModifiedEvent
  • EWS callback receives a notification for a Subscription Id from the CAS , from which unread items in the Voice Mail search folder can be extracted
  • Then the Session Id corresponding to the Subscription Id look up happens using the Subscription map stored in Web Service
  • Comparison of stored unread voice mail number for the session with received voice mail number happens, in case of any difference CoMo for Nokia client is notified using existing event notification infrastructure between MCX and CoMo for Nokia client
     

To access the voicemail user must configure the Voicemail Number field in the ‘General’ tab  of ‘Settings’ page or prompted to enter, user must enter your unified messaging access phone number (this is enterprise given PSTN number to access enterprise UM voice mail) in settings. The application uses this number to call your voice mail, this call is a cellular call not OCS Enterprise call as enterprise voice calling is not supported by CoMo for Nokia client. Also cannot control incoming voice calls and choose to redirect them to Unified Enterprise Voice Mail because CoMo for Nokia client does not support OCS Enterprise voice calling feature.

If the Voicemail Number field in the Setting page is not configured user will be prompted for the unified messaging access phone number as shown in below picture, which gets saved as part of CoMo for Nokia user settings.

Please share your comment below.

 

Sukuman Rayan

Program Manager, UC
Published Thursday, September 09, 2010 12:16 PM by octeam