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 # Handle zappseudo in the wrong place.
53 [ -e /dev/zappseudo ] && [ ! -d /dev/zap -o ! -e /dev/zap/pseudo ] && mkdir -p /dev/zap && ln -s /dev/zappseudo /dev/zap/pseudo
54 [ -d /var/run ] || mkdir -p /var/run
55 [ -d $DEST/var/log/asterisk ] || mkdir -p $DEST/var/log/asterisk
56 [ -d $DEST/var/spool/asterisk ] || mkdir -p $DEST/var/spool/asterisk
57 [ -d /var/spool/asterisk ] || mkdir -p /var/spool/asterisk
58 [ -h $DEST/usr/lib/asterisk/astdb ] || ln -sf /var/spool/asterisk/astdb $DEST/usr/lib/asterisk/astdb
59 $DEST/usr/sbin/asterisk $OPTIONS -f 2>&1 > $DEST/var/log/asterisk/asterisk_proc &
60 ( sleep 5; reboot_ata ) &
67 [ -f $DEFAULT ] && . $DEFAULT
68 case ${ENABLE_ASTERISK} in
70 *) [ -f /var/run/asterisk.pid ] && kill $(cat /var/run/asterisk.pid) 2>&- >&-
75 [ -f $DEFAULT ] && . $DEFAULT
76 case ${ENABLE_ASTERISK} in
77 uci) $DEST/usr/sbin/asterisk $UCIOPTIONS -C /tmp/asterisk/asterisk.conf -r ;;
78 yes) $DEST/usr/sbin/asterisk $OPTIONS -r ;;
85 setup_asterisk "$DEST" test "$EXTRAPARAM"
89 [ -f $DEFAULT ] && . $DEFAULT
90 case ${ENABLE_ASTERISK-no} in
98 [ -f $DEFAULT ] && . $DEFAULT
99 case ${ENABLE_ASTERISK-no} in
102 if [ -r /var/run/asterisk.ctl ] ; then
103 if $DEST/usr/sbin/asterisk -r -x "restart gracefully" 2>&- >&- ; then
104 echo "Restarting when convenient"
114 if [ -r /var/run/asterisk.ctl ] ; then
115 [ -f $DEFAULT ] && . $DEFAULT
116 case ${ENABLE_ASTERISK} in
117 uci) $DEST/usr/sbin/asterisk -C /tmp/asterisk/asterisk.conf -r -x "stop now" 2>&- >&- ;;
118 *) $DEST/usr/sbin/asterisk $OPTIONS -r -x "stop now" 2>&- >&-
120 [ -f /var/run/asterisk.pid ] && sleep 1
122 [ -f /var/run/asterisk.pid ] && kill $(cat /var/run/asterisk.pid) 2>&- >&-
123 [ -f /var/run/asterisk.pid ] && sleep 2
124 [ -f /var/run/asterisk.pid ] && kill -9 $(cat /var/run/asterisk.pid) 2>&- >&-