<?php require 'loader.php'; use Ephp\Message; use Ephp\SocketIOClient; $client = new SocketIOClient('http://localhost:8080'); $client->connect(); $client->emit('subscribe', ['room' => 'test']); $received = 0; try { $client->listen(function ($event, Message $message = null) use(&$received) { if ($message !== null) { $args = json_decode(current($message->getArgs())); $message = sprintf('packet: %d, time: %f, heartbeats: %d', $args->packet, $args->time, $args->heartbeats); writeDebug($message); } }); } catch (\RuntimeException $e) { echo $e->getMessage(); }
<?php require 'loader.php'; use Ephp\Message; use Ephp\SocketIOClient; $client = new SocketIOClient('http://localhost:8080'); $client->connect(); $sent = 0; $start = microtime(true); $heartbeats = 0; $heartbeatMark = 20000; while (true) { try { $time = microtime(true); $elapsedTime = $time - $start; if ($sent % $heartbeatMark === 0) { $client->heartbeat(); $heartbeats++; } $payload = array("packet" => $sent, "time" => $elapsedTime, 'heartbeats' => $heartbeats); $message = sprintf('packet: %d, time: %f, heartbeats: %d', $sent, $elapsedTime, $heartbeats); $client->message($payload); $sent++; writeDebug($message); usleep(1 * 1000); } catch (\RuntimeException $e) { echo $e . "\n"; break; } } $client->disconnect();