Extension:Email notification

We have developped a reasonable scheme for page change notifications.

HOW IT WORKS:

User X gets a short E-Mail:


 * when a page listed in user X's watch list changes
 * when the user_talk page of UserX changes

Additional features:


 * The notification message body and subject texts can easily be adapted to your needs. These are the new entries in the MediaWiki: namespace:

email notification messagetext

You can use the following new variables to compose your messages:

$WATCHINGUSERNAME $WATCHINGUSEREMAILADDR $PAGETITLE $PAGEEDITOREMAIL $PAGEEDITOT $PAGEEDITDATE $PAGEEDITDATEUTC $PAGEMINOREDIT $PAGESUMMARY $WIKIADMINEMAILADDR


 * Further notification messages are suppressed until UserX visits the changed page/s.
 * Your "own" changes (to a page in your own watchlist or to your own User_talk page) do not trigger the sending of notification mails to yourself.
 * The notification flags can be reset together for all watchlist pages with a function (button) on UserX Watchlist page


 * Some global program flags allow to enable or disable the two Mail Notification modules:

$wgEmailNotificationForWatchlistPages                         = true;	# true/false: enable/disable sending notification mails triggered by changes of watch-listed pages $wgEmailNotificationForUserTalkPage                           = true;	# true/false: enable/disable sending notification mails triggered by user_talk page changes $wgEmailNotificationForAllEdits                               = false;	# false: "minor edits" do not trigger notification mails $wgReplyToPageEditor                                          = true;	# true: notification e-mails bear (and therefore reveal) the e-mail address of the page editor as Reply-To string $wgReplyToUserTalkPageEditor                                  = true ;	# true: notification e-mails bear (and therefore reveal) the e-mail address of the page editor as Reply-To string $wgEmailNotificationSystembeepForWatchlistPages               = '/usr/bin/beep -f 4000 -l 20 &';	# a system call with exactly this string as parameter is executed when such a mail is sent $wgEmailNotificationSystembeepForUserTalkPages                = '/usr/bin/beep -f 2000 -l 20 &';	# ditto., but for UserTalk page changes
 * 1) Patch for email notification on page changes T.Gries/M.Arndt 11.09.2004
 * 1) The following strings are passed as parameters to two system calls.
 * 2) On our server, they call the beep 1.2.2 program with different frequencies f [Hz] and length l [msec]
 * 3) Beep 1.2.2 can be found on http://freshmeat.net/projects/beep/

Tom Gries/Markus Arndt Berlin/Munich

Example of a notification mail:

email notification messagetext

Archive

-

>> On Wednesday 11 August 2004 02:51 pm, Luis Casillas wrote: > >>>> Something I've wanted to add to MediaWiki is email notifications of >>>> watchlist page changes. The users of the wiki I'm running have asked >>>> for this feature. (I do need to learn PHP and get a good look at the >>>> code before I try this, though.) >

This should be fairly straightforward.

On each commit, search the watchlist table for instances of that page and collect the returned user id's into an array. Step through the array, getting the email address associated with each id. Then send out a mail that's BCC'd to each address.

If the watchlist table gets very big, it could take a long time for the edit to be committed. However, the "namespace_title" field is already a table index, so it shouldn't be too bad unless it's a huge wiki, in which case, a flag in LocalSettings could disable the option.

Bruce

- Message: 3 Date: Mon, 16 Aug 2004 14:21:41 -0700 From: Luis Casillas  Subject: Re: [Mediawiki-l] NEWS: E-Mail notification on page changes (watch-listed pages and user_talk page) Cc: MediaWiki announcements and site admin list  Message-ID: <4450197F-EFCA-11D8-A02E-000A95BE242A@mercedsystems.com> Content-Type: text/plain; charset=US-ASCII; format=flowed On Aug 15, 2004, at 6:41 PM, Thomas Gries wrote:

>> NEWS: >> We have developped a reasonable scheme for page change notifications. >> >> [...] >> >> Addtional features: >> [...] >> - Further notification messages are suppressed until UserX visits the >> changed page(s) !

I think this could be improved in the following way: further notification messages are suppressed until UserX visits the changed page *or a configurable time period expires*. So, for example, I can set things up so that users start getting notified again 24 hours later.

Don't know how hard this would be for you to do, so I'll let you decide.

>> Please be patient. Allow for some days of further tests.

Patient? You have me biting my nails in anticipation. I will not hurry you, if that's what you're worried about.

-- Luis Casillas 