上一个有此问题的主题,并提示答案,但我无法让它发挥作用。

我有一个ICS文件。它验证。它看起来像这样:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//WA//FRWEB//EN
BEGIN:VEVENT
UID:FRICAL201
SEQUENCE:0
DTSTAMP:20081108T151809Z
DTSTART:20081109T121200
SUMMARY:11/9/2008 12:12:00 PM TRIP FROM JFK AIRPORT (JFK)
LOCATION:JFK AIRPORT (JFK)
END:VEVENT
END:VCALENDAR

我双击它,它完全进入Outlook 2007。 然后,我双击另一个看起来像这样的ICS文件:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//WA//FRWEB//EN
BEGIN:VEVENT
METHOD:REQUEST
UID:FRICAL201
SEQUENCE:1
DTSTAMP:20081108T161809Z
DTSTART:20081109T121300
SUMMARY:11/9/2008 12:13:00 PM TRIP FROM JFK AIRPORT (JFK)
LOCATION:JFK AIRPORT (JFK)
END:VEVENT
END:VCALENDAR

正如在rfc 中解释的那样,UID是相同的,并且序列号是一个更大的,所以我希望outlook更新我以前的事件条目,但它只是插入第二个。

如何制定ICS文件以便Outlook知道更新事件?我在上面引用的主题中的原始海报说他得到它以METHOD和ORGANIZER回应但是根据我的经验,METHOD没有任何效果,并且ORGANIZER会导致Outlook希望将事件通过电子邮件发送给某人的不良行为。我只是想让它更新日历。

有帮助吗?

解决方案

我抓住了Tom Carter,他开始了原创主题。他有一个工作示例,其中包含请求,然后取消。我错的是我的方法在我的VEVENT里面本来应该在外面。所以这是一个有效的更新!

原件:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//WA//FRWEB//EN
METHOD:REQUEST
BEGIN:VEVENT
UID:FRICAL201
SEQUENCE:0
DTSTAMP:20081108T151809Z
ORGANIZER:donotreply@test.com
DTSTART:20081109T121200
SUMMARY:11/9/2008 12:12:00 PM TRIP FROM JFK AIRPORT (JFK)
LOCATION:JFK AIRPORT (JFK)
END:VEVENT
END:VCALENDAR

更新

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//WA//FRWEB//EN
METHOD:REQUEST
BEGIN:VEVENT
UID:FRICAL201
SEQUENCE:1
DTSTAMP:20081108T161809Z
ORGANIZER:donotreply@test.com
DTSTART:20081109T121300
SUMMARY:11/9/2008 12:13:00 PM TRIP FROM JFK AIRPORT (JFK)
LOCATION:JFK AIRPORT (JFK)
END:VEVENT
END:VCALENDAR

我所做的就是添加请求方法(在正确的位置!)和组织者。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top