PHPackages                             osumionline/plugin-websocket - 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. [Framework](/categories/framework)
4. /
5. osumionline/plugin-websocket

ActiveLibrary[Framework](/categories/framework)

osumionline/plugin-websocket
============================

Plugin to add WebSocket server support to Osumi Framework

1.0.1(2mo ago)05MITPHPPHP &gt;=8.2

Since Jan 22Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/osumionline/plugin-websocket)[ Packagist](https://packagist.org/packages/osumionline/plugin-websocket)[ RSS](/packages/osumionline-plugin-websocket/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (3)Versions (4)Used By (0)

osumionline/plugin-websocket
============================

[](#osumionlineplugin-websocket)

Plugin para añadir soporte de servidor WebSocket a Osumi Framework.

Este plugin permite arrancar un servidor WebSocket independiente desde una tarea CLI de la aplicación, definir acciones personalizadas y asociarlas a componentes del framework.

Características
---------------

[](#características)

- Servidor WebSocket integrado mediante Ratchet
- Arranque desde una tarea CLI creada por el usuario
- Asociación de acciones a componentes
- Acciones públicas y protegidas
- Validación de tokens configurable por el usuario
- Gestión de múltiples conexiones por usuario
- Métodos para envío directo y broadcast
- Sistema de depuración del estado interno

Instalación
-----------

[](#instalación)

```
composer require osumionline/plugin-websocket

## Configuración

La configuración del plugin se define en el archivo:
```

/src/Config/Config.json

```

Dentro del bloque plugins:

```json
{
  "plugins": {
    "websocket": {
      "host": "localhost",
      "port": 8080,
      "path": "/ws"
    }
  }
}

```

Opciones disponibles
--------------------

[](#opciones-disponibles)

- host: host donde arrancar el servidor WebSocket
- port: puerto donde escuchará el servidor
- path: ruta del endpoint WebSocket

Ejemplo de conexión desde cliente
---------------------------------

[](#ejemplo-de-conexión-desde-cliente)

```
const ws = new WebSocket('ws://localhost:8080/ws');
```

Estructura recomendada en la aplicación
---------------------------------------

[](#estructura-recomendada-en-la-aplicación)

```
src/
  Task/
    StartServerTask.php
  Websocket/
    actions.php
    Modules/
      PingComponent.php
      LoginComponent.php
      SendMessageComponent.php

```

Arranque del servidor
---------------------

[](#arranque-del-servidor)

El servidor se arranca desde una tarea CLI definida por el usuario.

Ejemplo:

```
