It’s spring time according to the calendar, although the weather is pretty sad and it’s not suitable for wearing only t-shirts or shorts yet. Unrelated to this it’s also time to update everyone’s favorite Exchange ActiveSync diagnostic tools 🙂
I showed in one of the most recent installments in the Exchange ActiveSync Building Blocks series how to implement encoding and decoding of AS-WBXML, and I have now done the proper thing and rolled it into my EAS MD utilities. For those who aren’t familiar with EAS MD it is a utility Exchange admins and developers can use to verify the status of Exchange ActiveSync as well as perform related troubleshooting.
It comes in two flavors – a browser-based hosted version running in Windows Azure, as well as a desktop version you can download and run locally.
For relevant background info:
Exchange ActiveSync Building Blocks – Intro
EAS MD executable
Available at http://mobilitydojo.net/downloads
I have added a separate tab for feeding WBXML straight to the Exchange Server. You enter a valid XML snippet, (I’ve pre-populated it with a FolderSync command as a sample), and the WBXML returned from the server is displayed in the corresponding output window. It’s geared towards those who want to mess around with the EAS protocol, and I’ve found it invaluable when studying the protocol docs over at the MSDN library.
Note: Remember to add username/password and server name on the "Main" tab.
EAS MD online
Available at https://easmd.labs.mobilitydojo.net
I have not added the option to input raw XML into the clouded version as I’ll have to ensure it’s not possible to perform any shenanigans by inputting commands I was not expecting. Much like you’d never accept HTML input without any sanitization taking place.
I’ve done some minor changes in the style sheet adding fonts that should look slightly nicer on iOS and Android devices while going with the Segoe UI font for Metro-supporting devices.
These changes probably don’t count as major upgrades or anything, but it does make it more visually pleasing instead of reading the sometimes not really printable characters derived from doing a plain conversion from byte arrays to chars.
I have also started looking into testing against the next version of Exchange, but it’s not that easy when there aren’t really any protocol specs available (Oh sure, it works using EAS 14.1, but then no-one expected it to not be backwards compatible. We want to know what’s new.)
Hit up the links above to test it out, and let me know if there’s any bugs that’s crept in this time around. (New bugs that is – I’m sure there’s plenty present in previous builds as well.)
I’m intending to open source the code as well, but I just didn’t have time for it now. (I know I can upload zip files of Visual Studio solutions as well as the C# files.) Will let you know once I’ve sorted it out.