public static function handleEvent(Event $event) { $messageID = $event->header['response_to']; if (!isset(self::$pendingRequests[$messageID])) { return; } $pendingRequest = self::$pendingRequests[$messageID]; $socket = $pendingRequest['socket']; if ($event->status === '_zpc_hb') { $request = new Request('_zpc_hb', array(), $messageID, $event->getMessageID()); return $socket->sendMulti($request->serialize()); } $callback = self::$pendingRequests[$messageID]['callback']; $callback($event->getContent()); unset(self::$pendingRequests[$messageID]); }