organize and document scripts collection
[perl-cwmp.git] / scripts / tcli.pl
1 #!/usr/bin/perl -w
2
3 use strict;
4 use Expect;
5 use Net::Telnet;
6
7 my $modem = '10.0.0.138';
8 my @commands = (
9 ':system config led=flash',
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;
21
22 my $telnet = new Net::Telnet( $modem ) or die "Cannot telnet to $modem: $!\n";
23 my $exp = Expect->exp_init($telnet);
24 $exp->debug( $debug );
25
26 $exp->log_stdout( 1 );
27
28 my ( $username, $password ) = ('Administrator','');
29 my $timeout = 3;
30
31 $exp->expect($timeout, 'Username : ');
32 $exp->send("$username\r\n");
33 $exp->expect($timeout, 'Password :');
34 $exp->send("$password\r\n");
35 $exp->expect($timeout, '=>');
36
37 foreach my $cmd ( @commands ) {
38         $exp->send( "$cmd\r\n" );
39         $exp->expect($timeout, '=>');
40 }
41
42 $exp->send( "exit\r\n" );
43 $exp->soft_close();
44