From 9015904e63b3c5826cee5d87a0b489e31ed21100 Mon Sep 17 00:00:00 2001 From: "barwie2@st.amu.edu.pl" Date: Sun, 8 Mar 2020 22:16:30 +0100 Subject: [PATCH] fix ratchet --- app/Console/Commands/WebSocketServer.php | 56 --------------- app/Http/Controllers/WebSocketController.php | 76 -------------------- 2 files changed, 132 deletions(-) delete mode 100644 app/Console/Commands/WebSocketServer.php delete mode 100644 app/Http/Controllers/WebSocketController.php diff --git a/app/Console/Commands/WebSocketServer.php b/app/Console/Commands/WebSocketServer.php deleted file mode 100644 index f76c1b4..0000000 --- a/app/Console/Commands/WebSocketServer.php +++ /dev/null @@ -1,56 +0,0 @@ -run(); - } -} \ No newline at end of file diff --git a/app/Http/Controllers/WebSocketController.php b/app/Http/Controllers/WebSocketController.php deleted file mode 100644 index dc8698c..0000000 --- a/app/Http/Controllers/WebSocketController.php +++ /dev/null @@ -1,76 +0,0 @@ -connections[$conn->resourceId] = compact('conn') + ['user_id' => null]; - - } - - /** - * This is called before or after a socket is closed (depends on how it's closed). SendMessage to $conn will not result in an error if it has already been closed. - * @param ConnectionInterface $conn The socket/connection that is closing/closed - * @throws \Exception - */ - function onClose(ConnectionInterface $conn) { - $disconnectedId = $conn->resourceId; - unset($this->connections[$disconnectedId]); - foreach($this->connections as &$connection) - $connection['conn']->send(json_encode([ - 'offline_user' => $disconnectedId, - 'from_user_id' => 'server control', - 'from_resource_id' => null - ])); - } - - /** - * If there is an error with one of the sockets, or somewhere in the application where an Exception is thrown, - * the Exception is sent back down the stack, handled by the Server and bubbled back up the application through this method - * @param ConnectionInterface $conn - * @param \Exception $e - * @throws \Exception - */ - function onError(ConnectionInterface $conn, \Exception $e){ - $userId = $this->connections[$conn->resourceId]['user_id']; - echo "An error has occurred with user $userId: {$e->getMessage()}\n"; - unset($this->connections[$conn->resourceId]); - $conn->close(); - } - - /** - * Triggered when a client sends data through the socket - * @param \Ratchet\ConnectionInterface $conn The socket/connection that sent the message to your application - * @param string $msg The message received - * @throws \Exception - */ - function onMessage(ConnectionInterface $conn, $msg){ - if(is_null($this->connections[$conn->resourceId]['user_id'])){ - $this->connections[$conn->resourceId]['user_id'] = $msg; - $onlineUsers = []; - foreach($this->connections as $resourceId => &$connection){ - $connection['conn']->send(json_encode([$conn->resourceId => $msg])); - if($conn->resourceId != $resourceId) - $onlineUsers[$resourceId] = $connection['user_id']; - } - $conn->send(json_encode(['online_users' => $onlineUsers])); - } else{ - $fromUserId = $this->connections[$conn->resourceId]['user_id']; - $msg = json_decode($msg, true); - $this->connections[$msg['to']]['conn']->send(json_encode([ - 'msg' => $msg['content'], - 'from_user_id' => $fromUserId, - 'from_resource_id' => $conn->resourceId - ])); - } - } -} \ No newline at end of file