From d67f09fb2f5a1dd11ac445eccec5dfe3976a6ce9 Mon Sep 17 00:00:00 2001 From: TinWoodman92 Date: Wed, 31 May 2023 21:17:06 -0500 Subject: clients now connect via sockets. --- source_file.r | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) (limited to 'source_file.r') diff --git a/source_file.r b/source_file.r index b0bd8d9..ce7e85d 100644 --- a/source_file.r +++ b/source_file.r @@ -1,3 +1,15 @@ +HEADER <- 64 +PORT <- 6011 +SERVER <- "localhost" +FORMAT <- "utf-8" +DISCONNECT_MESSAGE <- "!DISSCONNECT" + +con <- socketConnection( + host = SERVER, + port = PORT, + server = FALSE +) + display_msg <- function(msg) { cat( '\033[94m', @@ -7,6 +19,29 @@ display_msg <- function(msg) { ) } -msg <- "hello world - R" +send_msg <- function(conn, msg) { + sendme <- paste(msg, strrep(" ", HEADER - nchar(msg)), sep = "") + writeChar(sendme, conn) +} + +recv_msg <- function(conn) { + suppressWarnings(msg <- trimws(readChar(conn, HEADER))) + while (length(msg) == 0) { + #cat('ALERT\n') + suppressWarnings(msg <- trimws(readChar(conn, HEADER))) + } + return(msg) +} +msg <- "Initializing Client - R" display_msg(msg) + +msg <- "Initialized Client - R" +send_msg(con, msg) + +while (msg != '!DISCONNECT') { + msg <- recv_msg(con) + display_msg(msg) +} + +close(con) \ No newline at end of file -- cgit v1.2.3