main.lua 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. -- LuaTools需要PROJECT和VERSION这两个信息
  2. PROJECT = "udpdemo"
  3. VERSION = "1.0.0"
  4. -- 引入必要的库文件(lua编写), 内部库不需要require
  5. sys = require("sys")
  6. wlan.connect("uiot", "12345678")
  7. sys.taskInit(function()
  8. while 1 do
  9. if socket.isReady() then
  10. sys.wait(2000)
  11. local netc = socket.udp()
  12. netc:host("nutz.cn")
  13. netc:port(17888)
  14. netc:on("connect", function(id, re)
  15. log.info("udp", "connect ok", id, re)
  16. if re then
  17. netc:send("IMEI:" .. wlan.getMac())
  18. end
  19. end)
  20. netc:on("recv", function(id, data)
  21. log.info("udp", "recv", #data, data)
  22. end)
  23. if netc:start() == 0 then
  24. while netc:closed() == 0 do
  25. sys.waitUntil("NETC_END_" .. netc:id(), 30000)
  26. if netc:closed() == 0 then
  27. log.info("udp", "send heartbeat")
  28. netc:send("heartbeat:" .. wlan.getMac() .. " " .. os.date())
  29. end
  30. end
  31. end
  32. netc:clean()
  33. netc:close()
  34. log.info("udp", "all close, sleep 30s")
  35. sys.wait(30000)
  36. else
  37. sys.wait(1000)
  38. end
  39. end
  40. end)
  41. -- 用户代码已结束---------------------------------------------
  42. -- 结尾总是这一句
  43. sys.run()
  44. -- sys.run()之后后面不要加任何语句!!!!!