Как распространять напоминания для события календаря Google, созданного через API Python gdata? - PullRequest
10 голосов
/ 20 ноября 2010

Я работаю над приложением python, которое использует gdata для программного создания и ведения календаря для групп людей. Все работает нормально, за исключением напоминаний в общих календарях .

Некоторый контекст: когда вы создаете новый проект, для него создается календарь Google под вашим именем.И когда вы приглашаете соавторов, тот же самый календарь делится с ними.Таким образом, когда вы создаете задачи, каждый может увидеть их в своих календарях.Все это реализовано и работает отлично.

Теперь я хотел, чтобы за день до этого людям напомнили о предстоящих заданиях.Итак, я сделал это:

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

Дело в том, , что напоминание отправляется только владельцу календаря , а не другим людям, с которыми он делится.

Я нашел информацию о календаре Google, в которой говорится, что его следует делать вручную в настройках каждого пользователя , что мне не нравится, поскольку весь смысл моего приложения заключается в том, чтообновление календаря программно;Я также читал, что это можно решить путем создания групп и использования групповых календарей, но это будет означать, что (а) мои существующие пользователи не получат выгоду и (б), вероятно, значительные накладные расходы, которые я с радостью взял бы на себя, если бы не было достойныхрешение этой конкретной проблемы.

1 Ответ

4 голосов
/ 29 марта 2012

Напоминания характерны для каждого пользователя, поэтому при создании или обновлении события с конкретными настройками напоминаний они будут видны пользователю, авторизующему запрос.

Есть ли у ваших приложений учетные данные других пользователей? Если это так, вы можете отправить тот же запрос на обновление, используя эти учетные данные. К сожалению, это добавит накладные расходы на отправку запроса каждому пользователю.

...