A powerful feature of BeyondCron is the ability to separate a jobs definition from its scheduling. Rather than executing jobs at specific times, or intervals, as is the case with cron schedules, calendar scheduling executes jobs on the boundaries of calendar events.
Calendars are defined in your favourite calendar application—e.g. OSX Calendar, MS Outlook, etc…—and then published on calendar server in iCalendar format. e.g. http://calendar-server/store-hours.ics
Job start time
The job start time is based upon the start, end or both times of events within the calendar, with an optional offset before or after the offset.
|1 start of a calendar event.||3 before event boundaries.|
|2 end of a calendar event.||4 after event boundaries.|
|1 & 2 both.||5 outside of event boundaries.|
|6 inside of event boundaries.|
Should a job need to be temporarily (or permanently) rescheduled—e.g. due to server maintenance—then a simple update in the calendar is all that is required.