From 7b427af538c11ff28617a263f7ffefbfdb5e8857 Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Sat, 16 Aug 2025 16:07:59 -0500 Subject: [PATCH] Update power.inc.sh --- inc/power.inc.sh | 43 ++++++++++++++++++++++++++++++++++--------- 1 file changed, 34 insertions(+), 9 deletions(-) diff --git a/inc/power.inc.sh b/inc/power.inc.sh index 5aa15917..95be8ba8 100644 --- a/inc/power.inc.sh +++ b/inc/power.inc.sh @@ -593,23 +593,23 @@ CHECKPOWER(){ [ ${REPORT} -eq 0 ] && echo -en "${idsCL[Yellow]}Pulling data from Kyle's Equipment ... " KYLE_INFO=$(curl -m 3 -s http://${PW_REMOTE_SENSORS['KP-Power']}:8888/status/${PW_SENSOR_DEVICEID['KP-Power']} | jq '.dps') - KYLE_SASINFO=$(curl -m 3 -s http://${PW_REMOTE_SENSORS['KP-SAS']}:8888/status/${PW_SENSOR_DEVICEID['KP-SAS']} | jq '.dps') if [ "${KYLE_INFO}" != "" ]; then - KYLE_SASAMP=$(echo "${KYLE_SASINFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g') - KYLE_SASAMP=$(ROUND_NUMBER $(echo "scale=3; ${KYLE_SASAMP}/1000" | tr -d $'\r' | bc -l) 2) - KYLE_SASWATT=$(echo "${KYLE_SASINFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g') - KYLE_SASWATT=$(echo "scale=1; ${KYLE_SASWATT}/10" | tr -d $'\r' | bc -l) + KYLE_AMP=$(echo "${KYLE_INFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_AMP=$(ROUND_NUMBER $(echo "scale=3; ${KYLE_AMP}/1000" | tr -d $'\r' | bc -l) 2) + KYLE_WATT=$(echo "${KYLE_INFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_WATT=$(echo "scale=1; ${KYLE_WATT}/10" | tr -d $'\r' | bc -l) else - KYLE_SASAMP=0 - KYLE_SASWATT=0 + KYLE_AMP=0 + KYLE_WATT=0 fi + [ ${REPORT} -eq 0 ] && echo -en "\r\033[K" AD=$(IDS_NUMBER_FORMAT ${KYLE_AMP} 2 yes); c=0; spc=''; spc1=`expr ${wspc} - ${#AD}`; until [ ${c} = ${spc1} ]; do spc="${spc} "; ((c++)); done MSG="${idsCL[White]}Outlet #7 Power ${idsCL[Default]}: ${idsCL[White]}${AD}'A${spc}`IDS_NUMBER_FORMAT ${KYLE_WATT} 1 yes`'W ${idsCL[Default]}" echo -en "${MSG}" if [ "${avgdays}" != "" ]; then - echo -en "${idsCL[Yellow]} Calculating Kyle's Total Power Averages ... " + echo -en "${idsCL[Yellow]} Calculating Power Averages ... " KYLE_POWER_avg=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['KP-Power']} ${avgdays} both) KYLE_AMP_avg=$(echo ${KYLE_POWER_avg} | cut -d'~' -f 1) @@ -623,9 +623,34 @@ CHECKPOWER(){ echo -e "${idsCL[Default]}" fi + KYLE_SASINFO=$(curl -m 3 -s http://${PW_REMOTE_SENSORS['KP-SAS']}:8888/status/${PW_SENSOR_DEVICEID['KP-SAS']} | jq '.dps') + if [ "${KYLE_INFO}" != "" ]; then + KYLE_SASAMP=$(echo "${KYLE_SASINFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_SASAMP=$(ROUND_NUMBER $(echo "scale=3; ${KYLE_SASAMP}/1000" | tr -d $'\r' | bc -l) 2) + KYLE_SASWATT=$(echo "${KYLE_SASINFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g') + KYLE_SASWATT=$(echo "scale=1; ${KYLE_SASWATT}/10" | tr -d $'\r' | bc -l) + else + KYLE_SASAMP=0 + KYLE_SASWATT=0 + fi + AD=$(IDS_NUMBER_FORMAT ${KYLE_SASAMP} 2 yes); c=0; spc=''; spc1=`expr ${wspc} - ${#AD}`; until [ ${c} = ${spc1} ]; do spc="${spc} "; ((c++)); done - MSG="${idsCL[White]}Outlet #7 Power ${idsCL[Default]}: ${idsCL[White]}${AD}'A${spc}`IDS_NUMBER_FORMAT ${KYLE_SASWATT} 1 yes`'W ${idsCL[Default]}" + MSG="${idsCL[White]}Outlet #8 Power ${idsCL[Default]}: ${idsCL[White]}${AD}'A${spc}`IDS_NUMBER_FORMAT ${KYLE_SASWATT} 1 yes`'W ${idsCL[Default]}" echo -en "${MSG}" + if [ "${avgdays}" != "" ]; then + echo -en "${idsCL[Yellow]} Calculating Power Averages ... " + + KYLE_SASPOWER_avg=$(AVERAGEPOWER ${PW_POWERSENSOR_ID['KP-SAS']} ${avgdays} both) + KYLE_SASAMP_avg=$(echo ${KYLE_SASPOWER_avg} | cut -d'~' -f 1) + KYLE_SASWATT_avg=$(echo ${KYLE_SASPOWER_avg} | cut -d'~' -f 2) + echo -en "\r\033[K" + + AS=$(IDS_NUMBER_FORMAT ${KYLE_SASWATT} 1 yes); c=0; spcA=''; spc1=`expr ${wspc} - ${#AS} + 4`; until [ ${c} = ${spc1} ]; do spcA="${spcA} "; ((c++)); done + AD=$(IDS_NUMBER_FORMAT ${KYLE_SASAMP_avg} 2 yes); c=0; spcB=''; spc1=`expr ${wspc} - ${#AD}`; until [ ${c} = ${spc1} ]; do spcB="${spcB} "; ((c++)); done + echo -e "${MSG}${spcA}${idsCL[LightYellow]}${AD}'A${spcB}`IDS_NUMBER_FORMAT ${KYLE_SASWATT_avg} 1 yes`'W ${idsCL[Default]}" + else + echo -e "${idsCL[Default]}" + fi fi