juncture5978 Geschrieben 15. Oktober 2019 Teilen Geschrieben 15. Oktober 2019 Guten Morgen zusammen, ich bin schon seit länger Zeit auf der Suche, nach einer brauchen Lösung / einem Beispiel für die Terminverwaltung eines iClouds ODER Google Kalenders via PHP. Würde mir gerne via PHP anzeigen lassen können, in welchen Zeiträumen ich keine Termine habe. Termine eintragen, ändern und löschen wäre dann der nächste Step. Ich hoffe ihr könnt mich hierbei unterstützen, denn ich bin an der Thematik bereits seit Wochen dran und verzweifle. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gooose Geschrieben 15. Oktober 2019 Teilen Geschrieben 15. Oktober 2019 Ich hatte mal ein Probeprojekt für ein Vorstellungsgespräch gebaut. Es geht zwar um vue, aber vielleicht kannst du damit was anfangen. Hier noch ein kleiner Blog Artikel dazu. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
juncture5978 Geschrieben 15. Oktober 2019 Autor Teilen Geschrieben 15. Oktober 2019 würde wirklich gerne ohne die Vue Library arbeiten Aber dennoch schon mal vielen Dank - vllt gibt es ja noch andere Lösungsansätze. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gooose Geschrieben 15. Oktober 2019 Teilen Geschrieben 15. Oktober 2019 Schau dir mal das PHP Quickstart Beispiel von Google an. Lies dich erst mal in das Thema rein. Vielleicht bringt dich das weiter. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
juncture5978 Geschrieben 15. Oktober 2019 Autor Teilen Geschrieben 15. Oktober 2019 (bearbeitet) das Beispiel hatte ich bereis auch gesehen, bringt mir leider nichts, da dieser Code auf command line interface Ebene arbeitet. Möchte ja gerne was visuelles Bearbeitet 15. Oktober 2019 von Ghost108 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
juncture5978 Geschrieben 15. Oktober 2019 Autor Teilen Geschrieben 15. Oktober 2019 Update: Habe jetzt diese Variante entdeckt: https://developers.google.com/calendar/quickstart/js Diese klappt soweit ganz gut. Autorisierung durch Google Konto erfolgt, und Termine werden angezeigt. Allerdings würde ich gerne die "freien Termine" sehen. Dafür habe ich eine Google Api FreeBusy gefunden: https://developers.google.com/calendar/v3/reference/freebusy/query Leider fehlt hier ein Beispiel. Kann mich dabei jemand unterstützen ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
äymm Geschrieben 15. Oktober 2019 Teilen Geschrieben 15. Oktober 2019 Prinzipiell kannst du ja sowohl für iCloud als auch für Google Calendar einen Link mit Lesezugriff generieren. Die ICS-Datei die du dort jeweils bekommst musst du halt auslesen (gibts Libraries für, notfalls selber machen, sonderlich komplex ist der ICS Standard nicht). Daraus kannst du dir dann ne Liste mit Terminen zusammen basteln bzw prüfen wann du welche hast und wann nicht Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
juncture5978 Geschrieben 15. Oktober 2019 Autor Teilen Geschrieben 15. Oktober 2019 das würde mir aber für den nächsten Schritt nicht weiterhelfen, wenn ich Termine auch bearbeiten / anlegen / löschen möchte Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
juncture5978 Geschrieben 17. Oktober 2019 Autor Teilen Geschrieben 17. Oktober 2019 habe jetzt folgenden Code für die freebusy api: <?php require_once 'vendor/autoload.php'; $client = new Google_Client(); $client->setScopes('https://www.googleapis.com/auth/calendar'); $client->addScope(Google_Service_Calendar::CALENDAR); $client->setDeveloperKey("API_KEY"); $service = new Google_Service_Calendar($client); $freebusy = new Google_Service_Calendar_FreeBusyRequest(); $freebusy->setTimeMin('2019-10-01T08:00:00.000-07:00'); $freebusy->setTimeMax('2019-10-31T10:00:00.000-07:00'); $freebusy->setTimeZone('Europe/Berlin'); $freebusy->setGroupExpansionMax(10); $freebusy->setCalendarExpansionMax(10); $mycalendars = array( array ("id"=>"primary") ); $freebusy->setItems($mycalendars); $createdReq = $service->freebusy->query($freebusy); echo '<pre>'; print_r($createdReq); echo '</pre>'; ?> Als Antwort bekomme ich allerdings: Google_Service_Calendar_FreeBusyResponse Object ( [calendarsType:protected] => Google_Service_Calendar_FreeBusyCalendar [calendarsDataType:protected] => map [groupsType:protected] => Google_Service_Calendar_FreeBusyGroup [groupsDataType:protected] => map [kind] => calendar#freeBusy [timeMax] => 2019-10-31T17:00:00.000Z [timeMin] => 2019-10-01T15:00:00.000Z [internal_gapi_mappings:protected] => Array ( ) [modelData:protected] => Array ( ) [processed:protected] => Array ( ) [calendars] => Array ( [primary] => Google_Service_Calendar_FreeBusyCalendar Object ( [collection_key:protected] => errors [busyType:protected] => Google_Service_Calendar_TimePeriod [busyDataType:protected] => array [errorsType:protected] => Google_Service_Calendar_Error [errorsDataType:protected] => array [internal_gapi_mappings:protected] => Array ( ) [modelData:protected] => Array ( ) [processed:protected] => Array ( ) [errors] => Array ( [0] => Google_Service_Calendar_Error Object ( [domain] => global [reason] => internalError [internal_gapi_mappings:protected] => Array ( ) [modelData:protected] => Array ( ) [processed:protected] => Array ( ) ) ) [busy] => Array ( ) ) ) ) Was bedeutet für mich denn Error reason: internal error ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.