7 |
my $modem = '192.168.1.254'; |
my $modem = '192.168.1.254'; |
8 |
my @commands = ( |
my @commands = ( |
9 |
':system config led=flash', |
':system config led=flash', |
|
':system config led=red', |
|
|
':system config led=off', |
|
|
'exit', |
|
10 |
); |
); |
11 |
|
|
12 |
|
while(<>) { |
13 |
|
chomp; |
14 |
|
next if (/^#/ || /^\s*$/); |
15 |
|
push @commands, $_; |
16 |
|
} |
17 |
|
|
18 |
|
push @commands, ':system config led=off'; |
19 |
|
|
20 |
my $debug = 0; |
my $debug = 0; |
21 |
|
|
22 |
my $telnet = new Net::Telnet( $modem ) or die "Cannot telnet to $modem: $!\n"; |
my $telnet = new Net::Telnet( $modem ) or die "Cannot telnet to $modem: $!\n"; |
23 |
my $exp = Expect->exp_init($telnet); |
my $exp = Expect->exp_init($telnet); |
24 |
$exp->debug( $debug ); |
$exp->debug( $debug ); |
25 |
|
|
26 |
|
$exp->log_stdout( 1 ); |
27 |
|
|
28 |
my ( $username, $password ) = ('Administrator',''); |
my ( $username, $password ) = ('Administrator',''); |
29 |
my $timeout = 10; |
my $timeout = 10; |
30 |
|
|
|
my $spawn_ok; |
|
31 |
$exp->expect($timeout, 'Username : '); |
$exp->expect($timeout, 'Username : '); |
32 |
$exp->send("$username\r\n"); |
$exp->send("$username\r\n"); |
33 |
$exp->expect($timeout, 'Password :'); |
$exp->expect($timeout, 'Password :'); |
35 |
$exp->expect($timeout, '=>'); |
$exp->expect($timeout, '=>'); |
36 |
|
|
37 |
foreach my $cmd ( @commands ) { |
foreach my $cmd ( @commands ) { |
|
warn "sending >> $cmd\n"; |
|
38 |
$exp->send( "$cmd\r\n" ); |
$exp->send( "$cmd\r\n" ); |
39 |
$exp->expect($timeout, '=>'); |
$exp->expect($timeout, '=>'); |
40 |
} |
} |
41 |
|
|
42 |
|
$exp->send( "exit\r\n" ); |
43 |
|
$exp->soft_close(); |
44 |
|
|