Was macht recipe-termin-freie-zeit-finden?
Abfrage des Frei/Beschäftigt-Status von Google Kalendern mehrerer Nutzer, um einen passenden Meeting-Slot zu finden.
Beschreibung
Dieses Rezept ermöglicht es, die Verfügbarkeit mehrerer Google Kalender-Nutzer gleichzeitig zu prüfen und einen gemeinsamen freien Zeitraum zu ermitteln. Es nutzt die Google Calendar API freebusy-Abfrage.
Voraussetzungen
- Google Cloud-Projekt mit aktivierter Google Calendar API
- Authentifizierung mit einem Dienstkonto oder OAuth 2.0
- Zugriff auf die zu prüfenden Kalender
Verwendung
- Konfiguriere die Authentifizierung (z. B. Umgebungsvariable
GOOGLE_APPLICATION_CREDENTIALS). - Führe das Skript aus und übergib eine Liste von E-Mail-Adressen.
- Das Skript gibt einen oder mehrere freie Zeitfenster zurück.
Beispiel
from google.oauth2 import service_account
from googleapiclient.discovery import build
# Authentifizierung
SCOPES = ['https://www.googleapis.com/auth/calendar.readonly']
creds = service_account.Credentials.from_service_account_file(
'service_account.json', scopes=SCOPES)
service = build('calendar', 'v3', credentials=creds)
# Nutzerliste
users = ['[email protected]', '[email protected]', '[email protected]']
# Zeitraum festlegen
import datetime
now = datetime.datetime.utcnow().isoformat() + 'Z'
end = (datetime.datetime.utcnow() + datetime.timedelta(days=7)).isoformat() + 'Z'
# Frei/Beschäftigt abfragen
body = {
'timeMin': now,
'timeMax': end,
'items': [{'id': email} for email in users]
}
response = service.freebusy().query(body=body).execute()
print(response)
Plattformen
- Claude Code
- Cursor
- Codex
Lizenz
Siehe LICENSE.