Я использую клиент API API Google для добавления событий в свой календарь. Идентификатор возвращается успешно после вставки & Когда я получаю это событие с помощью идентификатора, он отображает сводку и все правильно, и по какой-то причине событие появляется в моем календаре
Я использую учетные данные учетной записи службы. Есть ли что-то, что можно активировать?
Вот мой код
session_start(); require dirname(__FILE__).'/google-api-php-client-master/autoload.php'; $client_id = '<client ID>'; $service_account_name = '<Service Account Name>'; $key_file_location = dirname(__FILE__).'/API-Project-96c2a9122085.p12'; if (!strlen($service_account_name) || !strlen($key_file_location)) { echo missingServiceAccountDetailsWarning(); } $client = new Google_Client(); $client->setApplicationName("Client_Library_Examples"); $service = new Google_Service_Calendar($client); if (isset($_SESSION['service_token'])) { $client->setAccessToken($_SESSION['service_token']); } $key = file_get_contents($key_file_location); $cred = new Google_Auth_AssertionCredentials($service_account_name,array('https://www.googleapis.com/auth/calendar'),$key); $client->setAssertionCredentials($cred); if ($client->getAuth()->isAccessTokenExpired()) { $client->getAuth()->refreshTokenWithAssertion($cred); } $_SESSION['service_token'] = $client->getAccessToken(); $event = new Google_Service_Calendar_Event(); $event->setSummary("WHY IS THIS NOT WOKING?"); $start = new Google_Service_Calendar_EventDateTime(); $start->setDateTime(date('Ymd\TH:i:s',strtotime('2014-12-24 10:00:00'))); $start->setTimeZone('Australia/Melbourne'); $event->setStart($start); $end = new Google_Service_Calendar_EventDateTime(); $end->setDateTime(date('Ymd\TH:i:s',strtotime('2014-12-26 12:00:00'))); $end->setTimeZone('Australia/Melbourne'); $event->setEnd($end); $newEvent = $service->events->insert('primary', $event); $newEvent->getId(); $event = $service->events->get('primary', $newEvent->getId()); echo '<pre>'; print_r($event); echo '</pre>';