Hi,
Here is my contribution. This plugin check ups with the aid of
http://www.networkupstools.org and show status of ups in statusbar.
--
Olleg Samoylov
-- statusd_nut.lua
--
-- Show ups status and battery capacity when on battery
-- Depends on Network UPS Tools (upsc)
--
-- Written by Olleg Samoylov
--
-- You are free to distribute this software under the terms of the GNU
-- General Public License Version 2 or later
if not statusd_nut then
statusd_nut={
interval=15*1000,
ups='myups',
}
end
local settings = table.join (statusd.get_config("nut"), statusd_nut)
local nut_timer
local function update_nut()
local f = io.popen("upsc '"..settings.ups.."' ups.status")
local status = f:read()
f:close()
f = io.popen("upsc '"..settings.ups.."' battery.charge")
local battery = tonumber(f:read())
f:close()
if battery<100 then
statusd.inform("nut", status.." "..battery.."%")
if status:match("OB %a+") then
statusd.inform("nut_hint", "critical")
nut_timer:set(1000, update_nut)
else
statusd.inform("nut_hint", "important")
nut_timer:set(settings.interval, update_nut)
end
else
statusd.inform("nut", status)
statusd.inform("nut_hint", "normal")
nut_timer:set(settings.interval, update_nut)
end
end
nut_timer = statusd.create_timer()
update_nut()