From 0d8060769aa24dcf4bd2f8fe30774ea252316a1b Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Sun, 11 Sep 2022 14:41:46 -0500 Subject: [PATCH] Update powerwall.sh --- powerwall.sh | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/powerwall.sh b/powerwall.sh index fae8aca0..4c43175d 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -111,16 +111,28 @@ CHECKTEMP_SERVICE(){ } CHECKACV_SERVICE(){ - last_temp=0 + last_volt=0 while true do INPUTACV=$(curl -s "http://10.10.0.61/stats.json" | jq '.inputs .inV') datetime=`date +'%Y-%m-%d %H:%M:%S'` + volt_diff=$((${last_volt%.*} - ${INPUTACV%.*})) + [ $volt_diff -lt 0 ] && volt_diff=$(($volt_diff * -1)) if [ ${INPUTACV%.*} -ge ${min_volt} ]; then echo "($datetime) normal voltage: ${INPUTACV}V" + if [ $volt_diff -gt 1 ]; then + echo -e "($datetime) Normal voltage detected\nVOLTAGE: ${INPUTACV}V" | mail -s "POWER NOMINAL AGAIN" $email_alert + if [ "$last_volt" = "0" ]; then + echo -e "($datetime) Normal voltage detected\nVOLTAGE: ${INPUTACV}V" | mail -s "Power Nominal" $email_alert + fi + last_volt=1 else + last_volt=${INPUTACV} echo "($datetime) LOW voltage: ${INPUTACV}V" - echo -e "($datetime) Power off or low voltage detected\nVOLTAGE: ${INPUTACV}V" | mail -s "POWER OFF!!" $email_alert + if [ $volt_diff -gt 1 ] || [ "$last_volt" = "1" ]; then + echo -e "($datetime) Power off or low voltage detected\nVOLTAGE: ${INPUTACV}V" | mail -s "POWER ALERT - LOW POWER!!" $email_alert + + fi fi sleep 30 done # &