2017-10-04 5 views
0

Ich bin neu in der Google API und stackoverflow, also bitte bitte mit mir. Also, ich habe ein ganzes Setup festgelegt, um die Ereignisse aus einem Google-Kalender, Autorisierung, Schlüssel und alle zu bekommen. Aber egal, was, ich kann keine Ereignisse zurückbekommen. Ich habe alle meine verschiedenen Kalender ausprobiert, aber keiner von ihnen gibt etwas anderes. Ich habe auch dieses handliche kleine Tool gefunden, das an meinen Dienst-Account gebunden ist, der mir zeigt, wann ich den Server erreiche, was er immer tut, und auch welcher von ihnen einen Fehler verursacht. Es scheint also, als würde alles gut funktionieren, aber es kommen immer noch keine Ereignisse an. Gibt es etwas Offensichtliches, das mir hier fehlt? Ich habe versucht, neue Kalender, neue Ereignisse, neue Konten zu erstellen und einfach alles neu zu erstellen. Ich habe auch Hilfe von erfahreneren Leuten gehabt, aber ohne Erfolg.Google API Kalender Probleme PHP

Dinge getan:

  • ein Google-Dienstkonto anlegen
  • Projekt anlegen Konto sagte
  • Anmeldeinformationen für das Projekt
  • Downloading JSON erstellen: s mit den Tasten und ID: s aus Konto und Projekt
  • Verknüpfen Sie diese in Code
  • Erstellen neuer Ereignisse von verschiedenen Arten in meinem primären cale Ndar
  • Bugfixing
  • Einen Antrag für die Ereignisse
  • Bugfixing, bis keine 401 oder 404 erscheint im Protokoll bei Google
  • Immer noch nichts
  • Tries es bei Google irgend tutorialpage zu testen
  • Works perfekt
  • ???

Dies unten ist der Code für alles außerhalb der Google-Bibliothek (auch richtig installiert) DIR_ROOT ist unser hausgemachtes DIR, die uns auf die richtigen Ordner nimmt

<?php 
 
\t \t \t require_once DIR_ROOT . '/vendor/autoload.php'; 
 
\t \t \t define('SCOPES', implode(' ', array(
 
\t \t \t Google_Service_Calendar::CALENDAR) 
 
\t \t \t)); 
 

 
\t \t \t putenv('GOOGLE_APPLICATION_CREDENTIALS=/var/www/html/Tv-Projektet-222309a0ac14.json'); 
 
\t \t \t $client = new Google_Client(); 
 
\t \t \t $client->useApplicationDefaultCredentials(); 
 
\t \t \t $client->setScopes(SCOPES); 
 

 
\t \t \t $service = new Google_Service_Calendar($client); 
 

 
\t \t \t // Print the next 10 events on the user's calendar. 
 
\t \t \t $calendarId = 'primary'; 
 
\t \t \t 
 
\t \t \t $optParams = array(
 
\t \t \t 'maxResults' => 10, 
 
\t \t \t 'orderBy' => 'startTime', 
 
\t \t \t 'singleEvents' => true, 
 
\t \t \t 'timeMin' => date('c'), 
 
\t \t \t); 
 

 
\t \t \t $results = $service->events->listEvents($calendarId, $optParams); 
 
\t \t \t if (count($results->getItems()) == 0) { 
 
\t \t \t print "No Hermes set for this day. Please update the calendar.\n"; 
 
\t \t \t } else { 
 
\t \t \t print "Upcoming events:\n"; 
 
\t \t \t foreach ($results->getIgtems() as $event) { 
 
\t \t \t \t $start = $event->start->dateTime; 
 
\t \t \t \t if (empty($start)) { 
 
\t \t \t \t $start = $event->start->date; 
 
\t \t \t \t } 
 
\t \t \t \t printf("%s (%s)\n", $event->getSummary(), $start); 
 
\t \t \t } 
 
\t \t \t } 
 
\t \t \t ?>

Antwort

0

Also, mit einer weiteren Woche Tests, fand ich heraus, dass ein Unternehmenskonto hier nicht funktioniert. Ich weiß nicht warum, aber als ich meine persönliche Gmail benutzte, funktionierte es gut.