Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2

Topic Last Modified: 2010-09-24

Message Waiting Indicator (MWI) is a feature that's found in most legacy voice mail systems. In its most common form, this feature lights up a lamp on a user's phone to indicate the presence of a new or unheard voice mail message. In general, this is the way that legacy voice mail systems let voice mail subscribers know that they have new or unheard voice mail messages. However, in the context of Microsoft Exchange Unified Messaging (UM), MWI refers to a feature that's available in traditional IP gateway, PBX, and Microsoft Exchange Server 2010 Unified Messaging and Microsoft Lync Server 2010 deployments.

In a traditional telephony environment, MWI allows for a lamp or some other mechanism to notify the UM-enabled user that they have a new voice mail message. In environments where Microsoft Office Communications Server 2007 R2 or Lync Server 2010 and VoIP phones are used, the mechanism for letting a user know that a new voice message was received is different than in a traditional telephony environment. Enterprise Voice UM-enabled users see different lights than users in a traditional telephony environment, or other types of notifications.

Contents

Overview

MWI SIP NOTIFY Messages

MWI Resilience

MWI Administration

Overview

 

In general, Message Waiting Indicator (MWI) can refer to any mechanism that indicates the existence of a new or unheard voice message. The message can be new or marked as an unread e-mail message, or it can be new or marked as an unheard voice message. The message-waiting indicator mechanism could be:

  • A new voice mail message as seen from Outlook or Microsoft Office Outlook Web App.

  • A text or SMS message sent to a registered mobile phone.

  • An outbound call made from Exchange UM to a preconfigured number.

  • A light or phone lamp on a phone.

  • A special dial tone.

  • Icons or buttons on the display screen of a phone.

  • A highlighted notification within a software application.

In Microsoft Exchange Server 2007 and Exchange 2010, a UM-enabled user's voice mail is stored in an Exchange mailbox. It can be accessed from a telephone using Outlook Voice Access, from a desktop or portable computer using Outlook and Outlook Web App, and mobile phone clients. When a UM-enabled user receives a new voice message, the message appears in their Voice Mail search folder. If the voice message is accessed using Outlook or Outlook Web App, an e-mail message will be included with the voice message. UM-enabled users who access their Inbox via Outlook and Outlook Web App already have a very efficient mechanism to let them know that they have a new voice message. However, not all UM-enabled users access their voice mail and e-mail messages using Outlook and Outlook Web App.

In Exchange 2007, MWI was supported in a traditional or an IP PBX environment by using a third-party solution or application. Exchange 2010 includes built-in support for MWI. Office Communications Server 2007 R2 and Lync Server 2010 also support MWI. However, the actual MWI mechanism depends on the type of IP-based phone that's used by the Enterprise Voice and UM-enabled user. The following examples show message-waiting indicators from IP-based phones used with Communications Server 2007 R2 or Lync Server 2010:

MWI on a Phone Button MWI on a Phone Display MWI on a Dial Pad Button

In Exchange 2010, MWI doesn't require that any additional server roles or services be installed. By default, MWI is turned on. It's controlled through settings on a UM mailbox policy or on the UM-enabled user's mailbox. MWI also works with protected voice messages and is a feature found only in Exchange 2010.

To implement MWI in Exchange 2010 in a traditional telephony environment, a UM server sends an MWI SIP NOTIFY message to a SIP peer or an IP gateway that's represented by a UM IP gateway in Active Directory. The SIP peer or IP gateway sends the notification to the PBX. The PBX, in turn, lights up the lamp on the desktop phone to notify the user of a new or unheard voice message.

There are two voice-mail scenarios: call answering and Outlook Voice Access. With call answering, the UM server answers an incoming call and allows the caller to leave a voice message for a UM-enabled user. With Outlook Voice Access, when a caller calls a subscriber access number, they can leave a voice message for a UM-enabled user. The following figure shows an overview of how MWI in Exchange 2010 Unified Messaging works in a call-answering scenario.

