Fork 0
XMPP Enabled is a simple library plugin that provides a single-function interface for other plugins to send Jabber messages
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
Anton Smirnov 1b7ae1e861 Remove from packagist 6 years ago
XMPPHP fixed XMPPHP for PHP7 6 years ago
bin Generate Markdown readme from WordPress readme 6 years ago
languages * composer 10 years ago
.gitignore Add some packages to ease development 6 years ago Explicit license file 6 years ago Remove from packagist 6 years ago
composer.json Add some packages to ease development 6 years ago
readme.txt Remove from packagist 6 years ago
todo.txt * composer 10 years ago
xmpp-enabled.php bump version as bugfix release 10 years ago

XMPP Enabled

Contributors: sandfox
Tags: xmpp, jabber, library
Requires at least: 3.0
Tested up to: 4.9
Stable tag: trunk

XMPP Enabled provides a single-function API for other plugins that use Jabber/XMPP messaging protocol.


XMPP Enabled provides a single function API for other plugins that use Jabber/XMPP messaging protocol. See API section for details if you want to use XMPP protocol in your notifications.


  1. Upload xmpp-enabled folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the 'Plugins' menu in WordPress
  3. Set up default Jabber account in XMPP Enabled Settings page

Frequently Asked Questions

Why the distinct plugin?

To provide a single XMPP account settings page for all Jabber notification plugins

Can it send messages to multiple contacts?

It's safe to use xmpp_send() multiple times. All calls will use the same connection

Thanks to

  • Mako N (Japanese translation and i18n support)



  • PHP 7 support
  • Removed from (You can use GitHub link in composer directly)


  • [Bug] Password validation fix


  • Japanese translation and internationalisation support from Mako N
  • Russian translation
  • Remove unnecessary part of XMPPHP
  • Lang builder
  • Consider plugin is stable :)
  • Installation via composer to

  • minor bugfixes


  • Fixed array serialization in logs
  • PHP5 is now required minimum


  • Bugfix for disabling encryption


  • Multiple calls to xmpp_send() now use single connection
  • Now user can disable encryption
  • Fixed menu creation priority


  • Fixed wrong behaviour for custom hostnames.
  • Improved logging


  • A small usability change.


  • A first public beta.

Upgrade Notice


Breaks old logs


Multiple calls to xmpp_send() now behave smarter


Update is strongly recommended for those who manually set server hostname

Plugin API

The Single Function

The single function for sending XMPP Messages is xmpp_enabled. It can be called directly from any WordPress plugin

xmpp_enabled($recipient, $message, $subject='', $type='normal');

  • $recipient is a valid (bare or full) JID of the recipient like ''
  • $message is a plain text message to be sent
  • $subject is a title line for message. It is usually omitted for chat-type messages
  • $type is a type of message. It can be 'chat', 'normal' or 'headline'. See RFC 3921 for details

Example: xmpp_send('',"Read our new post:\n",'New post is published','headline');

Create submenu in the XMPP Enabled section

XMPP Enabled creates it's own section and you're free to use it for your plugins. The code is 'xmpp-enabled'

Example: add_submenu_page('xmpp-enabled', 'Jabber Comment Notifications', 'Comment Notifications', 'administrator', __FILE__, 'jcommnotify_settings');

See Adding Administration Menus in WordPress Codex for further details