У меня странная проблема с API Календаря Google (через PHP с Zend_Gdata.) В рассматриваемом календаре у меня есть несколько повторяющихся событий, начинающихся в марте:
- 2010-04-19 9:30 - 16:00
- 2010-04-20 10:00 - 15: 30
- 2010-04-21 9:30 - 16:00
- 2010-04-22 10:00 - 15: 30
- 2010-04-23 9:30 - 12:30
Каждый из них повторяется бесконечно, но есть исключения в некоторые дни. Моя проблема заключается в том, что ни один из отмененных или измененных экземпляров не возвращается API после 2010-07-15
. В течение недели 2 августа все 5 из этих повторений отменяются, и они отображаются как таковые в Календаре Google, но API не возвращает исключений для этих дней.
Я запрашиваю календарь со следующим кодом:
$gc = new Zend_Gdata_Calendar($client);
$query = $gc->newEventQuery();
$query->setUser(/*calendar ID goes here*/);
$query->setVisibility('private');
$query->setProjection('full');
$query->setOrderby('starttime');
$query->setSortorder('ascending');
$query->setMaxResults(500);
$query->setSingleEvents("false");
$query->setStartMin('2010-06-01 00:00:00');
$query->setStartMax('2010-09-20 00:00:00');
$query->setQuery(/*title of the events*/);
return $gc->getCalendarEventFeed($query);
Результирующий канал содержит все 5 повторений и «отмененных» объектов событий для всех удаленных экземпляров до 2010-07-15
, где они произвольно останавливаются. Я должен отметить, что массив getWhen()
в каждом повторении содержит правильное время (то есть он пропускает отмененные даты), но из-за способа кодирования моей программы важно, чтобы у меня был доступ к фактически отмененным объектам событий.
Что может быть причиной того, что API не возвращает все отмененные / измененные события? Максимальные результаты не могут быть проблемой, поскольку в ленте только около 30 событий. Я в основном из идей.
Заранее спасибо.