我们已经为我们的外联网开发了日历。每周我们都会更新下周的课程表,供全校教师和学生使用。这还会触发按电子邮件将ICS文件发送给选择该选项的用户。
现在,几乎总是会发生最后一分钟的更改,因此需要进行新的计划更新,因此需要重新发送更新的ICS。
问:目前用户必须手动删除已经导入到其日历应用程序中的事件。我们有没有办法将一些删除或更新事件添加到用户的日历中?ICS格式允许这样做吗?
发布于 2009-12-03 05:07:28
一旦您开始尝试进行更新或删除(取消),您就超越了iCalendar文件格式,进入了与iCalendar传输无关的互操作性协议(iTIP)和iCalendar基于消息的互操作性协议(iMIP)的奇妙世界。
最好的解决方案取决于你的客户系统。如果你正在发送日历,而不是单个事件,我建议你远离电子邮件发送,而使用订阅模式。这是一个University doing just that的例子,icalshare.com是另一个例子。显然,如果你想要个性化的时间表,你就需要个人的urls。您可以非常简单地将当前通过电子邮件发送的文件发布到web上。
如果你使用webcal://而不是http,一些日历客户端,比如Outlook2007,会自动打开它,然后保持更新。
如果你不想使用订阅模型,并且需要来自客户端的响应,我知道Outlook 2007,Windows Live Calendar和Google calendars都可以相互交谈iTIP/iMIP,不幸的是,我找不到一个好的列表中的其他客户端这样做。显然,Thunderbird 3本来打算这么做的,但它已经被放弃了(它仍然需要lightening插件)。
https://stackoverflow.com/questions/1744023
复制相似问题