summaryrefslogtreecommitdiff
path: root/packages/asterisk/files/init
blob: e54b2342f1f3a6cb358e773eb51d05f108827ca0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#! /bin/sh 
#
# This is an init script for openembedded
# Copy it to /etc/init.d/callweaver and type
# > update-rc.d asterisk14 defaults 60
#
asterisk=/usr/sbin/asterisk
pidfile=/var/run/asterisk/asterisk.pid
asterisk_args="-npqT -U asterisk -G asterisk"

test -x "$asterisk" || exit 0

case "$1" in
  start)
    echo -n "Starting Asterisk"
    start-stop-daemon --start --quiet --exec $asterisk -- $asterisk_args
    echo "."
    ;;
  stop)
    echo -n "Stopping Asterisk"
    $asterisk -rx "stop gracefully"
    sleep 4
    if [ -f $pidfile ]; then
      start-stop-daemon --stop --quiet --pidfile $pidfile
    fi
    echo "."
    ;;
  force-stop)
    echo -n "Stopping Asterisk"
    $asterisk -rx "stop now"
    sleep 2
    if [ -f $pidfile ]; then
      start-stop-daemon --stop --quiet --pidfile $pidfile
    fi
    echo "."
    ;;
  restart)
    echo -n "Restarting Asterisk"
    if [ -f $pidfile ]; then
      $asterisk -rx "restart gracefully"
      sleep 2
    else
      start-stop-daemon --start --quiet --exec $asterisk -- $asterisk_args
    fi
    echo "."
    ;;
  force-restart)
    echo -n "Forcibly Restarting Asterisk"
    if [ -f $pidfile ]; then
      $asterisk -rx "restart now"
      sleep 2
    else
      start-stop-daemon --start --quiet --exec $asterisk -- $asterisk_args
    fi
    echo "."
    ;;
  reload)
    echo -n "Reloading Asterisk Configuration"
    if [ -f $pidfile ]; then
      $asterisk -rx "reload"
    else
      start-stop-daemon --start --quiet --exec $asterisk -- $asterisk_args
    fi
    echo "."
    ;;
  logger-reload)
    if [ -f $pidfile ]; then
      $asterisk -rx "logger reload"
    fi
    ;;
  *)
    echo "Usage: /etc/init.d/asterisk {start|stop|force-stop|restart|force-restart|reload|logger-reload}"
    exit 1
esac

exit 0