#!/bin/sh
# Script by Georges Rosset
# to update and graph humidity
# 19.10.2004
# =============================================================
# User defined parameters
# -------------------------------------------------
logfileHumi="/usr/local/rrdtool/datas/humiLast";
rrdfileHumi="/usr/local/rrdtool/datas/humidity.rrd";
rrdtoolbin="/usr/local/rrdtool/bin/rrdtool";
htmldir="/WWW/temperature";
# -------------------------------------------------
#
#
# Note: below replace "path2digitemp" with the
# actual path to the digitemp software:
# ---------------------------------------------
cd /path2digitemp
timenow=$(date +%s);
/path2digitemp/digitemp -a  -H"%h" | tail -n1 > $logfileHumi
value=$( tail $logfileHumi )
# ---------------------------------------------
#
#
$rrdtoolbin update $rrdfileHumi N:-30:$value
#
# Create 24hrs image 
$rrdtoolbin graph $htmldir/humiDaily.png --title="Humidité relative: variations sur 24hrs (moyenne sur 5 minutes)" \
	-v"% relatif" -l0 -u100 -r -aPNG -h250 -w700 \
        DEF:humidity=$rrdfileHumi:humi:LAST \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodat=humidity,humidity,+,UN,INF,UNKN,IF \
        AREA:nodat#BBBBBB:"NoData"
#
# Create 24hrs image (small)
$rrdtoolbin graph $htmldir/humismall.png --title="Humidité relative: variations sur 24hrs (moyenne sur 5minutes)" \
	-v"% relatif" -l0 -u100 -r -aPNG -h80 -w350 \
        DEF:humidity=$rrdfileHumi:humi:LAST \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodat=humidity,humidity,+,UN,INF,UNKN,IF \
        AREA:nodat#BBBBBB:"NoData"
#
let vruletime=$timenow-86400;
# Create 7 days image
$rrdtoolbin graph $htmldir/humiWeekly.png --title="Humidité relative: variations sur 7 jours (moyenne sur 1 hr)" \
 	-v"% relatif" -l0 -u100 -r -aPNG -h150 -w700 -s-604800 \
        DEF:humidity=$rrdfileHumi:humi:AVERAGE \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodat=humidity,humidity,+,UN,INF,UNKN,IF \
        VRULE:$vruletime#009900:"-24hrs" \
        AREA:nodat#BBBBBB:"NoData"
#
let vruletime=$timenow-604800;
# Create 28 days image
$rrdtoolbin graph $htmldir/humiMonthly.png --title="Humidité relative: variations sur 28 jours" \
        -v"% relatif" -l0 -u100 -r -aPNG -h150 -w700 -s-2419200 \
        DEF:humidity=$rrdfileHumi:humi:AVERAGE \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodat=humidity,humidity,+,UN,INF,UNKN,IF \
        VRULE:$vruletime#009900:"-7 jours" \
        AREA:nodat#BBBBBB:"NoData"
#
let vruletime=$timenow-5184000;
# Create 60 days image
$rrdtoolbin graph $htmldir/humi2Monthly.png --title="Humidité relative: variations sur 60 jours (-60j < 0)" \
        -v"% relatif" -aPNG -h150 -w700 -l0 -u100 -r -s-5270400 \
        DEF:humidity=$rrdfileHumi:humi:AVERAGE \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodatp=humidity,humidity,+,UN,INF,UNKN,IF \
        CDEF:nodatn=humidity,humidity,+,UN,NEGINF,UNKN,IF \
        HRULE:0#0000DD \
        VRULE:$vruletime#009900:"-60 jours" \
        AREA:nodatp#BBBBBB:"NoData" \
        AREA:nodatn#BBBBBB
#
let vruletime=$timenow-10368000;
# Create 2nd 60 days image
$rrdtoolbin graph $htmldir/humi3Monthly.png --title="Humidité relative: variations sur 60 jours (-120j < -60j)" \
        -v"% relatif" -aPNG -h150 -w700 -l0 -u100 -r  -s-10454400 -e-5184000 \
        DEF:humidity=$rrdfileHumi:humi:AVERAGE \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodatp=humidity,humidity,+,UN,INF,UNKN,IF \
        CDEF:nodatn=humidity,humidity,+,UN,NEGINF,UNKN,IF \
        HRULE:0#0000DD \
        VRULE:$vruletime#009900:"-60 jours" \
        AREA:nodatp#BBBBBB:"NoData" \
        AREA:nodatn#BBBBBB
#
let vruletime=$timenow-15552000;
# Create 3th 60 days image
$rrdtoolbin graph $htmldir/humi4Monthly.png --title="Humidité relative: variations sur 60 jours (-180j < -120j)" \
        -v"% relatif" -aPNG -h150 -w700 -l0 -u100 -s-15638400 -e-10368000 \
        DEF:humidity=$rrdfileHumi:humi:AVERAGE \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodatp=humidity,humidity,+,UN,INF,UNKN,IF \
        CDEF:nodatn=humidity,humidity,+,UN,NEGINF,UNKN,IF \
        HRULE:0#0000DD \
        VRULE:$vruletime#009900:"-60 jours" \
        AREA:nodatp#BBBBBB:"NoData" \
        AREA:nodatn#BBBBBB
#
let vruletime=$timenow-20736000;
# Create 4th 60 days image
$rrdtoolbin graph $htmldir/humi5Monthly.png --title="Humidité relative: variations sur 60 jours (-240j < -180j)" \
        -v"% relatif" -aPNG -h150 -w700 -l0 -u100 -r  -s-20822400  -e-15552000 \
        DEF:humidity=$rrdfileHumi:humi:AVERAGE \
        LINE2:humidity#0000DD:"Humidité relative" \
        CDEF:nodatp=humidity,humidity,+,UN,INF,UNKN,IF \
        CDEF:nodatn=humidity,humidity,+,UN,NEGINF,UNKN,IF \
        HRULE:0#0000DD \
        VRULE:$vruletime#009900:"-60 jours" \
        AREA:nodatp#BBBBBB:"NoData" \
        AREA:nodatn#BBBBBB
#
# Create 1 year image
$rrdtoolbin graph $htmldir/humiYearly.png --title="Humidité relative: variations sur une année" \
        -v"% relatif" -aPNG -h150 -w700 -u100 -l0 -r -s-31449600 \
        DEF:humiMin=$rrdfileHumi:humi:MIN \
        DEF:humiMax=$rrdfileHumi:humi:MAX \
        AREA:humiMax#EEDDAA:"Variations journalières" \
        AREA:humiMin#FFFFFF \
        LINE1:humiMax#0000FF:"Humidité max journalière" \
        LINE1:humiMin#0000AA:"Humidité min journalière" \
        CDEF:nodatp=humiMax,humiMin,+,UN,INF,UNKN,IF \
        CDEF:nodatn=humiMax,humiMin,+,UN,NEGINF,UNKN,IF \
        HRULE:0#0000DD \
        AREA:nodatp#BBBBBB:"NoData" \
        AREA:nodatn#BBBBBB
#

echo - Humidité relative: $value % > $htmldir/lasthumi.txt
echo $value % > /WWW/humi.txt
#
cd -
# End of script
# =============================================================


