adding kill button

This commit is contained in:
2026-03-03 14:30:15 -07:00
parent 4ac6c09759
commit 60714f9afd
6 changed files with 86 additions and 6 deletions

View File

@@ -6,11 +6,25 @@ defmodule BackendWeb.ClusterStatusChannel do
require Logger
@impl true
def join("clusterstatus", _params, socket) do
def join("cluster_status", _params, socket) do
Logger.info("Client joined clusterstatus channel")
{:ok, %{status: "connected"}, socket}
end
@impl true
def handle_in("get_nodes", _payload, socket) do
Logger.info("Client requested node list #{inspect(Node.list())}")
push(socket, "node_list", %{other_nodes: Node.list(), connected_node: node()})
{:noreply, socket}
end
@impl true
def handle_in("kill_node", %{"node" => node_to_kill}, socket) do
Logger.warning("Client requested to kill node: #{node_to_kill}")
Backend.Cluster.kill_node(node_to_kill)
{:noreply, socket}
end
@impl true
def handle_in(_event, _payload, socket) do
{:noreply, socket}

View File

@@ -47,6 +47,8 @@ defmodule BackendWeb.ConnectedUserChannel do
end
@impl true
@spec handle_in(<<_::48, _::_*8>>, map(), any()) ::
{:noreply, any()} | {:reply, :ok, Phoenix.Socket.t()}
def handle_in("join_game", %{"name" => name}, socket) do
Logger.info("Player '#{name}' joining game on #{node()}")

View File

@@ -2,10 +2,9 @@ defmodule BackendWeb.UserSocket do
use Phoenix.Socket
require Logger
## Channels
channel("user:*", BackendWeb.ConnectedUserChannel)
channel("clusterstatus", BackendWeb.ClusterStatusChannel)
channel("cluster_status", BackendWeb.ClusterStatusChannel)
@impl true
def connect(%{"user_name" => user_name}, socket, _connect_info) do