#!/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