Advertisement
Feddis08

Client

Aug 8th, 2021 (edited)
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.81 KB | None | 0 0
  1. local component = require("component")
  2. local serialization = require("serialization")
  3. local event = require("event")
  4. local m = component.modem
  5. local serverAddress = ""
  6. local localAddresS = ""
  7. local connected = false
  8.  
  9. function connectToServer()
  10.     m.open(5)
  11.     if m.isOpen(5) then
  12.         print(m.isOpen(5))
  13.         m.broadcast(5, serialization.serialize({to="router", method="connection"}))
  14.         print("Sent a request for address")
  15.         print("Waiting for answer")
  16.         local _, localAddress, from, port, distance, message = event.pull(5, "modem_message")
  17.         localAddresS = localAddress
  18.         message = serialization.unserialize(message)
  19.         if message.connected == true then
  20.             serverAddress = from
  21.             connected = true
  22.             print("Connected with the router: " .. serverAddress)    
  23.             return
  24.         end
  25.        
  26.     else
  27.         print("Can't bind on port: 5")
  28.     end
  29. end
  30.    
  31. function listen(port)
  32.     m.open(port)
  33.     local _, localAddress, from, port, distance, message = event.pull("modem_message")
  34.     message = serialization.unserialize(message)
  35.     return message
  36. end
  37.    
  38. function send(port2, to2, message2)
  39.     if connected == true then
  40.         m.open(10)
  41.         m.send(serverAddress, 10, serialization.serialize({port = port2, from = localAddresS, time = os.time(os.date("!*t"))
  42. , to = to2, message = message2, message2 = "true"}))
  43.         m.close(10)
  44.         print("sent message to router")
  45.         return
  46.     else
  47.         print("You can not send. You are not conneted")
  48.     end
  49. end
  50. function broadcast(port, message)
  51.         m.send(serverAddress, port, serialization.serialize({method = "broadcast", message = message, port = port}))
  52. end
  53. connectToServer()
  54. send(123, localAddresS, "Hi")
  55. result = listen(123)
  56.  
  57. print("Test123: " .. tostring(result.message))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement