Правильно ли Outlook обрабатывает часовые пояса для файлов.ics (ICalendar)?
У меня есть программа, которая отправляет календарь встреч пользователям. Однако эти пользователи находятся во многих разных часовых поясах. Когда я создаю файл.ics, я устанавливаю часовой пояс на местный часовой пояс, потому что они запланированы здесь. Затем они отправляются пользователям, которые разбросаны по многим часовым поясам.
Будет ли внешний вид справиться с этим правильно? Как в: если я назначу человека на встречу в 8 утра, и я нахожусь в Филадельфии, это должно быть встреча в 8 утра для него в любом другом часовом поясе.
Я знаю, что Outlook работает с часовыми поясами, но я не смог найти хорошую документацию по нему.
РЕДАКТИРОВАТЬ: Я действительно должен был спросить что-то более в соответствии с тем, как вы форматируете это, чтобы справиться с этим правильно, вот формат, который я сейчас использую. Но у меня мало опыта с этим, поэтому я могу ошибаться:
String[] iCalArr = { "BEGIN:VCALENDAR",
"PRODID:-//foobar//morefoobar//EN",
"VERSION:2.0",
"CALSCALE:GREGORIAN",
"METHOD:REQUEST",
"BEGIN:VTIMEZONE",
"TZID:America/New_York",
"X-LIC-LOCATION:America/New_York",
"BEGIN:DAYLIGHT",
"TZOFFSETFROM:-0500",
"TZOFFSETTO:-0400",
"TZNAME:EDT",
"DTSTART:19700308T020000",
"RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU",
"END:DAYLIGHT",
"BEGIN:STANDARD",
"TZOFFSETFROM:-0400",
"TZOFFSETTO:-0500",
"TZNAME:EST",
"DTSTART:19701101T020000",
"RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU",
"END:STANDARD",
"END:VTIMEZONE",
"BEGIN:VEVENT",
"DTSTART;TZID=America/New_York:" + strBeginDate,
"DTEND;TZID=America/New_York:" + strEndDate,
"DTSTAMP:" + strNow,
"UID:DT 2012 Training - " + System.Guid.NewGuid().ToString(),
"RECURRENCE-ID;TZID=America/New_York:20110207T103000",
"CREATED:" + strNow,
"DESCRIPTION;ENCODING=QUOTED-PRINTABLE:foobar",
"LAST-MODIFIED:" + strNow,
"LOCATION:" + location,
"SEQUENCE:1",
"STATUS:TENTATIVE",
"SUMMARY:foobar",
"TRANSP:OPAQUE",
"END:VEVENT", "END:VCALENDAR" };
2 ответа
Outlook должен с этим справиться, если ваше конкретное приложение записывает правильную информацию о часовом поясе. Или perhpaps работает в UTC и все помечает Z-зоной.
Меня смущает ваше замечание, что "тестирование не вариант". Я могу представить, что неопознанная "программа" не может записать тестовые данные, но ваш вопрос говорит о том, что вы беспокоитесь о Outlook. Конечно, вы можете передать некоторые файлы ICS с разными часовыми поясами и направить их в Outlook? Это должно четко указывать, что Outlook знает, как с ними бороться.
Да, Outlook обрабатывает часовые пояса, в этой статье из базы знаний фактически указывается ограничение, заключающееся в том, что Outlook необходимо обновлять каждый раз при изменении часового пояса (DST, ...): http://support.microsoft.com/kb/931667