{"id":15023163,"url":"https://github.com/semanticmediawiki/semantictasks","last_synced_at":"2025-08-10T08:12:45.385Z","repository":{"id":34752816,"uuid":"182123041","full_name":"SemanticMediaWiki/SemanticTasks","owner":"SemanticMediaWiki","description":"Provides email task notifications and reminders","archived":false,"fork":false,"pushed_at":"2025-07-17T12:12:54.000Z","size":464,"stargazers_count":7,"open_issues_count":1,"forks_count":6,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-08-09T03:29:54.448Z","etag":null,"topics":["e-mail","mw","notifications","semantic","semantic-mediawiki","smw","st"],"latest_commit_sha":null,"homepage":"https://www.mediawiki.org/wiki/Extension:Semantic_Tasks","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SemanticMediaWiki.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":null,"open_collective":"smw","ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["https://www.semantic-mediawiki.org/wiki/Sponsorship"]}},"created_at":"2019-04-18T16:37:30.000Z","updated_at":"2025-07-17T12:12:57.000Z","dependencies_parsed_at":"2024-11-10T06:25:32.687Z","dependency_job_id":"cb4dbd98-cfdb-41ff-a16d-dcf668ec9656","html_url":"https://github.com/SemanticMediaWiki/SemanticTasks","commit_stats":{"total_commits":380,"total_committers":36,"mean_commits":"10.555555555555555","dds":0.6947368421052631,"last_synced_commit":"3ffd26beb69f3a573f844ccaa793d2ab7f7a70d4"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/SemanticMediaWiki/SemanticTasks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SemanticMediaWiki%2FSemanticTasks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SemanticMediaWiki%2FSemanticTasks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SemanticMediaWiki%2FSemanticTasks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SemanticMediaWiki%2FSemanticTasks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SemanticMediaWiki","download_url":"https://codeload.github.com/SemanticMediaWiki/SemanticTasks/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SemanticMediaWiki%2FSemanticTasks/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269693593,"owners_count":24460248,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["e-mail","mw","notifications","semantic","semantic-mediawiki","smw","st"],"created_at":"2024-09-24T19:58:47.316Z","updated_at":"2025-08-10T08:12:45.375Z","avatar_url":"https://github.com/SemanticMediaWiki.png","language":"PHP","funding_links":["https://opencollective.com/smw","https://www.semantic-mediawiki.org/wiki/Sponsorship"],"categories":[],"sub_categories":[],"readme":"# Semantic Tasks\n[![Build Status](https://travis-ci.org/SemanticMediaWiki/SemanticTasks.svg?branch=master)](https://travis-ci.org/SemanticMediaWiki/SemanticTasks)\n[![Code Coverage](https://scrutinizer-ci.com/g/SemanticMediaWiki/SemanticTasks/badges/coverage.png?s=c5563fd91abeb49b37a6ef999198530b6796dd3c)](https://scrutinizer-ci.com/g/SemanticMediaWiki/SemanticTasks/)\n[![Scrutinizer Quality Score](https://scrutinizer-ci.com/g/SemanticMediaWiki/SemanticTasks/badges/quality-score.png?s=9cc8ce493f63f5c2c22db71b2061b4b8c21f43ba)](https://scrutinizer-ci.com/g/SemanticMediaWiki/SemanticTasks/)\n[![Latest Stable Version](https://poser.pugx.org/mediawiki/semantic-tasks/version.png)](https://packagist.org/packages/mediawiki/semantic-tasks)\n[![Packagist download count](https://poser.pugx.org/mediawiki/semantic-tasks/d/total.png)](https://packagist.org/packages/mediawiki/semantic-tasks)\n\nSemantic Tasks (a.k.a. ST) is a [Semantic Mediawiki][smw] extension that provides task notification\nand reminder emails with the help of semantic annotations.\n\nIn contrast to the built in notification systems in MediaWiki (watching pages), this extension can be used to trigger notifications without user interaction with the MediaWiki system, e. g. by filling in a form (using the PageForms extension) where a user name is entered in a form and in the resulting template the respective properties are set to trigger a email notification (see below). \n\n## Requirements\n\n - PHP 7.3 or later\n - MediaWiki 1.35 or later\n - Semantic MediaWiki 3.2 or later\n\n## Installation\n\nThe recommended way to install Semantic Tasks is using [Composer](http://getcomposer.org) with\n[MediaWiki's built-in support for Composer](https://www.mediawiki.org/wiki/Composer).\n\nNote that the required extension Semantic MediaWiki must be installed first according to the installation\ninstructions provided.\n\n### Step 1\n\nChange to the base directory of your MediaWiki installation. If you do not have a \"composer.local.json\" file yet,\ncreate one and add the following content to it:\n\n```\n{\n\t\"require\": {\n\t\t\"mediawiki/semantic-tasks\": \"dev-master\"\n\t}\n}\n```\n\nIf you already have a \"composer.local.json\" file add the following line to the end of the \"require\"\nsection in your file:\n\n    \"mediawiki/semantic-tasks\": \"dev-master\"\n\nRemember to add a comma to the end of the preceding line in this section.\n\n### Step 2\n\nRun the following command in your shell:\n\n    php composer.phar update --no-dev\n\nNote if you have Git installed on your system add the `--prefer-source` flag to the above command.\n\n### Step 3\n\nAdd the following line to the end of your \"LocalSettings.php\" file:\n\n    wfLoadExtension( 'SemanticTasks' );\n\n### Step 4\nYou must run a cron job e.g. once a day to trigger the reminders to be sent by e-mail. To do so add the\nfollowing line to your crontab to execute the respective script every day at 12:\n\n```\n0 12 * * * php /path/to/SemanticTasks/maintenance/checkForReminders.php\n```\n\n### Step 5\n\nIt is possible to adapt the names of the properties for your wiki via configuration in\nthe \"LocalSettings.php\" file. This is an optional step if you would like to use different\nproperty names. This is the list of default settings:\n\n* `$stgPropertyAssignedTo = 'Assigned to';`\n* `$stgPropertyCarbonCopy = 'Carbon copy';`\n* `$stgPropertyTargetDate = 'Target date';`\n* `$stgPropertyReminderAt = 'Reminder at';`\n* `$stgPropertyStatus = 'Status';`\n* `$stgPropertyAssignedToGroup = 'Assigned to group';`\n* `$stgPropertyHasAssignee = 'Has assignee';`\n\n## Configuration\n\n* `SemanticTasksNotifyIfUnassigned` - (default: `false`) If set to `true` will notify\n  users being unassigned from tasks\n* `$stgNotificationFromSystemAddress` - (default: `false`) If set to `true` will use\n  `$wgSiteName` and `$wgPasswordSender` for notification emails From field\n\n## Usage\n\n### Notification emails\nThey are sent as soon a page is saved. The system looks for the `[[Assigned to::*]]`, `[[Carbon copy::*]]` and/or `[[Assigned to group::*]]` properties.\n\n### Groups\nCreate a group page with properties `[[Has assignee::*]]` and then assign the group to the task with `[[Assigned to group::*]]` property.\n\n### Status\nSet Status to `[[Status::Closed]]` to inform assignees that the task has been closed and to disable notifications and reminders.\n\n### Reminder emails\nOnce the script execution is triggered via cron the software looks for the `[[Reminder at::*]]` and the `[[Target date::*]]` property. It then sends reminders to all the assignees.\n\n\n## Contribution and support\n\nIf you want to contribute work to the project please subscribe to the developers mailing list and\nhave a look at the contribution guideline.\n\n* [File an issue](https://github.com/SemanticMediaWiki/SemanticCite/issues)\n* [Submit a pull request](https://github.com/SemanticMediaWiki/SemanticCite/pulls)\n* Ask a question on [the mailing list](https://www.semantic-mediawiki.org/wiki/Mailing_list)\n\n## Version history\nSee [release notes](docs/RELEASE-NOTES.md).\n\n## Credits\n\nSemantic Tasks was initially created by Steren Giannini for Creative Commons. Later it was sponsored by KDZ - Centre for Public Administration Research, with most upgrade work done by [Peter Grassberger](https://github.com/PeterTheOne).\nCurrently it is sponsored by [KM-A Knowledge Management Associates](https://km-a.net/knowledge-wiki/), with most upgrade work done by [thomas-topway-it](https://github.com/thomas-topway-it).\n\n\n## License\n\n[GNU General Public License, version 2 or later][gpl-licence], see [COPYING](COPYING) file.\n\n[smw]: https://github.com/SemanticMediaWiki/SemanticMediaWiki\n[gpl-licence]: https://www.gnu.org/copyleft/gpl.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsemanticmediawiki%2Fsemantictasks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsemanticmediawiki%2Fsemantictasks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsemanticmediawiki%2Fsemantictasks/lists"}