From 28b29d3dbfac8a09056efa403c2e7a04ef6e74fc Mon Sep 17 00:00:00 2001 From: Alexander Heldt Date: Sun, 9 Nov 2025 21:31:35 +0100 Subject: [PATCH] Send some messages --- src/musicplayer.gleam | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/src/musicplayer.gleam b/src/musicplayer.gleam index 1a32321..ca2796e 100644 --- a/src/musicplayer.gleam +++ b/src/musicplayer.gleam @@ -1,5 +1,41 @@ import gleam/io +import tcp/reason +import tcp/tcp + pub fn main() -> Nil { - io.println("Hello from musicplayer!") + let socket_path = "/tmp/musicplayer.sock" + + case tcp.connect(socket_path) { + Error(r) -> + io.println("Failed to connect to socket: " <> reason.to_string(r)) + Ok(socket) -> { + io.println("connected") + + let messages = ["hello, \n", "world!\n"] + + messages |> send_messages(socket, _) + + io.println("closing") + tcp.close(socket) + } + } +} + +fn send_messages(socket: tcp.Socket, messages: List(String)) -> Nil { + case messages { + [] -> Nil + [message, ..rest] -> { + send_message(socket, message) + send_messages(socket, rest) + } + } +} + +fn send_message(socket: tcp.Socket, message: String) -> Nil { + case tcp.send(socket, message) { + Error(r) -> + io.println("Failed to send message to socket: " <> reason.to_string(r)) + Ok(_) -> io.println("Sent message to socket") + } }