Advertisement
pepeknamornik

HZS_prijem_service

Jun 12th, 2021 (edited)
784
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.35 KB | None | 0 0
  1. verze = "21.0612.R1"
  2. logs = false
  3. term.clear()
  4. term.setCursorPos(1,1)
  5. local idPC = os.getComputerID()
  6.  
  7. if not fs.exists ("/zasahy/lastECUD.txt") then local data = fs.open("/zasahy/lastECUD.txt", "w") data.writeLine("0") data.close() end
  8.  
  9. local data = fs.open("/zasahy/lastECUD.txt", "r")
  10. local ECUD = tonumber(data.readLine())+1
  11. data.close()
  12.  
  13. modem = peripheral.wrap("top")
  14.    
  15. if not (modem == nil) then
  16. modem.open(idPC)
  17. print("HZS server, ID serveru: "..idPC)
  18. else
  19. term.setTextColor(colors.red)
  20. print("Error, you must configure the modem first")
  21. modem.open("Error")
  22. end
  23.  
  24. function logy(Zlog)
  25.     cas = (textutils.formatTime(os.time(), true))
  26.     local l = fs.open("/C/system/server/rules/AD/log","a")
  27.     l.writeLine(cas..": "..Zlog)
  28.     l.close()
  29. end
  30.  
  31. function bar(styl, text)
  32.     if (styl == "OK") then                  -- Uspech
  33.         term.setTextColor(colors.green)
  34.     elseif (styl == "FAIL") then            -- Neuspesne
  35.         term.setTextColor(colors.red)
  36.     elseif (styl == "INFO") then            -- Informativni
  37.         term.setTextColor(colors.lightBlue)
  38.     elseif (styl == "def") then             -- defaultni
  39.         term.setTextColor(colors.white)
  40.     elseif (styl == "PRO") then             -- Progress
  41.         term.setTextColor(colors.yellow)
  42.     else
  43.         styl = "def"
  44.         term.setTextColor(colors.white)
  45.     end
  46.    
  47.     if not (styl == "def") then
  48.         zprava = ("["..textutils.formatTime(os.time(), true).."] ["..styl.."] "..text)
  49.         else
  50.         zprava = text
  51.     end
  52.    
  53.     if logs then
  54.     logy(zprava)
  55.     end
  56.     print (zprava)
  57. end
  58.  
  59. local function defaultV()
  60.  idComp = nil
  61.  adresa = ""
  62.  udalost = ""
  63.  upresneni = ""
  64. end
  65.  
  66. function zapsat ()
  67.     data = fs.open("/zasahy/lastECUD.txt", "r")
  68.     ECUD = tonumber(data.readLine())+1
  69.     data.close()
  70.     data = fs.open("/zasahy/otevrene/"..ECUD..".txt", "w")
  71.     data.writeLine(ECUD)
  72.     data.writeLine("Adresa zarizeni: "..idComp)
  73.     data.writeLine("Adresa Udalosti: "..adresa)
  74.     data.writeLine("Co se stalo?: "..udalost)
  75.     data.writeLine("Upresneni: "..upresneni)
  76.     data.writeLine("")
  77.     data.writeLine("--------------------------------------------")
  78.     data.writeLine("Statusy")
  79.     data.writeLine("Cas ohlaseni: "..os.date())
  80.     data.close()
  81.     bar("OK", "Udalost byla uspesne zalozena!")
  82.     bar("OK", "Datum: ".. os.date())
  83.     data = fs.open("/poplach", "w")
  84.     data.writeLine(ECUD)
  85.     data.writeLine(adresa)
  86.     data.writeLine(udalost)
  87.     data.writeLine(upresneni)
  88.     data.writeLine(idComp)
  89.     data.close()
  90.     data = fs.open("/zasahy/lastECUD.txt", "w")
  91.     data.writeLine(ECUD)
  92.     data.close()
  93.     sleep(2)
  94. end
  95.  
  96. function prijmout ()
  97.     local _, side, freq, rfreq, message = os.pullEvent('modem_message')
  98.  
  99.     if (rfreq == 990) then
  100.         bar("INFO", "Zadost o zpracovani udaju.")
  101.         idComp = message
  102.         bar("PRO", "Adresa zarizeni: "..idComp)
  103.     end
  104.    
  105.     if (rfreq == 57600) then
  106.         adresa = message
  107.         bar("PRO", "Adresa Udalosti: "..adresa)
  108.     end
  109.    
  110.      if (rfreq == 57601) then
  111.         udalost = message
  112.         bar("PRO", "Co se stalo?: "..udalost)
  113.     end
  114.    
  115.     if (rfreq == 57602) then
  116.         upresneni = message
  117.         bar("PRO", "Upresneni: "..upresneni)
  118.         zapsat()
  119.     end
  120.  
  121.     if (rfreq == 57610) then
  122.         bar("OK", "Funkcni pojeni s EPS ID: "..idComp)
  123.         modem.transmit(idComp,57610,true)
  124.     end
  125.  
  126.    
  127.     prijmout()
  128. end
  129.  
  130. defaultV()
  131. prijmout()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement