diff --git a/files/wifi.lua b/files/wifi.lua index 05b0ba1..c933cf0 100755 --- a/files/wifi.lua +++ b/files/wifi.lua @@ -6,6 +6,7 @@ local function scrape() local metric_wifi_network_bitrate = metric("wifi_network_bitrate","gauge") local metric_wifi_network_noise = metric("wifi_network_noise_dbm","gauge") local metric_wifi_network_signal = metric("wifi_network_signal_dbm","gauge") + local metric_wifi_clients = metric("wifi_network_clients", "gauge") local u = ubus.connect() local status = u:call("network.wireless", "status", {}) @@ -33,10 +34,14 @@ local function scrape() quality = math.floor((100 / qm) * qc) end + local wifi_clients = 0 + for _ in pairs(iw.assoclist(ifname)) do wifi_clients = wifi_clients +1 end + metric_wifi_network_quality(labels, quality) metric_wifi_network_noise(labels, iw.noise(ifname) or 0) metric_wifi_network_bitrate(labels, iw.bitrate(ifname) or 0) metric_wifi_network_signal(labels, iw.signal(ifname) or -255) + metric_wifi_clients(labels, wifi_clients) end end end