Automation and Scheduled Jobs
TimelyChurch runs three scheduled background jobs that keep the volunteer system healthy without admin intervention. They handle the boring-but-critical chores -- reminder emails, monthly stat resets, and recurring blackout date generation -- so you can focus on coordinating people instead of bookkeeping.
This article documents every volunteer-related scheduled job, what it does, when it runs, and how to inspect or override it.
Volunteer-Related Jobs at a Glance
| Job | Schedule | Purpose |
|---|---|---|
| Daily volunteer reminders | Daily, 18:00 | Email tomorrow's confirmed volunteers a reminder |
| Monthly serving stats reset | Monthly, 1st at 00:30 | Reset each member's "times served this month" counter |
| Recurring unavailability generation | Weekly, Sundays at 00:00 | Materialize recurring unavailability patterns into actual blackout dates |
Each is described in detail below.
1. Daily Volunteer Reminders (6:00 PM)
Schedule: Every day at 18:00 server time
What It Does
Each evening, the job looks at every assignment with Confirmed status whose event starts the next day. For each one:
- It pulls the volunteer's email from their person record.
- If they have an email, it sends them a reminder -- the same reminder template that the manual "Send Reminders" button uses.
- It records the time the volunteer was reminded so admins can see in the UI when the volunteer was last reminded.
- If the send fails (bad email, mail server hiccup), the error is noted and the job continues with the next volunteer.
Pending and declined assignments are skipped. Volunteers without an email address on file are skipped silently.
Why 6:00 PM?
Evening dispatch maximizes the chance that the email lands in the volunteer's inbox at the same time they're checking their phone after dinner -- well before bed, but late enough that it's still "tomorrow" in their head. If you want to send reminders at a different time of day, run the manual Send Reminders button on the event's Serving tab any time you like -- the automatic 6 PM run still goes out as well.
Customizing the Lead Time
The automatic run targets events 1 day from now -- i.e., tomorrow. Coordinators who want a longer warning window can use the manual Send Reminders button on an event further out to nudge everyone confirmed for that event ahead of time. The automated 6 PM run will still target tomorrow only.
Disabling
In normal operation the daily run is always on. If you ever need it paused for your church, contact TimelyChurch support and we can disable it for you.
2. Monthly Serving Stats Reset (1st of Month, 00:30)
Schedule: 1st of every month at 00:30
What It Does
Every group member tracks how many times they've served this month -- a counter the auto-scheduler uses to enforce per-team and per-person monthly serving limits (see Creating Serving Teams and Roles, Team Scheduling Settings). Each time someone serves, the counter increments. Without a reset, the counter would grow forever and the auto-scheduler would think everyone has hit their cap.
This job runs in the small hours of the 1st and:
- Looks at every group member whose counter belongs to a previous month (or has never been set).
- Sets the "times served this month" counter back to 0.
- Marks it as belonging to the new month so this month's serves are counted fresh.
Why a Job and an Inline Reset?
The system also resets the counter automatically whenever the auto-scheduler notices a member's counter still belongs to a previous month. The scheduled job is a safety net for two cases:
- A church has very low volunteer activity in a given month -- automatic resets only fire when the auto-scheduler runs, so a quiet team would never roll over.
- An interrupted process leaves a member's counter out of sync.
Because the job only updates members whose counter is stale, it's safe to repeat and cheap to run. If everyone has already been reset, the job updates nothing and exits.
Disabling / Customizing
The cadence is fixed to the 1st of the month at 00:30. If you ever need stats reset mid-month (e.g., after correcting a data import error), contact TimelyChurch support. A mid-month reset only affects members whose counter is already stale, so it has no effect on anyone whose counter is current.
3. Recurring Unavailability Generation (Weekly Sundays)
Schedule: Weekly on Sundays at 00:00
What It Does
Volunteers (or admins on their behalf) can configure repeating unavailability patterns like "every other Sunday" or "1st Sunday of the month" -- see Recurring Unavailability. Those patterns are stored as rules, not as concrete dates. The auto-scheduler and smart suggestions need concrete blackout dates to honor, so this job translates rules into dates.
Every Sunday at midnight:
- The job loads every active recurring pattern in every church.
- For each pattern, it computes which dates in the next 3 months match the rule.
- For each matching date, it adds a blackout date if one doesn't already exist. Existing dates are left alone; only genuinely new ones are inserted.
- It tags each generated date with the pattern's reason (or a default like "Recurring: 1st Sunday of Month") so admins know why the date is blocked.
Why Weekly Sundays?
Sundays-at-midnight gives the freshly generated dates time to settle in before the work week begins, and it keeps the visible blackout calendar always 3 months ahead of "today." Most churches' biggest auto-scheduling and assignment activity happens during the week, so the data is fresh by the time anyone reaches for it.
Customizing the Look-Ahead
The default 3-month window is a sensible balance between "far enough ahead to plan" and "not so far that patterns drift." If you need blackout dates generated further ahead, you can edit a volunteer's recurring pattern to refresh it, or contact TimelyChurch support. The next Sunday's automatic run continues with the standard 3-month window.
When to Run It Manually
- Right after a volunteer adds or changes their recurring pattern, if you don't want to wait until the next Sunday for the change to take effect. Editing the pattern refreshes its dates immediately.
- After a data restore, to make sure the blackout calendar matches the patterns currently saved.
Inspecting Activity
A successful daily reminders run sends a reminder to every confirmed volunteer for tomorrow's events (for example, 14 reminders for events on a given day).
A successful weekly unavailability run materializes the active recurring patterns into concrete blackout dates (for example, 27 unavailability dates from 9 patterns).
If reminder emails or blackout dates aren't appearing when they should, contact TimelyChurch support so we can check the automatic jobs for your church.
Related Reading
- Volunteer Notifications -- the email content and accept/decline flow that the daily reminders use
- Recurring Unavailability -- the volunteer-facing UI for creating the patterns the weekly job reads
- Managing Availability -- how monthly stats and blackout dates feed into the auto-scheduler
Tip: All three jobs are protected against overlap, so even if a previous run is still going (e.g., a slow mail server during the daily reminder send), the next scheduled run won't start a duplicate. The protection clears itself once the run finishes.