Skip to main content

Chumby One Network Usage Widget


I recently got a Chumby One, and am loving it.  However, the "Network Usage" widget that you can install has a script for the older Chumby, not the newer Chumby One.   To make it work with the Chumby One, you need to add a line to the crontab to run the widget every hour, like so:

chumby:~# cat /psp/crontabs/root
0 3 * * * /usr/chumby/scripts/sync_time.sh
* * * * * /usr/chumby/scripts/flashplayer_watchdog
59 * * * * /psp/cgi-bin/ipusage.pl getdata


Here is the file to run the script: (I changed rbusb0 to wlan0, and removed a ^ in line 89)
***************************************************************************************************************************
chumby:~# cat /psp/cgi-bin/ipusage.pl
#! /usr/bin/perl
$argcount = $#ARGV + 1;
$request = uc($ENV{'QUERY_STRING'});

if ($request eq "REPORT") #URL requests data

{
# send the data format as xml
# format is
#

# retrieve ipusage.dat
$lastrec = 0;
$lastsent = 0;
print "Content-type:text/xml\r\n\r\n";
print "\<\?xml version=\"1.0\" encoding=\"utf-8\"\?\>\n";
$file = "/psp/cgi-bin/ipusage.dat" ;
open(INFO, $file) ;
print "\n";
open(INFO, $file) ;
while ($line =
{
$line =~ s/\n// ; # remove linefeed
while ($line =~ "  ")  # change double spaces to singles
{
$line =~ s/  / / ;
}
@items = split(/ /, $line) ; # get each part of the line   
@subitems = split(/:/, @items[3]) ; # get each part of the line

# line data example Tue Apr 14 10:00:01 2009 102307121 4336958

if (@items[6] <= $lastsent)
{ $lastsent = 0; }
if (@items[5] <= $lastrec)
{ $lastrec = 0; }
$diffsent = @items[6] - $lastsent;
$diffrec = @items[5] - $lastrec;

print "   print "DayOfWeek = \"@items[0]\" ";
print "DayOfMonth = \"@items[2]\" ";
print "Month = \"@items[1]\" ";
print "Year = \"@items[4]\" ";
print "Hour = \"@subitems[0]\" ";
print "Min = \"@subitems[1]\" ";
print "Sec = \"@subitems[2]\" ";
print "SentBytes = \"$diffsent\" ";
print "RecBytes = \"$diffrec\"\> ";
print "\<\/Measurement\>\n";

$lastrec = @items[5];
$lastsent = @items[6];

}
print "<\/IPUsage>\n";
close(INFO) ;
}

if ($request eq "POLICY") # URL requests policy
{
# send the crossdomain policy file

print "Content-type:text\/xml\r\n\r\n";
print "<\?xml version=\"1.0\"\?>\r\n\r\n";
print "<\!-- my crossdomain file -->\n";
print "\n";
print "  \n";
print "<\/cross-domain-policy>\n";

}

if ($argcount == 1) # run from the command line
{

if (uc($ARGV[0]) eq "GETDATA") 
{
$mph = 1; # YOU CAN SET THIS TO THE NUMBER OF MEASUREMENT PER HOUR
$tl = ($mph * 7 * 24) + 10; # calculate how many lines in the file.
# run from crontab
# update ipusage.dat
#
# get the sent and rec bytes from dev file
#
$file = "/proc/net/dev" ;
open(INFO, $file) ;
while ($line =
{
if ($line =~ /wlan0:/) # find the line
{
$line =~ s/wlan0:// ;
while ($line =~ "  ")  # change double spaces to singles
{
$line =~ s/  / / ;
}
while ($line =~ "^ ")  # remove spaces at start of line
{
$line =~ s/^ // ;
}
@items = split(/ /, $line) ; # read the values for rec and sent
$rec = @items[0] ;
$sen = @items[8] ;
}
}
close(INFO) ;
#
# get current date time
#
$tdt = localtime(time()) ;
#
# append values to data file
#
$file = "/psp/cgi-bin/ipusage.dat" ;
open(DAT, ">>$file") ;
printf DAT "$tdt $rec $sen\n" ;
close(DAT) ;
#
# truncate the data file
#  
system("tail -n $tl /psp/cgi-bin/ipusage.dat > /psp/cgi-bin/ipusage.tmp");
system("mv -f /psp/cgi-bin/ipusage.tmp /psp/cgi-bin/ipusage.dat");

}

}
**************************************************************************************************************************************

Comments

Popular posts from this blog

HP c6180 Printer and Vista

Hp c6180 driver issues with Vista Home Premium My wife has a Vista Home Premium laptop, and the HP C6180 Photosmart printer keeps disappearing from her available printers.  The only way I've found to fix the problem is to reinstall all the HP software. When I do this, I have to download the (large..507M software from HP, or reinstall the printer (ONLY the printer, not the scanner) with the installation disk, as the drivers are not discovered with a "Windows Update" setting.  My guess is that is because HP doesn't like people to install only the printer driver, which would be easy, but they want folks to install all their crapware as well, so they are withholding the drivers from the on-line Microsoft printer database.  So keep your installation CD!  I've also found that unless I install everything on the CD or in the Full Version download (HP Customer Participation Program, HP Imaging Device functions, HP OCR SW, HP All-In-one SW, HP Photosm...

atftpd vs tftpd-hpa

Recently I was trying to tftp files from a Windows computer to a Kali box.   One version of Windows worked, but another didn't.    After much troubleshooting, here were my symptoms: I could tftp a file from-to any Kali box from-to another Kali box I could NOT tftp files to a specific Windows 7 box from any Kali box I could NOT tftp files to a Chrooted-Ubuntu-Chromebook box from a Kali box After MUCH troubleshooting, going through every setting in atftpd, it seemed like it literally was a client OS problem.  Different clients simply would not download files---unacceptable. Thus, I switched to tftpd-hpa.   To install: apt-get install tftpd-hpa files go to/come from /srv/tftp, but it needs to be a tftp user. Thus, I needed to: chroot -R /srv/tftp Also, if you want to be able to put files ON the tftp server (from a client), you need to modify /etc/default/tftpd-hpa: change "TFTP_OPTIONS="--secure"  to "TFTP_OPTIONS="--secure --create" ...

Security Onion on the Antsle

My Setup of Security Onion on the Antsle: Recently my IDS box, an Intel Atom D2500 Fanless Mini-ITX PC, D2500CCE, died.  Truth be told, I think it came from the factory in a bad state, as I originally thought I had a bad graphics driver, but I then noticed that, after much troubleshooting, it wasn't a driver issue at all.  The box just sometimes wouldn't boot up correctly with video.  It seems heat related, something like not enough thermal paste on the CPU, as after it is powered off for a while it is more likely to boot than when it is warm.  Along with that issue, this box maxed out at 4GB of RAM (only has 2 memory slots, each of which will only take a 2GB card max) and had a single processor, so it was under powered for Security Onion. So, I decided to quit limping along on P.O.S. boxes, and buy a little more heavyweight box for my networked IDS.   Security Onion requires a minimum of 8GB of RAM, and 4 cores per their specs page htt...