PHPackages                             octamp/wamp - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. octamp/wamp

ActiveProject[HTTP &amp; Networking](/categories/http)

octamp/wamp
===========

WAMP Router

v1.1.1(1y ago)211MITPHP

Since Jun 23Pushed 1y ago1 watchersCompare

[ Source](https://github.com/octamp/wamp)[ Packagist](https://packagist.org/packages/octamp/wamp)[ RSS](/packages/octamp-wamp/feed)WikiDiscussions v1.2 Synced 1mo ago

READMEChangelog (5)Dependencies (7)Versions (7)Used By (0)

Octamp Wamp
===========

[](#octamp-wamp)

Octamp WAMP is Router implementation of WAMP Protocol that scalable.

This was implemented using PHP OpenSwoole

Currently, the Adapter use for this is Redis.

Why Use Octamp Wamp
-------------------

[](#why-use-octamp-wamp)

Octamp Wamp is created using PHP with OpenSwoole instead of Ratchet / React PHP.

Octamp Wamp also support Horizontal Scaling with the help of Redis.

Session data and Wamp Datas will be save in Redis so that all node / server can access it.

### Comparison with other Implementation

[](#comparison-with-other-implementation)

Octamp WampThruwayHorizontal Scalling✓✗Uses OpenSwoole✓✗Uses React PHP✗✓Profile
-------

[](#profile)

Octamp Wamp currently implemented using [Basic Profile and Advance Profile](https://wamp-proto.org/wamp_latest_ietf.html) and of WAMP Proto.

How to use
----------

[](#how-to-use)

### Prerequisite

[](#prerequisite)

- PHP 8.2
- Redis Stack with Pub/Sub
- Openswoole

### Installation

[](#installation)

```
composer create-project octamp/wamp ./wamp
cd ./wamp
```

This will create the project in wamp folder

You can update the file `/configs/adapter.yml` or copy to different file

And update the configuration

```
adapter:
  type: redis
  host: 0.0.0.0
  port: 6379
#  -- Uncomment the auth if you need username and password
#  auth:
#    username:
#    password:
#
#  -- Uncomment options if you need to include other redis option such as database
  options:
    database: 0
```

You can update the file `/configs/transport.yml` or copy to different file

And update the configuration

```
transports:
  - endpoint:
      type: tcp
      port: 8080
    auths:
      - method: anonymous
        type: static

# -- You can add more method, such us the examples below
#    - method: ticket
#      type: dynamic
#      authenticator: testing
#      authenticatorRealm: realm1
#      realms:
#        - realm1
#    - method: wampcra
#      type: static
#      users:
#        - authid: auth
#          secret: qa2/QVmmjSx1JJuyH5EI2gMDQf+ARnfwMcLOpUfln74=
#          role: auth
#          salt: salt1
#          keylen: 32
#          iterations: 1000
```

You can update the file `/configs/realms.yml` or copy to different file

And update the configuration

```
realms:
  - name: realm1
```

Copy the file `.env` to `.env.local`

Update the necessary data

```
TRANSPORT_FILE=/configs/transport.yml
ADAPTER_FILE=/configs/adapter.yml
REALM_FILE=/configs/realms.yml

```

Now run the bin/server

```
php ./bin/server
```

That will now run the server

Octamp Wamp Features
--------------------

[](#octamp-wamp-features)

- **High performance** - Uses OpenSwoole, network framework based on an event-driven, asynchronous, non-blocking I/O coroutine programming model for PHP.
- **Scalable** - Designed for Horizontal Scalability.
- **WAMP Basic Profile Features** - This project implements most of the basic profile features in WAMP v2.
- **Websocket Transport** - Currently the project only implements websocket transport.
- **Message Serializer** - Accepts JSON and MessagePack.

### Message Serializer

[](#message-serializer)

- JSON
- MessagePack

Basic Profile Feature Support
-----------------------------

[](#basic-profile-feature-support)

### Sessions

[](#sessions)

FeatureSupportedSession Establishment✓Session Close / Closing✓Abort✓### Publish and Subscribe

[](#publish-and-subscribe)

FeatureSupportedSubscribe✓Unsubscribe✓Subscribe &amp; Unsubscribe Error✓Publish✓Publish Error✓### Remote Procedure Calls

[](#remote-procedure-calls)

FeatureSupportedRegister✓Unregister✓Call✓Call / Invocation Error✓Caller Leaving✓Callee Leaving✓### Other Features

[](#other-features)

FeatureSupportedURI ValidationPartialAdvance Profile Feature Support
-------------------------------

[](#advance-profile-feature-support)

### Authentication

[](#authentication)

FeatureStaticDynamicAnonymous✓✓Ticket✓✓Wamp-CRA✓✓Wamp-SCRA✗✗Cryptosign✗✗TLS✗✗Cookie✗✗### Authorization

[](#authorization)

FeatureStaticAuthorization✗### RPC Features

[](#rpc-features)

FeatureStatusProgressive Call Results✗Ignoring Requests for Progressive Call Results✗Progressive Call Results with Timeout✗Progressive Call Invocations✗Call Timeout✗Call Canceling✗Call Re-Routing✗Caller Identification✗Call Trustlevels✗Registration Meta API✗Pattern-based Registration✓Shared Registration✓Sharded Registration✗Registration Revocation✗(Interface) Procedure Reflection✗### PubSub Features

[](#pubsub-features)

FeatureStatusSubscriber Blackwhite Listing✓Publisher Exclusion✓Publisher Identification✓Publication Trustlevels✗Subscription Meta API✗Pattern-based Subscription✓Sharded Subscription✗Event History✗Event Retention✗Subscription Revocation✗Session Testament✗(Interface) Topic Reflection✗### Meta API

[](#meta-api)

FeatureEventProcedureSession Meta API✓✓Registration Meta API✓✗Subscriptions Meta API✗✗### Others

[](#others)

FeatureStatusFeature Announcement✓RawSocket Transport✗Batched WebSocket transport✗Call Rerouting✗Payload Passthru Mode✗TODOs
-----

[](#todos)

- Implement CBOR Serializer [https://wamp-proto.org/wamp\_bp\_latest\_ietf.html#name-serializers](https://wamp-proto.org/wamp_bp_latest_ietf.html#name-serializers)
- Remove Dependencies from Thruway Common
- Add OpenSwoole Table Adapter as Data Provider

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance35

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 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.

###  Release Activity

Cadence

Every ~17 days

Total

7

Last Release

590d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e53d49ee22a62476139ce45c16b6dcfde7e2be81b4c94b08952b7a64adb926d8?d=identicon)[cydrickn](/maintainers/cydrickn)

---

Top Contributors

[![cydrickn](https://avatars.githubusercontent.com/u/6417652?v=4)](https://github.com/cydrickn "cydrickn (41 commits)")

---

Tags

high-availabilitymessagingopenswooleswoolewampwamp-protocolwamp-routerwebsocket

### Embed Badge

![Health badge](/badges/octamp-wamp/health.svg)

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

###  Alternatives

[symfony/http-kernel

Provides a structured process for converting a Request into a Response

8.1k822.4M6.8k](/packages/symfony-http-kernel)[friendsofsymfony/http-cache

Tools to manage HTTP caching proxies with PHP

36114.7M36](/packages/friendsofsymfony-http-cache)[bitrix24/b24phpsdk

An official PHP library for the Bitrix24 REST API

9230.2k4](/packages/bitrix24-b24phpsdk)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[voryx/thruway-bundle

WebSockets (WAMP2) integration for Symfony2

98120.8k](/packages/voryx-thruway-bundle)[m6web/guzzle-http-bundle

Symfony bundle on top of Guzzle

17511.5k2](/packages/m6web-guzzle-http-bundle)

PHPackages © 2026

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