You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ngcp-panel/share/tools/dialogic-test-client.pl

113 lines
2.8 KiB

use NGCP::Panel::Utils::DialogicImg;
use strict;
use warnings;
use DDP;
use Data::Dumper;
exit if try_parse_file(@ARGV);
my $resp;
my $test = NGCP::Panel::Utils::DialogicImg->new(
server => 'https://10.15.20.149',
);
p $test->login( 'dialogic', 'Dial0gic' );
$resp = $test->obtain_lock();
p $resp->code;
print "LOGGED IN, LOCK OBTAINED ############################\n";
my $result = $test->create_all_sipsip({
ip_sip => '10.15.21.92',
ip_rtp => '10.15.22.11',
ip_client => '10.15.20.144',
in_codecs => ['G711 ulaw', 'G711 alaw', 'G729', 'AMR'],
out_codecs => ['G711 ulaw', 'G711 alaw', 'G729', 'AMR'],
ss7_opc => '1-1-1',
ss7_apc => '2-2-2', # adjacent point code
ss7_dpc => '2-2-2',
ip_nfs_server => '192.168.51.45',
nfs_path => '//export/users/dialogic2',
snmp_system_name => 'Dialogic2',
snmp_system_location => 'foobar',
snmp_system_contact => 'foobar',
snmp_community_name => 'bar',
use_optical_spans => 1,
is_isdn_userside => 1,
},
2,
);
exit;
# $resp = $test->delete_all_bn2020;
# $resp = $test->delete_all_bn2020;
# p $resp->code;
# exit 0;
# $resp = $test->reboot_and_wait;
# p $resp;
# sleep 2;
# exit;
# print "login again\n";
# p $test->login( 'dialogic', 'Dial0gic' );
# $resp = $test->get( '/oamp/configuration/objects', { appid => $test->appid } );
# $resp = $test->obtain_lock();
# p $resp->code;
# print_documentation_md($test);
# $resp = $test->get_config;
# p $resp;
# #p $test->classinfo;
# exit;
# $test->pids->{facility} = 10008;
# $resp = $test->create_ds1_spans;
# p $resp;
# p $resp->data;
# exit;
sub print_documentation_md {
my ($api) = @_;
my $classinfo = $api->build_documentation;
for my $class (keys %{ $classinfo }) {
my $parent = $classinfo->{$class}{parent};
my $options = $classinfo->{$class}{options};
print "\n#$class\n\n";
print "This is a child of `$parent`\n\n";
print "## Options\n\n";
print "Name|Description|Default|Alternatives\n";
print "----|-----------|-------|------------\n";
for my $o (@{ $options }) {
my ( $name, $displayname, $default, $choices )
= @{$o}{ 'name', 'displayname', 'default', 'choices' };
my $choices_str = $choices && @{$choices}
? join( ", ", map {"`$_`"} @{$choices} ) : '';
if ($default) {
$default = "`$default`";
}
print "`$name` | $displayname | $default | $choices_str \n";
}
}
return;
}
sub try_parse_file {
return unless ($#ARGV >= 1);
print "parsing $ARGV[0]\n";
use Data::Serializer::Raw;
my $s = Data::Serializer::Raw->new(serializer => 'XML::Simple');
print Dumper $s->retrieve($ARGV[0]);
print "\n";
return 1;
}
1;