Deadline_Manager / calendar_tool.py
Bhaskar2611's picture
Create calendar_tool.py
25f2c20 verified
import os
import json
from googleapiclient.discovery import build
from google.oauth2.credentials import Credentials
def get_calendar_service():
if os.getenv("ENABLE_CALENDAR") != "true":
return None
try:
creds_json = os.getenv("GOOGLE_CALENDAR_CREDS_JSON")
if not creds_json:
return None
creds_data = json.loads(creds_json)
creds = Credentials.from_authorized_user_info(creds_data["installed"])
return build("calendar", "v3", credentials=creds)
except Exception as e:
print(f"Calendar setup failed: {str(e)}")
return None
def add_to_calendar(service, title, deadline):
if not service:
return "Calendar disabled"
event = {
"summary": title,
"start": {"dateTime": deadline},
"end": {"dateTime": deadline}
}
try:
service.events().insert(calendarId="primary", body=event).execute()
return "✅ Added to calendar"
except Exception as e:
return f"❌ Calendar error: {str(e)}"