have freeside-cdrd disable itself if there's no appropriate package definition, RT...
[freeside.git] / init.d / freeside-init
index 37ced73..54ebea2 100644 (file)
@@ -1,22 +1,18 @@
-#! /bin/sh
+#!/bin/sh
 #
 # chkconfig: 345 86 16
 # description: Freeside daemons
 
 QUEUED_USER=%%%QUEUED_USER%%%
 
-FREESIDE_PATH="%%%FREESIDE_PATH%%%"
-
-PASSWD_USER=%%%PASSWD_USER%%%
-PASSWD_MACHINE=%%%PASSWD_MACHINE%%%
+SELFSERVICE_USER=%%%SELFSERVICE_USER%%%
+SELFSERVICE_MACHINES="%%%SELFSERVICE_MACHINES%%%"
 
-SIGNUP_USER=%%%SIGNUP_USER%%%
-SIGNUP_MACHINE=%%%SIGNUP_MACHINE%%%
-SIGNUP_AGENTNUM=%%%SIGNUP_AGENTNUM%%%
-SIGNUP_REFNUM=%%%SIGNUP_REFNUM%%%
+#INSTALLSCRIPT/INSTALLSITEBIN from Makefile.PL
+PATH="$PATH:/usr/local/bin"
+export PATH
 
-SELFSERVICE_USER=%%%SELFSERVICE_USER%%%
-SELFSERVICE_MACHINE=%%%SELFSERVICE_MACHINE%%%
+[ -r /etc/default/freeside ] && . /etc/default/freeside
 
 case "$1" in
   start)
@@ -25,36 +21,69 @@ case "$1" in
         freeside-queued $QUEUED_USER
         echo "done."
 
-        echo -n "Starting fs_passwd_server: "
-        su freeside -c "$FREESIDE_PATH/fs_passwd/fs_passwd_server $PASSWD_USER $PASSWD_MACHINE" &
+        echo -n "Starting freeside-sqlradius-radacctd: "
+        freeside-sqlradius-radacctd $QUEUED_USER
         echo "done."
 
-        echo -n "Starting fs_signup_server: "
-        su freeside -c "$FREESIDE_PATH/fs_signup/fs_signup_server $SIGNUP_USER $SIGNUP_MACHINE $SIGNUP_AGENTNUM $SIGNUP_REFNUM" &
+        echo -n "Starting freeside-prepaidd: "
+        freeside-prepaidd $QUEUED_USER
         echo "done."
 
-        echo -n "Starting freeside-selfservice-server: "
-        $FREESIDE_PATH/fs_selfservice/freeside-selfservice-server $SELFSERVICE_USER $SELFSERVICE_MACHINE
+        echo -n "Starting freeside-cdrd: "
+        freeside-cdrd $QUEUED_USER
         echo "done."
 
+        for MACHINE in $SELFSERVICE_MACHINES; do
+          echo -n "Starting freeside-selfservice-server to $MACHINE: "
+          freeside-selfservice-server $SELFSERVICE_USER $MACHINE
+          echo "done."
+        done
+
         ;;
   stop)
         # Stop daemons.
         echo -n "Stopping freeside-queued: "
-        kill `cat /var/run/freeside-queued.pid`
+        [ -e /var/run/freeside-queued.pid ] && kill `cat /var/run/freeside-queued.pid`
+        #and
+        sleep 2;
+        killall freeside-queued
         echo "done."
 
-        echo -n "Stopping fs_passwd_server: "
-        killall fs_passwd_server
-        echo "done."
-
-        echo -n "Stopping fs_signup_server: "
-        killall fs_signup_server
-        echo "done."
+        if [ -e /var/run/freeside-sqlradius-radacctd.pid ]; then
+          echo -n "Stopping freeside-sqlradius-radacctd: "
+          kill `cat /var/run/freeside-sqlradius-radacctd.pid`
+          echo "done."
+        fi
+
+        if [ -e /var/run/freeside-prepaidd.pid ]; then
+          echo -n "Stopping freeside-prepaidd: "
+          kill `cat /var/run/freeside-prepaidd.pid`
+          echo "done."
+        fi
+
+        if [ -e /var/run/freeside-cdrd.pid ]; then
+          echo -n "Stopping freeside-cdrd: "
+          kill `cat /var/run/freeside-cdrd.pid`
+          echo "done."
+        fi
+
+        if [ -e /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid ]
+        then
+          echo -n "Stopping (old) freeside-selfservice-server: "
+          kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid`
+          rm /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid
+          echo "done."
+        fi
+
+        for MACHINE in $SELFSERVICE_MACHINES; do
+          if [ -e /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid ]
+          then
+            echo -n "Stopping freeside-selfservice-server to $MACHINE: "
+            kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid`
+            echo "done."
+          fi
+        done
 
-        echo -n "Stopping freeside-selfservice-server: "
-        kill `cat /var/run/freeside-selfservice-server.pid`
-        echo "done."
         ;;
 
   restart)