Tha*_*ish 2 icalendar thunderbird thunderbird-lightning
总结一下即将发生的事情:
完整解释:
我正在开发一个生成 ICS 日历的应用程序。该日历通过 URL 分派给用户。到目前为止,我发现用户可以通过Calendar tab-> New Calendar->导入日历On the Network。然后提供生成日历的 URL 并按照向导操作会创建一个新日历。即使我想找到一种方法来允许用户只需单击我的链接即可导入日历(如果是这种情况,则自动触发向导),这工作得很好。我尝试将链接嵌入到邮件中,但是当单击它时,它会触发浏览器(如果以 HTTP 协议提供,或者以 WebDAV 协议提供时出现错误)。您知道有什么方法可以生成可以实现我的目标的链接吗?
然而,真正的问题是另一个。当我按照描述导入日历 ( Calendar tab-> New Calendar-> On the Network),然后尝试修改任何事件数据时,我收到一条MODIFICATION_FAILED消息,并且错误控制台仅显示
Timestamp: 03/14/2013 12:20:08 PM
Error: An error occurred when writing to the calendar Test! Error code: MODIFICATION_FAILED. Description:
Source File: resource://calendar/modules/calUtils.jsm -> file:///home/mdavi/.thunderbird/sdq097yy.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/calendar-js/calCalendarManager.js
Line: 976
Run Code Online (Sandbox Code Playgroud)
我怎样才能找到这个错误的原因?此外,我尝试将生成的日历(或从我的链接下载)导出到 ICS 文件,然后通过File-> Open->打开此类文件Calendar File ...,而不修改导出文件中的任何内容,这样我什至可以修改事件数据。所以为什么?我生成的 ICS 文件非常简单,如下所示:
BEGIN:VCALENDAR
PRODID:-//Events Calendar//iCal4j //EN
METHOD:PUBLISH
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
UID:...
SUMMARY:...
DTSTART:...
DTEND:...
DESCRIPTION:...
LOCATION:...
URL:...
END:VEVENT
END:VCALENDAR
Run Code Online (Sandbox Code Playgroud)
VEVENT 的所有属性均已形成。
我不确定您是否计划允许用户远程更改日历上的事件,或者您是否希望他们将日历数据导入到他们自己的日历中。我假设您正在执行第一个操作并选择了“iCalendar”类型。首先解释一下,不同类型之间有明显的区别:
如果您使用 iCalendar 类型,您的 Web 应用程序必须支持更多查询:
PUT /path/to/calendar.ics:该查询用于将文件保存到服务器。如果您不支持此方法,则会抛出 MODIFICATION_FAILED。PROPFIND /path/to/calendar.ics:这可能是可选的,但有助于减少网络负载并避免数据丢失。执行ETag 查询来查明文件是否已更改。If然后,如果文件未更改,则在标头中使用此 ETag仅进行 PUT。如果您想提供 CalDAV 访问,我建议您采用现有的开源 CalDAV 服务器之一,并为其编写一个使用您的数据的后端。
不幸的是,Lightning 没有办法让 Link 触发自动订阅,但当它触发自动订阅时,可能会通过 和webcal://方案webcals://。我不知道它们是否是标准的,但至少它们是常用的。
当选择“文件”>“打开”>“日历文件”时,您所做的是使用file://URI 订阅本地日历。如果删除该文件,您将丢失日历。如果您想将事件导入内部日历,您需要做的是创建一个本地日历,然后使用“事件和任务”菜单从文件导入事件。如果不下载远程文件,就无法做到这一点。
要进行更多调试,您可以在“选项”>“高级”>“常规”>“配置编辑器”中打开高级配置编辑器,然后启用首选项calendar.debug.log和calendar.debug.log.verbose. 较新版本的 Lightning 可能有更多以[calICSCalendar].
| 归档时间: |
|
| 查看次数: |
6918 次 |
| 最近记录: |