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

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. https://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.

Defining a calendar

 

Boundary Offset direction
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.

Dynamic

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.

Reference