Send some messages
This commit is contained in:
@@ -1,5 +1,41 @@
|
|||||||
import gleam/io
|
import gleam/io
|
||||||
|
|
||||||
|
import tcp/reason
|
||||||
|
import tcp/tcp
|
||||||
|
|
||||||
pub fn main() -> Nil {
|
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")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user