#!/s/perl/bin/perl -w

###############################################################################
#
#  read.pl 
#
#  read most recent value given a sensor ID
#
#    note: 
#     most likely use for this is cricket
#
################################################################################


################################################################################
# Tim Czerwonka, timc@cs.wisc.edu
# $Id: 1wire-most-recent.pl,v 1.2 2007/11/14 22:03:45 timc Exp $
#
# $Log: 1wire-most-recent.pl,v $
# Revision 1.2  2007/11/14 22:03:45  timc
# changed so that cricket can ask for an ID with lower case letters
#
################################################################################


use CSL::Pg;
use CSL::DBs;
use DBI;
my $dbh = DBI->connect($CSL::DBs::csdb) or die $DBI::errstr; 
$dbh->do("set search_path to sensornet");



################################################################################
# functions
################################################################################


# get_sensor_location -- return xyz location of specified device id
sub get_sensor_data{
    local ($id) = @_;

    my $query = $dbh->prepare("SELECT value
                               FROM data
                               WHERE (id = ? or lower(id) = ?)
                               order by time desc limit 1");


    $query->execute( $id, $id);
    $data = $query->fetchrow_hashref;
    while ($data->{value}) {
	print (($data->{value}) * 1.8 + 32);
	print "\n";
	$data = $query->fetchrow_hashref;
    }
}





################################################################################
# main 
################################################################################

#anticipate that the only argument is the sensor id
while( @ARGV ) {
    $_ = shift;
    $arg = $_
}

get_sensor_data($arg);

exit 0;

