Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Force SMS Hardware Inventory

by OzzyOsbourne (Chaplain)
on May 14, 2002 at 19:16 UTC ( #166542=sourcecode: print w/replies, xml ) Need Help??
Category: NT Admin
Author/Contact Info OzzyOsbourne
Description: Command line force of an SMS hardware inventory on a remote box.
# 5.14.02 Jonathan E. Dyer
# Script forces a hardware inventory for SMS for a single box running 
+SMS.
# Run script like this: forceinventory.pl <server name>
# no backslashes are needed in the server name.

# ping the box, and if ping response
#   Start SMS hardware inventory service (hwservvice)
#   Query the SMS hardware inventory service until it's stopped (it st
+ops itself)
#   Stop the SMS client inventory service (cliservice)
#   Query the SMS client inventory service is until stopped
#   Start the SMS client inventory service service
#   Query the SMS client inventory service until it's started
# else if no ping response
#   end


use strict;
use Win32::Service qw(GetStatus StopService StartService);

#define variables
my $server;
my $hwservice='sms hardware inventory agent service';
my $cliservice='clisvc';
use Net::Ping;
my $server=$ARGV[0];
#get the input


#Stop/start the services
my $p = Net::Ping->new("icmp");
if ($p->ping("$server",15)){;
    StartService("$server","$hwservice");
    &getstatus($server,$hwservice,1);
    StopService("$server","$cliservice");
    &getstatus($server,$cliservice,1);
    StartService("$server","$cliservice");
    &getstatus($server,$cliservice,4);
}else{
    print "No ping response from $server";
}
$p->close();
print "\n";

sub getstatus{
    my  %statusHash;
    my %statcodeHash = ('1' => 'stopped','2' => 'start pending','3' =>
+ 'stop pending','4' => 'running','5' => 'continue pending','6' => 'pa
+use pending','7' => 'paused');
    do {
    GetStatus("$_[0]", "$_[1]", \%statusHash);
    }until ($statusHash{CurrentState}==$_[2]);
    print " $_[1] $statcodeHash{$statusHash{\"CurrentState\"}} on $_[0
+]";
}

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: sourcecode [id://166542]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (4)
As of 2023-05-28 15:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?