Часовой пояс ICS не работает - PullRequest
22 голосов
/ 02 октября 2011

Я создал канал ICS, содержащий длинный список событий. Мой часовой пояс не работает.

В приведенном ниже примере вы видите, что мое мероприятие должно начинаться 07:55:00 и заканчиваться 09:30:00. Это то, что он должен показать в моем календаре. Вместо этого он показывает 09:55:00 и 11:30:00 - смещение двух часов. Часовой пояс должен быть установлен на Europe/Copenhagen, но это не имеет никакого эффекта.

Может кто-нибудь сказать мне, как я могу достичь нужного времени?

BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:Test Calendar
X-WR-TIMEZONE:Europe/Copenhagen
X-WR-CALDESC:Test Calendar
BEGIN:VEVENT
DTSTART:20110926T075500Z
DTEND:20110926T093000Z
DTSTAMP:20111002T133505Z
UID:E9QNQ30EG-5SRB7-QQKL3-2JUUZ-477LBRV4IMSJ78
CREATED:20111002T133505Z
LAST-MODIFIED:20111002T133505Z
LOCATION:B34
SEQUENCE:3
SUMMARY:2abc3c Ma3 CD (B34)
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

1 Ответ

47 голосов
/ 02 октября 2011

Вы указали, что ваше событие начинается в 07:55 в UTC - это то, что показывает Z в конце.Если вы хотите, чтобы оно было по местному времени, у вас не должно быть Z, и вам, вероятно, следует также указать часовой пояс:

DTSTART;TZID=Europe/Copenhagen:20110926T075500
DTEND;TZID=Europe/Copenhagen:20110926T093000

В качестве альтернативы укажите время начала и окончания UTC с помощью Z,но с учетом соответствующей разницы часовых поясов - поэтому событие, которое в настоящий момент начинается в 07:55 в Европе / Копенгагене, на самом деле - 05:55 в UTC.

...