#!/bin/bash

####### Created by Acmecorporation ##########
#### This script create n.3 files with ping, dowload and upload speed using ####
#### Speedtest client and ping command #########################################

#### create two files with ping and dowload/upload speed 
speedtest-cli > /home/pi/isr/speed.txt ;
ping -c 1 google.com > /home/pi/isr/ping.txt ;

#### setting variables
d=`date +%d%m%Y`
ping=$d"ping.txt"
up=$d"upload.txt"
dow=$d"download.txt"

#### check if daily ping, dowload and upload speed database has been created yet. If not
#### create new files
if [ -f /home/pi/isr/data/$ping ]; then
    date +%Y-%m-%d" "%H:%M";" | tr -d '\012\015' >> /home/pi/isr/data/$ping
else
    touch /home/pi/isr/data/$ping | date +%Y-%m-%d" "%H:%M";" | tr -d '\012\015' >> /home/pi/isr/data/$ping
fi


if [ -f /home/pi/isr/data/$up ]; then
    date +%Y-%m-%d" "%H:%M";" | tr -d '\012\015' >> /home/pi/isr/data/$up
else
    touch /home/pi/isr/data/$up | date +%Y-%m-%d" "%H:%M";" | tr -d '\012\015' >> /home/pi/isr/data/$up
fi

if [ -f /home/pi/isr/data/$dow ]; then
    date +%Y-%m-%d" "%H:%M";" | tr -d '\012\015' >> /home/pi/isr/data/$dow
else
    touch /home/pi/isr/data/$dow | date +%Y-%m-%d" "%H:%M";" | tr -d '\012\015' >> /home/pi/isr/data/$dow
fi

#### check if dates already exists. If yes, add ping and speed values to databases. 
#### If not, add 0.00 value to databases

atr=`sed -n 2p /home/pi/isr/ping.txt`
att=`expr match "$atr" '.*\([time=]...*\)' | sed -e s/'='/''/g | sed -e s/' ms'/''/g`
if [ "$att" == "" ]; then
	echo "0.00" >> /home/pi/isr/data/$ping
      else
	echo "$att" >> /home/pi/isr/data/$ping
fi

utr=`sed -n 9p /home/pi/isr/speed.txt`
utt=`expr match "$utr" '.*\([:]...*\)' | sed -e s/': '/''/g | sed -e s:' Mbit/s':'':g`
if [ "$utt" == "" ]; then
	echo "0.00" >> /home/pi/isr/data/$up
      else
	echo "$utt" >> /home/pi/isr/data/$up
fi


str=`sed -n 7p /home/pi/isr/speed.txt`
stt=`expr match "$str" '.*\([:]...*\)' | sed -e s/': '/''/g | sed -e s:' Mbit/s':'':g`
if [ "$stt" == "" ]; then
	echo "0.00" >> /home/pi/isr/data/$dow
      else
	echo "$stt" >> /home/pi/isr/data/$dow
fi
