0

Je développe une application web en PHP pour prendre rendez-vous. J'ai fullcalendar et cela fonctionne très bien. J'ai également besoin d'enregistrer l'événement sur mon calendrier Google, directement. C'est possible?script php pour définir un événement sur google calendar

Dans google API, je n'ai trouvé que "comment ajouter des événements sur le calendrier utilisateur", pas dans mon agenda.

+1

Si vous souhaitez enregistrer dans un calendrier google spécifique dans tous les cas, sans que l'utilisateur final doive se connecter, vous devez effectuer cette opération côté serveur. Demandez à votre page de calendrier d'envoyer les données sur le nouveau rendez-vous à votre serveur (via ajax ou autre), puis utilisez PHP pour vous connecter à Google Calendar API et envoyer les données à Google. Authentifier en utilisant un compte de service. Google fournit une bibliothèque de client PHP pour vous aider avec ceci, et beaucoup de documentation et d'exemples. – ADyson

Répondre

0

Si vous utilisez un compte de service, vous pouvez enregistrer directement dans votre propre calendrier en accordant l'autorisation de compte de service à votre calendrier.

require_once __DIR__ . '/vendor/autoload.php'; 
// Use the developers console and download your service account 
// credentials in JSON format. Place the file in this directory or 
// change the key file location if necessary. 
putenv('GOOGLE_APPLICATION_CREDENTIALS='.__DIR__.'/service-account.json'); 
/** 
* Gets the Google client refreshing auth if needed. 
* Documentation: https://developers.google.com/identity/protocols/OAuth2ServiceAccount 
* Initializes a client object. 
* @return A google client object. 
*/ 
function getGoogleClient() { 
    return getServiceAccountClient(); 
} 
/** 
* Builds the Google client object. 
* Documentation: https://developers.google.com/api-client-library/php/auth/service-accounts 
* Scopes will need to be changed depending upon the API's being accessed. 
* array(Google_Service_Analytics::ANALYTICS_READONLY, Google_Service_Analytics::ANALYTICS) 
* List of Google Scopes: https://developers.google.com/identity/protocols/googlescopes 
* @return A google client object. 
*/ 
function getServiceAccountClient() { 
    try { 
     // Create and configure a new client object.   
     $client = new Google_Client(); 
     $client->useApplicationDefaultCredentials(); 
     $client->addScope([YOUR SCOPES HERE]); 
     return $client; 
    } catch (Exception $e) { 
     print "An error occurred: " . $e->getMessage(); 
    } 
} 

code arraché de mon php sample project for Google calendar si vous êtes intéressé ici un article sur la façon dont les comptes de service travail et comment créer un. Google development for beginners service accounts