如何通过gdata Python API传播谷歌日历事件的提醒?

10 投票
1 回答
2876 浏览
提问于 2025-04-16 07:22

我正在开发一个Python应用程序,使用gdata来自动创建和维护一个供多人使用的日历。除了共享日历中的提醒功能外,一切都运行得很好。

这里有点背景:当你创建一个新项目时,会在你的名字下创建一个谷歌日历。当你邀请合作者时,这个日历会与他们共享。这样,当你创建任务时,大家都能在自己的日历中看到这些任务。这部分功能已经实现并且运行良好。

现在,我想让大家在待办任务的前一天收到提醒。所以我做了以下操作:

event = CalendarEventEntry()
#more stuff with the event, such as setting start and end times...
for w in event.when:
    w.reminder.append(Reminder(days=1, method="email"))

问题是,提醒只发送给日历的拥有者,而不是其他共享这个日历的人。

我找到了一些关于谷歌日历的信息,说明这个提醒应该在每个用户的设置中手动完成,但我不喜欢这个解决方案,因为我开发这个应用的初衷就是要自动更新日历;我还读到可以通过创建小组和使用小组日历来解决这个问题,但这意味着(a)我现有的用户无法受益,(b) 可能会增加不少额外的工作量,如果没有更好的解决方案,我愿意承担这些额外的工作。

1 个回答

4

提醒是针对每个用户的,这就是为什么当你创建或更新一个事件时,如果设置了特定的提醒,这些提醒只会对授权这个请求的用户可见。

你的应用程序是否拥有其他用户的登录信息?如果是这样的话,你可以用这些登录信息发送相同的更新请求。不过,这样做会增加每个用户都要发送请求的负担。

撰写回答