Ical Recurring Appointment with RRULE EXDATE Examples


To create a recur ical in outlook just use
RRULE and EXDATE for exclude date.
With Recur RRULE you need to use below values few are optional :
//recur = “FREQ”=freq *(

freq = “SECONDLY” / “MINUTELY” / “HOURLY” / “DAILY”
/ “WEEKLY” / “MONTHLY” / “YEARLY”
enddate = date
enddate =/ date-time ;An UTC value
byseclist = seconds / ( seconds *(“,” seconds) )
seconds = 1DIGIT / 2DIGIT ;0 to 59
byminlist = minutes / ( minutes *(“,” minutes) )
minutes = 1DIGIT / 2DIGIT ;0 to 59
byhrlist = hour / ( hour *(“,” hour) )
hour = 1DIGIT / 2DIGIT ;0 to 23
bywdaylist = weekdaynum / ( weekdaynum *(“,” weekdaynum) )
weekdaynum = [([plus] ordwk / minus ordwk)] weekday
plus = “+”
minus = “-“
ordwk = 1DIGIT / 2DIGIT ;1 to 53
weekday = “SU” / “MO” / “TU” / “WE” / “TH” / “FR” / “SA”
;Corresponding to SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY,
;FRIDAY, SATURDAY and SUNDAY days of the week.
bymodaylist = monthdaynum / ( monthdaynum *(“,” monthdaynum) )
monthdaynum = ([plus] ordmoday) / (minus ordmoday)
ordmoday = 1DIGIT / 2DIGIT ;1 to 31
byyrdaylist = yeardaynum / ( yeardaynum *(“,” yeardaynum) )
yeardaynum = ([plus] ordyrday) / (minus ordyrday)
ordyrday = 1DIGIT / 2DIGIT / 3DIGIT ;1 to 366
bywknolist = weeknum / ( weeknum *(“,” weeknum) )
weeknum = ([plus] ordwk) / (minus ordwk)
bymolist = monthnum / ( monthnum *(“,” monthnum) )
monthnum = 1DIGIT / 2DIGIT ;1 to 12
bysplist = setposday / ( setposday *(“,” setposday) )
setposday = yeardaynum

//RRULE:FREQ=WEEKLY;INTERVAL=1;UNTIL=20151009T120000;WKST=SU;BYDAY=MO,WE,FR

//RRULE:FREQ=MONTHLY;INTERVAL=1;BYDAY=WE;BYSETPOS=1

Ical Recur appointment for every week

I created a recurring appointment from September 22th 2015 to November 22th 2015 Every WEEKLY.
Occurs every Tuesday effective 22-09-2015 until 17-11-2015 from AM 02:30 to AM 03:30 (UTC) Coordinated Universal Time.
Below is the sample example ical file for recurring ical week

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH

BEGIN:VEVENT
DTSTART:20150922T023000Z
DTSTAMP:20150922T023611Z
RRULE:FREQ=WEEKLY;INTERVAL=1;UNTIL=20151122T033000Z
UID:1780
Location:AP Test
DESCRIPTION:test
LAST-MODIFIED:20150922T023611Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY: service
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

If you want to create recurring appointment every week and want to exclude a particular date use
EXDATE:20150922T023611Z See below for example


BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH

BEGIN:VEVENT
DTSTART:20150922T053000Z
DTSTAMP:20150922T024414Z
RRULE:FREQ=WEEKLY;INTERVAL=1;UNTIL=20151122T063000Z
EXDATE:20150929T110000
UID:1782
Location: Test
DESCRIPTION:test
LAST-MODIFIED:20150922T024414Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:service
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

Ical Recurring Appointment with RRULE EXDATE Examples

Ical recur appointment for every day with exclude date.
I created a recurring appointemnt or event everyday from 22th September 2015 to 30th September 2015 with exclude date on 26th,27th september.
Occurs every day effective 22-09-2015 until 30-09-2015 from AM 03:30 to AM 04:30 (UTC) Coordinated Universal Time.
below is the sample example of ical reucurring ical file for everyday with EXDATE exclude date

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH

