ActiveSync client's subscription logic
Open, HighPublic

Description

When multiple clients are hooked up to the same account (say, for example, the office's desktop Outlook, your personal mobile device and Kontact running at home), what does and does not get distributed among each of these clients is confusing users.

When a folder is created in Outlook, for example, it stands to reason that this folder must therefore also be synchronized to that client application (Outlook), but what is less certain is whether we should, by default, cause this same folder to be subscribed and/or synchronized to other client applications -- including the mobile device, the Kontact desktop application, the Kube mobile workstation application, the webmail, and such and so forth).

This ticket is intended to provide the place for further conversations and deliberations on this topic.

Details

Ticket Type
Task

It seems reasonable to expect that if an ActiveSync client creates a folder, this folder must therefore also be synchronized with all other ActiveSync devices by default, and any manual intervention via the web client is only required in order to opt out of a particular device synchronizing such folder.

It also seems reasonable to allow an option to be available in the web client, that establishes some sort of default behaviour for new folders not created by an ActiveSync device.

Syncroton already has a similar option, however it is not user configurable.

// When a device is reqistered, by default a set of folders are
// subscribed for syncronization, i.e. INBOX and personal folders with
// defined folder type:
//     mail.drafts, mail.wastebasket, mail.sentitems, mail.outbox,
//     event, event.default,
//     contact, contact.default,
//     task, task.default
// This default set can be extended by adding following values:
//     1 - all subscribed folders in personal namespace
//     2 - all folders in personal namespace
//     4 - all subscribed folders in other users namespace
//     8 - all folders in other users namespace
//    16 - all subscribed folders in shared namespace
//    32 - all folders in shared namespace
$config['activesync_init_subscriptions'] = 0;

This functionality would need to be made available not just to newly registered devices, which is the way I understand this setting currently applies, but impact existing devices as well.

To bring home the point (emphasis added);

In T1244#22258, @greve wrote:
In T1244#22244, @hsmith wrote:

For simplicity sakes, it may even be worth considering removing the option for folder syncing altogether.

(...)

I may not want ALL data on EVERY device.

Reflecting right back on a user-configurable preference for the default behaviour on folders not created via ActiveSync (clients).

Long story short:

  • The web client interface for managing what folder goes where remains in charge,
  • The behaviour can be adjusted such that distribution of folders and content is more convenient for users, or less inconvenient,
  • We have a set of reasonable aspects we can take in to account -- when ActiveSync, yes all other ActiveSync, and when not ActiveSync, do $this.

I agree with all of the above, including

  • "when ActiveSync", all other ActiveSync,
  • "when not ActiveSync do this"

I still think one of the simplest options remains to have a checkbox that says "this device syncs everything", that includes shared stuff, both communally and also things belonging to other users too. Perhaps leaving things the way they are too and including this would not overcomplicate things.

I am wanting to make the switch from Exchange in my company to Kolab as an IT Director to account for the volume of Mac/Linux users who want to use native clients and Open Protocols, regrettably my boss will not authorise the switch until he can have Outlook sync his entire mailbox simply due to Executives who have a desktop at their desks and ultrabooks for when traveling.

I would even go as far to say (as politely as I can) that the options @vanmeeuwen are proposing are just complicating things.

Simply put, there should come a point in time where ActiveSync mirrors IMAP syncing full-stop and less bullshit. Why is ActiveSync the exception to the rule? Can you restrict folders on IMAP/CalDAV/CardDAV as @greve has suggested you might want to be able to? Activesync was initially designed for mobile devices, where you wouldn't necessarily want everything and because it's resource-intensive server-side.

Now, ActiveSync has a larger role to fill in the absence of MAPI and let's be honest, Outlook Connectors absolutely suck, so it needs to either step up, go hard or go home. I'll point out that no other service, whether Office 365, OpenXChange, Rackspace, Kerio (all of which offer ActiveSync of varying degrees of quality, Office 365 being the best offer the ability to selectively sync folders, you're served everything with ActiveSync and that's it.

Maybe Guam one day should take over from ActiveSync in terms of restricting folder subscriptions as @greve has suggested. Different protocols are chosen for different devices, and folder subscription shouldn't be a factor. ActiveSync should be brought in line with IMAP/CardDAV/CalDAV for consistency and then look at tackling the restrictions that @greve has mentioned.

Or @vanmeeuwen @greve how about simplifying this even further:

2 Choices in ActiveSync pane (per device):
(a) ActiveSync follows and mirrors IMAP subscription identically (default)
(b) Select folders to sync

Why complicate things?

pasik added a subscriber: pasik.Jan 1 2017, 1:09 PM

I also think that revealing activesync_init_subscriptions setting to users may be too complicated and confusing for most of them. So, I'd keep this option as is.

In user settings we could give indeed possibility to say "use all subscribed folders" or "use this custom set of folders". However, this will not apply to new devices. So, we'd need additional boolean value for "synchronize only subscribed folders with mobile devices" (let's say in Preferences > Server Settings), which would override activesync_init_subscriptions for new devices of a user. Maybe we should extend these options with "personal vs. all namespaces" selection, but we should not make this more complicated.

And again, this does not fix the case when there's two devices, one creates a new folder and the other device "uses custom set of folders". Do we need another switch for this device to "subscribe all newly created folders" or we do this automatically?

petersen raised the priority of this task from 60 to High.Mar 6 2017, 4:21 PM

@machniak is there any update to how streamlining Activesync subscription logic may work?

Hi All,

I really need the feature... if an ActiveSync client creates a folder, this folder must therefore also be synchronized with all other ActiveSync devices by default.