Bug 177002

Summary: Bug in VCALENDER file format for appointment mails
Product: [Applications] korganizer Reporter: Gerhard Gappmeier <gerhard.gappmeier>
Component: invitationsAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: christophe, smartins, winter
Priority: NOR    
Version: SVN trunk (KDE 4)   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Gerhard Gappmeier 2008-12-05 18:10:33 UTC
Version:            (using Devel)
Compiler:          gcc version 4.1.2 (Gentoo 4.1.2 p1.1)  
OS:                Linux
Installed from:    Compiled sources

There seems to be a bug in the timezone of ical attachements when sending appointments via kmail.

Symptom: The mail created with KOrganizer/Kmail looks like this:
BEGIN:VCALENDAR
PRODID:-//K Desktop Environment//NONSGML KOrganizer 4.1 rc1//EN
VERSION:2.0
METHOD:REQUEST
BEGIN:VEVENT
DTSTAMP:20081204T095004Z
...
CREATED:20081204T095002Z
UID:KOrganizer-570377125.662
LAST-MODIFIED:20081204T095002Z
DESCRIPTION:Ziel der Besprechung...
SUMMARY:...
DTSTART;TZID=Europe/Berlin:20081205T140000
DTEND;TZID=Europe/Berlin:20081205T150000
TRANSP:OPAQUE
END:VEVENT

END:VCALENDAR

The TZID cannot be interpreted by MS Outlook. The time will be interpreted as UTC which leads to a wrong appointment time.
According to reinhold in #kontact this is a bug due to a missing VTIMEZONE field, so this time it seems not to be a MS bug ;-)

MS Outlook itself sends the appointments with UTC times:
DTSTART:20081205T130000Z
DTEND:20081205T140000Z

In my opinion this is simpler and more likely to be understood by other applications.
So maybe this should be changed to this format.
Comment 1 Sergio Martins 2009-02-21 06:17:36 UTC
What version of libical are you using?

Can you upgrade to 0.42 and retest?

VTIMEZONE field is present in my testing.
Comment 2 Gerhard Gappmeier 2009-03-03 09:42:41 UTC
I retested it with libical-0.43.
It looks still the same.

BEGIN:VCALENDAR
PRODID:-//K Desktop Environment//NONSGML KOrganizer 4.2 rc1//EN
VERSION:2.0
METHOD:REQUEST
BEGIN:VEVENT
DTSTAMP:20090303T083817Z
ORGANIZER;CN="bla":MAILTO:a@b.com
ATTENDEE;RSVP=TRUE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT:mailto:
 b@c.net
ATTENDEE;CN="bla";RSVP=FALSE;PARTSTAT=ACCEPTED;
 ROLE=REQ-PARTICIPANT:mailto:a@b.com
X-KDE-EGWRESOURCE-RIGHTS:15
CREATED:20090303T083622Z
UID:KOrganizer-939918081.109
SEQUENCE:1
LAST-MODIFIED:20090303T083815Z
SUMMARY:Just a test
DTSTART;TZID=Europe/Berlin:20090307T144500
DTEND;TZID=Europe/Berlin:20090307T161500
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR
Comment 3 Allen Winter 2009-06-09 18:17:03 UTC
I think Outlook should be able to handle the TZID, after all that's in the RFC.

However, Windows has a completely different set of system timezone names and it doesn't know Europe/Berlin.  By RFC, each unique TZID should have an associated VTIMEZONE component.

So, yes.. we need to provide a VTIMEZONE in invitation iCals.
Comment 4 Allen Winter 2009-06-12 14:48:43 UTC
SVN commit 980672 by winterz:

write VTIMEZONE components for scheduling calendars and other situations when
a calendar is created from in-memory incidences.

BUG: 177002
MERGE: e4 (e35 also, if the libical there supports VTIMEZONES.. can't remember if it does)



 M  +61 -2     icalformat_p.cpp  
 M  +34 -6     tests/data/Compat/MSExchange.ics.ical.ref  


WebSVN link: http://websvn.kde.org/?view=rev&revision=980672
Comment 5 Thomas McGuire 2009-06-12 19:48:00 UTC
SVN commit 980928 by tmcguire:

Crossport r980672 by winterz from trunk to the enterprise4 branch:

write VTIMEZONE components for scheduling calendars and other situations when
a calendar is created from in-memory incidences.

CCBUG: 177002
MERGE: e4 (e35 also, if the libical there supports VTIMEZONES.. can't remember if it does)




 M  +61 -2     icalformat_p.cpp  
 M  +34 -6     tests/data/Compat/MSExchange.ics.ical.ref  


WebSVN link: http://websvn.kde.org/?view=rev&revision=980928