如何从 Caldav 客户端为 iCloud 日历删除重复的事件条目
Posted
技术标签:
【中文标题】如何从 Caldav 客户端为 iCloud 日历删除重复的事件条目【英文标题】:How to remove duplicate event entires from Caldav client for iCloud calendar 【发布时间】:2013-02-07 04:52:50 【问题描述】:我正在为iCloud Calendar
开发 Caldav 客户端。当我们请求日历列表时,有如下几个日历在iCloud
界面中是不可见的。
/calendars/notification/, /calendars/tasks/, /calendars/inbox/
与普通日历一样。
/calendars/home/, /calendars/work/
问题是主日历中的一些事件在收件箱日历中也有重复。要创建此案例,请邀请某人参加事件,因此此事件 将出现在他的主日历和收件箱日历中。
我们如何删除这些重复条目。我们可以忽略这些日历,如果可以,如何获取不可见日历的列表?
谢谢
【问题讨论】:
【参考方案1】:发出 PRPOPFIND 请求时,您应该请求 DAV:resourcetype 属性。在来自服务器的响应中,正确的日历将在此属性中有一个 CALDAV:calendar 子元素(请参阅https://www.rfc-editor.org/rfc/rfc4791#section-4.2),而收件箱将有一个 CALDAV:schedule-inbox 子元素(请参阅https://www.rfc-editor.org/rfc/rfc6638#section-2.2)并且通知可能会还有另一个值。
任务日历可能是包含 VTODO 的真实日历。
就“重复事件”而言,这些不是实际的 CalDAV 日历资源,而是 iTIP Messages(邀请,还有回复和取消消息)。您可以使用它们来通知您的用户他已收到邀请或与会者已回复他发送的邀请。
【讨论】:
如何找到活动的时区?以上是关于如何从 Caldav 客户端为 iCloud 日历删除重复的事件条目的主要内容,如果未能解决你的问题,请参考以下文章