#!/opt/SUNWstade/bin/perl -I/opt/SUNWstade/lib

use Getopt::Std;
use System;
use SNMPTrap;

System->set_home("/opt/SUNWstade");

sub usage {
  print <<EOF;
Usage: sbin/send_trap -h -i <ip> -p <port> -c <device_category> -s <severity> -m "message"

     -m : special message (optional)
     -i : ip to send trap to
     -p : port to use (optional, default=162)
     -c : device category (optional, default=t3)
     -s : severity of alert (1,2,3, default=2)
EOF
}

if (!getopts("m:s:c:i:p:h", \%opts) || $opts{h} || !$opts{i}) {
    usage();
    exit(1);
}

$ip   = $opts{i};
$port = $opts{p} || 162;
$cat  = $opts{c} || 't3';
$sev  = $opts{s} || 2;

my $date = `date`;
chop($date);

$ed_desc = "New test trap sent at $date";

$mess = $opts{m} || $ed_desc;


my $rc = SNMPTrap->send($mess, 
                 { IP         => $ip,
                   port       => $port || 162,
                   device     => $cat,
                   alertLevel => $sev
                 });

print "returncode=$rc\n";


