Current situation: Z-Push 1.5.10• Z-Push 1.x code base 5 years old• Development & improvement of 1.5.x for 1,5 years• Considered very stable• Generally good support of devices• Supports ActiveSync 2.5 (comparable with MSEX 2003) – Early days of mobility – Only plaintext email possible (with the exception of iOS)
Challenges and requirements• New devices & compatibility – Many new devices with different levels of compatibility – Theoretically using the same standard• New functionalities – HTML emails – Better state management – Stability improvements – Improve code flexibility and maintainability
Side story: why is compatibility such an issue? • Official situation of Android fragmentationSource: http://developer.android.com/resources/dashboard/platform-versions.html on 12/06/2012
Android fragmentation: What we see ... • Fragmentation of BrandsSource: http://mashable.com/2012/05/16/android-fragmentation-graphic/ on 12/06/2012
Android fragmentation: What we see ... • Fragmentation of DevicesSource: http://mashable.com/2012/05/16/android-fragmentation-graphic/ on 12/06/2012
Fragmentation is not the issue itself• Fragmentation itself is not that bad: In general “things work” !Compatibility issues are caused by manufacturers/brands: A device should have unique features and a unique feeling Example “HTC sense” - completely different ActiveSync clientThis is something we do not see with iOS (while we see other really nasty issues there)
Not optimal ‚things„ with Z-Push 1.5• Re-creation of the ActiveSync profiles of the users necessary in many cases• Synchronization states are hardly manageable – Broken/missing states cause duplicates on mobile• No effective error detection• Invalid mapi data “drives devices crazy” – Battery drain – „incoming loops‟ (same item created various times on the server) – Never ending synchronisations• Many concurrent push connections (especially from iOS)• Code extensibility limited
The goal• Major code changes and developments• ActiveSync v. 12 & higher support (for mobile features)• Independent state management• Introduce policy management• Extensible architecture• Open platform to implement further functionalities, like device managementOthers• Error handling (signalling to the device)• Better support for other Z-Push backends
Z-Push 2.0 - Where are we now?• 1,5 years development• 11 preview releases• In 2012 one beta release per month• 4500 alpha, beta & RC versions downloads• A lot of valuable feedback from the community• ActiveSync v. 14 support (not complete)• Restructured and much rewritten code
New tools – z-push-admin• User administration (details about connected devices, remote-wipe, resynchronization)• Administrative clean up (reset loop detection)
New tools – z-push-admin (II)
New tools – z-push-top (live statistics)
What else? Real push notifications!• In combination with ZCP 7.0.6+ real notifications are available by using a “changes sink”! Polling vs. Notification 3 ZCP 1 Z-Push 2 ZCP 4 Z-Push Z-Push registers with the server Z-Push checks (1) with the on which folders it wants to be server every X seconds (2) notified on changes (3). if changes are available On change, server notifies Z-Push (4).
New mobile features• Enable/Disable Out-of-office• “Todo/Red”-flag support• Recurring Task support• Server side email search• Synchronisation of Notes (Touchdown-only feature)• Support for the Android 4 phones and RIM Playbook• Synchronisation of public folders (configurable by admin) – Additional Emails folder visible on all devices – Additional Calendar and Contact folders only on iOS
Other Features• Improved state management (over z-push-admin)• Detection of undesired behaviour (loop detection)• Tracking of concurrent push connections• Remote wipe always available (even with deleted user)• Improved timezone support• “Heartbeat” push available – push (ping) functionality combined with immediate synchronization of changes
Real notifications & heartbeat functionality “BlackBerry Experience” with ActiveSync Currently supported by Android 4 and Windows Phone 7+
Updates from other Z-Push backends• Community is getting very active – Zimbra community backend already Z-Push 2 compatible – Citadel just signed contribution agreement and started to implement for Z-Push 2.0 – PHP-Push developing Caldav e Carddav backends – Kolab backend is still operating on Z-Push 1.5.x
Next step ?• Z-Push 2.0 released yesterday! Give it a try! Better/More New • Control • Features • Flexibility • Tools • Manageability • Supported devices • Compatibility • User friendlier (profiles) • Performance
Z-Push 1.5 Support• Complementary support until 31.12.2012• Upgrade support afterwards• Be aware that with Z-Push 1.5 more BYOD incompatibilities are to be expected• Currently Android 4 & BlackBerry Playbook are already not supported with 1.5.x
Where does it go?• MDM plugin for Webapp with new features – More synchronization status information – Messages/objects which could not be synchronized – Open shared folders (contacts & calendars only on iOS)• Planning 2.x: – Encrypted & signed emails – Auto-discovery – Policy management tool• Packaging – Easier installation & upgrade
Keep in touch• Announcements on Zarafa Release & Beta list Subscribe at http://zarafa.com/newsletter• Public Bug tracker: http://z-push.sf.net/tracker• Latest downloads: http://z-push.sf.net/download (beta & finals)• Sources at BerliOS: https://svn.berlios.de/wsvn/z-push/• Compatibility list: http://z-push.sf.net/compatibility Always up-to-date list about known devices and potential compatibility issues.
This afternoon“Z-Push 2.0 for administrators” on Track 2 (T2) at 13:30 hrs Thank you for your attention!