Я успешно извлечения Attendees Календарь событий с помощью следующего кода суть:Почему отображаемое имя не отображается в списке участников календаря?
require_once __DIR__ . '/vendor/autoload.php';
putenv("GOOGLE_APPLICATION_CREDENTIALS=" . __DIR__ . '/mt-service-account.json');
$client = new Google_Client();
$client->useApplicationDefaultCredentials();
$client->setApplicationName("APP NAME");
$client->setSubject("<APPROPRIATE_USER_EMAIL>");
$client->setScopes([
'https://www.googleapis.com/auth/calendar'
]);
$calendarService = new Google_Service_Calendar($client);
$optParams = array(
'singleEvents' => true,
'orderBy' => 'startTime'
);
$events = $calendarService->events->listEvents('<APPROPRIATE_CALENDAR_ID>', $optParams);
foreach ($events->getItems() as $event) {
print_r($event->getAttendees());
}
Однако, как можно видеть в ответ, не Отображаемое имя не возвращается.
Array
(
[0] => Google_Service_Calendar_EventAttendee Object
(
[additionalGuests] =>
[comment] =>
[displayName] =>
[email] => [email protected]
[id] =>
[optional] =>
[organizer] =>
[resource] =>
[responseStatus] => needsAction
[self] =>
[internal_gapi_mappings:protected] => Array
(
)
[modelData:protected] => Array
(
)
[processed:protected] => Array
(
)
)
)
посетитель в вопросе является Соприкосновением создателя события и имя и адрес электронной почты контактного лица появляется в типе помощи поля при создании события.
UPDATENB События не создаются через API. Они создаются через Календарь Google (т. Е. В браузере). Участники добавляются, введя имя участника в поле Добавить участника (Google type-assist found the Contact). Цель состоит в том, чтобы получить информацию о событиях программы (то есть с API), созданную нашими пользователями G Suite Calendar
@DalmTo Событие не было создано через API. Он был создан через Календарь Google (т. Е. В браузере). Участники были добавлены, набрав имя участника в форме «Добавить участника» (подсказки типа «Google» нашли контакт). Моя цель - получить программные данные (например, с API), созданные нашими пользователями G Suite Calendar – Jordan
Отображаемое имя добавляется только через веб-представление, если это учетная запись gmail, и у Google есть способ узнать, что такое имя пользователя. Это может также работать, если пользователь-организатор сказал, что пользователь в своих контактах google может быть способен захватить его так же. – DaImTo
@DalmTo Это кажется странным, поскольку кажется, что у Google есть способ узнать, что такое имя пользователя. Чтобы воспроизвести проблему: 1) Создайте контакт, отличный от Google, в представлении G-Suite «Контакты» (например, John Smith w/email [email protected]) 2) В веб-представлении «Календарь G Suite» создайте событие на своем календарь и в поле «Участники», начните вводить «Джон Смит». Вы увидите, что Google заполнит это имя (таким образом, предлагая мне знать, что Google знает имя пользователя) – Jordan