Awaiting a speed increase on you Internet connection but it’s not there yet?

Want to know within an hour when the speed increase happens?

Create a crontab entry

crontab -e

With this content

MAILTO=""
0 * * * * /Users/username/sites/speedtest/speedtest.sh >> /Users/username/sites/speedtest/output.log 2>&1

Install speedtest-cli

brew install speedtest-cli
# for parsing the json output
brew install jq

Create a script that calculates the Mbps value and set a LOWER value to send an email at in this case

#!/bin/sh
PATH=/usr/local/bin:/usr/local/sbin:~/bin:/usr/bin:/bin:/usr/sbin:/sbin

BITS=`speedtest-cli --no-upload --json | jq '.download'`
MBITS=1000000
CALC=`echo $BITS / $MBITS | bc`
# lowest Mbps value you will accept as the speed increasing
LOWER=4

if [ "$CALC" -gt "$LOWER" ]
then
	echo "The internet speed has risen to $CALC Mbps" | mail -s "Internet SpeedTest" james@toggen.com.au
	echo `date` "Yas"
else
	echo `date` "MBITS = $CALC"

fi