With the "Scheduled Tasks" module, you can make certain things on your HarmonySite happen automatically, such as sending out reminder emails or automatic summaries.
The Scheduled Tasks module is a premium feature. To enable it, please email admin@harmonysite.com.
If you enable the Scheduled Tasks module, then you'll have these eight tasks available right away:
- Assessments outstanding summary email
Inform leadership about any assessments that have not yet been processed - Change event from availability-tracking to attendance-tracking
Switch events from availability-tracking mode to attendance-tracking mode, on the day of the event - Create invoices
Create invoices for upcoming member dues - Event availability reminders
Remind members to indicate their availability for upcoming events - Event availability summary email
List any changes to member availability for events since the last time the task was run - Invoice reminders
Remind members to pay their invoices - Members at Risk summary email
List any members who have dropped below a certain threshold of attendance - Song reminders
Remind members to learn their music
In addition to these tasks, you can ask us to create new tasks, to automate repetitive tasks you're tired of doing manually, and we will develop them for you (if possible).
For more information on how to enable and edit tasks, see the section Viewing and editing Scheduled Tasks.
Available Scheduled Tasks
1. Assessments outstanding summary email
This will send an email to the person/people you specify, containing a simple list of all assessments that still need to be reviewed (by any member).
You need to specify the From and To fields. You can also customise Subject and Message if you want.
Note: the program will automatically fill in the information where it says [script_output] in the email message, so make sure you don't delete this line:
2. Change event from availability-tracking to attendance-tracking
This will look through every event that's starting now (or soon, as you can specify), and automatically change it from availability-tracking to attendance-tracking mode, at the time that the event starts (or just before).
It's possible to configure how many minutes before the start of each event this happens (e.g. 30 minutes). To do so, add a line that reads minutes=30 in the box called "Other parameters".
Then tick the box called "Enabled?".
(For more information, see: Attendance and Availability)
3. Create invoices
This will look through all the fee schedules in the Financial Members Report. For any invoices that are due to be created "today", it will create them and email them to the members automatically.
You don't need to configure anything with this task – just tick the box for "Enabled?".
To determine how far in advance of each member's "expiry date" the invoices are sent, examine your website configuration page. On the Payments tab there's a option called "Warn members about upcoming dues this far in advance".
(For more information, see: Setting up Member Invoicing)
4. Event availability reminders
This will send an email to remind members that they need to indicate their availability for events coming up soon, if they haven't done so already.
This can be customised by way of several parameters that can be added/edited in the Other parameters box...
The following parameters can be configured...
- days - The number of days ahead to look for events to remind people about. By default, this is 21, so the system will remind members if they haven't indicated their availability by the time it's 21 days before the event. You can change this number, if you want.
- days_after_repeat - The number of days after the initial event-emails have been sent to send reminders - and then repeat every this number of days. This cannot be used with the days parameter (above)
- new_member_grace_days - skip members that are newly joined (within this many days ago, according to their membership record Registration date
- event_type - Which type of events to look at. This would take the form event_type=3, where the "3" is the database ID of the event category record (e.g. "Rehearsal"). If this parameter is omitted, then all events are checked.
5. Event availability summary email
This will send an email to the person/people you specify, informing them of any changes to members' availability. By default, this will run once per day, so it will be a "daily availability summary".
To use this task, you first need to set up a "Website Parameter" called "availsumm_last_run", in a format like: 2024-08-10 21:04:05 (that is, the date in the format YYYY-MM-DD, followed by a space, then the time as hours, minutes, and seconds). The first time that the task is run, it will list any availability changes that members made between that date and the current time that the task is run. The parameter is automatically updated after the task is run.
In the Scheduled Task, you also need to specify the From and To fields. You can customise the Subject if you want.
Website parameters can be administered by clicking the "Website Parameters" link on the "Website Config/Info" line of your Admin Dashboard.
6. Invoice reminders
This will send an email to any members who haven't paid their membership invoice a certain number of days after it was originally sent. The number of days depends on the "days" parameter:
By default, this is 7, so the system will remind members if they haven't paid their invoice 7 days after it was originally sent. You can change this number, if you want.
7. Members at Risk summary email
This will send an email to the person/people you specify, informing them of any members who have dropped below a certain threshold of attendance.
For the email, you need to specify the From and To fields. You can also customise Subject and Message if you want.
Note: the program will automatically fill in the information where it says [script_output] in the email message, so make sure you don't delete this line:
Besides the email, you can customise the options used to calculate the report:
These options are as follows:
- percentage – The threshold to determine if a member is "at risk".
For example, if "percentage" is 75, then the system will consider any members to be "at risk" whose attendance has dropped below 75%. - days – The number of days to look for recent events and check if the member attended.
For example, if "days" is 90, then the system will consider the last three months of the member's attendance. - grouping – The ID of a member grouping; the system will consider only the members in this grouping.
By default, the grouping with ID 1 will be "Regular Members".- To check the ID of a member grouping, go to the Member List and click on one of the groupings such as "Active Singers" or "Members and Helpers".
Look at the URL in your browser, and you'll see something like &grouping=7 at the end:This means that the ID of this member grouping is 7.
(For more information about member groupings, see Administering Member Groupings.)
- To check the ID of a member grouping, go to the Member List and click on one of the groupings such as "Active Singers" or "Members and Helpers".
- categories – The IDs of one or more event categories; the system will only look at members' attendance for events in these categories. If no "categories" parameter is specified, then all events are examined.
To determine the ID of an event category, you can do the following:- Edit an event or click "Add new event" to create a new event.
- Under "Type of event", click the link which says "Click here to administer Event Categories":
- This will take you to the "Categories Administration" page.
Click the "edit" icon on the right-hand side of the relevant category. - This will take you to the "Category Details" page.
Look at the URL in your browser, and you'll see something like &id=3 at the end:
This means that the ID of this event category is 3.
- Edit an event or click "Add new event" to create a new event.
If you change these parameters, you may also want to reword the email message above to match the numbers you specify.
8. Song reminders
This will send an email to members a certain number of days before they should have done something with a song, such as having it "off-book" or submitting an assessment.
You need to specify From, To, Subject, and Message.
For the To address(es), you would probably want to use a mailing list like "activesingers@mychorus.com". (For more information, see our guide on Mailing Lists.)
Subject and Message can contain these parameters:
- [SONG] – This will be replaced with the name of the song
- [LINK] – This will be replaced with a link to the song's page
- [DATE] – This will be replaced with the date that the song needs to be "off-book" or similar
The Other parameters box can contain these parameters:
- days – The number of days in advance that the reminder email should be sent out.
For example, if the song's "off-book" date is the 10th January, and you write days=5 here, then the reminder email will be sent out on the 5th January. - field – The database field to use. The most common requirement is the "off-book" date, written here as field=OffBook.
If you want to use a different field, then you can check this field's name as follows:- Click the "Admin" link in the top-right corner to go to your Admin dashboard.
- In the Website Config/Info section, click "Database table summary".
- Scroll down to the line which says "Songs", and click "Field list".
- Look for the field you need, and make a note of the "Internal name" in the left-most column.
This is the parameter value you need to insert above.
For example, to remind members whenever a song needs to be "off-book" in 5 days' time, you would write something like this:
And specify parameters as follows:
Viewing and editing Scheduled Tasks
- Click the "Admin" link in the top-right corner to go to your Admin dashboard.
- In the Website Config/Info section, click "Scheduled Tasks":
- You'll see a list of all the Scheduled Tasks, as well as information about if/when they are set to run.
Click the "edit" button on the right-hand side of any of the tasks. - The Name and Description tell you what the task does:
- Below this, you'll see the Schedule section.
The first option is: Enabled?
You can tick or untick this to turn the task on or off: - Next, you can set the task's schedule.
You can choose the following options:- Several times a day – the task will run every few minutes:
- Daily – the task will run every day at a certain time:
- Weekly – the task will run on certain days of the week, at a particular time:
- Monthly – the task will run every month, on a particular day and time:
- Several times a day – the task will run every few minutes:
- Next, you'll see the Email section.
If the tasks involves sending automatic emails, then you may be able to configure the emails here.
(This is mentioned in the guide to each task above.)
First of all, you can specify the position that the email will be "From": - And the email address(es) to send the email "To":
You can copy-and-paste multiple email addresses into this box, separated by spaces, newlines, commas, and/or semicolons. - The subject of the email:
- The message content:
Not all Scheduled Tasks allow you to customise the email message.
If they do, then there may be a line [script_output] in the message.
Make sure not to delete this line; this is a placeholder for the results of the task/report. - The final section is marked Programmer use only.
Some tasks have additional settings/parameters that you can customise.
If this is the case, then you will see the parameters in this box.
(These are explained in the guide to each task above.) - The script that will be run.
If this is necessary for the task, then we (HarmonySite staff) will have filled it in already; otherwise, it will be blank.
Please don't change this yourself: - Finally, click Save.