#!/usr/athena/bin/perl
while(1){
# print("Starting scan...\n");
foreach $bar (1..29,31..65,67..86)
{
	$used = 0;
	$free = 0;
        $_ = `finger @w20-575-$bar`;
	$fing = $_;
        (@outa) = split(/[\n]+/, $_);
        foreach $word (@outa)
        {
                (@outb) = split(/[ ]+/, $word);
		(@temp) = split(/[:]/, $word);
		(@left) = split(/[ ]+/, $temp[$#temp-1]);
		$idle = $left[$#left-2];
		$foo = $idle +1;
		if ($idle+1 eq 1)
		{
			$idle = "Not idle";
		}
		if ($#temp-1 ne 0) 
		{
			$idle = "long";
		}
		if ($outb[0] ne "Login")
		{
			if ($outb[0] eq "No")
			{
#				print("This machine is free.\n");
				$free = 1;
				$used = 1;
			}
			else
			{
			if (length($outb[0]) < 10)
			{
#				print("     $outb[0], $idle\n");
				if($idle ne 'long'){
					$used = 1;
				}
			}
			else
			{
#				print("$outb[0]\n");
			}
			}
                }
        }
	if(!$used)
		{
		&zc("\nThis machine has been idle for a very long time:\nw20-575-$bar\n$fing");
#		print("$fing\n");
	}
	elsif($free){
		print("w20-575-$bar\n");
	}
#	print("Machine $bar: $used\n");
}
sleep(300);
}

sub zc {
	local($msg) = @_;

	open(ZPH, "|zwrite -n -d -q mkgray");
	print(ZPH $msg);
	close(ZPH);

}
