dont use deprecated commands in the init scripts.
[asterisk/asterisk.git] / contrib / init.d / rc.redhat.asterisk
index 32dc8e0..f45f8d7 100755 (executable)
@@ -1,9 +1,9 @@
 #!/bin/sh
-# $Id: asterisk,v 1.3 2005/11/17 22:30:01 Gregory Boehnlein <damin@nacs.net>
+# $Id$
 #
 # asterisk    Starts, Stops and Reloads Asterisk.
 #
-# chkconfig: 2345 40 60
+# chkconfig: 2345 90 60
 # description: Asterisk PBX and telephony daemon.
 # processname: asterisk
 # pidfile: /var/run/asterisk.pid
@@ -38,7 +38,7 @@ AST_SBIN=/usr/sbin
 . /etc/rc.d/init.d/functions
 
 if ! [ -x $AST_SBIN/asterisk ] ; then
-       echo "ERROR: /usr/sbin/asterisk not found"
+       echo "ERROR: $AST_SBIN/asterisk not found"
        exit 0
 fi
 
@@ -68,6 +68,14 @@ fi
 RETVAL=0
 
 start() {
+       # Check if Asterisk is already running.  If it is, then bug out, because
+       # starting safe_asterisk when Asterisk is running is very bad.
+       VERSION=`${AST_SBIN}/asterisk -rx 'core show version'`
+       if [ "`echo $VERSION | cut -c 1-8`" = "Asterisk" ]; then
+               echo "Asterisk is already running."
+               exit 1
+       fi
+
        # Start daemons.
        echo -n $"Starting asterisk: "
         if [ -f $SAFE_ASTERISK ] ; then
@@ -80,7 +88,7 @@ start() {
                ASTARGS="$ASTARGS -G $AST_GROUP"
        fi
        if [ $AST_CONFIG ]; then
-               ASTARGS="$ASTARGS -C $AST_CONFIG"
+               ASTARGS="$ASTARGS -C $AST_CONFIG/asterisk.conf"
        fi
        daemon $DAEMON $ASTARGS
        RETVAL=$?
@@ -105,7 +113,7 @@ restart() {
 }
 
 reload() {
-       $DAEMON -rx 'reload' > /dev/null 2> /dev/null
+       $DAEMON -rx 'module reload' > /dev/null 2> /dev/null
 }
 
 # See how we were called.