10

I'm working on a python app that uses the gdata to programmatically create and mantain a calendar for groups of people. Everything works OK, except for the reminders in shared calendars.

Some context: when you create a new project, a google calendar is created for it under your name. And when you invite collaborators, that same calendar is shared with them. That way, when you create tasks everybody can see them in their calendars. All of this is implemented and works fine.

Now, I wanted people to get reminded a day before about pending tasks. So I did this:

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"))

The thing is, the reminder is only being sent to the owner of the calendar, not the other people with whom it's shared.

I've found info about google calendar stating that it should be done manually in each user's settings, which is a solution I don't like, as the whole point of my app is updating your calendar programmatically; I've also read that it could be solved by creating groups and using group calendars, but that would mean (a) my existing users wouldn't be benefited and (b) probably significant overhead, which I would happily undertake if there's no decent solution for this particular issue.

lfborjas
  • 296
  • 3
  • 15
  • The Google employee/bot in the thread you linked to is saying that this is intentionally not allowed; reminders per user (set for each calendar and able to be overridden by event), not event (shared or not), which makes a lot of sense to me. I think you've got your answer there, though it isn't the one you want. – Cole Maclean Mar 19 '12 at 22:31
  • Indeed, was looking for an alternative. – lfborjas May 11 '12 at 20:00

1 Answers1

4

Reminders are specific to each users that is why when you create or update an event with specific reminder settings, those will be visible to the user authorizing the request.

Does your applications have the other users' credentials? If this is the case, you could send the same update request using those credentials. Unfortunately, that will add the overhead of sending a request for every user.

Alain
  • 6,044
  • 21
  • 27