[freeside-commits] branch FREESIDE_4_BRANCH updated. 18271c2a6157e26b17002c6a3c65a934e36e05c3

Ivan Kohler ivan at freeside.biz
Mon May 23 14:42:21 PDT 2022


The branch, FREESIDE_4_BRANCH has been updated
       via  18271c2a6157e26b17002c6a3c65a934e36e05c3 (commit)
      from  e5683945ae51a6f14ad62facfd60357aff196f13 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 18271c2a6157e26b17002c6a3c65a934e36e05c3
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon May 23 14:42:20 2022 -0700

    add noskip_dcontext_tollfree option, RT#86028, RT#81941

diff --git a/FS/FS/part_pkg/voip_cdr.pm b/FS/FS/part_pkg/voip_cdr.pm
index a73683ad5..a9d8ee8f9 100644
--- a/FS/FS/part_pkg/voip_cdr.pm
+++ b/FS/FS/part_pkg/voip_cdr.pm
@@ -196,6 +196,10 @@ tie my %accountcode_tollfree_field, 'Tie::IxHash',
     'skip_dcontext' => { 'name' => 'Do not charge for CDRs where dcontext is set to any of these (comma-separated) values: ',
                        },
 
+    'noskip_dcontext_tollfree' => { 'name' => 'Do charge for CDRs where dcontext is set to any of the specified values, if the CDR is tollfree',
+                                                  'type' => 'checkbox',
+                                                },
+
     'skip_dcontext_prefix' => { 'name' => 'Do not charge for CDRs where dcontext starts with: ',
                        },
 
@@ -351,7 +355,8 @@ tie my %accountcode_tollfree_field, 'Tie::IxHash',
                        use_cdrtypenum ignore_cdrtypenum
                        use_calltypenum ignore_calltypenum
                        ignore_disposition disposition_in disposition_prefix
-                       skip_dcontext skip_dcontext_prefix skip_dcontext_suffix
+                       skip_dcontext noskip_dcontext_tollfree
+                       skip_dcontext_prefix skip_dcontext_suffix
                        skip_dst_prefix 
                        skip_dstchannel_prefix skip_src_length_more 
                        noskip_src_length_accountcode_tollfree
@@ -627,7 +632,10 @@ sub check_chargable {
 
   return "dcontext IN ( ". $self->option_cacheable('skip_dcontext'). " )"
     if $self->option_cacheable('skip_dcontext') =~ /\S/
-    && grep { $cdr->dcontext eq $_ } split(/\s*,\s*/, $self->option_cacheable('skip_dcontext'));
+    && grep { $cdr->dcontext eq $_ } split(/\s*,\s*/, $self->option_cacheable('skip_dcontext'))
+    && ! (    $self->option_cacheable('noskip_dcontext_tollfree')
+           && $cdr->is_tollfree
+         );
 
   my $len_dcontext_prefix =
     length($self->option_cacheable('skip_dcontext_prefix'));

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/part_pkg/voip_cdr.pm | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)




More information about the freeside-commits mailing list