diff options
Diffstat (limited to 'network/asterisk/rc.asterisk.new')
-rw-r--r-- | network/asterisk/rc.asterisk.new | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/network/asterisk/rc.asterisk.new b/network/asterisk/rc.asterisk.new new file mode 100644 index 0000000000000..636f4099a083b --- /dev/null +++ b/network/asterisk/rc.asterisk.new @@ -0,0 +1,64 @@ +#!/bin/sh +# +# Start/stop/restart Asterisk PBX +# +# Version: 1.0 - Paul Belanger <pabelanger@gmail.com> +# +# 03.29.2005 - Initial Version +# +# $Id$ + +### BEGIN INIT INFO +# Provides: asterisk +# Required-Start: $network $syslog $named $local_fs $remote_fs +# Required-Stop: $network $syslog $named $local_fs $remote_fs +# Should-Start: dahdi misdn lcr wanrouter mysql postgresql +# Should-Stop: dahdi misdn lcr wanrouter mysql postgresql +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Asterisk PBX +# Description: the Asterisk Open Source PBX +### END INIT INFO + +asterisk_start() { + if [ -x /usr/sbin/asterisk ]; then + # Check if Asterisk is already running. If it is, then bug out, because + # starting safe_asterisk when Asterisk is running is very bad. + VERSION=`/usr/sbin/asterisk -rx 'core show version' 2>/dev/null` + if [ "`echo $VERSION | cut -c 1-8`" = "Asterisk" ]; then + echo "Asterisk is already running. $0 will exit now." + exit 1 + fi + + echo "Starting Asterisk /usr/sbin/asterisk" + mkdir -p /var/run/asterisk + chown @ASTERISKUSR@:@ASTERISKGRP@ /var/run/asterisk + /usr/sbin/asterisk + fi +} + +asterisk_stop() { + # If there is no PID file, ignore this request... + if [ -r /var/run/asterisk/asterisk.pid ]; then + killall asterisk + fi +} + +asterisk_restart() { + asterisk_stop + asterisk_start +} + +case "$1" in + 'start') + asterisk_start + ;; + 'stop') + asterisk_stop + ;; + 'restart') + asterisk_restart + ;; + *) + echo "usage $0 start|stop|restart" ;; +esac |