| Semantic Tasks
Release status: stable
|Description||Provides email task notifications and reminders|
|Latest version||2.1.0 (2022-9-12)|
|License||GNU General Public License 2.0 or later|
The Semantic Tasks extension works in conjunction with another extension, Semantic MediaWiki, to provide email task notifications and reminders.
Semantic Tasks was originally developed for the Creative Commons internal task- and project-tracking system ccTeamspace. Development was sponsored by KDZ - Centre for Public Administration Research and is currently sponsored by KM-A Knowledge Management Associates.
- After a task creation, users assigned to the task and following the task receive a "New Task" mail containing the task text.
- After a task is modified, users assigned to the task and following the task receive a "Task Updated" mail containing a diff of the modification.
- The editor of the task doesn't receive a mail after his edit.
- If the edit is a null or minor edit, no mail is sent.
- Install the Semantic MediaWiki extension which is requrired for this extenion to work.
- Download and place the file(s) in a directory called
- Add the following code at the bottom of your
wfLoadExtension( 'SemanticTasks' );
- Setup cron and configure as required.
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
The extension sends email notifications to the assigned users of a page as soon as the page is modified or created with a non null and non minor edit and it contains one or more
Assigned to:: properties.
Notify a groupEdit
The extension also supports the assignment of task pages to groups. In order to assign a task page to a group create a page named for instance "ST group" and list in that page the assignees of that group in the following form
[[Has assignee::User:User a]],
[[Has assignee::User:User b]], etc., as follows:
Then set the task page as follows
Note that the properties
Assignee to and
Assigned to group must be of type page.
The behavior of the Status has changed since version 2.1.0. Now the status of the task can be set to closed, as follows
[[Status::Closed]], to disable notifications and reminders. Other values for the
Status property, will not be evaluated by the extension.
Reminders (i.e. background email notifications) will be sent to the assignees of a task whenever a
[[Reminder at::]] or
[[Target date::]] properties are set in a given day, as follows:
Target date must be a future or current day date, and
Status must not be set to "Closed" in order for it to work.
See section below #Cron job for the server set-up.
The following variables are to be set in the LocalSettings.php file of your wiki. None of them are required, if not set the default values are used.
||Sets whether an assignee should be notified once unassigned from a task.|
The following configuration parameters allow to set the names of the properties used by the extension to localized names suitable for the wiki instance's language or to different names suitable to the needs specific to your wiki:
||Sets the name of the property holding the name of the user to whom the respective task was assigned to.|
||Sets the name of the property holding the name of the user who should get an information about the respective task.|
||Sets the name of the property holding the target date on which respective task should be completed.|
||Sets the name of the property holding the date on which a reminder for the respective task should be sent.|
||Sets the name of the property holding the status of the respective task.|
||Sets the name of the property holding the name of the group of users to who the respective task was assigned to.|
||Sets the name of the property holding the name of the users assigned to a group.|
Finally run a cron job once a day to execute the reminder script. To do so edit your crontab file:
$ crontab -e
And add the following line to execute the script every day at 12:
0 12 * * * php extensions/SemanticTasks/maintenance/checkForReminders.php
The actual sending of the emails is performed when a task has valid assignees (
Carbon copy, or
Assigned to group properties),
Target date or
Reminder at are set to the same day in which the script runs, and
Status is not set to "Closed". Finally, only users who have set a valid email address in their preferences, and have confirmed it will receive emails.