2016-07-20 1 views
0

Я использую google-api-php-client в моем php webapp с тех пор, как долгое время вставлял событие календаря, файл диска, отправлял почту и т. Д. .. Все работает нормально.Правильный способ управления напоминанием при создании события с помощью google-api-php-client

Что касается календаря, у меня есть запрос от пользователей удалить напоминания по умолчанию для определенного типа события.

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

Я не в состоянии использовали указанный метод, описанный в документе здесь:

https://developers.google.com/google-apps/calendar/v3/reference/events/insert

следующий код:

$event = new Google_Service_Calendar_Event(array(
    'summary' => 'Google I/O 2015', 
    'location' => '800 Howard St., San Francisco, CA 94103', 
    ... 
    ... 
    'reminders' => array(
    'useDefault' => FALSE, 
    'overrides' => array(
     array('method' => 'email', 'minutes' => 24 * 60), 
     array('method' => 'popup', 'minutes' => 10), 
    ), 
), 
)); 

будет работать только тогда, когда я использовать непосредственно целевой счет с OAuth в «попробуйте» на странице google.

Скажите, что я хочу создать событие для [email protected], не получая его напоминания по умолчанию, используя эту страницу google, я должен использовать [email protected] для OAuth. В этом случае напоминания по умолчанию не используются, и я получаю 2 напоминания (по электронной почте 24 * 60 и всплывающее окно 10), как и ожидалось.

Если я использую свою специальную учетную запись для OAuth, я могу создать событие на учетной записи [email protected] (поскольку календарь открыт), но в этом случае useDefault => false кажется опущенным, а значение по умолчанию напоминание, установленное на [email protected], используются вместо 2 ожидаемых ...

В результате одно и то же, используя мою веб-страницу или страницу Google google, я предполагаю, что это неправильное использование google -api-PHP-клиент.

Любая помощь будет оценена по достоинству.

Себ

ответ

0

Существует на самом деле поднял issue in GitHub относительно использования setUseDefault(false); И на основе из потока

Использование string вместо boolean, кажется, решить эту проблему.

Это было исправлено заменой

$set_reminders->setUseDefault(false);

с

$set_reminders->setUseDefault("false");

Я надеюсь, что работает для вас.

+0

Thx для вашей помощи, но я уже пробовал это исправление, и это не помогло с моей проблемой. Проблема, по-видимому, связана с тем, что я создал отдельную учетную запись (которая была авторизована в целевом календаре) для создания события. Использование непосредственно целевой учетной записи отлично работает, но с использованием отдельной учетной записи создается событие, но оно использует напоминания по умолчанию, событие со страницы «попробуйте» вызова вставки api из google calendar api doc. – Seb

Смежные вопросы