BEGIN:VEVENT
DTSTART:20150922T033000Z
DTSTAMP:20150922T024807Z
RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20150930T043000Z
EXDATE:20150926T090000,20150927T090000
UID:1783
Location:AP Test
DESCRIPTION:test
LAST-MODIFIED:20150922T024807Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:test service
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

Ical Recur appointment which recurs Every Thursday Friday
Occurs every Tuesday and Friday effective 22-09-2015 until 20-11-2015 from AM 06:30 to AM 07:30 (UTC) Coordinated Universal Time.
Below is the ical example, this is achieved by ;WKST=SU;BYDAY=TU,FR

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH

BEGIN:VEVENT
DTSTART:20150922T063000Z
DTSTAMP:20150922T025438Z
RRULE:FREQ=WEEKLY;INTERVAL=1;UNTIL=20151122T073000Z;WKST=SU;BYDAY=TU,FR
UID:1784
Location:AP Test
DESCRIPTION:servicen
LAST-MODIFIED:20150922T025438Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:test customer - test service
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

If you want to exclude a particular date then use EXDATE

Ical event for Every Other Sunday or Any Day Like I created for Occurs the fourth Tuesday of every 1 month effective 22-09-2015 until 22-12-2015 from AM 02:30 to AM 03:30 (UTC) Coordinated Universal Time.

This can be acheved by BYDAY=TU;BYSETPOS=4;WKST=SU;

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH

BEGIN:VEVENT
DTSTART:20150922T023000Z
DTSTAMP:20150922T025844Z
RRULE:FREQ=MONTHLY;INTERVAL=1;BYDAY=TU;BYSETPOS=4;WKST=SU;UNTIL=20151222T033000Z
UID:1785
Location:Test
DESCRIPTION:test
LAST-MODIFIED:20150922T025844Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:test
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

To delete or update a ical recur appointment you need to recreate it again, with METHOD as REQUEST rather than PUBLISH.

Below are some References Links for Ical Recurring appointments and vcal events.
Note for vcal the recurring may not support in all versions.
http://www.grokkingandroid.com/recurrence-rule-and-duration-formats/
http://icalevents.com/4437-correct-handling-of-uid-recurrence-id-sequence/
http://www.mattnworb.com/post/21850303360/how-to-get-ical-to-recognize-recurring-events-in
http://tools.ietf.org/html/rfc5545#page-37
http://www.kanzaki.com/docs/ical/rrule.html
http://icalevents.com/2447-need-to-know-the-possible-combinations-for-repeating-dates-an-ical-cheatsheet/
http://stackoverflow.com/questions/8029149/weekly-recurring-events-in-icalendar
https://theeventscalendar.com/knowledgebase/pro-recurring-events/+
https://tools.ietf.org/html/rfc2446#page-57
http://stackoverflow.com/questions/8029149/weekly-recurring-events-in-icalendar
http://stackoverflow.com/questions/8000152/recurrent-events-in-icalendar-not-working?lq=1
https://tools.ietf.org/html/rfc5545#appendix-A.3
http://www.ietf.org/rfc/rfc2445.txt
http://www.rahulsingla.com/blog/2010/12/parsing-ical-rrule
http://recurrance.sourceforge.net/
https://tools.ietf.org/html/rfc5545#page-167
https://msdn.microsoft.com/en-us/library/ee158304(v=exchg.80).aspx
http://www.calconnect.org/tests/iCalendar-RRULE-Interop/iCalendar-RRULE-Interop-Matrix.html
https://tools.ietf.org/html/draft-ietf-calsch-csct-00 == vcal recur rule

If you have any trouble in creating the recurring appointment in ical outlook let me know, I will be happy to help you. Just comment below.

Share me!