[horde] Active sync: multiple calendars?

Jan Schneider jan at horde.org
Wed Jun 22 17:37:27 UTC 2011


Zitat von Michael J Rubinsky <mrubinsk at horde.org>:

> Quoting Jan Schneider <jan at horde.org>:
>
>> Zitat von Michael J Rubinsky <mrubinsk at horde.org>:
>>
>>> Quoting Gunnar Wrobel <wrobel at horde.org>:
>>>
>>>> Quoting Michael J Rubinsky <mrubinsk at horde.org>:
>>>>
>>>>> Quoting Andreas Ntaflos <daff at pseudoterminal.org>:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> is it possible to access and sync multiple Horde calendars (on the same
>>>>>> user account) with the new ActiveSync plugin? Or is this not supported
>>>>>> by design or specification?
>>>>>
>>>>> By specification. The AS protocol does not support multiple  
>>>>> calendars for a single user.
>>>>
>>>> But shouldn't there be ways to aggregate calendars? I'm pretty  
>>>> certain the ActiveSync support on the Kolab server allows  
>>>> selecting several.
>>>
>>> Sure, it would be possible to essentially combine all events from  
>>> multiple calendars into a single AS collection. However, there are  
>>> a number of issues that I ran into while trying to do this when I  
>>> originally wrote the library:
>>>
>>> There is no way to differentiate the calendars on the client (AS  
>>> only supports a single "calendar" folder) so no calendar names, no  
>>> horde-centric calendar colors (in fact some clients might color  
>>> the events based on the tags) - all events look like they are in  
>>> the user's "main" calendar.
>>>
>>> There is no way to mark events as read only, no way to map back an  
>>> event to the calendar it came from in the case that multiple  
>>> calendars may have the same event uid (though this is not specific  
>>> to AS), and no way on the client to select the calendar to add a  
>>> new event to (all events are assumed to be on the user's "main"  
>>> calendar). This last point _might_ also cause issues with both  
>>> event invitations and recurring event exceptions on calendars  
>>> other than the user's "main" calendar (don't have code or protocol  
>>> docs in front of me at the moment to verify this one).
>>>
>>> There would also be issues when a user changes which calendars  
>>> they want included after the initial setup (would basically  
>>> require the user or admin to explicitly reset the AS account to  
>>> force a complete replacement sync). For example - a user initially  
>>> sets up two calendars, but then decides to remove one. All the  
>>> events from the second calendar will still be present on the  
>>> device. Similarly, adding a second calendar would not sync the  
>>> events that were created/modified prior to the last successful  
>>> sync time.
>>>
>>> Yes, some of these issues could be at least partially worked  
>>> around by e.g., limiting the calendars allowed to be synched to  
>>> calendars owned by the user, or adding user pref for the calendar  
>>> to use when creating new events on an AS device, but these rather  
>>> feel like hacks instead of implementations.
>>>
>>> If in fact kolab does allow this, I'd be interested in both how  
>>> the kolab/activesync connector implements this and how robust this  
>>> actually is. If you have any links to code or similar, I'd love to  
>>> take a look. This is a sore point for me as well though even if we  
>>> get minimal support for this, would likely not help me since it's  
>>> calendars I have read only access to that I need to include (see  
>>> note above about read only issues).
>>>
>>> Also, it's worth noting that I'm aware that Google's "activesync"  
>>> support allows this - but this is not true activesync; they have  
>>> added features to the protocol and these only work if using a  
>>> Google client, not a generic activesync client.
>>
>> All what you said could be applied to contacts too, where we allow  
>> several sources. In fact, synching several calendars can be  
>> implemented transparently, i.e. for both SyncML and ActiveSync,  
>> analogous to address books.
>
> Except for the fact that the same event UID might exist in more than  
> one calendar, though I guess that would be fairly rare if we limit  
> to calendars the current user *owns* (which we have to do anyway).  
> As long as this doesn't muck up invitations and recurring  
> events/exceptions I'll add it to my list.

Invitations and duplicate UIDs are already broken in Kronolith anyway,  
this won't be different from using Kronolith directly or through a  
desktop client though. And of course this needs to fixed independently  
from AS.

See http://bugs.horde.org/ticket/8734 and http://bugs.horde.org/ticket/3965

Jan.

-- 
Do you need professional PHP or Horde consulting?
http://horde.org/consulting/



More information about the horde mailing list