Kerio Blog

Why are all smart phones not created equal?

Often I hear these questions: Why do you not support every new phone that comes out? They are all Exchange ActiveSync-based. Why do you selectively choose to support one and not the other? Why does one Motorola Droid model run fine and the just-released Droid needs to go through some testing?

In an ideal world, all phones would be created equal. Since they ship with the Microsoft Exchange ActiveSync (EAS) protocol, they should just work. But they don't. The problem we face with mobile phones is that each implementation of Exchange ActiveSync is different. And it's not just different between manufacturers or carriers, but it's also different between the models from a particular vendor. For example, Exchange ActiveSync in Mail for Exchange for E61i and N86 are similar but different. These subtle differences in the EAS protocol implementation would make the user experience completely unpredictable and unsatisfactory if we gave all smartphones a blank OK.

Our guiding principles and approach to software development dictate that your experience should be perfect and we therefore choose to test each individual phone and publish a list of supported phones as we go.

Phone manufactures update EAS in some devices and not in others. Sometimes they roll it out in different generations of their phones. Microsoft keeps releasing updates to Exchange ActiveSync on a regular basis. They started out with Exchange ActiveSync 1 in 2002 and today push ActiveSync 14.1. Kerio Connect 7.2 implements Exchange ActiveSync 12.0.

Why is this a problem for us and not for Microsoft Exchange? For one, Microsoft has implemented a myriad of revisions of the EAS protocol in Exchange, and that implementation is for obvious reasons different than ours. Also, smartphone vendors test their new phones primarily against Exchange and may choose to use different combinations of ActiveSync standards as provided by various versions of Microsoft Exchange.

For those of you more technically minded, here's just one example of where the ActiveSync implementation in Mail for Exchange (MfE) client on Nokia E65, E72, E52 and N86 is different from ActiveSync in other EAS implementations.

According to the EAS specification, ServerID used as an email folder identifier is supposed to be a unique 64-character string with any valid ASCII data. Unfortunately, MfE client requires a certain format of this ID, otherwise the synchronization will fail.

In Exchange 2003 you will see something like this: "ef71038eb0cf4f428b46277295182d84-41ed7", whereas Exchange 2007 uses a simple number that looks like this: "123".

Kerio Connect uses the GUID in format 'a977352a-4d54-4a04-a764-7f7272e17af5'.

If the ServerID is not a simple number (E2007) or contains more than one hyphen character, the MfE client displays an error "Unable to sync." when trying to sync more email folders than Inbox. That forces us to convert a folder GUID from "a977352a-4d54-4a04-a764-7f7272e17af5" to "a977352a_4d54_4a04_a764_7f7272e17af5" (note the use of underscores in place of hyphens) when we detect a particular Nokia MfE client. Only then the synchronization works as expected.

While it is generally not advisable, many of you know that you can disable phone model verification for Exchange ActiveSync in Kerio Connect and experiment on your own with untested phones. You may run into problems that perhaps look weird, are rather unpredictable, and may in the worst case lead to data corruption or data loss. You can find instructions on how to bypass the phone model verification in our knowledge base. Use it at you own risk, only for experimentation, and never in production!

Kerio will continue to roll out newly supported smartphones in Kerio Connect in each main and service release. We publish a list of new phones (as well as those we no longer support) in release notes accompanying each new version.

dvitek's picture
About the Author

@keriotech

ariwillnotletyoupass