node_info.lua 1.3 KB

12345678910111213141516171819202122232425262728
  1. local function sendHeader(connection)
  2. connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\nCache-Control: private, no-store\r\n\r\n")
  3. end
  4. local function sendAttr(connection, attr, val)
  5. if val then
  6. connection:send("<li><b>".. attr .. ":</b> " .. val .. "<br></li>\n")
  7. end
  8. end
  9. return function (connection, req, args)
  10. collectgarbage()
  11. sendHeader(connection)
  12. connection:send('<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>A Lua script sample</title></head><body><h1>Node info</h1><ul>')
  13. local majorVer, minorVer, devVer, chipid, flashid, flashsize, flashmode, flashspeed = node.info();
  14. sendAttr(connection, "NodeMCU version" , majorVer.."."..minorVer.."."..devVer)
  15. sendAttr(connection, "chipid" , chipid)
  16. sendAttr(connection, "flashid" , flashid)
  17. sendAttr(connection, "flashsize" , flashsize)
  18. sendAttr(connection, "flashmode" , flashmode)
  19. sendAttr(connection, "flashspeed" , flashspeed)
  20. sendAttr(connection, "node.heap()" , node.heap())
  21. sendAttr(connection, 'Memory in use (KB)' , collectgarbage("count"))
  22. sendAttr(connection, 'IP address' , wifi.sta.getip())
  23. sendAttr(connection, 'MAC address' , wifi.sta.getmac())
  24. connection:send('</ul></body></html>')
  25. end