#!/bin/sh
#                                       snoop v0.4a (Plugin-Version)
#
iplist="192.168.0.198 192.168.0.199"    # IP-Adressen der DBoxen
boxlist="Nokia Sagem"                   # Namen der Dboxen
waitlist="4 3"                          # Wartezeiten (in sec) zwischen Senderumschaltung und Signalauswertung [Fehlwert]
bouquetdefault=                         # Bouquetnummer (="": Gesamtscan; >0: Einzelscan) [Fehlwert]
channeldefault=                         # Kanalnummer (="": Gesamtscan; >0: Einzelscan) [Fehlwert]
pdefault=10                             # Anzahl an Abfragen je Kanal [Fehlwert]
osddefault=15                           # OnScreen Display (=0: aus; >0: Aktualisierung in sec) [Fehlwert]
layoutdefault=1                         # Log-Layout (=0: / =1: ohne / mit Spaltenberschrift) [Fehlwert]
trenndefault=1                          # Trennlinie im Log zwischen TV- und Radiosendern (=0: nein; =1: ja) [Fehlwert]
statdefault=1                           # snoop-Statistik-Ausgabe (=0: aus; =1: an) [Fehlwert]
debugdefault=0                          # Debug-Modus (=0: aus; =1: an) [Fehlwert]
deletedefault=1                         # Delete-Modus zum Lschen lterer snoop-Dateien (=0: nein; =1: ja; =2: fragen) [Fehlwert]
#---------------------------------------------------------------------------------------------------------------------------------
#                                       # Messages
fm01="Abbruch: Keine Unterstuetzung fuer den Befehl 'cut' gefunden.\nBitte 'BusyBox Enhanced Version' installieren (she. readme)."
fm02="Abbruch: IP-Adresse 'IP' aus /etc/network/interfaces~nin der Variablen 'iplist' nicht gefunden."
fm03="Abbruch: Ung~ultiger Parameter 'Bouquetnummer'."
fm04="Abbruch: Ung~ultiger Parameter 'Kanalnummer'."
fm05="Abbruch: Ung~ultiger Parameter 'Abfragen je Kanal'."
fm08="Abbruch: Ung~ultiger Parameter 'Layout'." 
fm09="Abbruch: Ung~ultiger Parameter 'Trennlinie'."
fm11="Abbruch: Ung~ultiger Parameter 'snoop-Statistik-Ausgabe'."
fm12="Abbruch: Ung~ultiger Parameter 'Debug-Modus'."
fm14="Abbruch: Fehlender Parameter 'Bouquetnummer'."
fm15="Abbruch: Fehlender Parameter 'Kanalnummer'."
fm16="Abbruch: Keine Unterstuetzung fuer den Befehl 'msgbox' gefunden.\nBitte MsgBox installieren (she. readme)."
fm17="Abbruch: Keine Unterst~utzung f~ur den Befehl 'input' gefunden.~nBitte Input installieren (she. readme)."
fm18="Abbruch: 'DATEI' verf~ugt nicht ~uber hinreichende~nDateirechte. Bitte mit CHMOD auf '755' setzen."
fm19="Abbruch: 'MSGBOX' verfuegt nicht ueber hinreichende\nDateirechte. Bitte mit CHMOD auf '755' setzen."
fm20="Abbruch: /var/plugins/snoopmsg nicht gefunden.~nBitte snoopmsg installieren (she. readme)."
fm21="Abbruch: Ung~ultiger Parameter 'Delete-Modus'."
fm22="~Altere snoop-Dateien in '/var' l~oschen?"
fm23="Abbruch: 'dvbsnoop' nicht gefunden.\nBitte 'dvbsnoop' installieren (she. readme)."
#
#------------------------------------------------------------------------------------------------------------------------

show_error ()
{
  y=\$"$1"                                                           # Variablenname '$fmxx'
  var=`eval "expr \"$y\" "`                                          # Wert von $Fmxx
  ret=`$pathmsgbox msg="$var" title="snoop" select="OK" timeout=60 hide=0 echo=1`
  if [ -z "$ret" ]; then
      var=`echo $var | sed -e 's/~a/ae/g'`
      var=`echo $var | sed -e 's/~o/oe/g'`
      var=`echo $var | sed -e 's/~u/ue/g'`
      var=`echo $var | sed -e 's/~A/Ae/g'`
      var=`echo $var | sed -e 's/~O/Oe/g'`
      var=`echo $var | sed -e 's/~U/Ue/g'`
      var=`echo $var | sed -e 's/~z//g'`
      var=`echo $var | sed -e 's/~n/\n/g'`
      echo "$var" >/var/snoopError.log
  fi
}  
  
