edgaroliveirace
usa Ubuntu
Post recolhido
Enviado em 07/11/2013 - 11:27h
estou em um projeto igual ao q vc quer, estou fazendo uma pagina em php que vai ficar mostrando o sinal dos clientes em shell script e add a banco de dados.
esse script pega atraves do ssh o sinal, ccq e o noisefloor do cliente e add no banco!
USUARIO="nome-acesso-nano"
PORTA_SSH="22"
# essa pasta eu criei no mkauth para receber os logs
PASTA_LOGS="/usr/local/mkauth/sinal/logs"
# comando mysql, usuario e senha do banco
COM_SQL="mysql -u root -pvertrigo -e"
# esse aqui limpa os logs toda vida que o script e executado
rm -rf $PASTA_LOGS/*.sql
probe () {
ping -c1 -w5 $1 >&- 2>&- && touch /tmp/pingfail.$1
}
rm /tmp/pingfail.* 2>&-
for i in $(seq 2 254); do
# aqui voce coloca a faixa de ip dos APs"rocket, nanos",para que ele procure os ips usados
probe 192.168.82.$i &
done
wait
for failip in /tmp/pingfail.*; do
#HOSTNAME=$(ssh -l $USUARIO -p $PORTA_SSH ${failip#*.} uname -n)
ssh -l $USUARIO -p $PORTA_SSH ${failip#*.} 'wstalist|egrep "(mac|signal|ccq|noisefloor)"|egrep -v signals'|xargs -L5|cut -c 1-66|tr -d ","| sed -e 's/mac:/|/g;s/signal :/|/g;s/ccq :/|/g;s/noisefloor :/|/g;' | while read Linha; do
mac_clie=$(echo $Linha|cut -d "|" -f2|sed 's/ //g')
sinal_clie=$(echo $Linha|cut -d "|" -f3|sed 's/ //g')
ccq_clie=$(echo $Linha|cut -d "|" -f4|sed 's/ //g')
noisefloor_clie=$(echo $Linha|cut -d "|" -f5)
$COM_SQL "UPDATE sis_cliente SET sinal=$sinal_clie, ccq=$ccq_clie, noisefloor=$noisefloor_clie WHERE mac=\"$mac_clie\"" mkradius
done
done
rm /tmp/pingfail.* 2>&-
exit 0
vc pode pegar esse script e adaptar para vc, e o comando para ver o sianl dos clientes é "wstalist"!