1

我有一个重复的 UTC 指定 iCal 事件。一切似乎都正确输出了,但 iCal 客户端却在乱跑:重复模式是 M、W、F,但开始日期(转换为 UTC)是星期二。

被错误计算的重复模式是 S,T,R。

这是无法正常工作的 ical 输出:

BEGIN:VCALENDAR
VERSION:2.0
METHOD:PUBLISH
X-WR-CALNAME: Room ICCS008
PRODID:-//Drupal iCal API//EN
BEGIN:VEVENT
UID:calendar.18861.field_date.0.8
SUMMARY:CPSC 210 L2C
DTSTAMP:20110518T123628Z
DTSTART:20110621T010000Z
DTEND:20110621T033000Z
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,WE,FR;UNTIL=20110730T033000Z
URL;VALUE=URI:https://localhost/event/2011/06/cpsc-210-l2c
END:VEVENT
END:VCALENDAR

该活动原定于太平洋标准时间 6 月 20 日下午 6:00 开始。对于 UTC,日历正确地将其转换为 6 月 21 日凌晨 1:00。它重复 M,W,F 一个月。然而,它似乎完全抛弃了谷歌日历和苹果 iCal 对重复事件的计算。

第一个事件出现在星期一,但第二个事件出现在星期二,第三个星期四,从那时起,重复模式的 S、T、R 直到结束。

这是 iCal 错误吗?这是我的 iCal 创建者(Drupal 的 Views iCal)输出错误的东西吗?

更新:好的,很多人已经导入了这个,它适用于所有情况,除了 Apple iCal 和 Thunderbird Lightning。

这是因为在导入时,客户(我相信)在全球范围内确定时区并一次正确地转移所有内容。

但是,如果您使用 GCal订阅它,它会单独限定每个事件的时间并进入 kerplewey,显示我上面描述的行为。

更新文件

iCal 文件本身是错误的 - 出于某种原因,某些客户端可以处理错误,而其他客户端则不能,但 UTC 中指定的事件实际上是在凌晨 1:00 重复每个 T、R、S,并且“好”客户端转移这回基于当地的TZ。iCal 创建过程根据本地时区而不是转换为 UTC-one 计算重复天数。这是 Drupal iCal 实现中的一个错误。

4

2 回答 2

1

检查您的 CCK 日期字段。设置为 UTC、站点时区还是用户时区?

确保将其设置为您用于输入日期的任何时区。

于 2011-05-18T20:21:50.620 回答
0

上面的 iCal 文件是错误的。

出于某种原因,某些客户端可以处理错误,而其他客户端则不能,但是 UTC 中指定的事件实际上应该指定每个 T、R、S 的重复周期(UTC 凌晨 1:00),以及“好”客户端根据本地 TZ 将其移回为 M,W,F。

输出是根据输入重复的本地时区 (M,W,F) 而不是转换为 UTC-one 的本地时区计算重复天数。

所以...转到 drupal.stackexchange.com =)

于 2011-05-19T17:20:56.360 回答