我们现在已经能够让它删除一条消息....但没有像我们想象的那样更新....
设置我们发送的会议...
开始:VCALENDAR
版本:2.0
方法:发布
开始:事件
类别:公共
优先级:5
序列:0
用户名:12345
摘要:测试
地点:测试
DTSTART:20090709T230000Z
DTEND:20090710T000000Z
DTSTAMP:20090713T164634Z
描述:测试
结束:事件
END:VCALENDAR
要删除,我们只需像这样更改取消方法即可发送消息:
开始:VCALENDAR
版本:2.0
方法:取消
开始:事件
类别:公共
优先级:5
序列:0
用户名:12345
摘要:测试
地点:测试
DTSTART:20090709T230000Z
DTEND:20090710T000000Z
DTSTAMP:20090713T164634Z
描述:测试
结束:事件
END:VCALENDAR
我们最初的删除问题是我们有一个空白的组织者行。我们删除了它并取消了工作....
至于像第一行那样更新原始发布,我们一直无法做到。我们已将序列 # 从零增加到 1,它只是添加了一个新会议。我们使用相同的 UID 编号,在我们的测试中仅为 12345。
我发现这样做的唯一方法是创建一个组织者并将发布类型更改为请求类型。
在阅读 rfc2445 时,这似乎是它的设计方式。发布将始终创建新记录,顺序无关紧要。当顺序很重要时,组织者和请求方法....
在我在这里测试和阅读 stackoverflow 之后,我也找到了这个答案:
ICalendar and event updates not working in Outlook
对我来说,我之前没有看到那个...... :)
这是一个示例:
开始:VCALENDAR
版本:2.0
方法:请求
开始:事件
类别:公共
DTEND:20090713T203000Z
DTSTAMP:20090713T174434Z
DTSTART:20090713T200000Z
ORGANIZER;CN="No one special";mailto:dontemailme@email.com
优先级:5
序列:0
摘要:午餐?
用户名:1234567
结束:事件
END:VCALENDAR
然后更新它...
开始:VCALENDAR
版本:2.0
方法:请求
开始:事件
类别:公共
DTEND:20090713T213000Z
DTSTAMP:20090713T174434Z
DTSTART:20090713T210000Z
ORGANIZER;CN="No one special";mailto:dontemailme@email.com
优先级:5
序列:1
摘要:午餐?
用户名:1234567
结束:事件
END:VCALENDAR
然后取消它....
开始:VCALENDAR
版本:2.0
方法:取消
开始:事件
类别:公共
DTEND:20090713T213000Z
DTSTAMP:20090713T174434Z
DTSTART:20090713T210000Z
ORGANIZER;CN="No one special";mailto:dontemailme@email.com
优先级:5
序列:1
摘要:午餐?
用户名:1234567
结束:事件
END:VCALENDAR
序列#对于取消无关紧要......