]> git.pld-linux.org Git - packages/asterisk.git/blame_incremental - asterisk.init
fix opus_vp8 bcond dependencies
[packages/asterisk.git] / asterisk.init
... / ...
CommitLineData
1#!/bin/sh
2#
3# asterix This shell script takes care of starting and stopping
4# Asterisk PBX
5#
6# chkconfig: 345 90 10
7#
8# description: Asterisk is an Open Source PBX and telephony development platform that \ \
9# can both replace a conventional PBX and act as a platform for \
10# developing custom telephony applications for delivering dynamic \
11# content over a telephone similarly to how one can deliver dynamic \
12# content through a web browser using CGI and a web server.
13#
14# pidfile: /var/run/asterisk/asterisk.pid
15# config: /etc/asterisk/asterisk.conf
16
17# Source function library
18. /etc/rc.d/init.d/functions
19
20# Get network config
21. /etc/sysconfig/network
22
23# Specify the configuration file
24AST_CONFIG=/etc/asterisk/asterisk.conf
25
26# The user that Asterisk will run as.
27AST_USER="asterisk"
28
29# If a user is specified above, Asterisk will change the group it runs
30# as to the primary group of the user, as well as initialize the
31# supplementary groups. If you want to run Asterisk as a different
32# group, set AST_GROUP to the group that Asterisk should run as. Note
33# that this may break DAHDI devices as supplementary groups will not
34# be initialized.
35#AST_GROUP="asterisk"
36
37# Get service config
38[ -f /etc/sysconfig/asterisk ] && . /etc/sysconfig/asterisk
39
40# Check that networking is up.
41if is_yes "${NETWORKING}"; then
42 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
43 msg_network_down "Asterisk"
44 exit 1
45 fi
46else
47 exit 0
48fi
49
50start() {
51 # Check if the service is already running?
52 if [ -f /var/lock/subsys/asterisk ]; then
53 msg_already_running "Asterisk"
54 return
55 fi
56
57 msg_starting "Asterisk"
58 if [ $AST_USER ] ; then
59 AST_ARGS="-U $AST_USER"
60 fi
61 if [ $AST_GROUP ] ; then
62 AST_ARGS="$AST_ARGS -G $AST_GROUP"
63 fi
64 if [ $AST_CONFIG ]; then
65 AST_ARGS="$AST_ARGS -C $AST_CONFIG"
66 fi
67 daemon /usr/sbin/asterisk -F $AST_ARGS $ASTERISK_OPTS
68
69 RETVAL=$?
70 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/asterisk
71}
72
73stop() {
74 # Stop daemons.
75 if [ ! -f /var/lock/subsys/asterisk ]; then
76 msg_not_running "Asterisk"
77 return
78 fi
79
80 msg_stopping "Asterisk"
81 killproc asterisk
82 rm -f /var/lock/subsys/asterisk >/dev/null 2>&1
83}
84
85condrestart() {
86 if [ ! -f /var/lock/subsys/asterisk ]; then
87 msg_not_running "Asterisk"
88 RETVAL=$1
89 return
90 fi
91
92 stop
93 start
94}
95
96reload() {
97 if [ ! -f /var/lock/subsys/asterisk ]; then
98 msg_not_running "Asterisk"
99 RETVAL=1
100 return
101 fi
102
103 msg_reloading "Asterisk"; busy
104 /usr/sbin/asterisk -rx reload > /dev/null 2>&1
105 RETVAL=$?
106 if [ $RETVAL -eq 0 ]; then
107 touch /var/lock/subsys/asterisk
108 ok
109 else
110 fail
111 fi
112}
113
114ael-reload() {
115 local res
116 res=$(aelparse -n -q | grep -F Error)
117 if [ "$res" ]; then
118 echo >&2 "$res"
119 RETVAL=1
120 return
121 fi
122
123 if [ ! -f /var/lock/subsys/asterisk ]; then
124 msg_not_running "Asterisk"
125 RETVAL=1
126 return
127 fi
128
129 /usr/sbin/asterisk -rx "ael reload"
130}
131
132RETVAL=0
133# See how we were called.
134case "$1" in
135 start)
136 start
137 ;;
138 stop)
139 stop
140 ;;
141 restart)
142 stop
143 start
144 ;;
145 try-restart)
146 condrestart 0
147 ;;
148 reload|force-reload)
149 reload
150 ;;
151 dialplan-reload)
152 /usr/sbin/asterisk -rx "dialplan reload"
153 ;;
154 ael-reload)
155 ael-reload
156 ;;
157 logger-reload)
158 /usr/sbin/asterisk -rx "logger reload"
159 ;;
160 status)
161 status asterisk
162 exit $?
163 ;;
164 *)
165 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|dialplan-reload|ael-reload|logger-reload|status}"
166 exit 3
167esac
168
169exit $RETVAL
This page took 0.063498 seconds and 4 git commands to generate.