
#!/bin/bash
# File	: upl_domotica_data_to_graphite.sh
# By	: MaartenDeBoer.nl, 2016-04-16
# Subject	: Script to upload Domotica data to Graphite
#(0.2)	: Mod; FILEPREFIX="domotica-nl-${HOSTNAME}-rpi_"
#	: Added; TODAY
#set -x
PGM="`basename $0|cut -d\. -f1`"
VER="0.2"
TMP="/tmp/${PGM}.$$"
LOG="${HOME}/log/${PGM}.log"
RESULT=""
UPLOADED="${HOME}/data/${PGM}.uploaded"
FILENAME=""
DATADIR="${HOME}/data"
HOSTNAME="`hostname|cut -d\. -f1`"
FILEPREFIX="domotica-nl-${HOSTNAME}-rpi_"
TODAY="`date +%Y-%m-%d`"

USAGE()
{
  echo "Usage: ${PGM} [options]"
  echo "Options        : "
  echo "     -h        : This help"
  echo "     -v        : Verbose"
  echo "     -V        : Version"
  echo "     --datadir : other DATADIR (${DATADIR})"
}

while [ ${#} -gt 0 ]
do
  case "${1}" in
    '-h')  USAGE; exit 1 ;;
    '-x')  set -x ;;
    '-V')  echo "Version=${VER}" ; exit 1 ;;
    '--datadir')  DATADIR=${2}; shift  ;;
    *) echo "Option ${1} not found." ; USAGE; exit 1 ;;
  esac 
  shift
done

echo "`date` ${PGM} v${VER} started."|tee -a ${LOG}
echo "DATADIR=${DATADIR}"
echo "DAYFILE=${DAYFILE}"
echo "HOSTNAME=${HOSTNAME}"
echo "FILENAME=${FILENAME}"
echo "TODAY=${TODAY}"
echo "PGM=${PGM}"
echo "VER=${VER}"

touch ${UPLOADED}

  FILENAME="`ls -1r ${DATADIR}/${FILEPREFIX}*.csv|grep -v ${TODAY}|egrep -vf ${UPLOADED}|head -1`"
  echo "  FILENAME=${FILENAME}."|tee -a ${LOG}
  if [ "${FILENAME}" == "" ]; then
    echo "Empty FILENAME. Exiting ...  "|tee -a ${LOG}
    exit 1
  fi

  cat ${FILENAME}|grep -v ^#|while read LINE
  do
    echo ${LINE}
# FILENAME=domotica-nl-idefix-rpi_2016-04-13.csv
# 2016-04-13 00:05:01;44.4;
    YR="`basename ${FILENAME}|cut -d\_ -f2|cut -d\. -f1|cut -d\- -f1`"
    MON="`basename ${FILENAME}|cut -d\_ -f2|cut -d\. -f1|cut -d\- -f2`"
    DAY="`basename ${FILENAME}|cut -d\_ -f2|cut -d\. -f1|cut -d\- -f3`"
    HR="`echo ${LINE}|cut -d\; -f1|cut -d' ' -f2|cut -d\: -f1`"
    MIN="`echo ${LINE}|cut -d\; -f1|cut -d' ' -f2|cut -d\: -f2`"
    SEC="`echo ${LINE}|cut -d\; -f1|cut -d' ' -f2|cut -d\: -f3`"
    VAL="`echo ${LINE}|cut -d\; -f2`"
    EPOCH=`date +%s -d"${YR}-${MON}-${DAY} ${HR}:${MIN}:${SEC}"`
    echo "  ${YR}${MON}${DAY} ${HR}:${MIN}:${SEC} (${EPOCH}) ${VAL}"
#|tee -a ${LOG}

    echo "domotica.nl.${HOSTNAME}.rpi.temp ${VAL} ${EPOCH}"|nc nestorix.fritz.box 2003
    EC="${?}"
    echo "EC=${EC}"
  done  # cat
  basename ${FILENAME}|tee -a ${UPLOADED}

echo "`date` ${PGM} finished."|tee -a ${LOG}

## $0 

exit 0

