aboutsummaryrefslogtreecommitdiff
path: root/source_file.r
diff options
context:
space:
mode:
authorTinWoodman92 <chrhodgden@gmail.com>2023-05-31 21:17:06 -0500
committerTinWoodman92 <chrhodgden@gmail.com>2023-05-31 21:17:06 -0500
commitd67f09fb2f5a1dd11ac445eccec5dfe3976a6ce9 (patch)
tree065f0bc2b0a6ace3b8dd6bf0da0ca831f43cd959 /source_file.r
parentb9244a0e12333f441947cb1f31ad07efe9c897af (diff)
clients now connect via sockets.
Diffstat (limited to 'source_file.r')
-rw-r--r--source_file.r37
1 files changed, 36 insertions, 1 deletions
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