Operating Lifecycle

Learn about the common operations and events that regularly occur for each schedule.

Time and tide wait for no one - On-Call Optimizer continuously monitors and assigns upcoming shifts to the best available members and ensures that any external destinations configured for the schedule remain synchronized with the assigned shifts.

How this occurs is easily understood as two processes that operate continuously, each checking the current state and taking any necessary actions to move towards the desired state at any time where a difference between two two states (current and desired) is detected.

Automatic Assignment

The automatic assignment process is responsible for ensuring the number of future shifts assigned for the schedule always remains above the desired horizon.

Steady-state Operation

During typical conditions, the current horizon (the end time of the final shift assigned in the schedule) is compared to the desired horizon and a new assignment is triggered whenever the current horizon is about to fall below the desired value.

The date the next automated assignment will fall due and the shifts that will be assigned at that time are visible in the Schedule Details side-bar on the right-hand side of each schedule.

The action taken once a new automatic assignment has been generated depend on the configuration of the Require manual confirmation? configuration setting for the schedule:

  • When enabled (default), the owner of the schedule will be notified of the new assignment, and required to review and manually confirm the shifts. No further actions will be taken by the automatic assignment process until this occurs.
  • When disabled, an attempt to automatically confirm the new assignment into the current assignment for the schedule will occur immediately after the assignment is generated.

Special Cases

First assignment for new schedules

A newly created schedule may not have any existing shifts from which the current horizon and therefore the due date for the next assignment can be calculated! To address this, all schedules are created with a configured start date in the future.

Prior to the start date no shifts are eligble for auto-assignment, and the start date itself is used instead of the the end time of the latest assigned shift when calculating the current horizon of the schedule.

This means that the first assignment for new schedules will occur N days prior to the configured start date, where N matches the desired horizon configuration of the schedule.

Unconfirmed automatic assignment

No further automatic assignment actions are undertaken while a previous automatic assignment is awaiting review. If this review does not happen promptly the schedule becomes at risk of members not receiving the desired horizon window of notification before their newly assigned shifts, or in the worst case, the schedule could run out of shifts entirely.

Pausing auto assignment or skipping time

Setting the start date to a future date at any time after the schedule has been created will result in the first assignment logic described above being triggered again - while the start date is in the future, it will be used as the basis for calculating the horizon when no other shifts exists. This can be used to cause On-Call Optimizer to skip assignment of shifts for a period of time if desired.

External Synchronization

The external synchronization process is responsible for importing and exporting information about a schedule from configured external systems.

Linked Schedule Configuration

For schedules configured with a link to an external On-Call Product, the following configuration details for the schedule will be regularly updated with the external values:

  • Name
  • Time zone
  • Members

All other configuration details including the shift configuration, cross-schedule availability, destinations and automatic assignment configuration are not changed by this process.

Destination Exports

Each configured destination is provided with new information whenever a new assignment is confirmed. Refer to the destinations documentation for further details.

Availability Information

The availability information for each member of the schedule is refreshed every hour and cached ready for use in any future assignments.


Last updated September 11, 2024