#!/bin/awk -f
#qico.stat -     qico
#:  qlinks < /fido/log/history
BEGIN {
sumF = 0;sumC = 0;trafS=0;trafR=0;FS = ",";dat=strftime("%d/%m/%y", systime())}
 {
 rdat=strftime("%d/%m/%y",$2);
 
 if(rdat==dat) 
   {
   trafS+=$6;trafR+=$7;sumLin+=$3
   if (index ($5,"0")==0) {sumC++;} else {sumF++ }
   total_link[$1,$4]+=1;
   total_time[$1,$4]+=$3;
   total_trafS[$1,$4]+=$6;
   total_trafR[$1,$4]+=$7;
   }
 }
END {
     print ( "\n_C  _ " strftime("%A %d %B %Y") " (" dat ")")
     #  =>   ,    i,j
     for (k in total_link) 
     {
     split(k, si, SUBSEP)
     line[si[1]]=0;
     addr[si[2]]=0;
     }
     
     for (i in line) 
     {
     printf("\n                            : %5s\n", i)
     print(".--------------------------------------------------------------------------.")
     print("|           |    .  |      |        |     CPS    |  |")
     print("|----------------+-----------+-----------+-----------+------------+--------|")     
#      . i - (ttySx, modem, tcpip)     
#    j -  .
       for (j in addr) 
       {
        if (total_link[i,j]!=0) 
        {
	  printf("|%15s |", j) 
          if (total_time[i,j]>59) {printf(" %5.1f %3s |",total_time[i,j]/60,"")} else {printf(" %5d %3s |",total_time[i,j],"")}
          if (total_trafS[i,j]>999) {printf(" %8.1f |", total_trafS[i,j]/1024)} else {printf(" %9d |", total_trafS[i,j])}
          if (total_trafR[i,j]>999) {printf(" %8.1f |", total_trafR[i,j]/1024)} else {printf(" %9d |", total_trafR[i,j])}
          if (total_time[i,j]!=0)
	   {total_cps=(total_trafS[i,j]+total_trafR[i,j])/total_time[i,j]}
	  else
	   {total_cps=0}
	  printf("  %5d cps |",total_cps)
	  printf(" %6d |\n",total_link[i,j])
	  sum_time+=total_time[i,j]	  
	  sum_trafS+=total_trafS[i,j]	  
	  sum_trafR+=total_trafR[i,j]
	  sum_link+=total_link[i,j]  	  
	 }
	}
       print("`----------------+-----------+-----------+-----------+------------+--------|")
       printf("          : |")
       printf(" %5.1f %3s |",sum_time/60,"")
       printf(" %8.1f |", sum_trafS/1024)
       printf(" %8.1f |", sum_trafR/1024)
       printf("      -     |")
       printf(" %6d |\n",sum_link)
       print("                 `---------------------------------------------------------'\n")
       sum_time=0;sum_trafS=0;sum_trafR=0;sum_link=0
     }  
     
     print("     " dat)
     printf("   , send/recv:  %0.1f / %0.1f\n", trafS/1024,trafR/1024)
     print ("   : " sumC)
     print ("   : " sumF)
     print ("   : " sumC+sumF)
     printf("     online: %5.1f \n",  sumLin/60)
     }