Overview of MWI
Note:
The Mailbox Assistant only looks for Voice Mail search folder events.

Return to top

The UM Server’s Role in Message Waiting Indicator

After a caller calls a UM-enabled user and the user doesn't answer their phone, the UM server sends a SIP NOTIFY message to an IP gateway or a SIP peer. The UM server receives MWI state change information over RPC from the Mailbox server and sends the request for a change of notification to an IP gateway or IP PBX using a SIP NOTIFY message. The RPC request to the Mailbox server will include the following information:

  • Message waiting indicator enabled (Yes or No).

  • Number of new/marked unheard voice messages.

  • Number of old/marked heard voice messages.

  • Number of new/marked unheard urgent voice messages.

  • Number of old/marked heard urgent voice messages.

  • The primary extension number on the primary UM dial plan.

  • The IP address or fully qualified domain name (FQDN) of the SIP peer or IP gateway to be used for SIP NOTIFY messages.

  • The security type of the UM dial plan (Unsecured, SIP secured, or Secured). This information will be used by the UM server to determine whether the connection to the IP gateway must be SIP over TCP or SIP over TLS. TLS is supported for MWI SIP Notify.

The UM server uses the diversion information on the header of the incoming call to determine the extension number or phone number of the UM-enabled user. When the extension or phone number is determined, the UM server sends the request to the SIP peer, and the SIP peer sends the message on to the PBX. The PBX then changes the state of the MWI and lights the phone's lamp.

Note:
Although PBX outages should be rare, Exchange UM will automatically refresh the MWI status for every mailbox at least once every 12 hours. There is no way to force a refresh, but if the PBX is powered off and all the MWI lamps go off, it should be a maximum of 6 hours until all lamps are restored to the correct state.

Return to top

MWI SIP NOTIFY Messages

MWI notifications use SIP NOTIFY messages to communicate with SIP peers or IP gateways. These messages are sent to the SIP peer with MWI state change information. MWI state change information is included in the SIP NOTIFY message and indicates whether or not MWI notifications will be sent to users. Whenever there's a change in MWI state, the Mailbox Assistant sends this information to a UM server over RPC. After the UM server receives this information, it parses the message to obtain the target SIP peer or IP gateway and the MWI state change information. It will then form a SIP NOTIFY message with the MWI state change information in the message body and send this information on to the SIP peer or IP gateway.

MWI in Exchange 2010 is based on RFC 3842. RFC 3842 states that SIP event notifications must be used for message-waiting notifications. MWI is based on the SIP model, and is driven by the endpoints found in a unified messaging system. SIP endpoints, either IP gateways or IP PBXs, which obtain MWI information must send a SIP SUBSCRIBE message to the Unified Messaging system. The SIP SUBSCRIBE message will be replied to with a NOTIFY message that accepts the subscription. All MWI state change information will be conveyed from the unified message system to a SIP endpoint using NOTIFY messages that are embedded within the subscription that was previously created. The exact syntax of the SIP NOTIFY message to be sent to the SIP peer is based on the format described in RFC 3842. The call flow is shown in the following figure.

SIP Notify

The UM server sends an MWI NOTIFY message to the SIP peer. The event header is set to “message-summary”, which indicates that this is an MWI-related NOTIFY message. The To header field indicates the SIP endpoint for which the MWI service must be provided. The Subscription-State header must be set to “terminated” instead of “active”.

  • The SIP peer or IP gateway conveys this information to the PBX using a circuit-switched protocol such as SMDI.

  • The PBX sends a success message over a circuit-switched protocol.

  • The SIP peer or IP gateway can respond with any of the following messages: 200 OK (Success) or 480 (Temporarily Unavailable). A UM server can handle both these responses and additional failure responses.

MWI in a Traditional Telephony Environment

