Duty Schedule Overview
Set up schedules, personnel, specialties, confirmation settings, and scheduling rules.
Duty Schedule
The Duty Schedule module manages on-call rotations, routes urgent notifications to the right personnel, and gives voice agents the ability to reach on-duty staff automatically during a call.
What It Does
- Maintains a calendar of who is on-call and when
- Stores a personnel roster with contact details and skill specialties
- Routes voice agent notifications to the correct on-call person based on specialty and priority
- Tracks confirmation responses from staff via SMS
- Escalates automatically when someone doesn't respond within the configured window
- Injects active scheduling rules into the AI assistant so it follows your team's policies
Core Concepts
Schedules
A schedule entry assigns a staff member to an on-call window. Each entry has a start and end date/time, a priority (lower number = higher priority), and links to a personnel record.
When multiple people overlap in a window, they are all considered on-duty and ordered by priority.
Repeating shifts
A rotation that repeats is one entry, not one per shift. In the schedule form, set Repeats to Every day, Every week, Every two weeks or Every month, and optionally Until a date.
- Start and End are the first shift. Each later shift starts and ends at the same local time in your tenant timezone, including across a daylight-saving change.
- A shift that starts on the Until date still counts. Leave Until empty to repeat until you change it.
- A repeating shift must be shorter than the gap between repeats. For example, a daily shift must be shorter than a day.
- A monthly shift on the 31st falls on the last day of shorter months.
- The calendar shows every shift, marked with a repeat icon.
- Opening a shift and saving it changes every shift of that entry. To change one shift only (a week off, a swap), open that shift and press Skip this shift; the rest of the series stays. If someone covers it, add a one-off entry for them.
- An entry saved before repeating shifts were supported, marked as repeating but with a first shift longer than the gap between repeats, is treated as a one-off. Edit it to make it repeat.
- The scheduling assistant can create, edit and skip repeating shifts too, for example "Put Priya on call every Saturday 8 AM to 8 PM until the end of the year".
Repeating shifts count everywhere "who is on duty" is asked: the on-duty card, voice agent transfers and the duty tools, notifications and confirmations, and campaign questions routed to a team. The on-duty card also shows until when the current person is on duty.
Personnel
The personnel roster stores staff members with first name, last name, email, phone, and specialties. Phone numbers are used for SMS notifications from voice agents.
Specialties
Specialties are labeled skills or roles (e.g. HVAC, Electrical, Network Security) assigned to personnel. Voice agents can request a specific specialty when sending a notification, and the system will prefer personnel who have that specialty.
Confirmation Flow
When a voice agent uses the duty-notify-confirm tool, the system:
- Builds an ordered queue of currently on-duty staff (filtered by specialty if requested, then sorted by priority)
- Sends an SMS to the first person in the queue
- Waits for a reply within the configured timeout (default 20 minutes)
- If the person replies YES (or similar), the notification is marked confirmed
- If they reply NO or don't reply in time, the system escalates to the next person
- If the entire queue is exhausted without confirmation, the configured fail behavior runs (notify default contact, notify fallback contact, or log only)
Rules & Preferences
Plain-text scheduling rules are stored per tenant and injected into the AI assistant's system context on every conversation. This lets teams encode recurring policies (e.g. "Always contact the HVAC-specialty technician first for heating or cooling issues") without repeating them in every message.
The assistant proactively suggests saving policies it detects in conversation.
Voice Agent Tools
Three tools are available for voice agents to interact with the Duty Schedule module. They can be enabled per campaign in the campaign settings under the Tools tab.
| Tool |
Purpose |
duty-check |
Look up who is currently on duty |
duty-notify |
Send a notification to on-duty staff (fire and forget) |
duty-notify-confirm |
Send a notification and track SMS confirmation with escalation |
See Voice Agent Tools for full parameter and response documentation.
Setting Up
- Add personnel — Go to Duty Schedule → Personnel and add your staff with their phone numbers and specialties.
- Create schedules — Use the calendar view to assign staff to on-call windows. For a rotation, use Repeats instead of entering each shift.
- Configure settings — Set a default contact (used when no one is scheduled) and configure the confirmation settings if you need the
duty-notify-confirm flow.
- Enable tools on campaigns — In your voice agent campaign, go to the Tools tab and enable the duty tools you want the agent to use.
- Write scheduling rules — Go to the Rules tab and add any recurring policies you want the AI assistant to follow automatically.