Is There a Workaround for lack of Olsen TZ TZID Format in ICS File

后端 未结 3 2006
渐次进展
渐次进展 2020-12-18 23:04

I recently had a problem with an ICS file that I received in email. My copy of Outlook 2010 would not recognize the timezone correctly. Here is the way that the start time o

相关标签:
3条回答
  • 2020-12-18 23:35

    Hard to judge without the full iCalendar file but did you define/do you have a VTIMEZONE component in your calendar file which defines what America/Los_Angeles should be?

    Something like:

    BEGIN:VTIMEZONE
    TZID:America/Los_Angeles
    BEGIN:DAYLIGHT
    TZOFFSETFROM:-0800
    TZOFFSETTO:-0700
    TZNAME:PDT
    DTSTART:19700308T020000
    RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
    END:DAYLIGHT
    BEGIN:STANDARD
    TZOFFSETFROM:-0700
    TZOFFSETTO:-0800
    TZNAME:PST
    DTSTART:19701101T020000
    RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
    END:STANDARD
    END:VTIMEZONE
    
    0 讨论(0)
  • 2020-12-18 23:39

    Suppose the questioner lives in Los Angeles and uses OUTLOOK2010. And 20110928T183000 Start time is based on PDT If you want to make meeting successful, You add Meeting appointment item, contact, and google map URL Address phone open time in description. Of course, meeting item should add Organizer and Attendee, but it is so hard to set. And about 75 octet carriage return and inserting space is difficult. So only set organizer and attendee write in description.

    BEGIN:VCALENDAR
    PRODID:-//Microsoft Corporation//Outlook 12.0 MIMEDIR//EN
    VERSION:2.0
    CALSCALE:GREGORIAN
    X-WR-TIMEZONE:America/Los_Angeles
    BEGIN:VTIMEZONE
    TZID:America/Los_Angeles
    X-WR-TIMEZONE:America/Los_Angeles
    BEGIN:DAYLIGHT
    TZOFFSETFROM:-0800
    TZOFFSETTO:-0700
    TZNAME:PDT
    DTSTART:19700308T020000
    RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
    END:DAYLIGHT
    BEGIN:STANDARD
    TZOFFSETFROM:-0700
    TZOFFSETTO:-0800
    TZNAME:PST
    DTSTART:19701101T020000
    RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
    END:STANDARD
    END:VTIMEZONE
    BEGIN:VEVENT
    DTSTART;TZID=America/Los_Angeles:20110928T183000
    DTEND;TZID=America/Los_Angeles:20110928T203000
    LOCATION:meeting room in Los Angeles
    Description:maps link \nhttp... \n phone \n open at 10:00:AM(PDT)
    UID:ev1
    ORGANIZER;CN="ThisMeeting Orginizer":mailto:meetingorginer@example.com
    Contact:meetingsupport@example.com
    DTSTAMP:20111001T105433Z
    TRANSP:OPAQUE
    END:VEVENT
    END:VCALENDAR
    
    0 讨论(0)
  • 2020-12-18 23:42

    Instead of adding the timezone definition to the ics file, it would be better to mention the event start/end times in UTC itself. And then, the consumer of the ICS file - outlook in your case - should be able to do the timezone conversion from UTC(from ics file) to the preferred timezone setting of the end user, just before rendering the meeting event on their calendars.

    Pros: This way you dont have to take care of adding the correct timezone offsets (VTIMEZONE component) yourself. Plus, the ics file is much smaller, cleaner, easy to read.

    References: Even google seems to be handling timezones in ics this way itself - Google timezone handling

    Hope this helps.

    0 讨论(0)
提交回复
热议问题