27 lines
815 B
Python
27 lines
815 B
Python
from intra import IntraAPIClient
|
|
import json
|
|
from icalendar import Calendar, Event, vCalAddress, vText
|
|
from datetime import datetime
|
|
|
|
|
|
cal = Calendar()
|
|
cal.add('prodid', '-//Codam Events//Duinvoetje.nl//')
|
|
cal.add('version', '2.0')
|
|
|
|
|
|
|
|
ic = IntraAPIClient()
|
|
response = ic.get("users/187348/events_users")
|
|
for entry in response.json():
|
|
ical_event = Event()
|
|
event = entry['event']
|
|
ical_event.add('uid', event['id'])
|
|
ical_event.add('name', event['name'])
|
|
ical_event.add('description', event['description'])
|
|
ical_event.add('dtstart', datetime.fromisoformat(event['begin_at'].split('.')[0]))
|
|
ical_event.add('dtend', datetime.fromisoformat(event['end_at'].split('.')[0]))
|
|
ical_event.add('location', event['location'])
|
|
cal.add_component(ical_event)
|
|
|
|
print(cal.to_ical().decode('UTF-8'))
|