battd
A simple battery daemon written for use with a daemontools-style supervisor.
run
polls the status of a check
function with an interleaved call to
interval
. On the transition from a successful check
exit status to an
unsuccessful check
exit status the failed
function is called.
Installation
# ./install /etc/sv/battd
# ln -s /etc/sv/battd /var/service
Adjust the above as needed.
Usage
Configure conf
appropriately. This should contain three functions:
interval
: Called between consecutive calls to check
.
check
: Called to determine the battery status.
failed
: Called when the battery status has transitioned from a successful to a
failing return.
An example conf
is included and installed alongside the run script. An
included battcheck
awk script takes two optional arguments and a path to the
uevent file of a battery to determine if the battery capacity and estimated
run-time meet the specified criteria. Multiple invocations of battcheck
can be
used to handle more complex logic involving multiple batteries.