Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local sx,sy = term.getSize()
- term.clear()
- term.setCursorPos(1,1)
- term.write("Welcome to KirkaChat")
- term.setCursorPos(1,2)
- term.write("Enter name: ")
- local name = read()
- local url = "wss://439e3230-6b04-4347-bcd6-2b00f48e7f62-00-11b99e27i1uiq.worf.replit.dev/"
- local messages = {}
- local ws = nil
- if name ~= "" then
- http.websocketAsync(url)
- repeat
- event, conurl, ws= os.pullEvent("websocket_success")
- print(conurl)
- until conurl == url
- term.clear()
- term.setCursorPos(1,1)
- term.write("Connected to chat")
- sleep(1)
- parallel.waitForAny(function ()
- while true do
- for i, msg in pairs(messages) do
- term.setCursorPos(1,i)
- term.write(msg)
- end
- if #messages > sy/2 then
- for i,msg in pairs(messages) do
- if messages[i+1] ~= nil then
- messages[i] = messages[i+1]
- end
- end
- end
- sleep(0.1)
- end
- end, function ()
- while true do
- local event, key, is_held = os.pullEvent("key")
- term.setCursorPos(1,sy/2+1)
- term.write(key.." "..keys.getName(key))
- --ws.send(textutils.serializeJSON({name=name,text=text}))
- --term.clear()
- end
- end, function ()
- while true do
- local event, uru, message = os.pullEvent("websocket_message")
- messages[#messages+1] = message
- term.clear()
- term.setCursorPos(1,sy/2+1)
- term.write("Enter message: ")
- if #messages > sy/2 then
- for i,msg in pairs(messages) do
- if messages[i+1] ~= nil then
- messages[i] = messages[i+1]
- end
- end
- end
- end
- end)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement