Summary | New Kronolith appt w/no invitees sync to iOS, result in greyed item in iOS Calendar |
Queue | Horde Base |
Queue Version | 5.0.4 |
Type | Bug |
State | Resolved |
Priority | 1. Low |
Owners | mrubinsk (at) horde (dot) org |
Requester | simon (at) simonandkate (dot) net |
Created | 02/19/2013 (4528 days ago) |
Due | |
Updated | 02/27/2013 (4520 days ago) |
Assigned | 02/20/2013 (4527 days ago) |
Resolved | 02/21/2013 (4526 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
(this feature only available in 12.0 and above). It was fixed
earlier today by
https://github.com/horde/horde/commit/3a1ab8c10ef89b2720ef4886449d344b4846c3a6
WIth that fix, your iOS device should get the notification pop up
and tentative calendar entries.
will be much appreciated. I have AS set to 12.1 in Horde configuration
at the moment, so no changes required config side?
ATTENDEES intact;
5. The new meeting is sync'ed from the iOS calendar to Horde, loses
ORGANIZER information, and appears in Kronolith;
We can't track ORGANIZER since right now in Kronolith, it is tied to
a Horde username - this is obviously not always the case with invites.
after, I never see Accept / Decline / Maybe (which I thought was what
triggers the EVENTRESPONSE that you mention?) for these Kronolith
events.
email, or by viewing the tentative event that is (now correctly)
created when the invitation is received.
the moment only gives me an "Add to Calendar", not Decline / etc.. Is
this something that is resolved in the change as well?
in Exchange or in Horde.
feature only available in 12.0 and above). It was fixed earlier today
by
https://github.com/horde/horde/commit/3a1ab8c10ef89b2720ef4886449d344b4846c3a6
WIth that fix, your iOS device should get the notification pop up and
tentative calendar entries.
ATTENDEES intact;
5. The new meeting is sync'ed from the iOS calendar to Horde, loses
ORGANIZER information, and appears in Kronolith;
We can't track ORGANIZER since right now in Kronolith, it is tied to a
Horde username - this is obviously not always the case with invites.
appointment, not a meeting.
as the only attended on his/her copy of the event so that it is
detected as a meeting. Not sure if this breaks any specs or not, I'll
have to investigate.
after, I never see Accept / Decline / Maybe (which I thought was
what triggers the EVENTRESPONSE that you mention?) for these
Kronolith events.
email, or by viewing the tentative event that is (now correctly)
created when the invitation is received.
expected. Fixes will go out with the next bug fix releases of
Horde/ActiveSync and Horde/Core.
Can I ask a couple of questions to clarify this please?
I am not certain whether what you are describing here what happens in
Exchange or in Horde. In our Horde environment, I do not see a lot of
these steps when a meeting invite is processed. Using your scenario of
dealing with an invite entirely from an iOS ActiveSync'ed device this
is what I see in H5:
1. Another user in our Horde system creates a meeting in Kronolith,
with me as attendee;
2. I get an email in my iOS device's Horde inbox with a .ics (two
actually, but I understand why now, as this is due to
Enhancement 9854);3. There is nothing in my calendar at this point (either on the iOS
device or in Kronolith);
4. When I accept a meeting is made in iOS, with ORGANIZER and
ATTENDEES intact;
5. The new meeting is sync'ed from the iOS calendar to Horde, loses
ORGANIZER information, and appears in Kronolith;
6. Horde pushes the event out to other ActiveSync devices as an
appointment, not a meeting.
(Still on iOS device) Note also that when the event is added, and
after, I never see Accept / Decline / Maybe (which I thought was what
triggers the EVENTRESPONSE that you mention?) for these Kronolith
events. Work Exchange meetings I do. All I get is Add to Calendar
initially, and then if I want to remove it I can only delete.
The invitation email is not deleted, I don't see a tentative meeting
on receipt of an invitation - the sequence you describe sounds like
how my work Exchange system works with ActiveSync rather than Horde.
Am I missing the meaning of your explanation, or is my Horde not
configured properly to provide this far more integrated calendaring
than what I am seeing?
Simon
If an invite is received on, AND is dealt with completely from the iOS
device, this should work fine. The flow is something like this:
1. Device receives request.
2. Device creates a tentative event locally on the client's calendar.
3. User deals with invitation.
4. Device sends the EVENTRESPONSE request to the server.
5. Server parses the response, adds the new event to the user's
calendar and sends the response email to the organizer.
6. The server then deletes the original request email from the INBOX,
which triggers a SYNC on the INBOX. THIS IS THE IMPORTANT STEP. This
is what causes the client to delete the tentative request.
7. Device requests SYNC for INBOX and Calendar, which causes new event
to be added, and tentative event to be removed, along with the
original request email.
If you keep the original request email, the tentative event will NEVER
be removed. This has nothing to do with the ORGANIZER field. The
relevant field here is the (optional) MEETING_STATUS field, which we
now always send thanks to iOS's broken behavior.
The problem stems from the fact the iOS automatically adds a tentative
meeting to the calendar on the client side. Exchange 2007
automatically adds this tentative reqeuest on the server side as well.
What is supposed to happen is that the server updates the tentative
entry on the server side when the user responds to the request. For
reasons I won't go into here, this is a problem with Horde. The
result is that when the user accepts the event from the client, a NEW
event is added to kronolith and this event is sync'd to the client.
You end up having two events (the original, still tentative event and
the new accepted event).
I'm still working on coming up with a suitable solution for this.
The second of the two identical appointments from Kronolith test
account, I accepted in Horde (by Accept and Add to Calendar in Imp,
instead of in iOS.
The resultant Kronolith meeting doesn't seem to indicate that it has
an Organizer anywhere that I can see (Dynamic view),
despite what looks like several sync attempts (I'll check AS logs
for details later).
account Kronolith now syncs.
As per
Bug 12069though, it has been put into my Kronolith with noOrganizer details, so syncs to iOS as an appointment only.
now go away...
First of all the original issue for this bug of meetings syncing
between iOS devices on the same ActiveSync account collecting the
owner as an invitee is fixed.
I'm working on getting logs for the issues described below...
The second of the two identical appointments from Kronolith test
account, I accepted in Horde (by Accept and Add to Calendar in Imp,
instead of in iOS.
The resultant Kronolith meeting doesn't seem to indicate that it has
an Organizer anywhere that I can see (Dynamic view), and 15 minutes
later had not sync'ed with either iOS device, despite what looks like
several sync attempts (I'll check AS logs for details later).
Adding a note at the 10 minute stage in the Kronolith event to force
an update also doesn't appear to push it through.
Onto iPhone and accept the event and then syncs back to Kronolith as a
duplicate event, which I expected. This syncs across to the iPad, this
time with no Organizer, and no Invitees, i.e. as an appointment.
The same event that I Accepted and added to calendar from Kronolith is
still not sync'ed to either iOS device, despite showing fine in
Kronolith.
been seeing I generated two appointments in Kronolith whilst logged in
as a user with no activesync devices.
The appointments were identical, just one hour apart. Each had one
Invitee - me. I have only 2 activesync devices attached to my account,
an iPhone and an iPad.
The appointment from my test account to me generated (as expected) two
invites in my mail inbox.
I accepted on my iPad (iOS 6.1.2)
First strangeness - on iOS the appointments showed with TWO
attachments, each named event-invitation.ics, and identical in content:
BEGIN:VCALENDAR
VERSION:2.0
METHOD:REQUEST
X-WR-CALNAME:Calendar of server
PRODID:-//The Horde Project//Horde iCalendar Library//EN
BEGIN:VEVENT
DTSTART:20130301T093000Z
DTEND:20130301T103000Z
DTSTAMP:20130226T000408Z
UID:20130226100408.Ng8RuzOzVSD1VgLMYkjQhw5@mail.simonandkate.net
CREATED:20130226T000408Z
LAST-MODIFIED:20130226T000408Z
SUMMARY:Cards test
ORGANIZER;CN=Server Wilson:mailto:server@simonandkate.net
CLASS:PUBLIC
STATUS:CONFIRMED
TRANSP:OPAQUE
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE:mailto:simon@
simonandkate.net
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:Cards test
TRIGGER;VALUE=DURATION:-PT15M
END:VALARM
END:VEVENT
END:VCALENDAR
Opening the .ics on iPad shows From as Wilson Server
server@simonandkate.net (correctly), and No Reply - my address.
Selecting Add to Calendar creates an appointment in my Horde sync'ed
calendar on iOS.
The meeting that is created after I accept (by "Add to Calendar") on
an iOS device has the following characteristics:
1. No Accept / Decline / Maybe is shown (either when accepted on
iPhone or iPad). It is not seeing it as a Declinable / Acceptable
meeting.
2. Because of an issue with the way iPad calendar works, the only way
you can get rid of a meeting on iPad is to decline it. As there is no
decline button on meetings that come from Kronolith there is no way to
do this. (On iPhone, you can Edit, and delete that way.)
3. When the iOS device syncs back to Horde, and down to my other iOS
device, it loses From and Invitees, and replicates to the other device
as an Appointment, not a Meeting.
If I then edit (e.g. add "some notes") in the device that sees it as
an appointment not a meeting, that syncs back to Horde ok - but sends
an email with 'meeting.ics' from me (originally invitee) to me
(invitee), now with ME as the organizer, not the test account. Given
that the second iOS device has seen it as an appointment I can see why
it thinks I am Organizer, but no idea why it is generating an email.
The meeting.ics is:
BEGIN:VCALENDAR
CALSCALE:GREGORIAN
METHOD:REQUEST
PRODID:-//Apple Inc.//iPhone 3.0//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:GMT+1000
BEGIN:STANDARD
DTSTART:20010101T000000
TZNAME:GMT+10:00
TZOFFSETFROM:+1000
TZOFFSETTO:+1000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
ATTENDEE;CN="simon@simonandkate.net";CUTYPE=INDIVIDUAL;PARTSTAT=NEEDS-AC
TION;ROLE=REQ-PARTICIPANT;RSVP=TRUE:mailto:simon@simonandkate.net
CREATED:20130226T012656Z
DESCRIPTION:Notes in here
DTEND;TZID=GMT+1000:20130301T213000
DTSTAMP:20130226T013441Z
DTSTART;TZID=GMT+1000:20130301T203000
LAST-MODIFIED:20130226T013441Z
ORGANIZER;CN="Simon Wilson";EMAIL="simon@simonandkate.net":mailto:simon@
simonandkate.net
SEQUENCE:0
SUMMARY:Cards test 2
TRANSP:OPAQUE
UID:32303133303232363131323532342E705654346B767969417A435152694C37654A4D
55757731406D61696C2E73696D6F6E616E646B6174652E6E6574
X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:Reminder
TRIGGER:-PT15M
UID:C5994E7F-1103-4C3D-A608-EE9B8FD92B5D
X-WR-ALARMUID:C5994E7F-1103-4C3D-A608-EE9B8FD92B5D
END:VALARM
END:VEVENT
END:VCALENDAR
This shows in the original iPad with the grey bordered invitation with
only me as an invitee, and no Organizer, as per this bug.
Removing the invitee from the now-organizer-less meeting completes the
breaking of the loop, with both devices now having an organizer-less
and invitee-less appointment.
We are also having issues with date changes not sync'ing through
correctly, but I will do some more digging on that one and post back.
Will check across other users over next day or so and report back.
Thanks Michael.
Assigned to Michael Rubinsky
State ⇒ Feedback
I can't reproduce this on any of my devices, including various
versions of iOS.
The POOMCAL_MEETINGSTATUS property is what EAS uses to indicate an
appointment is a meeting. According to the protocol specs, it is an
OPTIONAL property that defaults to an empty value (which indicates it
is NOT a meeting). To save bandwidth, the specs recommend not sending
optional properties when they would be set to their default values.
So much for following the specs...
commit ba28d99e6500abf09733f44d60d123ac17ed82fc
Author: Michael J Rubinsky <mrubinsk@horde.org>
Date: Wed Feb 20 01:06:04 2013 -0500
Explicitly set the MEETING_NOT_MEETING value.
Possible fix for
Bug: 12056kronolith/lib/Event.php | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
http://git.horde.org/horde-git/-/commit/ba28d99e6500abf09733f44d60d123ac17ed82fc
commit dd9a153290c9ea407f60243624071c1d2c63873f
Author: Michael J Rubinsky <mrubinsk@horde.org>
Date: Wed Feb 20 01:05:28 2013 -0500
Output an empty POOMCAL_MEETINGSTATUS property.
Possible fix for
Bug: 12056.../lib/Horde/ActiveSync/Message/Appointment.php | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
http://git.horde.org/horde-git/-/commit/dd9a153290c9ea407f60243624071c1d2c63873f
you edit the appointment on one device to remove the invitee, which
fixes it for that device, that obviously initiates a re-sync.
Re-syncing the appointment back through Horde AS to the other device
then resets the second device's state to have the originator as an
invitee again. So fixing it on one device breaks it on the other one,
and vice versa.
Generating an invitee-free invitation on one of the iOS devices works
fine for THAT device. No invitee is added. But when it syncs through
Horde AS to Kronolith and back down to the other device, the organiser
is added as an invitee, and the problem re-occurs.
synced to the same devices do not exhibit this behaviour when
no-invitee appointments are created in e.g. making an appt in Outlook
2010 syncs to iOS without this issue.
Priority ⇒ 1. Low
State ⇒ Unconfirmed
Patch ⇒ No
Milestone ⇒
Summary ⇒ New Kronolith appt w/no invitees sync to iOS, result in greyed item in iOS Calendar
Type ⇒ Bug
Queue ⇒ Horde Base
Kronolith 4.0.4, Horde 5.0.4, it generates an SQL entry with
event_attendees as a:0:{}. All good.
That syncs as the following event:
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <Commands>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <Add>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <ServerEntryId>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O
20130216100427.RCw25WvYurnSPwjwORO1rQ1@mail.simonandkate.net
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <ServerEntryId/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <Data>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Timezone>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O
qP3//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Timezone/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:DtStamp>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 20130216T000813Z
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:DtStamp/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:StartTime>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 20130214T223000Z
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:StartTime/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Subject>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O PE Test
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Subject/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:UID>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O
32303133303231363130303432372E524377323557765975726E5350776A774F524F31725131406D61696C2E73696D6F6E616E646B6174652E6E6574
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:UID/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:EndTime>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 20130214T233000Z
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:EndTime/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Sensitivity>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 0
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Sensitivity/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:BusyStatus>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 2
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:BusyStatus/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Reminder>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 15
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <POOMCAL:Reminder/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <AirSyncBase:Body>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <AirSyncBase:Type>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 1
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <AirSyncBase:Type/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O
<AirSyncBase:EstimatedDataSize>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O 0
2013-02-16T10:08:14+10:00 DEBUG: [1827] O
<AirSyncBase:EstimatedDataSize/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <AirSyncBase:Body/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <Data/>
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <Add/>
2013-02-16T10:08:14+10:00 DEBUG: Updating state during change
2013-02-16T10:08:14+10:00 DEBUG: [1827] O <Commands/>
So, still no attendees. All good still.
iOS for some reason (love Apple!) tags the event with Invitees: (the
originating email account). Because of that, iOS Calendar shows the
event as Greyed out with a dashed border. Any event that I create on
Kronolith with no specified attendees syncs to iOS with the owner as
an attendee, and does not display correctly. If I add any attendee in
a new Kronolith appointment, it syncs with that Invitee, and displays
fine.
Google finds a few people with the problem, but no solution other than
remove the invitee, which fixes it. I did find a comment that iOS 6
(I've tried 6 and 6.1, no change) Calendar is more sensitive to
"meeting type" in the synced event - is that something that needs to
be / can be explicitly added to the event comms from Horde AS where
there are no invitees - is that a particular type of meeting /
appointment in AS tags?
This does not occur in Android - works fine, does not add an invitee,
and just displays as an attendee-less appointment. Adding an attendee
in Kronolith Android shows Organiser and Attendees.
If you go into the event in iOS calendar, and remove the invitee, the
event then displays correctly. This syncs back to ActiveSync:
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <Modify>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <ServerEntryId>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I
20130216100427.RCw25WvYurnSPwjwORO1rQ1@mail.simonandkate.net
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </ServerEntryId>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <Data>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:Timezone>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I
qP3//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxP///w==
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:Timezone>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:AllDayEvent>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 0
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:AllDayEvent>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:BusyStatus>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 2
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:BusyStatus>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:DtStamp>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 20130216T002532Z
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:DtStamp>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:EndTime>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 20130214T233000Z
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:EndTime>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:Reminder>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 15
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:Reminder>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:Sensitivity>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 0
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:Sensitivity>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:Subject>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I PE Test
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:Subject>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:StartTime>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 20130214T223000Z
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:StartTime>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:UID>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I
32303133303231363130303432372E524377323557765975726E5350776A774F524F31725131406D61696C2E73696D6F6E616E646B6174652E6E6574
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:UID>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I <POOMCAL:MeetingStatus>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I 0
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </POOMCAL:MeetingStatus>
2013-02-16T00:25:37+00:00 DEBUG: [1422] I </Data>
2013-02-16T00:25:37+00:00 DEBUG: [1422]
Horde_Core_ActiveSync_Driver::_smartStatMessage(@Calendar@,
20130216100427.RCw25WvYurnSPwjwORO1rQ1@mail.simonandkate.net)
2013-02-16T10:25:37+10:00 DEBUG: [1422]
Horde_Core_ActiveSync_Driver::changeMessage(@Calendar@,
20130216100427.RCw25WvYurnSPwjwORO1rQ1@mail.simonandkate.net ...)
2013-02-16T10:25:38+10:00 DEBUG: [1422]
Horde_Core_ActiveSync_Driver::_smartStatMessage(@Calendar@,
20130216100427.RCw25WvYurnSPwjwORO1rQ1@mail.simonandkate.net)
2013-02-16T10:25:38+10:00 DEBUG: Updating state during change
2013-02-16T10:25:38+10:00 DEBUG: [1422] I </Modify>
That then syncs over to another iOS device on this account as this:
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <Modify>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <ServerEntryId>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O
20130216100427.RCw25WvYurnSPwjwORO1rQ1@mail.simonandkate.net
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <ServerEntryId/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <Data>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Timezone>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O
qP3//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Timezone/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:DtStamp>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 20130216T003032Z
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:DtStamp/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:StartTime>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 20130214T223000Z
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:StartTime/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Subject>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O PE Test
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Subject/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:UID>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O
32303133303231363130303432372E524377323557765975726E5350776A774F524F31725131406D61696C2E73696D6F6E616E646B6174652E6E6574
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:UID/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:EndTime>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 20130214T233000Z
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:EndTime/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Sensitivity>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 0
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Sensitivity/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:BusyStatus>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 2
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:BusyStatus/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Reminder>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 15
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <POOMCAL:Reminder/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <AirSyncBase:Body>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <AirSyncBase:Type>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 1
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <AirSyncBase:Type/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O
<AirSyncBase:EstimatedDataSize>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O 0
2013-02-16T10:30:33+10:00 DEBUG: [14214] O
<AirSyncBase:EstimatedDataSize/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <AirSyncBase:Body/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <Data/>
2013-02-16T10:30:33+10:00 DEBUG: [14214] O <Modify/>
But the other iOS device still shows the owner as an invitee, and
displays incorrectly.
Any suggestions? This is affecting my wife's calendar particularly, as
I have just migrated all of her content into the new Horde 5 by import
/ export in Kronolith, so it's pushed ALL of her appointments out to
iOS as greyed out...