您需要熟悉不同日历客户端(outlook、webmail)对 ical 的处理,然后才能决定如何最好地定位它们。一般来说,他们有两种处理 ical 的模式:“接受邀请”和“订阅互联网日历”。
“接受邀请”的最大优势是您的事件进入用户的日历,并生成提醒等,就好像用户创建了事件一样。缺点是您需要通过电子邮件一次发送一个“事件”邀请,特别是在 Outlook 中,它们可能需要在出现在日历中之前被视为邮件。如果您要发送 20 个或更多作业,这可能会给收件人带来垃圾邮件。
“订阅互联网日历”有点误导,因为 ical 提要不是提要。您将“整个日历”放在网站上,而客户则将网站置于极点。Outlook 和 webmail 客户端通常很乐意显示这些日历,但是将事件“导入”到用户自己的日历中有点笨拙。默认情况下,Gmail 和 webmail 在同一网格上显示信息。Outlook 为每个日历显示一个新网格。
对于订阅方案,修改稍微复杂一些。您可能希望为受影响的学生重新生成整个日历,而在邀请方案中,您只需发送一封包含更改事件的邮件。
即便如此,如果你有一个包含课程、学生和注册的数据库,你可以做一个不错的小应用程序,为每个学生生成一个 ical,用他们的学号命名,然后将它放在日历文件夹中。学生订阅一次http://myuniversity.com/calendars/12345.ical,每个学期他们的所有作业都会自动在他们的网络日历中。
小心订阅链接。如果数以万计的学生订阅(极点)动态生成的日历,您将有很多不必要的处理,很可能是性能问题。您想要生成静态文件,然后让您的网络服务器与客户端协商是否需要重新发送它们。