In a traditional telephony environment, an incoming call is received by the PBX and then sent on to the IP gateway. The UM server and the Mailbox Assistant are used to determine the MWI state for the UM-enabled user. They're responsible for delivering the SIP notification back to the IP gateway and PBX. In a traditional telephony environment, the call flow and MWI notification are as follows:

  1. The incoming call is received by the PBX, and then sent from the PBX to the phone of the UM-enabled user. The user doesn't answer and the caller is prompted to leave a voice message.

  2. The call is first sent from the PBX to the IP gateway.

  3. The IP gateway then submits the call to a UM server.

  4. The UM server performs an LDAP query to locate the UM-enabled user's information, such as the extension number and the greetings for the user. The greeting or greetings for the UM-enabled user are played.

  5. The voice message that was created by the UM server is submitted to a Hub Transport server within the same site.

  6. The Hub Transport server submits the voice message to a Mailbox server. The Mailbox Assistant receives a MAPI event for a new voice message.

  7. The Mailbox Assistant reads the UM dial plan and the UM mailbox policy to determine whether MWI notifications should be sent to the UM-enabled user. The Mailbox Assistant queries for all UM servers that are associated with the UM dial plan of the UM-enabled user. The Mailbox Assistant tries to send the RPC event to the first UM server that's returned. If this fails, it tries the next one. It will keep retrying for 5 minutes, or until all servers have been tried. If all the RPC calls fail, the Mailbox Assistant logs the error in Event Viewer. The UM server queries for all UM IP gateways that are associated with the UM dial plan of the UM-enabled user's mailbox.

  8. UM sends a SIP NOTIFY message to the first IP gateway that's returned from the query. If this fails, the UM server will choose the next IP gateway. The UM server will keep trying for an IP gateway for 5 minutes. If all attempts to find an IP gateway fail, the UM server will log an error. If an IP gateway is located successfully, the IP gateway will send the notification to the PBX, and the PBX in turn will send a notification of the MWI event to the user's phone to light the phone lamp.

The following figure shows the call flow in a traditional telephony environment.

UM_IPGateway_MWI

Return to top

MWI in a Lync Server 2010 Environment

In telephony environments that include Lync Server 2010, an incoming call can be sent from an external phone to the mediation server, sent from a Lync 2010 client, or from a Unified Communications (UC)-based phone. After the call is received, it's sent on to the Lync Server 2010 front-end server pool. The UM server and the Mailbox Assistant are used to determine the MWI state for the UM-enabled user and to deliver this notification to the client or UC-based phone.

Note:
Message waiting notification is only supported in Lync Server 2010 deployments. It is also available in cross-premises deployments that include Lync Server 2010. Office Communications Server 2007 R2 doesn't support MWI and isn't supported in cross-premises deployments.

In a telephony environment with Lync Server 2010, the call flow and MWI notification is as follows:

  1. The call is sent from one of the following:

    1. An external phone to a mediation server

    2. A Lync 2010 client

    3. A UC-based phone.

  2. The incoming call is received by the Lync Server 2010 front-end server pool and sent on to the phone of the UM-enabled user. The user doesn't answer and the caller is prompted to leave a voice message.

  3. The Lync Server 2010 front-end server pool then submits the call to a UM server.

  4. The UM server performs an LDAP query to locate information for the UM-enabled user, such as their extension number and greetings. The greetings are played, and the caller is prompted to leave a voice message.

  5. The voice message that was created by the UM server is submitted to a Hub Transport server within the same site.

  6. The Hub Transport server submits the voice message to a Mailbox server. The Mailbox Assistant receives a MAPI event for a new voice message.

  7. The Mailbox Assistant reads the UM dial plan and the UM mailbox policy to decide whether MWI notifications should be sent to the user. The Mailbox Assistant queries for all UM servers that are associated with UM dial plan of the user. The Mailbox Assistant tries to send the RPC event to the first UM server that's returned. If this attempt fails, the Mailbox Assistant tries the next one. It will keep trying to find a UM server for 5 minutes or until all servers have been tried. If all the RPC calls fail, the Mailbox Assistant will log an error in the Event Viewer. The UM server queries for all UM IP gateways associated with the UM dial plan of the UM-enabled user's mailbox.

  8. UM sends a SIP NOTIFY message to the first IP gateway that's returned from the query. If this fails, the UM server will choose the next IP gateway. The UM server will keep trying to find an IP gateway for 5 minutes. If all attempts to contact an IP gateways fail, the UM server will log an error. If it's successful, the IP gateway will send the notification to the Lync Server 2010 front-end server pool, which in turn will send a notification of the MWI event to the user's phone or Lync 2010 client.

