#!/bin/ash
#161211 sfs
[ ! $1 ] && ntf -e "$0" "Не задан интерфейс" && exit 1
[ ! $2 ] && ntf -e "$0" "Не задан fifo" && exit 1
e3=internet_connect_both  ; e2=internet_connect_out 
e1=internet_connect_in ; e0=internet_connect ; ex=internet_connect_no
#e0=gtk-add
#e3=networkboth  ; e2=etworkout 
#e1=networkin ; e0=network ;ex=internet_connect_no
fifo="$2"
rm=0; e=1;  c=0 
pop="\
<b>Переключатель сетевых профилей netctl</b>\n\
<i>Левый  клик</i>: информация\n\
<i>Правый клик</i>: меню\n\
\n\
<b>$1</b>   "

while true; do
 if [ "`ifconfig |egrep '^'$1': '`" ] ;then #disconnect
    r1="`cat /sys/class/net/$1/statistics/rx_bytes`"
    t1="`cat /sys/class/net/$1/statistics/tx_bytes`"
    sleep 1 #0.5
    r2="$(expr `cat /sys/class/net/$1/statistics/rx_bytes` - $r1)"
    t2="$(expr `cat /sys/class/net/$1/statistics/tx_bytes` - $t1)"

    [ $t2 -eq $r2 ] && [ $t2 -eq 0 ] && e=$e0 || e=$e3
    [ $t2 -gt $r2 ] && e=$e2
    [ $t2 -lt $r2 ] && e=$e1

    if [ $c = 4 ] ;then #обнуление раз в сек
		c=0 ;e=$e0 
		rs="`ifconfig $1 |awk '/ RX packets / {print $6" "$7}'`"
		ts="`ifconfig $1 |awk '/ TX packets / {print $6" "$7}'`"
    else	c="$(($c+1))" 
    fi
    pop3="`cat /sys/class/net/$1/speed`Мб\\\с `cat /sys/class/net/$1/duplex`duplex"
    pop2="\nПрием     \: $r2 байт\\\сек $rs\n\
Передача\: $t2 байт\\\сек $ts"
 else 
    e=$ex ; sleep 1 ;pop2=отключен
 fi
    echo "tooltip:$pop$pop3$pop2" > $fifo
    echo "icon:$e" > $fifo
#    echo $r2 $t2 $e #;exit
done &
