If you've ever tried to setup a quality email system for your wiki, you've most probably run into problems. Most web hosts limit SMPT use, or make it next to impossible to configure.
The issue with this is that to manage your wiki effectively, i.e. respond to questions quickly, check new pages and combat spam, you need a notification system that works well, i.e. sends notifications immediately.
We've been using Send in Blue for the last few years, and they meet our needs in spectacular style, it's easy to set up, works every time, and better still for wiki's that send less that 300 emails a day, it's free.
To allow emails in your wiki, you'll need to first add the SMPT details. Add the following to LocalSettings.php
$wgSMTP = [ 'host' => "smtp-relay.sendinblue.com", 'IDHost' => "", 'port' => 587, 'auth' => true, 'username' => "your-email", 'password' => "your-password" ];
This will then allow for notifications of post edits and user email authentication, which will help you cut down on spam content. It'll also allow you to set up member to member email.
The easiest method to set this up is if you have all main posts added to your watch list, which can be configured in Special:Preferences#mw-prefsection-watchlist, and implemented by adding to LocalSettings.php
$wgDefaultUserOptions['enotifwatchlistpages'] = true;
Combatting Wiki Spam
While not foolproof, the following will certainly stop bot related spam, human related spam is another thing entirely!
Now that you have wiki email enabled you can set up a system that only allows members who have confirmed their email address to create new, or edit existing pages, but we can limit this too, more on this further below.
Add the following to LocalSettings.php
$wgGroupPermissions['*']['edit'] = false; $wgGroupPermissions['user']['edit'] = false; $wgAutopromote['emailconfirmed'] = APCOND_EMAILCONFIRMED; $wgImplicitGroups = 'emailconfirmed'; $wgGroupPermissions['emailconfirmed']['edit'] = true;
In short, this stops all users from creating and editing pages, however once they've confirmed their email address they're promoted to a new user group (emailconfirmed), who can create and edit pages.
Further Spam Protection Measures
To protect your wiki further, add to LocalSettings.php
$wgAutoConfirmAge = 3600; // in seconds, 3600 is one hour
The above settings limit editing for people who have been members for less than one hour - modify as required.
The following setting throttles back the number of actions in a given period of time, i.e. creating, editing and sending emails. The example below limits emailconfirmed users to 4 actions in 10 minutes - modify as required.
$wgRateLimits['edit']['emailconfirmed'] = array( 4, 600 );
Member to Member Email
We find this feature useful because clients may want to discuss issues privately.
$wgEnableEmail = true;
Please use the discussion page to ask questions.