Script para automatizar o restart do chan_dongle quando nao registrado (falha)

1 – Criar o arquivp checa_modem.sh e dar permissao de execucao:

[root@abratel ~]# cat /etc/script/checa_modem.sh

#!/bin/bash

MODEM1=chip-claro1
MODEM2=chip-claro2

RESULT1=$(/usr/sbin/asterisk  -rx "dongle show device state $MODEM1" | grep Registration |  /usr/bin/awk '{print $5}' |  /usr/bin/sed 's/,*$//')
RESULT2=$(/usr/sbin/asterisk  -rx "dongle show device state $MODEM2" | grep Registration |  /usr/bin/awk '{print $5}' |  /usr/bin/sed 's/,*$//')

if [ "$RESULT1" != "Registered" ]; then
/usr/sbin/asterisk  -rx "dongle restart now $MODEM1"
echo "Chip-claro1 restartado" >> /var/log/checa_modens
echo "$(date '+%d-%m-%y %H:%M:%S')" >> /var/log/checa_modens
echo ============================== >> /var/log/checa_modens
echo " " >> /var/log/checa_modens;
fi
if [ "$RESULT2" != "Registered" ]; then
/usr/sbin/asterisk  -rx "dongle restart now $MODEM2"
echo "Chip-claro2 restartado" >> /var/log/checa_modens
echo "$(date '+%d-%m-%y %H:%M:%S')" >> /var/log/checa_modens
echo ============================== >> /var/log/checa_modens
echo " " >> /var/log/checa_modens;
fi

2 – Dar permissao de execucao


chmod +x /etc/script/checa_modem.sh

3 – Adicionar no crontab para checagem a cada 15 minutos

[root@abratel ~]# vim /etc/crontab

*/15 * * * * root /etc/script/checa_modem.sh > /dev/null &> /dev/null

4 – Cheque os logs ou automatize algum servico a checar em /var/logs/checa_modens

Deixe um comentário