Send some messages

This commit is contained in:
Alexander Heldt
2025-11-09 21:31:35 +01:00
parent 77f441dea4
commit 28b29d3dbf

View File

@@ -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")
}
}