日历导入是对一个发布在别处的日历的单向订阅。Ceum 会抓取该订阅源,保留一份副本,算出其中重复条目的各次发生,并把它们与你的任务、日程和订阅续期一起画在你的日历上。
单向就是字面意思:来源日历中的更改会在下一次刷新时到达 Ceum,而你在 Ceum 中所做的任何事都绝不会写回去。
导入在所有方案中都可用。日历中受方案限制的部分是天气——它需要 Plus 或 Pro——而两者互不相关:Free 账户想订阅多少个源都可以。
添加导入
打开日历导入,使用添加日历。共三个字段:
- ICS URL——必填。指向
.ics文件的直接https://链接可用,普通http://也可用,webcal://与webcals://订阅链接同样可用,多数日历应用会以“订阅”或“公开地址”的名义提供后者。webcal 链接会通过 HTTPS 抓取。URL 必须带上协议,长度不超过 2048 个字符,并且订阅源必须能从公网访问——私有网络上的地址会被拒绝。 - 显示名称——选填。留空时会取 URL 中的主机名,因此你不命名就添加的订阅源读起来仍是个名字,而不是一片空白。
- 标签片颜色——选填。这是该订阅源的日程在网格上所用的颜色。
Ceum 会在你保存时抓取一次订阅源,因此错误的 URL 会当场被发现,而不是等到之后某次查看。响应必须能解析为 ICS 且小于 5 MB,抓取时限为十秒。
若抓取失败,URL 字段会提示该日历无法加载,而导入仍会被保存——它会带着错误出现在列表中,你可以在那里编辑 URL 再试一次。
同一个 URL 在一个账户中只能订阅一次。
刷新频率
- 自动。 上次抓取距今超过约 15 分钟的订阅源,会在日历下一次请求某个日期范围时于后台刷新。刷新在网格已经用存储的副本绘制之后才运行,因此刚刚过期的订阅源会再显示一次此前的内容,新内容则出现在下一次查看时。
- 按需。 行上的立即刷新会马上抓取。
已同步列会说明每个订阅源上次抓取是多久以前,从未加载过的则显示尚未同步。
导入的条目能做什么
按设计并不多——它们属于另一个日历。
- 它们是只读的。 导入的条目无法编辑、无法删除,也无法拖到另一天。唯一能改动它们的方式,是在它们的来源处修改;更改会在下一次刷新时到达。
- 点击一条会打开详情视图,而不是表单:标题、开始、结束、来自哪个已订阅日历,以及描述,其中的 URL 与地址会变成可用的链接。
- 它们以所属导入的颜色绘制。 带时间的条目会在前面加上开始时间并画成描边样式;全天条目则画成填充样式,与网格上区分两者的方式一致。
- 重复条目由 Ceum 从订阅源中展开,因此每周一次的会议会出现在它的每一天上,而不是只出现在第一天。
- 它们不参与批量选择。 用于挑出标签片以便批量删除的修饰键点击,只对任务和你自己的日程有效,因为批量删除只能作用于这两者。导入的标签片保留它普通的点击行为,改为打开详情。
- 它们不会被全局搜索索引,也不会出现在组合视图中,因为组合视图嵌套的是客户、项目与发票这类记录,而不是日历条目。
- 它们绝不会包含在日历分享链接中。 分享出去的日历会显示你的任务、你的日程与你的订阅续期;订阅源的日程不在其中,天气也一样。
日历设置中没有针对导入日程的全局开关——控制项是每个导入各自的已启用开关,因此你可以逐个订阅源决定。
编辑、停用与移除
每个导入行都带有三项操作,右键菜单提供同样的三项。
- 编辑可更改 URL、显示名称或标签片颜色。更改 URL 会立即重新抓取,与添加时完全一样。
- 已启用是它自己那一列中的开关。关闭它会把该订阅源的日程从网格上隐藏,其余内容——行、URL、存储的副本——全部保留,因此重新打开就能让日程立刻回来。
- 移除会在确认后删除该订阅。它的日程会从网格上消失;另一端的日历不受任何影响。
当订阅源停止加载时
上次抓取失败的行会在名称旁显示一个警告图标,原因作为它的工具提示。
刷新失败会保留最后一份成功加载的副本,因此网格会继续显示它已有的日程,而不是因为某台服务器短暂宕机就清空。把 URL 改成一个无法加载的地址则不同:那个地址已经没有可以退回的良好副本,因此那些日程会消失,直到保存一个可用的 URL。
网络层面的失败都提示同一件事——该日历无法加载——无论是主机始终没有应答、URL 返回了错误,还是地址无法从公网访问。这是有意为之:一个会区分差别的字段,可能被用来探测不属于你的机器。而能够加载但不是有效 ICS,或超过 5 MB 上限的订阅源,则会给出具体说明。
限制
- 仅支持公开的订阅源 URL。 没有 Google 或 Outlook 账户连接,没有 CalDAV,也不支持需要登录的订阅源。
- 单向。 Ceum 读取订阅源,绝不写入。
在移动设备上
移动应用从它的日历设置中管理导入:添加、编辑、刷新、启用或停用以及删除,表单与删除确认均为原生弹层。导入的日程在那里同样以只读详情弹层打开。