The following figure shows the call flow in a traditional telephony environment.

OCSR2 and Lync Server 2010 MWI

Return to top

MWI Resilience

When you're deploying UM servers, UM dial plans, and UM IP gateways, and are using MWI for UM-enabled users, it's best to deploy multiple UM servers and multiple IP gateways to create fault tolerance and resiliency. Doing this also creates MWI resilience. When you deploy multiple UM servers and UM IP gateways, if a UM server or IP gateway isn't available and the Mailbox server can't connect, the next UM server will be used. If the UM server can't connect to the IP gateway, the next IP gateway will be used. In both cases, a round robin mechanism is used.

To enable fault tolerance for MWI in Unified Messaging, you must create and configure one or more of the following:

  • A UM dial plan that's associated with the UM-enabled user who will receive MWI notifications.

  • A UM mailbox policy that's associated with the UM-enabled user who will receive MWI notifications.

  • A UM IP gateway that's associated with the UM dial plan that's associated with the UM-enabled user who will receive MWI notifications.

  • A UM server that's added to the UM dial plan that's associated with the UM-enabled user who will receive MWI notifications.

The following figure shows that MWI can use multiple paths to send SIP NOTIFY messages.

MWI Resilience

MWI Administration

MWI can be administered by configuring settings on two Active Directory objects: UM mailbox policies and UM IP gateways. For both Active Directory objects, you can enable or disable MWI by using the Set-UMMailboxPolicy cmdlet or the Set-UMIPgateway cmdlet, or by configuring the settings using the Exchange Management Console (EMC). You can view the status of the MWI notification by using the Get-UMMailboxPolicy cmdlet and the Get-UMIPgateway cmdlet, or by viewing the settings in the EMC.

UM Mailbox Policies and MWI

You can create a Unified Messaging mailbox policy to apply a common set of UM policy settings to a collection of UM-enabled mailboxes. For example, you can use a UM mailbox policy to apply PIN policy settings, dialing restrictions, and MWI settings. If you enable MWI, it will be enabled for all users who are associated with the UM mailbox policy. If you disable MWI on a UM mailbox policy, MWI will be disabled for all UM-enabled users who are associated with the UM mailbox policy. Thus, disabling MWI can disable MWI for all UM-enabled users associated with a single or multiple UM dial plans or a single or multiple UM mailbox policies. If you enable or disable MWI on a UM mailbox, you can affect large groups of UM-enabled users in your Exchange organization. The MWI setting will apply to a subset of the users who are associated with a UM dial plan. To learn more about UM mailbox policies, including how to enable or disable MWI for a group of UM-enabled users, see Managing UM Mailbox Policies.

You can use the EMC and the Set-UMMailboxPolicy cmdlet to configure the MWI setting. The following table lists the setting that can be configured for MWI.

Message Waiting Indicator setting on a UM mailbox policy

Shell parameter Setting available in the EMC? Description

AllowMessageWaitingIndicator

Yes

The AllowMessageWaitingIndicator parameter specifies whether users who are associated with a UM mailbox policy can receive notifications when they receive a new voice message. The default value is $true.

Enabling this setting will allow voice mail notifications to be sent to users who are associated with a single UM mailbox policy for calls taken by a UM IP gateway. This setting allows the UM IP gateway to receive and send SIP NOTIFY messages to UM-enabled users' phones.

This option isn't available to UM-enabled users who have a mailbox on an Exchange 2007 server.

