Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #Descrição: Discador para Asterisk integrado com banco de dados MySQL
- #Autor: Rafael dos Santos Saraiva
- #Data: 05/06/2014
- #Contato: contato@astdocs.com
- #Website: www.astdocs.com
- DBUSER='user'
- DBPASS='password'
- DBNAME='asterisk'
- DBTABLE='dialer'
- CHANNLIMIT='30'
- case "$1" in
- start)
- while :
- do
- mysql -u${DBUSER} -p${DBPASS} --skip-column-names ${DBNAME} -B -e "SELECT number FROM ${DBTABLE} WHERE used = '0'" | while read NUMBER; do
- NCALLS=`/usr/sbin/asterisk -rx "core show channels" | grep "DAHDI" | wc -l`
- if [ "${NCALLS}" -lt "${CHANNLIMIT}" ]; then
- ABSOLUTE_FILE_NAME='/var/spool/asterisk/tmp/'$(date +"%m%d%y%N")'.call'
- echo "Channel: DAHDI/g1/${NUMBER}" > ${ABSOLUTE_FILE_NAME}
- echo "Callerid: <0000> "Dialer"" >> ${ABSOLUTE_FILE_NAME}
- echo "MaxRetries: 2" >> ${ABSOLUTE_FILE_NAME}
- echo "RetryTime: 60" >> ${ABSOLUTE_FILE_NAME}
- echo "WaitTime: 30" >> ${ABSOLUTE_FILE_NAME}
- echo "Context: queue_context" >> ${ABSOLUTE_FILE_NAME}
- echo "Extension: s" >> ${ABSOLUTE_FILE_NAME}
- echo "Priority: 1" >> ${ABSOLUTE_FILE_NAME}
- mv ${ABSOLUTE_FILE_NAME} /var/spool/asterisk/outgoing/
- mysql -u${DBUSER} -p${DBPASS} ${DBNAME} -e "UPDATE ${DBTABLE} SET used='1' WHERE number='${NUMBER}'"
- fi
- done
- done & echo $! > .pid &2>>/dev/null&
- ;;
- stop)
- kill -9 `cat .pid`
- ;;
- *)
- echo "Use start|stop"
- exit 1
- ;;
- esac
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement