Grouping multiple events in a single ics file (icalendar stream)

Federico Brubacher picture Federico Brubacher · Dec 1, 2009 · Viewed 47k times · Source

I want to group multiple events in a single ICS file(iCalendar stream) according to the RFC. This can be done but I have no idea how. Can anyone help me or give me an example ?

Here is what rfc says:

However, multiple iCalendar objects can be sequentially grouped
together in an iCalendar stream. The first line and last line of the iCalendar object MUST contain a pair of iCalendar object delimiter
strings. The syntax for an iCalendar stream is as follows:

 icalstream = 1*icalobject

 icalobject = "BEGIN" ":" "VCALENDAR" CRLF
              icalbody
              "END" ":" "VCALENDAR" CRLF

Answer

Bobbin picture Bobbin · Dec 2, 2009

here is a simple example of an icalendar file with two events.

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//bobbin v0.1//NONSGML iCal Writer//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VEVENT
DTSTART:20100701T080000Z
DTEND:20100701T110000Z
DTSTAMP:20091130T213238Z
UID:[email protected]
CREATED:20091130T213238Z
DESCRIPTION:Example event 1
LAST-MODIFIED:20091130T213238Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Example event 1
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART:20100701T120000Z
DTEND:20100701T130000Z
DTSTAMP:20091130T213238Z
UID:[email protected]
CREATED:20091130T213238Z
DESCRIPTION:Example event 2
LAST-MODIFIED:20091130T213238Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Example event 2
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

Copy this into a file and save it as events.ics and it should open in most icalendar compatible applications e.g. Outlook 2007, Sunbird, iCal. For more complicated examples you could try creating events in Google calendars and exporting the calendars to view the results or downloading preexisting calendars from somewhere like icalshare.com. The file format is similar to e-mail encoding in that it must be folded. Wikipedia has a pretty good article on ICalendar and if you Google "icalendar validator" you there are several services that will let you validate your files. Oh and if you get frustrated with it, you're not alone http://www.google.co.uk/support/forum/p/Calendar/thread?tid=366b19a87d1304ec&hl=en although it is a good spec imho, its implementations are very, er, different.

A little more detail on how you want to use it would help others help you.