This commit is contained in:
2024-02-11 20:30:24 -06:00
parent 9b96ab3bc2
commit aaa5bc0e75
2 changed files with 24 additions and 38 deletions

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash
VERS='2.6.20-02112024'
VERS='2.6.21-02112024'
noheader=' update service dailytemp confsync -r -report '

View File

@@ -317,23 +317,7 @@ CHECKPOWER(){
declare -A OFFSITE_MISC
for mSENSOR in "${PW_POWERSENSOR_MISC[@]}"; do
INFO=$(curl -m 3 -s http://${PW_TUYA_API}/status/${PW_SENSOR_DEVICEID[${mSENSOR}]} | jq '.dps')
if [ "$(echo "${INFO}" | grep '"18":')" != "" ]; then
AMP=$(echo "${INFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g')
AMP=$(ROUND_NUMBER $(echo "scale=3; ${AMP}/1000" | bc -l) 2)
WATT=$(echo "${INFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g')
WATT=$(echo "scale=1; ${WATT}/10" | bc -l)
VOLT=$(echo "${INFO}" | grep '"20":' | cut -d' ' -f 4 | sed 's/,//g')
VOLT=$(echo "scale=1; ${VOLT}/10" | bc -l)
else
AMP=$(echo "${INFO}" | grep '"4":' | cut -d' ' -f 4 | sed 's/,//g')
AMP=$(ROUND_NUMBER $(echo "scale=3; ${AMP}/1000" | bc -l) 2)
WATT=$(echo "${INFO}" | grep '"5":' | cut -d' ' -f 4 | sed 's/,//g')
WATT=$(echo "scale=1; ${WATT}/10" | bc -l)
VOLT=$(echo "${INFO}" | grep '"6":' | cut -d' ' -f 4 | sed 's/,//g')
VOLT=$(echo "scale=1; ${VOLT}/10" | bc -l)
fi
OFFSITE_MISC[${mSENSOR}]="${AMP}:${WATT}:${VOLT}"
OFFSITE_MISC[${mSENSOR}]=$(GET_TUYA_POWER ${mSENSOR})
done
fi
@@ -354,9 +338,7 @@ CHECKPOWER(){
[ "${avgdays}" != "" ] && echo -e " Amps Watts" || echo
for mSENSOR in "${!OFFSITE_MISC[@]}"; do
echo ${OFFSITE_MISC[${mSENSOR}]} | cut -d':' -f 1 | read AMP
echo ${OFFSITE_MISC[${mSENSOR}]} | cut -d':' -f 2 | read WATT
echo ${OFFSITE_MISC[${mSENSOR}]} | cut -d':' -f 3 | read VOLT
IFS=: read -r AMP WATT VOLT <<< ${OFFSITE_MISC[${mSENSOR}]}; unset IFS
AD1="${PW_MISCSENSOR_DESC[${mSENSOR}]}"; c=0; spc1=''; spca=`expr 25 - ${#AD1}`; until [ ${c} = ${spca} ]; do spc1="${spc1} "; ((c++)); done
AD2=$(IDS_NUMBER_FORMAT ${AMP} 2 yes); c=0; spc2=''; spca=`expr ${wspc} - ${#AD2}`; until [ ${c} = ${spca} ]; do spc2="${spc2} "; ((c++)); done
AD3=$(IDS_NUMBER_FORMAT ${WATT} 2 yes); c=0; spc3=''; spca=`expr ${wspc} - ${#AD3}`; until [ ${c} = ${spca} ]; do spc3="${spc3} "; ((c++)); done
@@ -971,23 +953,8 @@ POWERLOGGER_SERVICE(){
for mSENSOR in "${PW_POWERSENSOR_MISC[@]}"; do
INFO=$(curl -m 3 -s http://${PW_TUYA_API}/status/${PW_SENSOR_DEVICEID[${mSENSOR}]} | jq '.dps')
if [ "${INFO}" != "" ] && [ "${PW_POWERSENSOR_ID[${mSENSOR}]}" != "" ]; then
if [ "$(echo "${INFO}" | grep '"18":')" != "" ]; then
AMP=$(echo "${INFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g')
AMP=$(ROUND_NUMBER $(echo "scale=3; ${AMP}/1000" | bc -l) 2)
WATT=$(echo "${INFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g')
WATT=$(echo "scale=1; ${WATT}/10" | bc -l)
VOLT=$(echo "${INFO}" | grep '"20":' | cut -d' ' -f 4 | sed 's/,//g')
VOLT=$(echo "scale=1; ${VOLT}/10" | bc -l)
else
AMP=$(echo "${INFO}" | grep '"4":' | cut -d' ' -f 4 | sed 's/,//g')
AMP=$(ROUND_NUMBER $(echo "scale=3; ${AMP}/1000" | bc -l) 2)
WATT=$(echo "${INFO}" | grep '"5":' | cut -d' ' -f 4 | sed 's/,//g')
WATT=$(echo "scale=1; ${WATT}/10" | bc -l)
VOLT=$(echo "${INFO}" | grep '"6":' | cut -d' ' -f 4 | sed 's/,//g')
VOLT=$(echo "scale=1; ${VOLT}/10" | bc -l)
fi
IFS=: read -r AMP WATT VOLT <<< $(GET_TUYA_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}]}','${LogDataTime}','${VOLT}','${AMP}','${WATT}')"
${mysql_conn} -e "USE servermonitor; ${QRY}"
fi
@@ -1239,4 +1206,23 @@ OFFSITE_SENDPOWER(){
SENDNOTICE "${1}" "${st_power}" 0 cosmic
}
GET_TUYA_POWER(){
INFO=$(curl -m 3 -s http://${PW_TUYA_API}/status/${PW_SENSOR_DEVICEID[${1}]} | jq '.dps')
if [ "$(echo "${INFO}" | grep '"18":')" != "" ]; then
AMP=$(echo "${INFO}" | grep '"18":' | cut -d' ' -f 4 | sed 's/,//g')
AMP=$(ROUND_NUMBER $(echo "scale=3; ${AMP}/1000" | bc -l) 2)
WATT=$(echo "${INFO}" | grep '"19":' | cut -d' ' -f 4 | sed 's/,//g')
WATT=$(echo "scale=1; ${WATT}/10" | bc -l)
VOLT=$(echo "${INFO}" | grep '"20":' | cut -d' ' -f 4 | sed 's/,//g')
VOLT=$(echo "scale=1; ${VOLT}/10" | bc -l)
else
AMP=$(echo "${INFO}" | grep '"4":' | cut -d' ' -f 4 | sed 's/,//g')
AMP=$(ROUND_NUMBER $(echo "scale=3; ${AMP}/1000" | bc -l) 2)
WATT=$(echo "${INFO}" | grep '"5":' | cut -d' ' -f 4 | sed 's/,//g')
WATT=$(echo "scale=1; ${WATT}/10" | bc -l)
VOLT=$(echo "${INFO}" | grep '"6":' | cut -d' ' -f 4 | sed 's/,//g')
VOLT=$(echo "scale=1; ${VOLT}/10" | bc -l)
fi
echo "${AMP}:${WATT}:${VOLT}"
}