zap_channel ()
{  
  /bin/pzapit $oact -name "${actchanname}" >/dev/null                 # zurckschalten
  wget -Y off -q -O /dev/null http://localhost/control/rc?unlock      #Fernbedienung einschalten
  sleep 2
  rcsim KEY_HOME >/dev/null
  sleep 1
  if [ "$oact" = "-ra" ]; then     
      wget -Y off -q http://localhost/control/setmode?tv -O /dev/null
      wget -Y off -q http://localhost/control/setmode?radio-O /dev/null 
  else          
      wget -Y off -q http://localhost/control/setmode?radio -O /dev/null
      wget -Y off -q http://localhost/control/setmode?tv -O /dev/null
  fi
  wget -Y off -q http://localhost/control/volume?$actvol -O /dev/null # Lautstrke wiederherstellen 
}

OLD_IFS=$IFS

if [ -e /bin/msgbox ]; then
    pathmsgbox="/bin/msgbox"
else
    if [ -e /var/bin/msgbox ]; then
        pathmsgbox="/var/bin/msgbox"
    else
        echo $fm16 >/var/snoopError.log
        exit 
    fi
fi

if [ -h /bin/cut ]; then
    pathcut="/bin/cut"
else
    if [ -h /var/bin/cut ]; then
        pathcut="/var/bin/cut"
    else
        echo $fm01 >/var/snoopError.log
        exit 
    fi
fi

ch755=`echo $pathmsgbox | sed -e 's#/msgbox##' | xargs ls -l | grep msgbox | $pathcut -f1 -d" "'`
if [ "$ch755" != "-rwxr-xr-x" ]; then
    fm19=`echo $fm19 | sed -e "s#'MSGBOX'#'$pathmsgbox'#"`
    echo $fm19 >/var/snoopError.log
    exit
fi

