Extension:AbuseFilter

AbuseFilter allows privileged users to set specific controls on user activity and create automated reactions for certain behaviors.

Installation


As is standard with other MediaWiki extensions, you may install this extension by extracting the extension in the extensions folder and adding


 * require_once( "$IP/extensions/AbuseFilter/AbuseFilter.php" );

to LocalSettings.php, and creating the tables (or running install.php or update.php).

User rights
Once you installed the extension, you'll have to set up the user rights in LocalSettings.php. For example, the following sample configuration would allow sysops to do everything they want with AbuseFilter, normal logged-in users only to view the log and the filter settings and everyone (including anonymous users) to see the filter settings.

Note that filters marked as private can only be viewed by users with either the abusefilter-modify or abusefilter-view-private permission.

Abuse filter management
Once the extension has been installed, filters can be created/tested/changed/deleted and the logs can be accessed from the Abuse filter management page Special:AbuseFilter.
 * The rules format
 * Actions
 * To Import filters from Wikipedia: When you have installed the extension, go to w:Special:AbuseFilter, choose a filter (say w:Special:AbuseFilter/3), then click "Export this filter to another wiki", copy the text, go to Special:AbuseFilter/import on your wiki, paste the text.

API
AbuseFilter adds two API list modules, one for details of abuse filters ("abusefilters") and one for the abuse log, since it is separate from other MediaWiki logs ("abuselog"). It is not possible to create or modify abuse filters using the API.

list = abusefilters
List information about filters


 * Parameters
 * : The filter id to start enumerating from
 * : The filter id to stop enumerating at
 * : The direction in which to enumerate (older, newer)
 * : Show only filters which meet these criteria (enabled|!enabled|deleted|!deleted|private|!private)
 * : The maximum number of filters to list
 * : Which properties to get (id|description|pattern|actions|hits|comments|lasteditor|lastedittime|status|private)

When filters are private, some of the properties specified with  will be missing unless you have the appropriate user rights.


 * Examples

list = abuselog
List instances where actions triggered an abuse filter.


 * Parameters
 * : The timestamp to start enumerating from
 * : The timestamp to stop enumerating at
 * : The direction in which to enumerate (older, newer)
 * : Show only entries where the action was attempted by a given user or IP address.
 * : Show only entries where the action involved a given page.
 * : Show only entries that triggered a given filter ID
 * : The maximum number of entries to list
 * : Which properties to get (ids|user|title|action|result|timestamp|details)


 * Example