MT#18663 MT#20893 row bulk processing framework WIP #15

+option to trim call forward destination numbers

Change-Id: I64ba5b62b94033c53f9f83b39a9c8319c69a6641
changes/80/7580/1
Rene Krenn 10 years ago
parent a2d365e3df
commit a2892c68dc

@ -25,7 +25,8 @@ use NGCP::BulkProcessor::Projects::Migration::IPGallery::Settings qw(
$cft_timeouts
$cfna_priorities
$cfna_timeouts
$cfnumber_pattern
$cfnumber_exclude_pattern
$cfnumber_trim_pattern
$ringtimeout
);
@ -454,15 +455,22 @@ sub _prepare_callforward {
foreach my $cf_option_set_item (@$cf_option_set_items) {
if (defined $cf_option_set_item and $cf_option_set_item->{delta} ne
$NGCP::BulkProcessor::Projects::Migration::IPGallery::Dao::import::FeatureOptionSetItem::deleted_delta) {
if (not defined $cfnumber_pattern or $cf_option_set_item->{optionsetitem} =~ $cfnumber_pattern) {
if (defined $cfnumber_exclude_pattern and $cf_option_set_item->{optionsetitem} =~ $cfnumber_exclude_pattern) {
_warn($context,"($context->{rownum}) " . $cf_option_set_item->{option} . " '" . $cf_option_set_item->{optionsetitem} . "' of subscriber " . $context->{cli} . ': exclude pattern match');
} else {
my $destination = $cf_option_set_item->{optionsetitem};
if (defined $cfnumber_trim_pattern) {
$destination =~ s/$cfnumber_trim_pattern//;
if ($cf_option_set_item->{optionsetitem} ne $destination) {
_info($context,"($context->{rownum}) " . $cf_option_set_item->{option} . " '" . $cf_option_set_item->{optionsetitem} . "' of subscriber " . $context->{cli} . ": trim pattern match, changed to to '$destination'");
}
}
push(@destinations, {
destination => $cf_option_set_item->{optionsetitem},
destination => $destination,
priority => (defined $priorities->[$i] ? $priorities->[$i] : $priorities->[-1]),
timeout => (defined $timeouts->[$i] ? $timeouts->[$i] : $timeouts->[-1]),
});
$i++;
} else {
_warn($context,"($context->{rownum}) " . $cf_option_set_item->{option} . " '" . $cf_option_set_item->{optionsetitem} . "' of subscriber " . $context->{cli} . ' does not match pattern for call forwards, skipping');
}
}
}

@ -113,7 +113,8 @@ our @EXPORT_OK = qw(
$cft_timeouts
$cfna_priorities
$cfna_timeouts
$cfnumber_pattern
$cfnumber_exclude_pattern
$cfnumber_trim_pattern
$ringtimeout
$create_lnps_multithreading
@ -203,7 +204,8 @@ our $cft_priorities = [];
our $cft_timeouts = [];
our $cfna_priorities = [];
our $cfna_timeouts = [];
our $cfnumber_pattern = undef;
our $cfnumber_exclude_pattern = undef;
our $cfnumber_trim_pattern = undef;
our $ringtimeout = undef;
our $create_lnps_multithreading = $enablemultithreading;
@ -309,8 +311,11 @@ sub update_settings {
$cft_timeouts = [ split_tuple($data->{cft_timeouts}) ] if exists $data->{cft_timeouts};
$cfna_priorities = [ split_tuple($data->{cfna_priorities}) ] if exists $data->{cfna_priorities};
$cfna_timeouts = [ split_tuple($data->{cfna_timeouts}) ] if exists $data->{cfna_timeouts};
$cfnumber_pattern = $data->{cfnumber_pattern} if exists $data->{cfnumber_pattern};
($regexp_result,$cfnumber_pattern) = parse_regexp($cfnumber_pattern,$configfile);
$cfnumber_exclude_pattern = $data->{cfnumber_exclude_pattern} if exists $data->{cfnumber_exclude_pattern};
($regexp_result,$cfnumber_exclude_pattern) = parse_regexp($cfnumber_exclude_pattern,$configfile);
$result &= $regexp_result;
$cfnumber_trim_pattern = $data->{cfnumber_trim_pattern} if exists $data->{cfnumber_trim_pattern};
($regexp_result,$cfnumber_trim_pattern) = parse_regexp($cfnumber_trim_pattern,$configfile);
$result &= $regexp_result;
$ringtimeout = $data->{ringtimeout} if exists $data->{ringtimeout};
if (not defined $ringtimeout or $ringtimeout <= 0) {

@ -58,6 +58,8 @@ cft_timeouts = 300
cfna_priorities = 1
cfna_timeouts = 300
ringtimeout = 20
#cfnumber_exclude_pattern =
cfnumber_trim_pattern = ^05\d{2}
create_lnps_multithreading = 1
#create_lnps_numofthreads = 6

Loading…
Cancel
Save