swoole webSocket server or client example

swoole webSocket server or client example

server:

$ws = new swoole_websocket_server('0.0.0.0', 9502);

$ws->on('open', function ($ws, $request) {
   var_dump($request->fd, $request->get, $request->server);
   $ws->push($request->fd, "hello world\n");
});

$ws->on('message', function ($ws, $frame) {
   echo "Message: {$frame->data}\n";
   $ws->push($frame->fd, "server: {$frame->data}");
});

$ws->on('close', function ($ws, $fd) {
   echo "client-{$fd} is closed\n";
});

$ws->start();


client:

$cli = new swoole_http_client('127.0.0.1', 9502);

$cli->on('message', function ($_cli, $frame) {
   var_dump($frame);
});

$cli->upgrade('/', function ($cli) {
   echo $cli->body;
   $cli->push("hello world");
});