install_prereq: Add SUSE.
[asterisk/asterisk.git] / contrib / init.d / rc.slackware.asterisk
1 #!/bin/sh
2 #
3 # Start/stop/restart Asterisk PBX
4 #
5 # Version: 1.0 - Paul Belanger <pabelanger@gmail.com>
6 #
7 # 03.29.2005 - Initial Version
8 #
9 # $Id$
10
11 ### BEGIN INIT INFO
12 # Provides:             asterisk
13 # Required-Start:    $network $syslog $named $local_fs $remote_fs
14 # Required-Stop:     $network $syslog $named $local_fs $remote_fs
15 # Should-Start:      dahdi misdn lcr wanrouter mysql postgresql
16 # Should-Stop:       dahdi misdn lcr wanrouter mysql postgresql
17 # Default-Start:        2 3 4 5
18 # Default-Stop:         0 1 6
19 # Short-Description:    Asterisk PBX
20 # Description:          the Asterisk Open Source PBX
21 ### END INIT INFO
22
23 asterisk_start() {
24    if [ -x /usr/sbin/asterisk ]; then
25       # Check if Asterisk is already running.  If it is, then bug out, because
26       # starting safe_asterisk when Asterisk is running is very bad.
27       VERSION=`/usr/sbin/asterisk -rx 'core show version' 2>/dev/null`
28           if [ "`echo $VERSION | cut -c 1-8`" = "Asterisk" ]; then
29          echo "Asterisk is already running.  $0 will exit now."
30          exit 1
31       fi
32
33       echo "Starting Asterisk   /usr/sbin/asterisk"
34       /usr/sbin/asterisk
35    fi
36 }
37
38 asterisk_stop() {
39     # If there is no PID file, ignore this request...
40     if [ -r /var/run/asterisk.pid ]; then
41       killall asterisk
42     fi
43 }
44
45 asterisk_restart() {
46    asterisk_stop
47    asterisk_start
48 }
49
50 case "$1" in
51    'start')
52       asterisk_start
53       ;;
54    'stop')
55       asterisk_stop
56       ;;
57    'restart')
58       asterisk_restart
59       ;;
60    *)
61       echo "usage $0 start|stop|restart" ;;
62 esac