diff --git a/powerwall.sh b/powerwall.sh index a59843d0..b78f64c1 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -46,13 +46,44 @@ CHECKTEMP_SERVICE(){ echo ${TEMP_THRESHOLDS[${1}]} | cut -d',' -f 2 | read temp_crit if [ $(bc -l <<< "$temp_f >= $temp_warn") -eq 1 ] && [ $(bc -l <<< "$temp_f < $temp_crit") -eq 1 ]; then - echo "WARNING TEMP: $temp_f°F" | mail -s "${1} TEMP WARNING" $email_alert + #echo "WARNING TEMP: $temp_f°F" | mail -s "${1} TEMP WARNING" $email_alert + echo "WARNING: $temp_f°F" elif [ $(bc -l <<< "$temp_f >= $temp_crit") -eq 1 ]; then - echo "CRITICAL TEMP: $temp_f°F" | mail -s "${1} TEMP CRITICAL" $email_alert + #echo "CRITICAL TEMP: $temp_f°F" | mail -s "${1} TEMP CRITICAL" $email_alert + echo "CRITICAL: $temp_f°F" else - echo "NORMAL TEMP: $temp_f°F" | mail -s "${1} TEMP NORMAL" $email_alert + #echo "NORMAL TEMP: $temp_f°F" | mail -s "${1} TEMP NORMAL" $email_alert + echo "normal: $temp_f°F" fi fi + + + + do + ${mqtt_conn} -t tele/${1}/SENSOR | while read -r mqtt_message + do + echo $mqtt_message | cut -d':' -f 6 | cut -d',' -f 1 | read temp_c + if [ "$temp_c" != "null" ] && [ "$temp_c" != "" ]; then + temp_f=`echo "scale=2; $temp_c*1.8 + 32" | bc` + #echo "$temp_c -> $temp_f" + + echo ${TEMP_THRESHOLDS[${1}]} | cut -d',' -f 1 | read temp_warn + echo ${TEMP_THRESHOLDS[${1}]} | cut -d',' -f 2 | read temp_crit + + if [ $(bc -l <<< "$temp_f >= $temp_warn") -eq 1 ] && [ $(bc -l <<< "$temp_f < $temp_crit") -eq 1 ]; then + #echo "WARNING TEMP: $temp_f°F" | mail -s "${1} TEMP WARNING" $email_alert + echo "WARNING: $temp_f°F" + elif [ $(bc -l <<< "$temp_f >= $temp_crit") -eq 1 ]; then + #echo "CRITICAL TEMP: $temp_f°F" | mail -s "${1} TEMP CRITICAL" $email_alert + echo "CRITICAL: $temp_f°F" + else + #echo "NORMAL TEMP: $temp_f°F" | mail -s "${1} TEMP NORMAL" $email_alert + echo "normal: $temp_f°F" + fi + fi + done + sleep 10 + done # & }