Release status: beta
|Description||Propagation of change events to a RESTful service|
|Latest version||0.1 (2015-11-19)|
|License||GNU General Public License 2.0 or later|
|Translate the EventBus extension if it is available at translatewiki.net|
|Check usage and version matrix.|
|Issues||Open tasks · Report a bug|
The EventBus extension propagates state changes (edit, move, delete, revision visibility, etc) to a RESTful event service, providing consumers of the service with the means of tracking changes to MediaWiki content.
Ideally, this sort of change propagation would be atomic, that is to say, if one of the tracked changes is committed in MediaWiki, the corresponding event is guaranteed to be delivered (even if by eventual consistency). As this extension is hook-based, that is not currently the case; Truly reliable event delivery will likely require something bound to the corresponding database transaction. (tracked in task T120242.)
Download / Install
The extension can be retrieved directly from Git [?]:
- Browse code
- Some extensions have tags for stable releases.
- Browse tags
- Select the tag
- Click "snapshot"
- Each branch is associated with a past MediaWiki release. There is also a "master" branch containing the latest alpha version (might require an alpha version of MediaWiki).
- Browse branches
- Select a branch name
- Click "Continue"
Extract the snapshot and place it in the extensions/EventBus/ directory of your MediaWiki installation.
If you are familiar with git and have shell access to your server, you can also obtain the extension as follows:
cd extensions/ git clone
- To enable, add the following code to the bottom of your
wfLoadExtension( 'EventBus' );
- Done; Navigate to 'Special:Version' on your wiki, and verify the extension is successfully installed
Note: For this extension to be useful, you need to be running an event service.
To configure the event service, add the following to your
LocalSettings.php, (setting the event service name and URL value according to your environment.
$wgEventServices = [ 'eventbus' => ['url' => 'http://hostname:8888/v1/events', 'timeout' => 10], 'eventgate' => ['url' => 'http://hostname:8192/v1/events'], // ... ];
- T84923: Reliable publish / subscribe event bus
- T116786: Integrate eventbus-based event production into MediaWiki
- T120242: Reliable (atomic) MediaWiki event production
|This extension is being used on one or more Wikimedia projects. This probably means that the extension is stable and works well enough to be used by such high-traffic websites. Look for this extension's name in Wikimedia's CommonSettings.php and InitialiseSettings.php configuration files to see where it's installed. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page.|