1 |
#!/usr/bin/perl -w |
2 |
|
3 |
# cpe-queue.pl |
4 |
# |
5 |
# 11/12/2007 10:03:53 PM CET <> |
6 |
|
7 |
use strict; |
8 |
|
9 |
use lib './lib'; |
10 |
use CWMP::Queue; |
11 |
use Getopt::Long; |
12 |
|
13 |
my $debug = 0; |
14 |
my $protocol_dump = 1; |
15 |
|
16 |
GetOptions( |
17 |
'debug+' => \$debug, |
18 |
'protocol-dump!' => \$protocol_dump, |
19 |
); |
20 |
|
21 |
my $id = shift @ARGV || die "usage: $0 CPE_id [--protocol-dump]\n"; |
22 |
|
23 |
$id =~ s!^.*queue/+!!; |
24 |
$id =~ s!/+$!!; #! |
25 |
|
26 |
die "ID isn't valid: $id\n" unless $id =~ m/^\w+$/; |
27 |
|
28 |
my $q = CWMP::Queue->new({ id => $id, debug => $debug }); |
29 |
|
30 |
if ( $protocol_dump ) { |
31 |
|
32 |
warn "generating dump of xml protocol with CPE\n"; |
33 |
|
34 |
$q->enqueue( 'GetRPCMethods' ); |
35 |
$q->enqueue( 'GetParameterNames' ); |
36 |
|
37 |
# $q->enqueue( 'GetParameterNames', 'InternetGatewayDevice.DeviceInfo.SerialNumber', 0 ); |
38 |
# $q->enqueue( 'GetParameterNames', 'InternetGatewayDevice.DeviceInfo.', 1 ); |
39 |
|
40 |
$q->enqueue( 'GetParameterValues', |
41 |
'InternetGatewayDevice.DeviceInfo.SerialNumber', |
42 |
'InternetGatewayDevice.DeviceInfo.VendorConfigFile.', |
43 |
'InternetGatewayDevice.DeviceInfo.X_000E50_Country', |
44 |
); |
45 |
$q->enqueue( 'SetParameterValues', |
46 |
'InternetGatewayDevice.DeviceInfo.ProvisioningCode' => 'test provision', |
47 |
# 'InternetGatewayDevice.DeviceInfo.X_000E50_Country' => 1, |
48 |
); |
49 |
|
50 |
# $q->enqueue( 'Reboot' ); |
51 |
|
52 |
} |
53 |
|