How to create an iCalendar Feed from a Lotus Notes database
Mat Newman May 14 2012 16:00:14
One thing coming up over and over again on Twitter recently is how much users hate Lotus Notes because it can't provide them with an iCalendar Feed that they can sync with another service like Google or OSX iCal.Interestingly, the iCalendar standard was actually co-authored by a Loti (a Lotus employee), Frank Dawson (http://en.wikipedia.org/wiki/ICalendar)
Out of the box Lotus Notes accepts iCalendar feeds as a consumer (you can add feeds to your own Lotus Notes calendar using the "Add Calendars" tool), however Lotus Notes is not - by default - an iCalendar Feed provider.
Until now!
Figure 1: iTeam's Training Database as the source for iCalendar Feeds, consumed by Google and Lotus Notes:
Note: The time might appear to be out in the Lotus Notes calendar feed (above), however; That is Lotus Notes being it's usual clever self and adjusting the time for me because I'm currently in Timor-Leste and the Calendar feed is coming from Hobart, Tasmania :-)
So how did I do it? It's all in the database you can download at the end of this post, but essentially it's just a view that is embedded in a page, and the page is in the correct format to produce an iCalendar format .ics file.
Sorry for using @Today in a view selection formula folks, but it was one of the easiest ways to get only 2 weeks back and 2 months forward without touching anyone's data.
This database contains a view (iCalNotes) and a page (ical.ics).
You can try this out by adding the following URL into your own calendar system as a feed: test feed.
When these design elements are added to any standard database, they will enable users with HTTP access to the host Domino Server and at least 'read' access to the database to subscribe to an iCalendar Feed based on that databases content.
The Database requires a standard Lotus Domino calendar design, including a form called "Appointment", which contains the Following Fields:
Subject
From
iNetFrom (Optional)
StartDate
StartTime
EndDate
EndTime
Location
These design elements have been tested using a Standard Lotus Notes Mail Database Design. The design elements will work in ANY Lotus Notes Database that has a calendar form included, and uses the Standard form and field names indicated above.
Once installed, access the feed from: http://yourserver.com/yourmail.nsf/ical.ics
(where yourserver.com is your own domino server's internet address and yourmail.nsf is the full path to your mail database)
BE CAREFUL MODIFYING THE DESIGN ELEMENTS IN THIS DATABASE, THEY HAVE BEEN TESTED AND VALIDATED USING AN iCALENDAR VALIDATION SERVICE HERE. IN ADDITION THEY HAVE BEEN VERIFIED TO WORK WITH GOOGLE CALENDAR FEEDS, MAC OSX iCAL FEEDS AND LOTUS NOTES FEEDS.
No guarantees. No Liability. Your Mileage May Vary. Use at your own risk. Caveat Emptor.
Download Template (<- Right-Click and Save Target)
So there you go, how to create an iCalendar feed from any Lotus Notes database. Enjoy! :-)