#!/bin/sh
#
# DutyCycle Monitor start/stop script
# (C) '2018 by Uwe Langhammer
#
PROCPATH=/usr/local/addons/cuxd/extra
PROC=dutycycle.tcl

FILENAME=/var/cache/cuxd_dutycycle.txt

SLEEP=120
if [ "$2" != "" ]
then
	SLEEP=$2
fi

PSPID=`ps -o pid,comm | grep -Ev "\b$$\b" | awk '{if($2=="'$PROC'"){print $1}}'`

case "$1" in
  start|restart|stop)
  	if [ "$PSPID" != "" ]
  	then
  		kill -TERM $PSPID 2>/dev/null
  		sleep 1
  		logger $PROC[$PSPID] stopped
  	fi
  	
        if [ "$1" != "stop" ]
        then
		PORTS=`grep -A 1 "\-RF</name>" /etc/config/InterfacesList.xml | sed -n 's%.*<url>.*:\([0-9]\+\)</url>.*%\1%p'`
		PORTS=`echo $PORTS |  tr ' ' ','`
#PORTS=2001,2010
        	if [ -x "$PROCPATH/$PROC" ]
        	then
			$PROCPATH/$PROC $PORTS $FILENAME $SLEEP &
			logger $PROC[$!] $PORTS $FILENAME $SLEEP started
		else
			logger $PROCPATH/$PROC not found!
		fi
	fi
	;;

  *)
	echo "Usage: $0 {start|stop} [SLEEP]" >&2
	exit 1
	;;
esac

exit 0
