Availability Information
Availability information enables On-Call Optimizer to assign on-call shifts around the existing commitments in the life of each team member.
Availability information is imported from the calendars that have been connected to your account and configured for import.
Each piece of availability information consists of the following attributes:
- The member to whom it relates.
- The start time.
- The end time.
- An action (prefer, or block).
- Descriptive details (title & summary).
Availability blocks
Block actions cause On-Call Optimizer to avoid assigning any shifts to the named member between the start and end times.
Blocks are created for any holiday or out of office event types and can also be triggered using one of the following strings in the title or description of an event:
not oncall
no oncall
not-oncall
no-oncall
noc
Availability preferences
Prefer actions allow members to hint to On-Call Optimizer that they would prefer to be assigned shifts between the start and end times.
Preferences must be manually triggered using one of the following strings in the title or description of an event:
prefer oncall
prefer-oncall
Event ownership and acceptance
Only events that are either organized or explicitly accepted by you are processed as sources of availability information.
Events created by other users which appear on a calendar (e.g. because you have been invited to participate in the event), will be ignored by On-Call Optimizer until you accept the event on the calendar. This check is in place to prevent any user with the permissions to place invited events on your calendar from being able to create availability information for you.
These rules are also applied if you configure a team or shared calendar which you have access to as a source of availabilty information in your On-Call Optimizer account. Only those events on the shared calendar which you have directly organized, or explicitly accepted will be imported as availability information for you in On-Call Optimizer.
Availability matching and weighting
Availability events for each user are matched against the shifts being assigned when any minute of an availability event overlaps with any minute of the shift. Matched events contribute a score to the optimization algorithm’s consideration of how optimal it would be to assign that shift to the user.
The score for each event is calculated starting from a base value determined by the action associated with the event, which is then weighted against how much of the of the overall shift duration the event overlaps with to provide a final score that is used by the algorithm.
The weighting uses a linear proportion of overlapping minutes:
- An event that overlaps with every minute of a shift will have a final weighted score the same as the base score for the event action.
- An event overlapping with half the minutes will result in a final weighted score that is 50% of the base score.
- An event overlapping for only a small number of minutes might result in a final weighted score that contributes only a very small score. (e.g. for a 24-hour shift containing 1440 minutes, any overlap less than 14 minutes will contribute less than 1% of the base score).
The combined effect of the matching and weighting process means that the assignment algorithm will always block or prefer a shift for a user with a matching event as its default behaviour when no other constraints exist - even in the case of small overlaps and weighted scores. However, when dealing with multiple conflicting availability events, or prior imbalances in the schedule that need to be resolved, availability events that match more of a shift will be more likely to be followed than those with only small overlaps.
Availability lifecycle
New availability information is imported to On-Call Optimizer from configured calendars on a regular basis to cover the time period from the present time until 90 days in the future. Any previously imported availability information that has been removed or updated in the source calendar will also be removed or updated as necessary in On-Call Optimizer.
Availability information will expire and be removed from On-Call Optimizer once the end time of the event is in the past, however any such information that was used for assignment of shifts will remain available in the history attached to the assignment event record even after it has expired from On-Call Optimizer’s cache of upcoming availability information.
Removing availability information
Individual events in the future
To remove availability information for a future time from On-Call Optimizer, update or remove the calendar event that the information is
sourced from (e.g. remove the associated holiday or out of office event, or update the event title or description to remove any
no-oncall
or similar tags).
On-Call Optimizer will detect the changes on the next refresh, or you can trigger an immediate refresh on the main Calendars page.
All future events sourced from a specific calendar
To remove all upcoming availability events sources from a specific calendar, turn-off the toggle button for that calendar in the corresponding row of the configuration for that connection. You can also disconnect a calendar product entirely from On-Call Optimizer which will remove all events that were imported from calendars provided by that connection.
More Information
For further details on how availability information is used in shift assignment, refer to the algorithm details documentation.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.