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.
bulk-processor/lib/NGCP/BulkProcessor/Projects/t/test_api.pl

135 lines
4.7 KiB

#!/usr/bin/perl
use warnings;
use strict;
use File::Basename;
use Cwd;
use lib Cwd::abs_path(File::Basename::dirname(__FILE__) . '/../../../../');
use NGCP::BulkProcessor::LoadConfig qw(
load_config
);
use NGCP::BulkProcessor::RestRequests::Trunk::SystemContacts qw();
use NGCP::BulkProcessor::RestRequests::Trunk::Contracts qw();
use NGCP::BulkProcessor::RestRequests::Trunk::Resellers qw();
use NGCP::BulkProcessor::RestRequests::Trunk::BillingProfiles qw();
use NGCP::BulkProcessor::RestRequests::Trunk::BillingZones qw();
use NGCP::BulkProcessor::RestRequests::Trunk::BillingFees qw();
use NGCP::BulkProcessor::RestRequests::Trunk::Domains qw();
use NGCP::BulkProcessor::RestRequests::Trunk::CustomerContacts qw();
use NGCP::BulkProcessor::RestRequests::Trunk::Customers qw();
use NGCP::BulkProcessor::RestRequests::Trunk::Subscribers qw();
load_config('config.cfg');
{
my $t = time();
my $systemcontact_id = NGCP::BulkProcessor::RestRequests::Trunk::SystemContacts::create_item({
email => "test$t\@system.com",
});
my $contract_id = NGCP::BulkProcessor::RestRequests::Trunk::Contracts::create_item({
contact_id => $systemcontact_id,
billing_profile_id => 1, #default profile id
type => 'reseller',
status => 'active',
});
my $reseller_id = NGCP::BulkProcessor::RestRequests::Trunk::Resellers::create_item({
contract_id => $contract_id,
name => "reseller$t",
status => 'active',
});
my $billing_profile_id = NGCP::BulkProcessor::RestRequests::Trunk::BillingProfiles::create_item({
handle => "profile$t",
name => "profile$t",
reseller_id => $reseller_id,
});
my $billing_zone_id = NGCP::BulkProcessor::RestRequests::Trunk::BillingZones::create_item({
billing_profile_id => $billing_profile_id,
zone => "zone$t",
});
my $billing_fee_id = NGCP::BulkProcessor::RestRequests::Trunk::BillingFees::create_item({
billing_profile_id => $billing_profile_id,
billing_zone_id => $billing_zone_id,
direction => 'out',
destination => '.*',
onpeak_init_rate => 10,
onpeak_init_interval => 1,
onpeak_follow_rate => 5,
onpeak_follow_interval => 2,
offpeak_init_rate => 8,
offpeak_init_interval => 1,
offpeak_follow_rate => 4,
offpeak_follow_interval => 2,
});
my $success = NGCP::BulkProcessor::RestRequests::Trunk::BillingFees::delete_item($billing_fee_id);
my $contract = NGCP::BulkProcessor::RestRequests::Trunk::Contracts::set_item($contract_id,{
contact_id => $systemcontact_id,
billing_profile_id => $billing_profile_id,
type => 'reseller',
status => 'active',
});
$contract = NGCP::BulkProcessor::RestRequests::Trunk::Contracts::update_item($contract_id,{
contact_id => $systemcontact_id,
billing_profile_id => $billing_profile_id,
#type => 'reseller',
status => 'active',
});
my $domain_id = NGCP::BulkProcessor::RestRequests::Trunk::Domains::create_item({
domain => "test$t.com",
reseller_id => $reseller_id,
});
my $customercontact_id = NGCP::BulkProcessor::RestRequests::Trunk::CustomerContacts::create_item({
email => "test$t\@customer.com",
reseller_id => $reseller_id,
});
my $customer_id = NGCP::BulkProcessor::RestRequests::Trunk::Customers::create_item({
contact_id => $customercontact_id,
billing_profile_id => $billing_profile_id,
status => "active",
type => "sipaccount",
});
my $subscriber_id = NGCP::BulkProcessor::RestRequests::Trunk::Subscribers::create_item({
customer_id => $customer_id,
domain_id => $domain_id,
username => "subscriber$t",
password => "subscriber$t",
primary_number => { cc => '99', ac=> '', sn => '12345678' },
});
$success = NGCP::BulkProcessor::RestRequests::Trunk::Subscribers::delete_item($subscriber_id);
my $customer = NGCP::BulkProcessor::RestRequests::Trunk::Customers::update_item($customer_id,{
status => "terminated",
});
$customer_id = NGCP::BulkProcessor::RestRequests::Trunk::Customers::create_item({
contact_id => $customercontact_id,
billing_profile_id => $billing_profile_id,
status => "active",
type => "sipaccount",
});
$subscriber_id = NGCP::BulkProcessor::RestRequests::Trunk::Subscribers::create_item({
customer_id => $customer_id,
domain_id => $domain_id,
username => "subscriber$t",
password => "subscriber$t",
primary_number => { cc => '99', ac=> '', sn => '12345678' },
});
print "blah";
}
exit;