Bash-Stash/band.bash

35 lines
No EOL
1.1 KiB
Bash

#!/bin/bash
# Requires vnstat to be running on target system
set -eo pipefail # you cann add u into -eo, but it drives me nuts so I won't
if [[ -n "${BASHD_DEBUG}" ]]; then # a inevitability that this will be used
set -x
fi
trap cleanup EXIT # A little more robust cleanup
cleanup() {
# We can clean up any temp files or what nots, but for now a place holder
true
}
source ./config.bash
# initial values
mtotal=1000 # monthly total in GB for high end cut off
dmax=40 # daily max usage value
md=`date +%d` # day of the month numerically
cmd=$(($dmax * $md)) # computed max daily
wif="wan"
token=$(read_json "$JSON_FILE" "ntfy" "token")
# now vnstat stuff, some of this is specific to openwrt
vnhourly=`vnstat -i $wif -d -s --oneline | awk -F\; '{print $6}'` # total monthly usage
vnmonthly=`vnstat -i $wif -d -s --oneline | awk -F\; '{print $11}'` # daily total usage
logger "dom $md cm $cmd vnhourly $vnhourly vnmonthly $vnmonthly";
curl -d "dom $md cm $cmd vnhourly $vnhourly vnmonthly $vnmonthly" 192.168.1.168:83/bandmon
curl -H "Authorization: Bearer $token" -d "dom $md cm $cmd vnhourly $vnhourly vnmonthly $vnmonthly" https://pngpst.net/openwrt_lan