#!/bin/bash
#echo "$QUERY_STRING" >&2
root=../html/bolobot/pics
led=red	#DEFAULT
portping ()
{
nc -z -w1 $1 $2
echo $?
}
chkredir ()
{
pid=`ps --no-heading -fC redir|grep " $1 "|awk '{print $2}'`
}
case ${QUERY_STRING:-$1} in
	windowcam)
		if [ `portping 192.168.1.1 8084` -eq 0 ]
		then
			if [ `portping bolobot.com 8084` -eq 0 ]
			then
				led=green
			else 
				led=yellow
			fi
		fi
		;;
	servcam)
		if [ `portping 192.168.1.1 8080` -eq 0 ]
		then
			if [ `portping bolobot.com 8080` -eq 0 ]
			then
				led=green
			else 
				led=yellow
			fi
		fi
		;;
	bolocam)
		if [ `portping 192.168.2.1 8080` -eq 0 ]
		then
			chkredir bolo
			if [ `portping 127.0.0.1 8080` -eq 0 ]
			then
				if [ -n "$pid" ]
				then
					kill $pid
					usleep 1000
					/usr/local/bin/redir wbolo 8083 8083 &
					usleep 1000
				fi
			else
				/usr/local/bin/redir wbolo 8083 8083 &
				usleep 1000
			fi	
			if [ `portping bolobot.com 8083` -eq 0 ]
			then
				led=green
			else 
				led=yellow
			fi
		elif [ `portping 192.168.1.1 8083` -eq 0 ]
		then
			chkredir wbolo
			if [ `portping 127.0.0.1 8083` -eq 0 ]
			then
				if [ -n "$pid" ]
				then
					kill $pid
					usleep 1000
					/usr/local/bin/redir bolo 8083 8083 &
					usleep 1000
				fi
			else
				/usr/local/bin/redir bolo 8083 8083 &
				usleep 1000
			fi	
			if [ `portping bolobot.com 8083` -eq 0 ]
			then
				led=green
			else 
				led=orange
			fi
		fi
		;;
	wlan)
		if [ `portping 192.168.2.2 7` -eq 0 ] #checks echo to see if up
		then
		led=green
		fi
		;;
	bolo)
		if [ `portping 192.168.1.1 7` -eq 0 ]
		then
			led=green
		fi
		;;
	default)
		;;
	esac
if [ -n "$QUERY_STRING" ]
then
	echo -e "Content-Type: image/gif\n"
	cat $root/${led}_light.gif
else
	echo $led
fi
