#!/bin/ash
#191117 sfs
[ ! $1 ] && ntf -e "$0" "Не задан интерфейс" && exit 1
[ ! $2 ] && ntf -e "$0" "Не задан fifo" && exit 1
fifo="$2"
rm=0; e=1;  c=0 
pop="\
<b>Переключатель сетевых профилей netctl</b>\n\
<i>Левый  клик</i>: информация\n\
<i>Правый клик</i>: меню\n\
\n\
<b>$1</b>   "

t0="/dev/`pgrep -fa "pppd file /run/netctl/mobile_ppp" |awk -F- '{print $2}'`"
t0="`echo $t0 |sed 's/[0-9]$//'`"
[ "$t0" = "/dev/" ] &&
    t0="$(realpath `sudo awk '/^Modem = / {print $3}' /etc/wvdial.conf` |sed 's/[0-9]$//')" 
    t="`ls $t0[0-9] |tail -1`"

AT(){
echo -e "AT+CSQ\r\n" > $t
#echo -e "AT+CSQ\n" > $t
#c="`timeout 1 gawk '/^+CSQ/{print 113-gensub(/,.*/,"","g",$2)*2; exit}' $t`"
c="`timeout 1 gawk '/^+CSQ/{print gensub(/,.*/,"","g",$2); exit}' $t`"
}

while true; do
AT
#c=15
[ $c ] || AT
[ $c ] || AT
[ $c ] || continue
    if [ "$c" ] ;then
#[ $c -le 109 ] && d=плохой
#[ $c -le 93 ] && d=нормальный
#[ $c -le 83 ] && d=хороший
#[ $c -le 73 ] && d=отличный

[ $c -le 90 ] && d=отличный 	&& i=4
[ $c -le 15 ] && d=хороший  	&& i=3
[ $c -le 10 ] && d=нормальный	&& i=2
[ $c -le 2  ] && d=плохой	&& i=1

pop3="Уровень сигнала GSM модема (RSSI)\n\
<b>$d</b>: `echo $c| awk '{print "-"113-'$c'*2"dbm ("int('$c'*3.33334)"%)"}'`\n\
Трафик:\n\
`ifconfig $1 |awk -F"(" '/ RX pac/ {print "Прием    ("$2}'`\n\
`ifconfig $1 |awk -F"(" '/ TX pac/ {print "Передача ("$2}'`"
	e="/usr/share/pixmaps/cell_$i.svg"
    else 
	e="/usr/share/pixmaps/cell_0.svg"
	pop3="нет подключения"
    fi
    echo "tooltip:$pop$pop3" > $fifo
    echo "icon:$e" > $fifo
    sleep 5
done &
