1 #!/bin/sh /etc/rc.common
2 # Copyright (C) 2006 OpenWrt.org
8 DEFAULT=$DEST/etc/default/asterisk
9 UCILIB=$DEST/usr/lib/asterisk/uci
12 export EXTRA_COMMANDS="console check down"
14 console Start asterisk console
15 check Test asterisk uci config
16 down Force asterisk to stop"
20 wget -q http://ata.lan/admin/reboot -O - >&- 2>&-
23 load_ucilib() . ${UCILIB}/asteriskuci
28 start_uci_asterisk $DEST
33 restart_uci_asterisk $DEST
39 stop_uci_asterisk $DEST
44 reload_uci_asterisk "$DEST"
48 [ -f $DEFAULT ] && . $DEFAULT
49 case ${ENABLE_ASTERISK-no} in
52 [ -d /var/run ] || mkdir -p /var/run
53 [ -d $DEST/var/log/asterisk ] || mkdir -p $DEST/var/log/asterisk
54 [ -d $DEST/var/spool/asterisk ] || mkdir -p $DEST/var/spool/asterisk
55 [ -d /var/spool/asterisk ] || mkdir -p /var/spool/asterisk
56 [ -h $DEST/usr/lib/asterisk/astdb ] || ln -sf /var/spool/asterisk/astdb $DEST/usr/lib/asterisk/astdb
57 $DEST/usr/sbin/asterisk $OPTIONS -f 2>&1 > $DEST/var/log/asterisk/asterisk_proc &
58 ( sleep 5; reboot_ata ) &
65 [ -f $DEFAULT ] && . $DEFAULT
66 case ${ENABLE_ASTERISK} in
68 *) [ -f /var/run/asterisk.pid ] && kill $(cat /var/run/asterisk.pid) 2>&- >&-
73 [ -f $DEFAULT ] && . $DEFAULT
74 case ${ENABLE_ASTERISK} in
75 uci) $DEST/usr/sbin/asterisk $UCIOPTIONS -C /tmp/asterisk/asterisk.conf -r ;;
76 yes) $DEST/usr/sbin/asterisk $OPTIONS -r ;;
83 setup_asterisk "$DEST" test "$EXTRAPARAM"
87 [ -f $DEFAULT ] && . $DEFAULT
88 case ${ENABLE_ASTERISK-no} in
96 [ -f $DEFAULT ] && . $DEFAULT
97 case ${ENABLE_ASTERISK-no} in
100 if [ -r /var/run/asterisk.ctl ] ; then
101 if $DEST/usr/sbin/asterisk -r -x "restart gracefully" 2>&- >&- ; then
102 echo "Restarting when convenient"
112 if [ -r /var/run/asterisk.ctl ] ; then
113 [ -f $DEFAULT ] && . $DEFAULT
114 case ${ENABLE_ASTERISK} in
115 uci) $DEST/usr/sbin/asterisk -C /tmp/asterisk/asterisk.conf -r -x "stop now" 2>&- >&- ;;
116 *) $DEST/usr/sbin/asterisk $OPTIONS -r -x "stop now" 2>&- >&-
118 [ -f /var/run/asterisk.pid ] && sleep 1
120 [ -f /var/run/asterisk.pid ] && kill $(cat /var/run/asterisk.pid) 2>&- >&-
121 [ -f /var/run/asterisk.pid ] && sleep 2
122 [ -f /var/run/asterisk.pid ] && kill -9 $(cat /var/run/asterisk.pid) 2>&- >&-