diff --git a/defaults.inc b/defaults.inc index 2ee7c831..71348ac3 100755 --- a/defaults.inc +++ b/defaults.inc @@ -1,6 +1,6 @@ #!/usr/bin/env bash -PW_VERS='2.12.1a-07192025' +PW_VERS='2.12.1-07192025' noheader=' update service dailytemp confsync -r -report test ' diff --git a/inc/power.inc.sh b/inc/power.inc.sh index 6cb2e6f1..82c779fa 100644 --- a/inc/power.inc.sh +++ b/inc/power.inc.sh @@ -1037,16 +1037,19 @@ OFFSITE_CHECKPOWER_SERVICE(){ OFFSITE_VOLTIN=$(echo "${upsinfo}" | grep 'input.voltage:' | sed 's/.*: //' | tr -d $'\r') OFFSITE_LOAD=$(echo "${upsinfo}" | grep 'ups.load:' | sed 's/.*: //' | tr -d $'\r') OFFSITE_LOAD=`echo "scale=2; ${OFFSITE_LOAD}/100" | tr -d $'\r' | bc` - POWER_STRIP_DATA=$(kasa --type strip --json --host 10.2.1.234 energy) - OFFSITE_WATTS=$(echo "scale=2; $(echo ${POWER_STRIP_DATA} | jq '.power_mw')/1000" | tr -d $'\r' | bc -l) + OFFSITE_BATT_RUNTIME=$(echo "${upsinfo}" | grep 'battery.runtime:' | sed 's/.*: //' | tr -d $'\r') OFFSITE_BATT_RUNTIME=`echo "scale=2; ${OFFSITE_BATT_RUNTIME}/60" | tr -d $'\r' | bc` - OFFSITE_BATT_CAP=$(echo "${upsinfo}" | grep 'battery.charge:' | sed 's/.*: //' | tr -d $'\r') + OFFSITE_BATT_CAP=$(echo "${upsinfo}" | grep 'battery.charge:' | sed 's/.*: //' | tr -d $'\r') + + POWER_STRIP_DATA=$(kasa --type strip --json --host 10.2.1.234 energy) + OFFSITE_WATTS=$(echo "scale=2; $(echo ${POWER_STRIP_DATA} | jq '.power_mw')/1000" | tr -d $'\r' | bc -l) + if (( $(bc <<<"${OFFSITE_WATTS} < 100") )); then TOTAL_MISC_WATTS=0 for mSENSOR in "${PW_POWERSENSOR_MISC[@]}"; do - TOTAL_MISC_WATTS=`echo "scale=2; ${TOTAL_MISC_WATTS}+$(GET_TUYA_POWER ${mSENSOR})" | tr -d $'\r' | bc` + TOTAL_MISC_WATTS=`echo "scale=2; ${TOTAL_MISC_WATTS}+$(GET_KASA_POWER ${mSENSOR})" | tr -d $'\r' | bc` done (( $(bc <<<"${OFFSITE_WATTS} < ${TOTAL_MISC_WATTS}") )) && OFFSITE_WATTS=${TOTAL_MISC_WATTS} fi @@ -1330,6 +1333,7 @@ POWERLOGGER_SERVICE(){ OFFSITE_VOLTOUT=$(echo "${upsinfo}" | grep 'output.voltage:' | sed 's/.*: //' | tr -d $'\r') OFFSITE_LOAD=$(echo "${upsinfo}" | grep 'ups.load:' | sed 's/.*: //' | tr -d $'\r') OFFSITE_LOAD=`echo "scale=2; ${OFFSITE_LOAD}/100" | tr -d $'\r' | bc` + POWER_STRIP_DATA=$(kasa --type strip --json --host 10.2.1.234 energy) OFFSITE_WATTS=$(echo "scale=2; $(echo ${POWER_STRIP_DATA} | jq '.power_mw')/1000" | tr -d $'\r' | bc -l) OFFSITE_AMPS=$(echo $(echo "scale=2; $(echo ${POWER_STRIP_DATA} | jq '.current_ma')/1000" | tr -d $'\r' | bc -l)) @@ -1337,7 +1341,7 @@ POWERLOGGER_SERVICE(){ if (( $(bc <<<"${OFFSITE_WATTS} < 100") )); then TOTAL_MISC_WATTS=0; TOTAL_MISC_AMPS=0 for mSENSOR in "${PW_POWERSENSOR_MISC[@]}"; do - IFS=: read -r AMP WATT VOLT <<< $(GET_TUYA_POWER ${mSENSOR}); unset IFS + IFS=: read -r AMP WATT VOLT <<< $(GET_KASA_POWER ${mSENSOR}); unset IFS TOTAL_MISC_WATTS=`echo "scale=2; ${TOTAL_MISC_WATTS}+${WATT}" | tr -d $'\r' | bc` TOTAL_MISC_AMPS=`echo "scale=2; ${TOTAL_MISC_AMPS}+${AMP}" | tr -d $'\r' | bc` done @@ -1351,7 +1355,7 @@ POWERLOGGER_SERVICE(){ fi for mSENSOR in "${PW_POWERSENSOR_MISC[@]}"; do - IFS=: read -r AMP WATT VOLT <<< $(GET_TUYA_POWER ${mSENSOR}); unset IFS + IFS=: read -r AMP WATT VOLT <<< $(GET_KASA_POWER ${mSENSOR}); unset IFS if [ "${VOLT}" != "" ] && [ "${PW_POWERSENSOR_ID[${mSENSOR}]}" != "" ]; then QRY="INSERT INTO power_data (sensorid, date, volt, amp, watt) VALUES ('${PW_POWERSENSOR_ID[${mSENSOR}]}',CONVERT_TZ('${LogDataTime}', 'America/Chicago', 'UTC'),'${VOLT}','${AMP}','${WATT}')" ${mysql_conn} -e "USE servermonitor; ${QRY}"