Export Timeline as iCal

iCal or iCalendar is the Internet standard for sharing event schedules or session timelines among each other. The filename extension for iCal is .ics . It is supported by a number of applications such as Google Calendar, Apple Calendar,] Yahoo! Calendar, Lightning extension for Mozilla Thunderbird and SeaMonkey, and partially by Microsoft Outlook . In Open Event Organizer’s Server we have added a feature to export the Schedule of a particular Event in iCal format.

Core object

The top-level element in iCalendar is the Calendaring and Scheduling Core Object. The first line must be BEGIN:VCALENDAR, and the last line must be END:VCALENDAR; the contents between these lines is called the “icalbody”. The second line VERSION:2.0 indicates that the data is in iCalendar format. VERSION:1.0 was used to specify that data is in the old vCalendar format.

An example iCalendar File is:

BEGIN:VCALENDAR
BEGIN:VEVENT
SUMMARY:compiler-test
DTSTART;VALUE=DATE-TIME:20160607T000000
DTEND;VALUE=DATE-TIME:20160607T000000
COLOR:WhiteSmoke
DESCRIPTION:
EMAIL:dsads
GEO:0.0;0.0
LOCATION:
LOGO:
URL:
END:VEVENT
END:VCALENDAR

iCalendar 3.10

The icalendar package is a parser/generator of iCalendar files for use with Python. We are using this package to generate iCalendar files in server from the Schedule of an event so that they can be later accessed by web app and android app. The iCalendar file is generated through the API /api/v1/event/<event_id>/export/ical/which returns the filename of the iCalendar generated and the iCalendar file can then be received through URL /calendar/<path_to_file>/   .

Published by

saptaks

Full Stack Developer, Open Source enthusiast