diff --git a/defaults.inc b/defaults.inc index c62a4486..249e6b17 100755 --- a/defaults.inc +++ b/defaults.inc @@ -1,6 +1,6 @@ #!/usr/bin/env bash -VERS='2.2.50-08182023' +VERS='2.2.51-08182023' noheader=' update service dailytemp ' diff --git a/powerwall.sh b/powerwall.sh index f82e130d..a59bc6c3 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -134,10 +134,18 @@ AVERAGETEMP(){ daysback=${2} sensorid=${1} logsfound=0; + if [ "${PW_SENSOR_TYPE[${SENSORa}]}" == "esxi" ]; then + entityid=($(${mysql_conn} -e "SELECT id FROM servermonitor.entities WHERE BINARY name='${3}' AND sensorid='${sensorid}'")) + entityid=${entityid[1]} + WHERE="sensorid=${sensorid} AND entity=${entityid}" + else + WHERE="sensorid=${sensorid}" + fi + while IFS=$'\t' read date sensorid temp hum ;do temptotal=$(bc <<< "scale=2; ${temptotal}+${temp}") ((logsfound++)) - done < <(${mysql_conn} -se "USE servermonitor; SELECT date,sensorid,temp,hum from sensor_data WHERE sensorid=${sensorid} AND date BETWEEN + done < <(${mysql_conn} -se "USE servermonitor; SELECT date,sensorid,temp,hum from sensor_data WHERE ${WHERE} AND date BETWEEN DATE_SUB(DATE(NOW()), INTERVAL ${daysback} DAY) AND NOW() ORDER BY id DESC;") average=$(bc <<< "scale=2; ${temptotal}/${logsfound}") echo ${average} @@ -370,8 +378,6 @@ DAILYTEMP(){ fi for SENSOR in "${SENSORS_CHECK[@]}"; do - average1=$(AVERAGETEMP ${PW_SENSOR_ID[$SENSOR]} 1) - # average7=$(AVERAGETEMP ${PW_SENSOR_ID[$SENSOR]} 7) if [ "${PW_SENSOR_TYPE[${SENSORa}]}" == "mqtt" ]; then mqtt_message=`${mqtt_conn} -t tele/${SENSOR}/SENSOR -C 1` @@ -394,6 +400,14 @@ DAILYTEMP(){ temp_c='' fi + if [ "${PW_SENSOR_TYPE[${SENSORa}]}" == "esxi" ]; then + average1=$(AVERAGETEMP ${PW_SENSOR_ID[$SENSOR]} 1 ${vSENSOR// /_}) + # average7=$(AVERAGETEMP ${PW_SENSOR_ID[$SENSOR]} 7 ${vSENSOR// /_}) + else + average1=$(AVERAGETEMP ${PW_SENSOR_ID[$SENSOR]} 1) + # average7=$(AVERAGETEMP ${PW_SENSOR_ID[$SENSOR]} 7) + fi + c=0; spc=''; spc1=`expr ${cw} - ${#SENSOR}`; until [ $c = ${spc1} ]; do spc="${spc} "; c=`expr $c + 1`; done if [ "$temp_c" != "null" ] && [ "$temp_c" != "" ]; then temp_f=`echo "scale=2; $temp_c*1.8 + 32" | bc`