/** * Run IO server */ public function run() { $wsServer = new \Ratchet\WebSocket\WsServer($this->application); $httpServer = new \Ratchet\Http\HttpServer($wsServer); $socket = new \React\Socket\Server($this->loop); $socket->listen($this->port, $this->server); $server = new \Ratchet\Server\IoServer($httpServer, $socket, $this->loop); $server->run(); }
<?php require dirname(dirname(dirname(__DIR__))) . '/vendor/autoload.php'; $loop = new React\EventLoop\StreamSelectLoop(); $sock = new React\Socket\Server($loop); $app = new Ratchet\Http\HttpServer(new Ratchet\WebSocket\WsServer(new Ratchet\Server\EchoServer())); $port = $argc > 1 ? $argv[1] : 8000; $sock->listen($port, '0.0.0.0'); $server = new Ratchet\Server\IoServer($app, $sock, $loop); $server->run();