12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #!/bin/sh
- #
- # zaptel: Loads Asterisk modules
- #
- # Version: @(#) /etc/rc.d/init.d/zaptel 1.0
- #
- # chkconfig: 2345 90 10
- # description: Loads and unloads zaptel modules at boot time and shutdown.
- #
- # hide: true
- # Source function library.
- . /etc/rc.d/init.d/functions
- ######################################
- # CONFIGURE ME !!!
- ######################################
- MODULES="usb-uhci zaptel wcfxo wcusb"
- ######################################
- function probe() {
- gprintf " $1"
- insmod $1
- # It has to be in the module list, otherwise something is wrong
- if lsmod | grep -c ^$1 >/dev/null; then
- success
- else
- failure
- fi
- echo
- }
- function unprobe() {
- gprintf " $1"
- rmmod $1 >/dev/null 2>&1
- # If it's still in the module list after removing it, there's something wrong.
- if lsmod | grep -c ^$1 >/dev/null; then
- failure
- else
- success
- fi
- echo
- }
- function reverse_modules() {
- tmp=$MODULES
- MODULES=''
- for i in $tmp; do
- MODULES="$i $MODULES" ;
- done
- }
- # See how we were called.
- case "$1" in
- start)
- gprintf "Loading Asterisk modules:\n"
- for i in $MODULES; do
- probe $i
- usleep 100000 ;
- done
- ztcfg
- ;;
- stop)
- gprintf "Unloading Asterisk modules:\n"
- reverse_modules
- for i in $MODULES; do
- unprobe $i
- usleep 100000 ;
- done
- ;;
- status)
- ztcfg -vv
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- *)
- gprintf "*** Usage: $0 {start|stop|status|restart}\n"
- exit 1
- esac
- exit 0
|