Convidar pessoas para evento no google calendar através de PHP
12/06/2023
0
Estou tentando fazer o convite de uma pessoa para um evento no Google Calendar onde é feito a criação do evento sem problemas, porém na parte do convite é retornado o seguinte erro: Fatal error: Uncaught Google\Service\Exception: { "error": { "errors": [ { "domain": "calendar", "reason": "forbiddenForServiceAccounts", "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } ], "code": 403, "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } } in D:\amwebagencia\testes-\agendamento-google\vendor\google\apiclient\src\Http\REST.php on line 134. Já fiz pesquisas a respeito desse erro mas até então sem resultados relevantes.
require_once 'vendor/autoload.php'; // Autorização - Está funcionando corretamente $client = new Google_Client(); $client->setAuthConfig('json-google-calendar/arquivo.json'); $client->addScope(Google_Service_Calendar::CALENDAR); $service = new Google_Service_Calendar($client); // Criação de evento - Está funcionando corretamente $calendarId = 'bbb@gmail.com'; // ID da agenda (por padrão, usa a agenda primária) $evento = new Google_Service_Calendar_Event(array( 'summary' => 'Título do Evento 22', 'description' => 'Descrição do Evento', 'start' => array( 'dateTime' => '2023-06-11T16:02:00', 'timeZone' => 'America/Sao_Paulo', ), 'end' => array( 'dateTime' => '2023-06-11T17:02:00', 'timeZone' => 'America/Sao_Paulo', ), )); $eventoInserido = $service->events->insert($calendarId, $evento); echo 'Evento inserido com sucesso. ID do Evento: ' . $eventoInserido->getId(); // Convidar pessoa para evento - Está retornando o erro: Fatal error: Uncaught Google\Service\Exception: { "error": { "errors": [ { "domain": "calendar", "reason": "forbiddenForServiceAccounts", "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } ], "code": 403, "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } } in D:\amwebagencia\testes-\agendamento-google\vendor\google\apiclient\src\Http\REST.php on line 134 $eventId = $eventoInserido->getId(); // ID do evento específico $email = 'xxx@gmail.com'; // E-mail da pessoa que você deseja convidar $attendee = new Google_Service_Calendar_EventAttendee(array( 'email' => $email, )); $event = $service->events->get('bbb@gmail.com', $eventId); $attendees = $event->getAttendees(); $attendees[] = $attendee; $event->setAttendees($attendees); $updatedEvent = $service->events->update('bbb@gmail.com', $eventId, $event, array('sendUpdates' => 'all')); echo 'Pessoa convidada com sucesso para o evento.';
Anderson
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)