For more information about how to manage MWI settings, see the following topics:

UM IP Gateways and MWI

If you disable MWI on a UM IP gateway, you'll disable MWI for all users who connect to the IP gateway that's represented by the UM IP gateway. Therefore, disabling MWI can disable MWI for all UM-enabled users associated with a single or multiple UM dial plans or a single or multiple UM mailbox policies. If you enable or disable MWI on a UM IP gateway, you can affect large groups of users in your Exchange organization. To learn more about UM mailbox policies, including how to enable or disable MWI for a group of UM-enabled users, see Managing UM Mailbox Policies.

You can use the EMC and the Set-UMMailboxPolicy cmdlet to configure the MWI setting. The following table lists the setting that can be configured for MWI.

Message Waiting Indicator setting on a UM IP gateway

Shell parameter Setting available in the EMC? Description

MessageWaitingIndicatorAllowed

Yes

The MessageWaitingIndicatorAllowed parameter specifies whether to enable the UM IP gateway to allow SIP NOTIFY messages to be sent to users associated with a UM dial plan. The default value is $true.

When this setting is enabled, voice mail notifications can be sent to users for calls that are received by the UM IP gateway. This setting allows the UM IP gateway to send message-waiting notifications to UM-enabled users.

This option isn't available to UM-enabled users who have a mailbox on an Exchange 2007 server.

For more information about how to manage MWI settings, see the following topics:

Return to top

SMS MWI Notifications

Message Waiting Indicator can refer to any mechanism that indicates the existence of a new voice mail message. It can take the form of a Short Messaging Service (SMS) message, also known as a text message. The text message can be sent to the user's registered mobile phone along with other MWI notifications such as a light on their phone, a light on their phone keypad, or a light on a UC-based phone display.

The following figure shows an overview of how SMS MWI notifications work in an in Exchange 2010 Unified Messaging call answering scenario.

SMS MWI Overview
Note:
The SMS or text message that's sent to a UM-enabled user includes voice mail preview.

SMS MWI notifications can be administered by configuring settings on two Active Directory objects: UM mailbox policies and UM mailboxes. For both Active Directory objects, you can enable or disable SMS MWI by using the Set-UMMailboxPolicy cmdlet and the Set-UMMailbox cmdlet. You can view the status of SMS MWI notifications by using the Get-UMMailboxPolicy cmdlet and the Get-UMMailbox cmdlet.

You can only use the Set-UMMailbox cmdlet to configure the SMS MWI setting. This setting can't be configured by using the EMC. The following table lists the setting that can be configured for MWI.

SMS and Message Waiting Indicator setting on a UM mailbox

Shell parameter Setting available in the EMC? Description

UMSMSNotificationOption

No

The UMSMSNotificationOption parameter specifies whether a UM-enabled user can receive text messaging notifications for voice mail only, for voice mail and missed calls, or isn't allowed to receive notifications. The values for this parameter are: VoiceMail, VoiceMailAndMissedCalls, and None. The default value is None.

This option isn't available to UM-enabled users who have a mailbox on an Exchange 2007 server.

For more information about how to manage SMS MWI settings, see the following topics:

You can only use the Set-UMMailboxPolicy cmdlet to configure the MWI setting. This setting isn't available using EMC. The following table lists the setting that can be configured for MWI.

SMS and Message Waiting Indicator setting on a UM mailbox policy

Shell parameter Setting available in the EMC? Description

AllowSMSNotification

No

The AllowSMSNotification parameter specifies whether UM-enabled users whose mailboxes are associated with the UM mailbox policy are allowed to receive SMS or text messages sent to their mobile phones. If this parameter is set to $true, you must also use the Set-UMMailbox cmdlet and set the UMSMSNotificationOption parameter for the UM-enabled user to either voicemail or VoiceMailAndMissedCalls. The default value is $true.

This option isn't available to UM-enabled users who have a mailbox on an Exchange 2007 server.

For more information about how to manage MWI settings, see the following topics:

Return to top