我正在尝试使用API将一些事件导出到Google Calendar,特别是包装它的python库。这些事件已经重复发生,它是使用RRULE字符串定义到Google日历的,我正在尝试使用EXDATE字符串排除某些日期。
这是我发送的内容:
{
"summary": "Test Event",
"description": "Event",
"location": "Home",
"start": {
"timeZone": "America/New_York",
"dateTime": "2014-09-05T10:30:00"
},
"end": {
"timeZone": "America/New_York",
"dateTime": "2014-09-05T11:35:00"
},
"recurrence": [
"RRULE:FREQ=WEEKLY;WKST=SU;BYDAY=FR;UNTIL=20141203T173500Z",
"EXDATE:20141002"
],
}
它正确导出所有内容,但不遵守EXDATE。嗯,这有点受人尊敬。在日历中,该事件仍然存在,但它将重复描述为“周一,周三,周四从9月3日星期三到12月3日星期四上午10:30每周一次,除了10月2日星期四”。
“除了Thu Oct 2”部分意味着它正在正确解析EXDATE(如果我在EXDATE中发送垃圾,它将不会运行,因此它正在解析它),但是event still occurs。< / p>
答案 0 :(得分:10)
EXDATE必须与开头和结尾的格式相同。这意味着如果开始是一个有时间的事件,EXDATE也必须有指定的时间。我建议在rfc 5545(http://tools.ietf.org/html/rfc5545)中阅读。
答案 1 :(得分:3)
对于遇到类似情况的其他人,
EXDATE;TZID=America/New_York:20140905T103000
应该有效。