#!/bin/bash

USR='eltex'
PASSWD='Eltex2016'
HOSTS=$1
indx='0'
allonutxt='/var/www/html/monitor/allonu.txt'
#sertxt='/home/alex/ser.txt'
#gltxt='/home/alex/gl.txt'
echo '' > $allonutxt
#echo '' > $gltxt


allonu=$(expect -c "
    spawn telnet $HOSTS
    expect \"login:\"
    send \"$USR\r\"
    expect \"?assword:\"
    send \"$PASSWD\r\"
    expect \"LTP-4X# \"
    send \"show interface ont 0-3 connected\r\"
    expect \"LTP-4X# \"
    send \"exit\r\"
    expect eof
")

ont_list=`echo "$allonu"`
echo $ont_list > $allonutxt
sed -i 's/\r/\r\n/g' $allonutxt
onu_list=`cat ./allonu.txt | grep 'ONT conne' | awk '{print $2}'`
echo $onu_list
exit 0

for i in 0 1 2 3
do
EEE=$(expect -c "
    spawn telnet $HOSTS
    expect \"login:\"
    send \"$USR\r\"
    expect \"?assword:\"
    send \"$PASSWD\r\"
    expect \"LTP-4X# \"
    send \"show interface ont $i connected\r\"
    expect \"LTP-4X# \"
    send \"exit\r\"
    expect eof
")
serr=`echo "$EEE" | grep 'UNACTIVATED' -m 1 | awk '{print $2}'`
if [[ ! $serr ]]
then
	echo "На $i глазке нет ничего("
else
	echo "$serr"  > $sertxt
	echo "Нашли ONU серийный номер: "$serr" на $i глазке"
	echo "$i" > $gltxt
	break
fi
done
if [[ ! $serr ]]
then
	echo "Не найдено не зарегестрированных ONU!!!"
	exit 0
fi

iii=`cat $gltxt`
ELTX=$(expect -c "
    spawn telnet $HOSTS
    expect \"login:\"
    send \"$USR\r\"
    expect \"?assword:\"
    send \"$PASSWD\r\"
    expect \"LTP-4X# \"
    send \"show interface ont $iii configured\r\"
    send \"exit\r\"
    expect eof
")

echo "$ELTX" | grep 'ELTX'| while read str
do
	iii=`cat $gltxt`
	olt1=`echo $str | awk '{print $3}'`
	if [ $indx != $olt1 ]
	then
		echo $iii'/'$indx > $tmptxt
		break
	fi
	let indx++
	echo $iii'/'$indx > $tmptxt
done

A=`cat $tmptxt`
echo "Начинаем прошивать ONU, нашли свободное место $A"
ELTX2=$(expect -c "
	spawn telnet $HOSTS
	expect \"login:\"
	send \"$USR\r\"
	expect \"Password:\"
	send \"$PASSWD\r\"
	expect \"LTP-4X# \"
	send \"configure terminal\r\"
	expect \"LTP-4X(config)# \"
	send \"interface ont $A\r\"
	send \"serial $serr\r\"
	send \"template NTU1\r\"
	send \"exit\r\"
	send \"exit\r\"
	send \"commit\r\"
        expect \"LTP-4X# \"
	send \"save\r\"
	expect \"LTP-4X# \"
	send \"exit\r\"
	expect eof
")
echo "ITOG= "$ELTX2
echo "Скорее всего успешно добавлена ONU "$serr" номер интерфейса "$A
echo "Для проверки советуем еще раз запустить скрипт"
exit 0
