projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add some debugging to voip_sqlradacct
[freeside.git]
/
FS
/
FS
/
part_pkg
/
voip_sqlradacct.pm
diff --git
a/FS/FS/part_pkg/voip_sqlradacct.pm
b/FS/FS/part_pkg/voip_sqlradacct.pm
index
0b3250a
..
3f044eb
100644
(file)
--- a/
FS/FS/part_pkg/voip_sqlradacct.pm
+++ b/
FS/FS/part_pkg/voip_sqlradacct.pm
@@
-9,7
+9,7
@@
use FS::rate_prefix;
@ISA = qw(FS::part_pkg);
@ISA = qw(FS::part_pkg);
-$DEBUG =
0
;
+$DEBUG =
1
;
%info = (
'name' => 'VoIP rating by plan of CDR records in an SQL RADIUS radacct table',
%info = (
'name' => 'VoIP rating by plan of CDR records in an SQL RADIUS radacct table',
@@
-26,8
+26,11
@@
$DEBUG = 0;
'select_key' => 'ratenum',
'select_label' => 'ratename',
},
'select_key' => 'ratenum',
'select_label' => 'ratename',
},
+ 'ignore_unrateable' => { 'name' => 'Ignore calls for which not rate prefix can be found (otherwise they are fatal)',
+ 'type' => 'checkbox',
+ },
},
},
- 'fieldorder' => [qw( setup_fee recur_flat ratenum )],
+ 'fieldorder' => [qw( setup_fee recur_flat ratenum
ignore_unrateable
)],
'weight' => 40,
);
'weight' => 40,
);
@@
-87,6
+90,8
@@
sub calc_recur {
$countrycode = '1';
}
$countrycode = '1';
}
+ warn "rating call to +$countrycode $dest" if $DEBUG;
+
#find a rate prefix, first look at most specific (4 digits) then 3, etc.,
# finally trying the country code only
my $rate_prefix = '';
#find a rate prefix, first look at most specific (4 digits) then 3, etc.,
# finally trying the country code only
my $rate_prefix = '';
@@
-100,8
+105,15
@@
sub calc_recur {
'countrycode' => $countrycode,
'npa' => '',
});
'countrycode' => $countrycode,
'npa' => '',
});
- die "Can't find rate for call to countrycode $countrycode number $dest\n"
- unless $rate_prefix;
+
+ unless ( $rate_prefix ) {
+ if ( $self->option('ignore_unrateable') ) {
+ warn " skipping unrateable call to +$countrycode $dest";
+ next;
+ } else {
+ die "Can't find rate for call to +$countrycode $dest\n"
+ }
+ }
my $regionnum = $rate_prefix->regionnum;
my $regionnum = $rate_prefix->regionnum;
@@
-110,6
+122,10
@@
sub calc_recur {
'dest_regionnum' => $regionnum,
} );
'dest_regionnum' => $regionnum,
} );
+ warn " found rate for regionnum $regionnum ".
+ "and rate detail $rate_detail"
+ if $DEBUG;
+
###
# find the price and add detail to the invoice
###
###
# find the price and add detail to the invoice
###
@@
-133,6
+149,15
@@
sub calc_recur {
$charges += $charge;
}
$charges += $charge;
}
+ warn " adding details on charge to invoice: ".
+ join(' - ',
+ "+$countrycode $dest",
+ $rate_prefix->rate_region->regionname,
+ $minutes.'m',
+ '$'.$charge,
+ )
+ if $DEBUG;
+
push @$details,
#[
join(' - ',
push @$details,
#[
join(' - ',