#!/bin/bash

#TTY=

#
# Set options 
#

ASTARGS=""
if [ -f /etc/sysconfig/ipcs-provisioning ]
then
	. /etc/sysconfig/ipcs-provisioning
fi

# Find TTY device.
if [ "$TTY" != "" ]
then
	if [ -c /dev/tty${TTY} ]
	then
		TTY=tty${TTY}
	elif [ -c /dev/vc/${TTY} ]; then
    		TTY=vc/${TTY}
  	else
		echo "Cannot find your TTY (${TTY})" >&2 
    		exit 1
  	fi
fi

# Enable core dumps.
#ulimit -c unlimited
#ulimit -n 2048

#
# Don't die if stdout/stderr can't be written to
#
trap '' PIPE

run_ipcs-provisioning()
{
	while :
  	do
    		cd /tmp
    		if [ "$TTY" != "" ]; then
      			stty sane < /dev/${TTY}
			/usr/local/pbx/apps/ipcs/sbin/ipcs-provisioning ${IPCSPSARGS} >& /dev/${TTY} < /dev/${TTY}
    		else
      			/usr/local/pbx/apps/ipcs/sbin/ipcs-provisioning ${IPCSPSARGS} 2>&1 /var/log/ipcs-provisioning.log < /dev/null
    		fi
		EXITSTATUS=$?

		# Log the fact that the ipcs-provisioning server has stopped.
		echo "IPCS Provisioning Server ended with exit status $EXITSTATUS" >> /var/log/ipcs-provisioning.log
		echo "Automatically restarting IPCS Provisioning Server"           >> /var/log/ipcs-provisioning.log

		# kill ipcs-provisioning server.
		sleep 1
		killall -q -9 ipcs-provisioning
		sleep 1
  	done
}

run_ipcs-provisioning &
