Although it’s easy to deploy mobile messaging within an organization, troubleshooting mobile messaging can be surprisingly difficult because problems can occur in many different areas. To help you troubleshoot, I’d like to point you to some tips and a free Microsoft tool for Exchange Server 2003 that you can use for problems related to Exchange ActiveSync (EAS), Always Up to Date (AUTD), and mobile messaging in general.

Mobile Device Synchronization
When you’re troubleshooting a synchronization problem, it’s helpful to understand how mobile device synchronization works. Mobile device synchronization is essentially a four-step process.
 
The mobile device issues an HTTP request to the Exchange server asking Exchange to report any changes that occur within certain folders. Typically it monitors Inbox, Calendar, Contacts, and Tasks.
 
When Exchange receives this request, it begins monitoring the specified folders for changes until one of two events occur: a change occurs to one of the specified folders or the timer in the request expires. Exchange then sends a response to the mobile device. If a change has been made to one of the folders being monitored, then the response will contain the name of that folder. If the timer has expired, then the response will be empty.
 
If the mobile device receives an empty response, it simply reissues the monitoring request. This request might specify a different heartbeat interval (expiration period) so that the device doesn’t have to issue requests as frequently. Exchange and the mobile device dynamically adjust the heartbeat frequency over time to find the frequency that provides the best battery life for the device without sacrificing the reliability of the connection. Exchange starts out with a 60-second heartbeat interval; the maximum heartbeat interval is controlled by the registry but is 45 minutes by default.
 
If the mobile device receives a change notification from Exchange, then the device issues a synchronization request to the Exchange server. The server then sends the requested data. When the synchronization process completes, the mobile device reissues the request for change notifications.

Device Errors
During the synchronization process, the majority of the errors received contain a prefix and an error number. You can use the prefix to help figure out if the error is related to a problem on the server, the mobile device, or somewhere in between. These errors are typically reported on the device. Table 1 lists some common errors along with an explanation about each error.

Troubleshooting Tool
The troubleshooting process can be a bit intimidating, to say the least, and to help, Microsoft offers a free tool that works with Exchange 2003: the Microsoft Exchange Server Up-to-Date Notifications Troubleshooting Tool. You can download this tool at the Microsoft Web site at http://www.microsoft.com/downloads/details.aspx?familyid=7718A338-A9F5-43D6-9E20-141189283C82&displaylang=en. Click the Download button, followed by the Run button. You'll be prompted to extract the files to your server’s hard drive. You can extract the files to whatever path you want, but make note of the path that you used, because you will need to reference it in a moment. With the download and extraction processes completed, open the Internet Services Manager and navigate through the console tree to your server, Web Sites, Default Web Site. Right-click the Default Web Site container, and choose the New and Virtual Directory commands from the resulting shortcut menus. Windows will launch the Virtual Directory Creation Wizard.
 
Click Next to bypass the Welcome screen and the wizard will prompt you to enter an alias for the virtual directory that you are creating. For the purposes of this article, use the alias name AUTD, and then click Next.  At this point, you will see a screen prompting you to enter the path of the content for the Web site. Click the Browse button, and then browse to the location where you placed the files that you downloaded earlier. Select the folder containing the files, click OK, then Next.
 
You should now see a screen asking you what permissions you want to assign to the virtual directory. Make sure that the Read option is selected and that Microsoft IIS is allowed to run and execute scripts. Click Next, followed by Finish to complete the installation.
 
To access the troubleshooting tool, open Microsoft Internet Explorer (IE) and enter the server’s URL, followed by /AUTD. For example, I installed the troubleshooting tool onto a server named Tazmania, so the URL in my case is going to be http://tazmania/AUTD.
 
Depending on where you extracted the troubleshooting tool’s files, you might end up seeing an error message that cites a permissions problem. The reason for the error message is that IIS uses an account named IUSR_server_name for anonymous Web access. This account requires NTFS permissions to access the files used by the virtual directory. When the troubleshooting tool is properly installed and all of the permissions are set correctly, then IE should display a Web page similar to the one Figure 1 shows.
 
As you can see, you must initially enter a set of credentials for a domain administrator, then enter the domain name and user name of a user who is having trouble with AUTD synchronization. It's worth noting that the user account that you specify must be provisioned to use AUTD prior to running the troubleshooting tool. Otherwise, you will receive an error message. Click the Begin Troubleshooting button to begin the troubleshooting process, and IE will display the results page. Table 2 lists the type of information IE displays.
 
The troubleshooting tool doesn’t do any actual diagnostics. It does provide information to help you figure out where the problem is occurring. After you fix the problem, click the Send Mail button and send a test email message to see if the connectivity between your Exchange server and your wireless service provider’s network is working correctly. The tool lets you verify the various settings that apply to the specified mailbox. You can get this same information through the Exchange System Manager (ESM) and through the Active Directory Users and Computers console, but having all of the information in one place makes the troubleshooting process easier. Besides, some of the information presented on the results screen is a dead giveaway. For example, if you see that the device has expired, then you know that's probably why AUTD synchronization is failing.
 
Occasionally, you might end up needing to check information related to multiple mailboxes. Although the troubleshooting tool lacks the ability to view multiple mailboxes simultaneously, it's possible to go back and check a different mailbox. Click the Login link located in the bottom left corner of the results screen, and IE will take you back to the main screen, so that you can examine another mailbox.

Mobile Devices and SMS Messages
In the Exchange Server 2003 SP1 implementation of AUTD, Microsoft uses Short Message Service (SMS) messages as a trigger mechanism for the synchronization process. When Microsoft released Exchange Server 2003 SP2, it did away with SMS notifications, and the entire process became IP based. AUTD is IP based in Exchange Server 2007 as well.
 
If you're using Exchange 2003 SP1 and are having trouble getting mobile devices to download new messages, then your problems might be related to SMS messages. Fortunately, you can take some steps to solve this problem.
 
Early versions of AUTD work by sending SMS messages to mobile devices telling them to download new messages; therefore, ask your wireless service provider to verify that its service supports the conversion of SMTP messages into SMS messages. Most, if not all, of the major wireless carriers support this feature, but it's still important to verify, because AUTD won't work without it.
 
Also ask whether your provider is filtering for spam. I have heard of several real-world situations in which AUTD notifications have been treated as spam by the provider, resulting in device synchronization failures.
 
If your provider is filtering SMS messages for spam, you should ask if it can whitelist your domain to prevent SMS messages from your Exchange server from being treated as spam. You can also ask your provider if it automatically treats SMS messages with blank From fields as spam. Some providers do so, because some spammers have a history of not providing a from address with SMS messages. If your provider is blocking SMS messages with empty From fields and you happen to be using Exchange 2003, then you're in luck: Microsoft has created a hot fix designed to populate the From field (http://support.microsoft.com/kb/833745/en-us).

Resolution Achieved
Although AUTD and EAS are fairly easy to deploy, things can and sometimes do go wrong. However, if you use these troubleshooting techniques and the Microsoft tool, you can resolve those problems that do occur.