生成icalendar文件以更新现有事件

生成icalendar文件以更新现有事件,calendar,google-calendar-api,icalendar,Calendar,Google Calendar Api,Icalendar,我创建了以下iCalendar文件来生成初始事件 BEGIN:VCALENDAR VERSION:2.0 PRODID:icalendar-ruby CALSCALE:GREGORIAN METHOD:PUBLISH BEGIN:VEVENT DTSTAMP:20170529T184713Z UID:call_286@foobar.dev DTSTART:20170427T160000Z DTEND:20170427T163000Z DESCRIPTION:A test call SEQUENC

我创建了以下iCalendar文件来生成初始事件

BEGIN:VCALENDAR
VERSION:2.0
PRODID:icalendar-ruby
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VEVENT
DTSTAMP:20170529T184713Z
UID:call_286@foobar.dev
DTSTART:20170427T160000Z
DTEND:20170427T163000Z
DESCRIPTION:A test call
SEQUENCE:7
STATUS:CONFIRMED
SUMMARY:A test call
URL:http://foobar.dev/calls/286
BEGIN:VALARM
ACTION:DISPLAY
TRIGGER:-PT15M
DESCRIPTION:Starting in 15 minutes - A test call
SUMMARY:A test call starting in 15 minutes
END:VALARM
END:VEVENT
END:VCALENDAR
此事件已正确导入OSX的日历(V9.0),并包含所有正确的详细信息,并同步到Google日历

然后更新事件并生成更新的iCalendar文件,保持
UID
不变,并根据

然后我将此事件导入OSX的日历,我的原始事件将完全从日历中消失。它根本不更新,只是完全消失了

当我查看谷歌日历时,最初的活动仍然在最初的时间安排中完全相同的位置

我做错了什么,事件没有更新


更新:此问题与OSX日历(V9.0)应用程序以及随后与谷歌日历非Outlook同步的问题不重复或相关。我已经尝试了这些问题的答案中描述的方法,但我得到了与上述完全相同的行为。

您可以分享您用于执行更新/查看日历的代码吗?这可能是从语法问题、缓存、网络错误、权限设置到?如果可能的话,我们总是要求在问题中提供答案。@TomLord我不认为我完全理解你的观点。我只需将上述内容保存为
.ics
文件,然后双击它将其安装到iCalendar中。这就是你的意思吗?如果你的问题没有提到这些,这与
ruby
rubyonrails
有什么关系?“这就是我困惑的原因。”汤姆洛德抱歉,现在我明白你的问题了。我正在使用生成ICS文件。啊,好吧,很公平。快速的谷歌搜索发现了这一点——您需要指定
方法:请求
而不是
方法:发布
BEGIN:VCALENDAR
VERSION:2.0
PRODID:icalendar-ruby
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VEVENT
DTSTAMP:20170529T185549Z
UID:call_286@foobar.dev
DTSTART:20170427T153000Z
DTEND:20170427T155500Z
DESCRIPTION:A test call
SEQUENCE:8
STATUS:CONFIRMED
SUMMARY:A test call
URL:http://foobar.dev/calls/286
BEGIN:VALARM
ACTION:DISPLAY
TRIGGER:-PT15M
DESCRIPTION:Starting in 15 minutes - A test call
SUMMARY:A test call starting in 15 minutes
END:VALARM
END:VEVENT
END:VCALENDAR