if [ $# -eq 0 ]; then
    if [ -e /bin/input ]; then
        pathinput="/bin/input"
    else
        if [ -e /var/bin/input ]; then
            pathinput="/var/bin/input"
        else
            show_error "fm17"
            exit 
        fi
    fi
    ch755=`echo $pathinput | sed -e 's#/input##' | xargs ls -l | grep input | $pathcut -f1 -d" "'`
    if [ "$ch755" != "-rwxr-xr-x" ]; then
        fm18=`echo $fm18 | sed -e "s#'DATEI'#'$pathinput'#"`
        show_error "fm18"
        exit
    fi
fi

if [ -e /var/plugins/snoopmsg ]; then
    ch755=`ls -l /var/plugins/snoopmsg | $pathcut -f1 -d" "'`
    if [ "$ch755" != "-rwxr-xr-x" ]; then
        fm18=`echo $fm18 | sed -e "s#'DATEI'#'/var/plugins/snoopmsg'#"`
        show_error "fm18"
        exit
    fi
else
    show_error "fm20"
    exit
fi

if [ -e /bin/dvbsnoop ]; then
    pathdvbsnoop="/bin/dvbsnoop"
else
    if [ -e /var/bin/dvbsnoop ]; then
        pathdvbsnoop="/var/bin/dvbsnoop"
    else
        echo $fm23 >/var/snoopError.log
        exit 
    fi
    ch755=`echo $pathdvbsnoop | sed -e 's#/dvbsnoop##' | xargs ls -l | grep dvbsnoop | $pathcut -f1 -d" "'`
    if [ "$ch755" != "-rwxr-xr-x" ]; then
        fm18=`echo $fm18 | sed -e "s#'DATEI'#'$pathdvbsnoop'#"`
        show_error "fm18"
        exit
    fi
fi 

index=0
m=0
ip=`grep '^[[:space:]]*address' /etc/network/interfaces | sed -e 's/ */ /' | $pathcut -f3 -d" "`

for n in $iplist; do
  m=`expr $m + 1`
  if [ $ip = $n ]; then
      index=$m
      break
  fi
done

if [ $index -eq 0 ]; then
    fm02=`echo $fm02 | sed -e "s/'IP'/'$ip'/"`
    show_error "fm02"
    exit
else
    m=0
    for n in $boxlist; do
      m=`expr $m + 1`
      if [ $m -eq $index ]; then
          box=$n
          break
      fi
    done
    m=0
    for n in $waitlist; do
      m=`expr $m + 1`
      if [ $m -eq $index ]; then
          waitdefault=$n
          break
      fi
    done
fi

wget -Y off -q -O /dev/null http://localhost/control/rc?lock          # Fernbedienung ausschalten
sleep 1
rcsim KEY_RED >/dev/null
actvol=`wget -Y off -q http://localhost/control/volume -O -`          # Aktuelle Lautstrke speichern 
wget -Y off -O - -q http://localhost/control/volume?0 >/dev/null      # stummschalten

oact=`wget -Y off -q http://localhost/control/getmode -O - | $pathcut -c1-2`
if [ "$oact" = "tv" ]; then
    oact=
else
    oact=-ra
fi
IFS=""
actchanid=`wget -Y off -q http://localhost/control/zapto -O -`
chcut=`wget -Y off -q http://localhost/control/channellist -O - | grep $actchanid | sed -e "s/$actchanid /_$actchanid_/" | $pathcut -f2 -d"_"`
channellines=`echo $chcut | sed ':a;N;$!ba;s/\n/#/g'`
if [ -z "$channellines" ]; then
    channellines=$chcut
fi
IFS="#"
for k in $channellines; do
  actchanname=$k
  break
done
IFS=$OLD_IFS

pzapit $oact -name "${actchanname}" >/dev/null

listtv=`/bin/pzapit | $pathcut -f1 -d":" | sed ':a;N;$!ba;s/\n/ /g'`
listra=`/bin/pzapit -ra | $pathcut -f1 -d":" | sed ':a;N;$!ba;s/\n/ /g'`

if [ -z "$bouquetdefault" ]; then
    bouquetdefault="    "
fi
if [ -z "$channeldefault" ]; then
    channeldefault="    "
fi
IFS=""
msgboxdefault=`echo $bouquetdefault | sed ':a;s/^.\{1,3\}$/ &/;ta'`
expand=`echo $channeldefault | sed ':a;s/^.\{1,3\}$/ &/;ta'`    
msgboxdefault=`echo ${msgboxdefault}${expand}`
expand=`echo $pdefault | sed ':a;s/^.\{1,3\}$/ &/;ta'`
msgboxdefault=`echo ${msgboxdefault}${expand}`
expand=`echo $waitdefault | sed ':a;s/^.\{1,1\}$/ &/;ta'`
msgboxdefault=`echo ${msgboxdefault}${expand}`
expand=`echo $osddefault | sed ':a;s/^.\{1,3\}$/ &/;ta'`
msgboxdefault=`echo ${msgboxdefault}${expand}${layoutdefault}${trenndefault}${statdefault}${debugdefault}${deletedefault}`
IFS=OLD_IFS

param=`$pathinput l="Bouquetnummer      ####Kanalnummer        ####Abfragen je Kanal  ####Wartezeit            ##OnScreen Display   ####Layout                #Trennlinie            #snoop-Statistik       #Debug-Modus           #Delete-Modus          #" t="snoop-Startparameter" d="$msgboxdefault" c=23 o=15`

IFS=""
bouquetlist=`echo $param | $pathcut -c1-4 | sed -e 's/ //g'`
channellist=`echo $param | $pathcut -c5-8 | sed -e 's/ //g'`
p=`echo $param | $pathcut -c9-12 | sed -e 's/ //g'`
wait=`echo $param | $pathcut -c13-14 | sed -e 's/ //g'`
osd=`echo $param | $pathcut -c15-18 | sed -e 's/ //g'`
layout=`echo $param | $pathcut -c19 | sed -e 's/ //g'`
trenn=`echo $param | $pathcut -c20 | sed -e 's/ //g'`
stat=`echo $param | $pathcut -c21 | sed -e 's/ //g'`
debug=`echo $param | $pathcut -c22 | sed -e 's/ //g'`
delete=`echo $param | $pathcut -c24 | sed -e 's/ //g'`
IFS=OLD_IFS

if [ -z $debug ]; then
    debug=$debugdefault
else
    if [ $debug -gt 1 ]; then
        show_error "fm12"
        zap_channel          
        exit
    fi 
fi

if [ $debug -eq 1 ]; then
    echo "msgboxdefault = -----${msgboxdefault}-----" >>/tmp/snoopDebug.log
    echo "param = -----${param}-----" >>/tmp/snoopDebug.log
fi

if [ -z $p ]; then
    p=$pdefault
else
    if [ $p -eq 0 ]; then
        show_error "fm05"
        zap_channel          
        exit
    fi 
fi

if [ -z $wait ]; then
    wait=$waitdefault
fi

if [ -z $osd ]; then
    osd=$osddefault
fi

if [ -z $layout ]; then
    layout=$layoutdefault
else
    if [ $layout -gt 1 ]; then
        show_error "fm08"
        zap_channel          
        exit
    fi 
fi

if [ -z $trenn ]; then
    trenn=$trenndefault
else
    if [ $trenn -gt 1 ]; then
        show_error "fm09"
        zap_channel      
        exit
    fi 
fi

if [ -z $stat ]; then
        stat=$statdefault
    else
        if [ $stat -gt 1 ]; then
            show_error "fm11"
            zap_channel      
            exit
        fi 
    fi
    
if [ -z $delete ]; then
    delete=$deletedefault
else
    if [ $delete -gt 2 ]; then
        show_error "fm21"
        zap_channel      
        exit
    fi 
fi
    
if [ -z $bouquetlist ]; then
    if [ -z $channellist ]; then
        scan=0                                   # Gesamtscan
        typ=ges
    else
        show_error "fm14"
        zap_channel    
        exit
    fi
else
    if [ -z $channellist ]; then
        show_error "fm15"
        zap_channel 
        exit
    else
        scan=999999                              # Einzelscan (>0)
    fi
fi
if [ $scan -eq 0 ]; then
    lasttv=0
    if [ -n "$listtv" ]; then
        IFS=" \n"
        for n in $listtv; do
          lasttv=$n
        done
        IFS=$OLD_IFS
        o=                                       # pzapit-Option fr TV
        if [ -n "$listra" ]; then
            bouquetlist=`echo $listtv $listra`
        else
            bouquetlist=$listtv
        fi
    else
        o=-ra # pzapit-Option fr Radio
        bouquetlist=$listra
    fi
else
    scan=
    if [ -n "$listtv" ]; then
        IFS=" \n"
        for n in $listtv; do
          if [ $n -eq $bouquetlist ]; then
              scan=1                             # Einzelscan TV
              o=                                 # pzapit-Option fr TV
              break
          fi    
        done
        IFS=$OLD_IFS
    fi                                                                        
    if [ -z $scan ]; then
        if [ -n "$listra" ]; then
            IFS=" \n"
            for n in $listra; do
              if [ $n -eq $bouquetlist ]; then
                  scan=2                         # Einzelscan Radio
                  o=-ra                          # pzapit-Option fr Radio
                  break
              fi    
            done
            IFS=$OLD_IFS
        fi
    fi
    
    if [ -z $scan ]; then
        show_error "fm03"
        zap_channel 
        exit
    fi
    if [ $scan -eq 1 ]; then
        imax=`/bin/pzapit $bouquetlist | grep -c "^[0-9]*:"`
    else
        imax=`/bin/pzapit -ra $bouquetlist | grep -c "^[0-9]*:"`
    fi                                                                  
    if [ $channellist -gt 0 -a $channellist -le $imax ] 2>/dev/null; then
        typ=`echo bouq${bouquetlist}.ch${channellist}`
    else
        show_error "fm04"
        zap_channel 
        exit
    fi    
    lasttv=0
fi

if [ $debug -eq 1 ]; then
    echo "p = -----${p}-----" >>/tmp/snoopDebug.log
    echo "bouquetlist = -----${bouquetlist}-----" >>/tmp/snoopDebug.log
    echo "channellist = -----${channellist}-----" >>/tmp/snoopDebug.log
    echo "osd = -----${osd}-----" >>/tmp/snoopDebug.log
    echo "layout = -----${layout}-----" >>/tmp/snoopDebug.log
    echo "trenn = -----${trenn}-----" >>/tmp/snoopDebug.log
    echo "stat = -----${stat}-----" >>/tmp/snoopDebug.log
    echo "debug = -----${debug}-----" >>/tmp/snoopDebug.log
    echo "delete = -----${delete}-----" >>/tmp/snoopDebug.log
fi

startsec=`date +"%s"`        # Startzeit
heute=`date +"%Y.%m.%d"`     # Datum
uhrzeit=`date +"%H:%M"`      # Uhrzeit

if [ $osd -gt 0 ]; then
    touch /tmp/.snoop
    /var/plugins/snoopmsg $startsec $osd "snoopp" $actvol "$actchanname" $oact &
fi

if [ $layout -eq 1 ]; then
    echo "Sender                                      BER (min max avg)     SNR (min max avg)    SIG (min max avg)      Frequenz" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    echo " " >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
fi

if [ $debug -eq 1 ]; then
    echo "listtv = $listtv" >>/tmp/snoopDebug.log
    echo "listra = $listra" >>/tmp/snoopDebug.log
    echo "bouquetlist = $bouquetlist" >>/tmp/snoopDebug.log
    echo "scan = $scan   o = $o   lasttv = $lasttv" >>/tmp/snoopDebug.log
fi

for b in $bouquetlist; do
  
  if [ $scan -eq 0 ]; then
      imax=`/bin/pzapit $o $b | grep -c "^[0-9]*:"`
      channellist=
      i=1
	    while [ $i -le $imax ]; do
	      channellist=`echo $channellist $i`
	      i=`expr $i + 1`
	    done
  fi
  
  if [ $debug -eq 1 ]; then
      echo "Bouquet $b   imax = $imax   Kanalliste $channellist" >>/tmp/snoopDebug.log
  fi
	
	for i in $channellist; do

    sigmin=999999999
    sigmax=0
    sigsum=0
    snrmin=999999999
    snrmax=0
    snrsum=0
    bermin=999999999
    bermax=0
    bersum=0

    IFS=""
    pz=`/bin/pzapit $o $b $i | grep '^zapped to' | $pathcut -c11-72 | sed ':a;s/^.\{1,33\}$/& /;ta'`
    
    if [ $debug -eq 1 ]; then
        echo "Bouquet $b   Kanal $i   $pz pzapit-Option $o" >>/tmp/snoopDebug.log
    fi
    IFS=$OLD_IFS
    
	  sleep $wait
	  
    k=1 # packetnr

    while [ $k -le $p ]; do
    
      empf=`$pathdvbsnoop -s signal -n 1 | sed -e 's/  /_/g' | sed -e 's/__/_/g' | sed -e 's/Sig://g' | sed -e 's/SNR://g' | sed -e 's/BER://g' | grep cycle: | $pathcut -f4,5,6 -d_`
	    sig=`echo $empf | $pathcut -f1 -d_`
      sigsum=`expr $sigsum + $sig`
	    if [ $sig -lt $sigmin ]; then
	        sigmin=$sig
	    fi
	    if [ $sig -gt $sigmax ]; then
	        sigmax=$sig
	    fi
	    snr=`echo $empf | $pathcut -f2 -d_`
	    snrsum=`expr $snrsum + $snr`
	    if [ $snr -lt $snrmin ]; then
	        snrmin=$snr
	    fi
	    if [ $snr -gt $snrmax ]; then
	        snrmax=$snr
	    fi
	    ber=`echo $empf | $pathcut -f3 -d_`
	    bersum=`expr $bersum + $ber`
	    if [ $ber -lt $bermin ]; then
	        bermin=$ber
	    fi
	    if [ $ber -gt $bermax ]; then
	        bermax=$ber
	    fi
	    if [ $debug -eq 1 ]; then
	        echo "ber $ber $pz" >>/tmp/snoopDebug.log
	    fi
	
	  k=`expr $k + 1`
	  done

    freq=`$pathdvbsnoop -s feinfo | grep Frequency: | sed -e 's/MHz//g'| sed -e s/' Frequency: '//g | $pathcut -c5-14`
    
    IFS=""
	  bermin=`echo $bermin | sed ':a;s/^.\{1,7\}$/ &/;ta'`
	  bermax=`echo $bermax | sed ':a;s/^.\{1,7\}$/ &/;ta'`
	  snrmin=`echo $snrmin | sed ':a;s/^.\{1,4\}$/ &/;ta'`
	  snrmax=`echo $snrmax | sed ':a;s/^.\{1,4\}$/ &/;ta'`
	  sigmin=`echo $sigmin | sed ':a;s/^.\{1,4\}$/ &/;ta'`
	  sigmax=`echo $sigmax | sed ':a;s/^.\{1,4\}$/ &/;ta'`
	  beravg=`expr $bersum / $p | sed ':a;s/^.\{1,7\}$/ &/;ta'`
	  snravg=`expr $snrsum / $p | sed ':a;s/^.\{1,4\}$/ &/;ta'`
	  sigavg=`expr $sigsum / $p | sed ':a;s/^.\{1,4\}$/ &/;ta'`

    if [ $layout -eq 0 ]; then
        echo "$pz BER $bermin / $bermax / $beravg   SNR $snrmin /$snrmax / $snravg   SIG $sigmin / $sigmax / $sigavg   Frequenz $freq MHz" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    else
        echo $pz $bermin $bermax $beravg "  " $snrmin${snrmax} $snravg "  " $sigmin $sigmax $sigavg "  " $freq >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    fi
       
    IFS=$OLD_IFS
    
    if [ $debug -eq 1 ]; then
        echo "bermin $bermin   bermax $bermax   beravg $beravg   $pz" >>/tmp/snoopDebug.log
    fi
       
	done
	
	if [ -n "$listra" ]; then
      if [ $b -eq $lasttv ]; then
          if [ $debug -eq 1 ]; then
              echo "Nach Bouquet $b Umschalten in den Radiomodus" >>/tmp/snoopDebug.log
          fi
          o=-ra # pzapit-Option fr Radio
          if [ $trenn -eq 1 ]; then
              if [ $scan -eq 0 ]; then
                  if [ -n "$listtv" ]; then
                      if [ $layout -eq 0 ]; then
                          echo "--------------------------------------------------------------------------------------------------------------------------------------------------------" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
                      else
                          echo "----------------------------------------------------------------------------------------------------------------------" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
                      fi
                  fi
              fi
          fi
      fi
  fi

done

killall -q "snoopmsg" &
killall -q "msgbox" 
rm /tmp/.snoop 2>/dev/null
endsec=`date +"%s"`
secges=`expr $endsec - $startsec`
minges=`expr $secges / 60`
std=`expr $minges / 60`
minstd=`expr 60 \* $std`
min=`expr $minges - $minstd`
sec=`expr $secges - 60 \* $minges`

if [ $stat -eq 1 ]; then
    echo "\n\n\n\n\nsnoop-Statistik\n---------------\n\nParameter" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    echo "- Box                    : $box" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    echo "- IP-Adresse             : $ip" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    if [ $scan = 0 ]; then
        val=gesamt
    else
        val=$pz
    fi
    echo "- Scan                   : $val" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    if [ $scan = 0 ]; then
        val="je Kanal"
    else
        val="        "
    fi
    echo "- Abfragen $val      : $p" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    if [ $osd = 0 ]; then
        val=aus
    else
        val=ein
    fi
    echo "- Wartezeit (sec)        : $wait" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    if [ $osd -eq 0 ]; then
        echo "- OnScreen Display       : aus" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    else
        echo "- OnScreen Display (sec) : $osd" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    fi
    if [ $layout = 0 ]; then
        val=ohne
    else
        val=mit
    fi
    echo "- Layout                 : $val Spaltenueberschrift" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    if [ $trenn = 0 ]; then
        val=nein
    else
        val=ja
    fi
    echo "- Trennstrich            : $val" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    if [ $debug = 0 ]; then
        val=aus
    else
        val=ein
    fi
    echo "- Debug-Modus            : ${val}" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    if [ $delete = 0 ]; then
        val=aus
    else
        if [ $delete = 1 ]; then
            val=ein
        else
            val=fragen
        fi
    fi
    echo "- Delete-Modus           : ${val}\n" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    echo "Startzeit                : ${uhrzeit}\n" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
    echo "Laufzeit                 : $std Std $min min $sec sec" >>/tmp/snoop_${box}_${heute}_${typ}_p${p}.log
fi
        
if [ $delete -eq 0 ]; then
    del=
else
    if [ $delete -eq 2 ]; then
        ret=`$pathmsgbox msg="$fm22" title="snoop" select="Ja,Nein" order=2 timeout=99999999 hide=0 echo=1`
    else
        ret=
    fi
    if [ $delete -eq 2 -a "$ret" = "Nein" ]; then
        del=
    else
        rm /var/snoop* 2>/dev/null
        if [ $? -eq 0 ]; then
            del="~n~Altere snoop-Dateien wurden gel~oscht."
        else
            del=
        fi
    fi
fi

cp /tmp/snoop_${box}_${heute}_${typ}_p${p}.log /var/snoop_${box}_${heute}_${typ}_p${p}.log
rm /tmp/snoop_${box}_${heute}_${typ}_p${p}.log

if [ $debug -eq 1 ]; then
    cp /tmp/snoopDebug.log /var/snoopDebug.log
    rm /tmp/snoopDebug.log 
    val="und DebugLog~nim"
else 
    val="im"
fi
$pathmsgbox popup="Empfangssignal-Auswertung beendet.~n~nLaufzeit: $std Std $min min $sec sec.~n~nEmpfangssignalliste $val Verzeichnis '/var' gespeichert.$del" title="snoop" timeout=60 hide=0 refresh=0 echo=1

zap_channel
