A long time ago Jim Martin wrote an excellent article how Exchange maps folder IDs for ActiveSync:
MVP Glen Scales wrote a script, which uses Exchange Web Service, to query a mailbox and export the information into a CSV file. Glen’s post could be found here.
Lately I had to troubleshoot Exchange ActiveSync devices and had also the need of mapping IDs to folder as the IIS logs contain only the folder IDs. Glen’s script was doing a good job, but wasn’t too user-friendly. Therefore I improved the usability and extended the ability of gathering data.
With this I was able to easily troubleshoot my devices by parsing the IIS logs with my script Get-IISStats.ps1 and the new one: Get-EASFolderMapping.ps1
In my Ignite session with fellow MVP Andrew Higginbotham Troubleshooting Complex Exchange operational issues, I mentioned Fiddler as a perfect tool for troubleshooting also Exchange ActiveSync clients as well as Exchange servers itself.
After this session a lot of people reached out to me and asked me about how to do this. So I thought a write-up would be a good idea.
Over the last months a lot of changes needed to be addressed. The script was intended to extract data from the IIS logs. With PowerShell in combination with LogParser it did a great job. But different versions of Exchange, changed infrastructure and multiple versions of Exchange ActiveSync protocol demanded an update to fulfill these needs.
The latest version focused on code improvement and added support for the new version of Exchange ActiveSync protocol v16.1 .
In the past month I had to troubleshoot a lot of EAS related issues. This is always a complex process and you as an administrator have to collect a lot of data and provide them to your vendors. After providing these, you often feels like a ping-pong ball. Especially when multiple vendors are involved.
Based on two examples I want to explain, how I was able to proof some misbehaviour of EAS clients. Meanwhile both have been acknowledged by the vendor as a bug:
With iOS 10 this feature can trigger a meeting forward to multiple recipients using SmartForward command.
When a user marks an item read or unread, the flag does not get synced to the mailbox.
Update 27.06.2017: There is also a fix in KB4012108 related to this issue. It’s not exactly the issue I’ve found, but a similar one. The details can be found in KB4024649.
For troubleshooting I used the following tools:
I don’t know if a lot of people run into those issues described in KB3011892 and KB3012580, which ends in confusion by end-users and maybe a high volume of tickets for your helpdesk.
Note: This affects Exchange 2010 and Exchange 2013!
How does it looks like? Well, first it looks okay when you provide all needed information
but then it looks like this(have a look at the “Description”)
Okay, “firstname.lastname@example.org” is not really my PrimarySmtpAddress…but there are good news:
This is now fixed in Exchange 2010 SP3 RU9 and Exchange 2013 CU8, but therefore another thing is broken….
I was asked, if it’s possible to customize the notification message, which is send to a user, when you introduce ABQ list for ActiveSync devices.
Of course you can. But you cannot customize the complete message, but you can define a custom text, which will be added. You can do this using the CmdLet Set-ActiveSyncOrganizationSettings or in the UI.
But what about the formatting?
There are many ways to block applications based on User Agent. You can use ActiveSyncDeviceAccessRules for EAS or EWSAllowList/EWSBlockList.
Besides this you can block those User Agnets already on a load balancer. The main difference is that then the workload is moved away from you Exchange server to the load balancer. In this post I’m going to describe the steps of one possible way to do so taken a F5 load balancer.