protected function read($buffer, Client $client) { $message = trim(event_buffer_read($buffer, self::MAX_READ_LENGTH)); if (!$client->getHandshake()) { if ($client->handshake($message) && $this->connect_callback) { call_user_func_array($this->connect_callback, [$client]); } } call_user_func_array($this->read_callback, [$client, $client->decodeIncoming($message)]); }