<% local sys = require "luci.sys" local twa = require "luci.tools.webadmin" -- System local system, model, memtotal, memcached, membuffers, memfree = sys.sysinfo() local uptime = twa.date_format(tonumber(sys.uptime())) local_time = os.date("%c") local load1, load5, load15 = sys.loadavg() local load = string.format("%.2f, %.2f, %.2f", load1, load5, load15) local memory = string.format("%.2f MB (%.0f%% %s, %.0f%% %s, %.0f%% %s)", tonumber(memtotal) / 1024, 100 * memcached / memtotal, tostring(translate("cached")), 100 * membuffers / memtotal, tostring(translate("buffered")), 100 * memfree / memtotal, tostring(translate("free")) ) -- wireless local ntm = require "luci.model.network".init() local devices = ntm:get_wifidevs() local netlist = { } local netdevs = { } local dev -- Routes local defroutev4 = sys.net.defaultroute() local defroutev6 = sys.net.defaultroute6 () %> <%+header%>

<%:System%>

<%=system%>
<%=model%>
<%=load%>
<%=memory%>
<%=local_time%>
<%=uptime%>
<% if devices[1] then %>

<%:Wireless Overview%>

<% for _, dev in ipairs(devices) do local net for _, net in ipairs(dev:get_wifinets()) do netlist[#netlist+1] = net:ifname() netdevs[net:ifname()] = dev:name() if net.iwdata.ifname then local signal = net.iwinfo.signal or "N/A" local noise = net.iwinfo.noise or "N/A" local q = net.iwinfo.quality or "0" local qmax = net.iwinfo.quality_max or "100" local qperc = q / qmax * 100 if qperc == 0 then icon = "signal-none.png" elseif qperc < 26 then icon = "signal-0-25.png" elseif qperc < 51 then icon = "signal-25-50.png" elseif qperc < 76 then icon = "signal-50-75.png" elseif qperc < 100 then icon = "signal-75-100.png" else icon = "signal-0.png" end signal_string = "Signal Quality" local ssid = net.iwinfo.ssid or "N/A" local bssid = net.iwinfo.bssid or "N/A" local chan = net.iwinfo.channel or "N/A" local mode = net.iwinfo.mode or "N/A" local txpwr = net.iwinfo.txpower or "N/A" if txpwr ~= "N/A" then txpwr = txpwr.." dbm" end local bitrate = net.iwinfo.bitrate or "N/A" if bitrate ~= "N/A" then bitrate = ( bitrate / 1000 ).."Mb/s" end local interface = net.iwdata.ifname or "N/A" %> <% end end end %>
<%:Signal%> <%:Bitrate%> <%:SSID%> <%:BSSID%> <%:Channel%> <%:Mode%> <%:TX%>-<%:Power%> <%:Interface%>
<%=signal_string%> <%=bitrate%> <%=ssid%> <%=bssid%> <%=chan%> <%=mode%> <%=txpwr%> <%=interface%>
<% end %>

<%:Default routes%>

<% if not defroutev4 and not defroutev6 then %> <%:No defaultroutes known.%> <%else%> <% if defroutev4 then %> <% end if defroutev6 then %> <% end %>
<%:Network%> <%:Interface%> <%:Gateway%> <%:Metric%>
<%=defroutev4.dest:string()%> <%=defroutev4.device%> <%=defroutev4.gateway:string()%> <%=defroutev4.metric%>
<%=defroutev6.dest:string()%> <%=defroutev6.device%> <%=defroutev6.nexthop:string()%> <%=defroutev6.metric%>
<% end %> <%+footer%>