ActiveSync support

Exchange ActiveSync (EAS) is a protocol designed for client synchronization of :

  • emails
  • contacts
  • calendar events
  • tasks
  • notes
  • sms (if the library supports it)

It is kinder to mobile devices than using DAV directly as it only requires a single connection to the server in order to retrieve changes.

It’s also possible to use it to manage a mobile device via a set of policies.

The best PHP library afaik is the one developed by Michael Rubinsky for the Horde project.

Here is the full list of features:
https://wiki.horde.org/ActiveSync/FeatureGrid

Since Horde libraries are already used in the Mail app, it seems the dev team is already familiar with integrating them inside an app, so there shouldn’t be any major hurdle to building an efficient sync app.

Here is the API:
https://dev.horde.org/api/master/lib/ActiveSync/

7 Likes

This is a great idea.
It would be great to syncronize NextCloud apps with Mail and Collaboration servers such as Zimbra, or even Microsoft Exchange.

Regards,
Vitor Rolo

You could install Z-Push. Its a PHP Script which works as a EAS Gateway to other Apps. Primary use was Zarafa or Kopano, but you can use a other Backend like BackendIMAP or BackendCalDAV or BackendCardDAV or BackendCombinded. The First ones connects to a single Backend, but BackendCombined connects to more than one Backend. So you can use IMAP, CalDAV and CardDAV together. Only disadvantage is, all Backend’s must share the same Credentials, as they are checked only once. Its easy to install, just download from http://z-push.org/download/ unpack, edit your Webserver Config to use the Alias, define the Backend(s) and thats it.

Thanks for describing how it works. It’s not as powerful as the Horde libraries, but it seems to have the advantage of being easy to set-up. Hopefully someone will have a go at packaging it as an app.

IMAP and CalDAV does work in my case since some minutes. I would like to Test CarDAV to in the evening. If i have all up and running, i could write a small tutorial. However, i fear on my Machine there are some ressource limitation, because its only a small Raspberry Pi. So maybe we see some timeouts in nginx logfile and as a result some loop message from z-push. This was the case, as i used a similar setup with Baikal Server on the same Machine before. But maybe, i dont so much TCP Connections with NextCloud. On bigger setups, this should be no problem.

That would be awesome, thanks @Dist1958

+1 - this would be great!

@Dist1958 Now 2 years later, is there any progress? Did you get everything working?
Maybe you can decide to create the mentioned tutorial. I would appreciate it.

Here it is: