Calendar API 提供对提醒和通知的支持。
- 提醒是指在活动开始前指定的时间触发的闹钟。
- 借助通知,用户可以了解日历中活动的变更情况。
后者不应与推送通知混淆,推送通知不是发送给用户的,而是通知其他服务器日历的更改。
如需详细了解 Google 日历中的通知,请参阅修改 Google 日历通知。
提醒
提醒包含以下内容:
- 显示提醒的时间,以活动开始时间前多少分钟表示
- 要使用的交付方式(请参阅交付机制)
您可以为整个日历和单个活动指定提醒。用户可以为每个日历设置默认提醒;这些默认设置适用于相应日历中的所有活动。不过,用户也可以为个别活动替换这些默认设置,改为使用其他提醒设置。
默认提醒
提醒是特定于经过身份验证的用户的私密信息,不会在多个用户之间共享。因此:
- 默认提醒通过 CalendarList 集合进行操作,该集合包含特定于用户的日历元数据
- 它们无法通过包含所有用户共享的全局元数据的 Calendars 集合进行访问。
在执行活动列表查询时,系统也会返回默认提醒。
覆盖默认提醒
如需在插入或修改活动时替换默认提醒,请将 reminders.useDefault 设置为 false
,并使用新的提醒集填充 reminders.overrides。
"reminders": {
"useDefault": false,
# Overrides can be set if and only if useDefault is false.
"overrides": [
{
"method": "reminderMethod",
"minutes": "reminderMinutes"
},
# ...
]
}
如需恢复为默认的提醒设置,请将设置 reminders.useDefault 更新回 true
。
通知
日历支持以下通知类型:
- 创建活动:向用户的某个日历添加新活动。
- 活动变更:组织者修改了用户受邀参加的活动。
- 活动取消:用户受邀参加的活动被取消。
- 参加者回复:用户创建的活动的参加者更改了其回复状态。
- 日程:用户日历中所有活动的列表,在每天开始时发送。
用户可以决定为每个日历启用哪些通知,以及每种通知类型的传送方式。这些设置不会与其他用户共享。与默认提醒类似,您可以通过 CalendarList 集合访问这些提醒。
如需针对通过 API 插入或更新的活动向参加者发送电子邮件通知,请调用 insert
或 update
方法,并将 sendUpdates
参数设置为 "all"
或 "externalOnly"
。
交付机制
Google 日历提供的交付方式包括:
- 弹出式窗口。这些功能在移动平台和 Web 客户端上均受支持。
- 由服务器发送的电子邮件。
下表显示了每种提醒或通知类型支持的方法:
弹出式窗口 | 电子邮件 | ||
---|---|---|---|
提醒 | 默认提醒 | ✓ | ✓ |
替换提醒 | ✓ | ✓ | |
通知 | 创建活动 | ❌ | ✓ |
活动变更 | ❌ | ✓ | |
活动取消 | ❌ | ✓ | |
参加者回复 | ❌ | ✓ | |
内容安排 | ❌ | ✓ |