aboutsummaryrefslogtreecommitdiffstats
path: root/1.4.23-rc4/contrib/scripts/safe_asterisk_restart
diff options
context:
space:
mode:
Diffstat (limited to '1.4.23-rc4/contrib/scripts/safe_asterisk_restart')
-rw-r--r--1.4.23-rc4/contrib/scripts/safe_asterisk_restart110
1 files changed, 0 insertions, 110 deletions
diff --git a/1.4.23-rc4/contrib/scripts/safe_asterisk_restart b/1.4.23-rc4/contrib/scripts/safe_asterisk_restart
deleted file mode 100644
index 81783149a..000000000
--- a/1.4.23-rc4/contrib/scripts/safe_asterisk_restart
+++ /dev/null
@@ -1,110 +0,0 @@
-#!/bin/bash
-# vim:textwidth=80:tabstop=4:shiftwidth=4:smartindent
-#
-# this scripts prompts the user thrice, then tells asterisk to please shut down,
-# then kills asterisk and related processes with SIGTERM, then kills asterisk
-# and related processes with SIGKILL, and then starts asterisk with
-# safe_asterisk. Three arguments are currently supported, --no-countdown,
-# --no-prompt and --no-stop-now-first
-
-LOGFILE=/var/log/asterisk/safe_asterisk_restart.log
-ASTERISK=/usr/sbin/asterisk
-SAFE_ASTERISK=/usr/sbin/safe_asterisk
-
-DELAY=1 # Seconds between steps in countdown
-COUNTDOWN_FROM=5 # Steps to count down
-DO_COUNTDOWN=1 # Should I do a countdown before restarting asterisk?
-DO_PROMPT=1 # Should I prompt the user?
-TRY_STOP_NOW_FIRST=1 # Attempt a 'stop now' before killing processes. Note
- # that this might make this script hang if asterisk
- # can't respond to the command.
-
-# processes to kill. Please list all AGI scripts here as well as the asterisk
-# processes, since asterisk may leave them unkilled.
-PROCVICTIMS="safe_asterisk asterisk mpg123"
-
-# helper functions
-# die ["string to print"]
-function die {
- if [[ "$1" != "" ]]; then
- echo $1
- else
- echo "ok. no harm done..."
- fi
- exit
-}
-
-# docmd "string to print" "cmd"
-function docmd {
- printf "$1..."
- `$2 >> $LOGFILE 2>&1`
- RETCODE=$?
- sleep $DELAY
- if [[ "$RETCODE" == "0" ]]; then
- echo " OK"
- else
- echo " FAILED"
- fi
-}
-
-# prompt "string" "positive answer"
-function prompt {
- printf "$1"
- read answer
- if [[ "$answer" != "$2" ]]; then
- die
- fi
-}
-
-# countdown secs
-function countdown {
- echo -n "$1 "
- if [[ $1 > 0 ]]; then
- sleep 1
- countdown $[ $1 - 1 ]
- else
- echo "boom!"
- fi
-}
-
-# am I really root?
-if [[ "$UID" != "0" ]]; then
- echo "Sorry, only root can do this." >&2
- exit;
-fi
-
-echo "`date`: $0 invoked" >> $LOGFILE
-
-# bash
-for i
-do
- if [[ "$i" == "--no-countdown" ]]
- then
- unset DO_COUNTDOWN
- fi
- if [[ "$i" == "--no-prompt" ]]
- then
- unset DO_PROMPT
- fi
- if [[ "$i" == "--no-stop-now-first" ]]
- then
- unset TRY_STOP_NOW_FIRST
- fi
-done
-
-[[ $DO_PROMPT ]] && prompt "Are you sure you want to restart asterisk? (yes/no)? " "yes"
-[[ $DO_PROMPT ]] && prompt "Really sure? (yes/no)? " "yes"
-[[ $DO_PROMPT ]] && prompt "Absolutely positive? (YES/no)? " "YES"
-
-[[ $DO_COUNTDOWN ]] && echo "OK, I'll do it, but if you're not sure about this, press ctrl+c now."
-[[ $DO_COUNTDOWN ]] && countdown $COUNTDOWN_FROM
-
-# doing the dirty work
-[[ $TRY_STOP_NOW_FIRST ]] && docmd "Asking asterisk kindly to shutdown" "$ASTERISK -rx 'stop now'"
-docmd "Sending asterisk processes the TERM signal" "killall -15 $PROCVICTIMS"
-docmd "Sending asterisk processes KILL signal" "killall -9 $PROCVICTIMS"
-docmd "Starting safe_asterisk" "$SAFE_ASTERISK"
-for i in $PROCVICTIMS
-do
- ps axf | grep -w $i | grep -v grep
-done