xp-forge/websockets

WebSockets for the XP Framework

v3.1.0 2024-03-24 13:38 UTC

This package is auto-updated.

Last update: 2024-04-24 13:46:39 UTC


README

Build status on GitHub XP Framework Module BSD Licence Requires PHP 7.0+ Supports PHP 8.0+ Latest Stable Version

Example

use websocket\Listeners;

class Imitator extends Listeners {

  public function serve($events) {
    return [
      '/echo' => function($conn, $payload) {
        $conn->send('You said: '.$payload);
      }
    ];
  }
}

Run it using:

$ xp -supervise ws Imitator
@peer.ServerSocket(Resource id #138 -> tcp://0.0.0.0:8081))
Serving Imitator(dev)[] > websocket.logging.ToConsole
# ...

On the JavaScript side, open the connection as follows:

var ws = new WebSocket('ws://localhost:8081/echo');
ws.onmessage = (event) => console.log(event.data);

ws.send('Hello');  // Will log "You said: Hello" to the console

See also