PHPackages                             madeorsk/xmpp - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. madeorsk/xmpp

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

madeorsk/xmpp
=============

Library for XMPP protocol (Jabber) connections

v0.8.1(4y ago)088BSD-2-ClausePHPPHP ^7.0 || ^8.0

Since Jan 23Pushed 4y agoCompare

[ Source](https://github.com/Madeorsk/xmpp)[ Packagist](https://packagist.org/packages/madeorsk/xmpp)[ Docs](https://github.com/fabiang/xmpp)[ RSS](/packages/madeorsk-xmpp/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (8)Versions (13)Used By (0)

madeorsk/xmpp
=============

[](#madeorskxmpp)

Library for XMPP protocol connections (Jabber) for PHP.

SYSTEM REQUIREMENTS
-------------------

[](#system-requirements)

- PHP minimum 7.0 or minimum 8.0
- psr/log
- (optional) psr/log-implementation - like monolog/monolog for logging

INSTALLATION
------------

[](#installation)

New to Composer? Read the [introduction](https://getcomposer.org/doc/00-intro.md#introduction). Add the following to your composer file:

```
composer require madeorsk/xmpp
```

DOCUMENTATION
-------------

[](#documentation)

This library uses an object to hold options:

```
use Fabiang\Xmpp\Options;
$options = new Options($address);
$options->setUsername($username)
    ->setPassword($password);
```

The server address must be in the format `tcp://myjabber.com:5222`.
If the server supports TLS the connection will automatically be encrypted.

You can also pass a PSR-2-compatible object to the options object:

```
$options->setLogger($logger)
```

The client manages the connection to the Jabber server and requires the options object:

```
use Fabiang\Xmpp\Client;
$client = new Client($options);
// optional connect manually
$client->connect();
```

For sending data you just need to pass a object that implements `Fabiang\Xmpp\Protocol\ProtocolImplementationInterface`:

```
use Fabiang\Xmpp\Protocol\Roster;
use Fabiang\Xmpp\Protocol\Presence;
use Fabiang\Xmpp\Protocol\Message;

// fetch roster list; users and their groups
$client->send(new Roster);
// set status to online
$client->send(new Presence);

// send a message to another user
$message = new Message;
$message->setMessage('test')
    ->setTo('nickname@myjabber.com')
$client->send($message);

// join a channel
$channel = new Presence;
$channel->setTo('channelname@conference.myjabber.com')
    ->setPassword('channelpassword')
    ->setNickName('mynick');
$client->send($channel);

// send a message to the above channel
$message = new Message;
$message->setMessage('test')
    ->setTo('channelname@conference.myjabber.com')
    ->setType(Message::TYPE_GROUPCHAT);
$client->send($message);
```

After all you should disconnect:

```
$client->disconnect();
```

DEVELOPING
----------

[](#developing)

If you like this library and you want to contribute, make sure the unit-tests and integration tests are running. Composer will help you to install the right version of PHPUnit and [Behat](http://behat.org/).

```
composer install

```

After that:

```
./vendor/bin/phpunit
./vendor/bin/behat

```

New features should always tested with Behat.

LICENSE
-------

[](#license)

BSD-2-Clause. See the [LICENSE](LICENSE.md).

TODO
----

[](#todo)

- Better integration of channels
- Factory method for server addresses
- improve documentation

###  Health Score

29

—

LowBetter than 60% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 92.2% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~311 days

Recently: every ~628 days

Total

10

Last Release

1689d ago

PHP version history (4 changes)0.1.0PHP &gt;=5.3

0.5.0PHP &gt;=5.3.3

0.7.0PHP ^5.6 || ^7.0

v0.8PHP ^7.0 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/748d80e5500bbc9d6e14ee53817c2a03bc025c7df17e9f06fe2ec9f221b45e52?d=identicon)[Madeorsk](/maintainers/Madeorsk)

---

Top Contributors

[![fabiang](https://avatars.githubusercontent.com/u/348344?v=4)](https://github.com/fabiang "fabiang (153 commits)")[![n10ty](https://avatars.githubusercontent.com/u/2970001?v=4)](https://github.com/n10ty "n10ty (2 commits)")[![Madeorsk](https://avatars.githubusercontent.com/u/5805468?v=4)](https://github.com/Madeorsk "Madeorsk (2 commits)")[![tohenk](https://avatars.githubusercontent.com/u/350747?v=4)](https://github.com/tohenk "tohenk (2 commits)")[![alexalouit](https://avatars.githubusercontent.com/u/1419377?v=4)](https://github.com/alexalouit "alexalouit (1 commits)")[![marclaporte](https://avatars.githubusercontent.com/u/1004261?v=4)](https://github.com/marclaporte "marclaporte (1 commits)")[![pirxthepilot](https://avatars.githubusercontent.com/u/7690118?v=4)](https://github.com/pirxthepilot "pirxthepilot (1 commits)")[![iivannov](https://avatars.githubusercontent.com/u/7932620?v=4)](https://github.com/iivannov "iivannov (1 commits)")[![antonkomarev](https://avatars.githubusercontent.com/u/1849174?v=4)](https://github.com/antonkomarev "antonkomarev (1 commits)")[![frederikbosch](https://avatars.githubusercontent.com/u/1552577?v=4)](https://github.com/frederikbosch "frederikbosch (1 commits)")[![Ghitu](https://avatars.githubusercontent.com/u/7511010?v=4)](https://github.com/Ghitu "Ghitu (1 commits)")

---

Tags

xmppjabber

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/madeorsk-xmpp/health.svg)

```
[![Health](https://phpackages.com/badges/madeorsk-xmpp/health.svg)](https://phpackages.com/packages/madeorsk-xmpp)
```

###  Alternatives

[jcbrand/converse.js

Browser based XMPP instant messaging client

3.2k156.6k](/packages/jcbrand-conversejs)[j0k3r/php-readability

Automatic article extraction from HTML

186808.8k6](/packages/j0k3r-php-readability)[spomky-labs/pwa-bundle

Progressive Web App Manifest Generator Bundle for Symfony.

6144.4k1](/packages/spomky-labs-pwa-bundle)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)[zorn-v/xmpp

Library for XMPP protocol (Jabber) connections

118.5k](/packages/zorn-v-xmpp)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
