Skip to main content
In an On-call system, schedules are the bridge connecting “incidents” to “people”. A well-designed on-call mechanism ensures someone always responds when incidents occur, while preventing any single person from being under high pressure for extended periods, enabling sustainable operations for the team. Flashduty On-call provides highly flexible scheduling capabilities, supporting daily, weekly, and custom rotation cycles, as well as complex scenarios like day/night shifts and primary/backup on-call.

Core Concepts


Understanding these concepts before configuration will help you better plan your schedules:
ConceptDescription
ScheduleAn independent on-call unit (e.g., “SRE Schedule”, “DBA Schedule”) containing multiple specific on-call rules
LayerA schedule can contain multiple layers of rules. For example, layer one is “Day Shift”, layer two is “Night Shift”. Multiple layers combine to form the complete on-call plan
RotationDetermines how on-call personnel hand off. For example, “handoff every Monday at 10 AM”
OverrideTemporarily adjust the on-call person for a specific time period without modifying permanent rules (commonly used for leave, temporary coverage)
Date MaskSelect which days to participate in on-call, e.g., Team A on-call Monday to Friday, Team B on weekends
Continuous RotationWhen enabled, rotation boundaries are calculated based on shift start time, preventing shifts from being split at 00:00. Only supported when date mask is configured. See Date mask and continuous rotation for details
Fair RotationThe system automatically adjusts rotation order to ensure each member gets opportunities in different time periods, preventing someone from always being on-call during weekends
Schedule Concepts

Configuration Process


1

Create a Schedule

Go to Schedule Management, click “Create Schedule”
  • Schedule Name: 1–40 characters, must be unique within the account
  • Owning Team: Specifies which team manages this schedule; team members gain edit permissions for this schedule
  • Schedule Description: Supports Markdown syntax, content can be included in notifications
2

Set Shift Notifications

To prevent forgetting shifts or handoffs, the system provides two notification triggers:
  • Advance Notification: Notifies both outgoing and incoming personnel N minutes before handoff (in 5-minute increments)
  • Scheduled Notification: Sends a daily notification at a fixed time (e.g., 8:00 AM) reminding who is currently on-call
After enabling either notification trigger, you need to configure notification channels:
  • Personal Channels: Send notifications directly to on-call personnel
    • Follow personal preference: Each responder receives notifications via their personally configured channels
    • Follow unified settings: Administrators select notification channels (SMS, email, and integrated IM apps)
  • Group Chat Channels: Send notifications to group chats, supporting the following platforms:
    • Feishu app, DingTalk app, Slack app (select chat groups via integrated IM apps)
    • WeCom bot, DingTalk bot, Feishu bot (send via webhook URL)
    • Slack bot, Telegram bot, Zoom bot
3

Define On-call Rules

This is the core step. You can add one or more layers of rules. Each layer includes:
  • On-call Personnel: Select members participating in rotation, supports grouping and primary/backup roles
  • Rotation Cycle: Supports four units — hour, day, week, and month — with values from 1 to 30. For example, “2 days” means rotation every 2 days
  • Handoff Time: When the rotation cycle is 1 week, you can specify the day and time for handoff
  • Fair Rotation: When enabled, the system automatically adjusts rotation order to prevent someone from always being on-call during weekends
  • Date Mask: Select which days of the week to schedule on-call. See Date mask and continuous rotation for details
  • Time Restriction: (Optional) Restrict actual on-call hours within each rotation cycle, with the following modes:
    • No restriction: Members are on-call for the entire rotation cycle
    • Daily: Set daily on-call time ranges (e.g., 09:00–18:00), multiple periods can be added
    • Weekly: Set day+time on-call ranges (e.g., Monday 09:00 – Friday 18:00), multiple periods can be added
When date mask is enabled, the “Weekly” restriction mode is unavailable since the date mask already provides day-of-week control. After setting time restrictions, there may be gaps with no one on-call — ensure other rules provide coverage.

Override and Leave


When on-call personnel need leave or have temporary conflicts, don’t modify permanent rules—use the “Override” feature instead.
1

Find the Time Period to Adjust

In the schedule calendar view, locate the time period needing adjustment
2

Select Override

Click on that time period, select “Override”
3

Configure Replacement Info

Select the replacement person and specific time range
  • Temporary Effect: Only affects the selected time period; original rules automatically resume after the override ends
  • Audit Trail: All override records are saved for later review
We recommend having a brief sync meeting between outgoing and incoming on-call personnel before official handoff to confirm outstanding issues and current system status—this is safer than just system notifications.

Date mask and continuous rotation


Date mask

Date mask controls which days of the week an on-call rule takes effect. By selecting different day combinations, you can flexibly implement differentiated scheduling between weekdays and weekends. Common use cases:
  • Weekday/weekend separation: Team A on-call during weekdays, Team B on weekends
  • Specific day scheduling: Assign certain personnel only on Monday, Wednesday, and Friday
  • Day/night shift by day: Configure day and night shift rules for weekdays, and full-day on-call rules for weekends

Continuous rotation

By default, schedules are divided at 00:00 each calendar day. If a shift spans midnight, it will be split into separate time segments. Default Rotation When continuous rotation is enabled, rotation boundaries are calculated based on shift start time rather than the 00:00 cutoff. Each on-call member will complete a full rotation cycle without being split at midnight. Continuous Rotation
Consider enabling continuous rotation in the following scenarios:
  • Rotation cycle is 24 hours
  • Shift start time is not 00:00
  • Day-of-week date mask is configured
  • Different rotation rules for weekdays and weekends

Common scheduling scenarios


Requirement: Ops team has A, B, C—each person on-call for one week, handoff Monday at 10:00 AM.Configuration:
  • Personnel sequence: A, B, C
  • Rotation cycle: 1 week
  • Handoff time: Monday 10:00
Result: A on-call one week → B on-call one week → C on-call one week → A on-call one week…Simple Rotation

View schedule details


Click a schedule name to enter the detail page, where you can view the scheduling calendar and manage on-call rules. The upper right corner provides these options:
  • View switcher: Toggle between “Week”, “Two Weeks”, and “Calendar” (month view)
  • Highlight my shifts: When enabled, your on-call shifts are highlighted for quick identification
Click any time slot in the calendar to view the current responders or create an override.

View Personal Schedule


Go to SchedulePersonal Schedule to view all your on-call assignments in a unified view. The top of the page shows the names of schedules where you are currently on-call. Click a name to navigate to the corresponding schedule details. You can switch the viewing range using the time range buttons in the upper right corner:
OptionDescription
1 DayView today’s on-call assignments
4 DaysView on-call assignments for the next 4 days
1 WeekView on-call assignments for the next week
2 WeeksView on-call assignments for the next 2 weeks (default)
1 MonthView on-call assignments for the next month
Use the left and right arrow buttons to navigate to previous or future time periods, and click the Today button to quickly return to the current time.

Escalation Rules

Configure alert notification rules and escalation paths

Service Calendar

Define workdays and rest days