PHPackages                             phpsoftbox/broadcaster - 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. phpsoftbox/broadcaster

ActiveLibrary

phpsoftbox/broadcaster
======================

Broadcaster component for the PhpSoftBox framework (Pushr)

077↑75%PHP

Since Mar 19Pushed 2mo agoCompare

[ Source](https://github.com/phpsoftbox/broadcaster)[ Packagist](https://packagist.org/packages/phpsoftbox/broadcaster)[ RSS](/packages/phpsoftbox-broadcaster/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

PhpSoftBox Broadcaster (Pushr)
==============================

[](#phpsoftbox-broadcaster-pushr)

About
-----

[](#about)

`phpsoftbox/broadcaster` — компонент для запуска WebSocket сервера и обмена сообщениями между сервисами. Драйвер `Pushr` реализует собственный протокол с авторизацией по `app_id` и `signature`.

Ключевые свойства:

- сервер `PushrServer` (WebSocket)
- клиент `PushrClient` для публикации/подписки
- подписи `PushrSignature`
- подписи каналов `PushrChannelAuth`
- реестр каналов `ChannelRegistry`
- поддержка каналов (rooms), включая приватные

Quick Start
-----------

[](#quick-start)

Запуск сервера:

```
use PhpSoftBox\Broadcaster\Pushr\PushrAppRegistry;
use PhpSoftBox\Broadcaster\Pushr\PushrServer;

$registry = new PushrAppRegistry([
    'app-1' => 'secret-1',
]);

$server = new PushrServer($registry, host: '0.0.0.0', port: 8080);
$server->run();
```

Подключение клиентом:

```
use PhpSoftBox\Broadcaster\Pushr\PushrClient;

$client = new PushrClient('127.0.0.1', 8080, 'app-1', 'secret-1');
$client->connect();
$client->subscribe('news');
$client->publish('news', 'message', ['text' => 'hello']);
```

Публикация из PHP-кода без постоянного подключения:

```
use PhpSoftBox\Broadcaster\Pushr\PushrPublisher;

$publisher = new PushrPublisher('app-1', 'secret-1', '127.0.0.1', 8080);
$publisher->publish('news', 'message', ['text' => 'hello']);
```

Оглавление
----------

[](#оглавление)

- [Документация](docs/index.md)
- [About](docs/01-about.md)
- [Quick Start](docs/02-quick-start.md)
- [Авторизация](docs/03-auth.md)
- [Server](docs/04-server.md)
- [Client](docs/05-client.md)
- [CLI](docs/06-cli.md)
- [DI](docs/07-di.md)
- [Каналы и шаблоны](docs/08-channels.md)
- [HTTP Endpoints](docs/09-http.md)

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance58

Moderate activity, may be stable

Popularity12

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity11

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/0279d150240c97d210034878b0467462246dc14d29b5618157ff6a8be49a50e3?d=identicon)[inspector-who](/maintainers/inspector-who)

---

Top Contributors

[![inspector-who](https://avatars.githubusercontent.com/u/6973963?v=4)](https://github.com/inspector-who "inspector-who (1 commits)")

### Embed Badge

![Health badge](/badges/phpsoftbox-broadcaster/health.svg)

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

PHPackages © 2026

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