[freeside-commits] branch FREESIDE_4_BRANCH updated. cc7fbf9f532b64587eed1244218b6611a72d004f

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


The branch, FREESIDE_4_BRANCH has been updated
       via  cc7fbf9f532b64587eed1244218b6611a72d004f (commit)
      from  18271c2a6157e26b17002c6a3c65a934e36e05c3 (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 cc7fbf9f532b64587eed1244218b6611a72d004f
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon May 23 14:43:42 2022 -0700

    obey otherPartyNamePresentationIndicator and deal with broadsoft's awful non-standard quoting, RT#86028, RT#81941

diff --git a/FS/FS/cdr/broadsoft.pm b/FS/FS/cdr/broadsoft.pm
index d9530bb13..01755a8bf 100644
--- a/FS/FS/cdr/broadsoft.pm
+++ b/FS/FS/cdr/broadsoft.pm
@@ -23,6 +23,15 @@ use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker );
   sep_char => ',',
   disabled => 0,
 
+  row_callback => sub {
+    my $line = shift;
+    #try to deal with broadsoft's awful non-standard CSV escaping :/
+    $line =~ s/\\,/ /g;  # \, becomes just a space... not entirely accurate,
+                          #  but better than skewing data into the wrong fields
+    $line =~ s/\\\\/\\/g; # undo double backslashes?  none in my test data
+    $line;
+  },
+
   import_fields => [
 
     # 1: recordId
@@ -119,7 +128,13 @@ use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker );
     #122: otherPartyName
     'clid',
 
-    skip(23), #123-145 inclusive
+    #123: otherPartyNamePresentationIndicator
+    sub {
+      my( $cdr, $data ) = @_;
+      $cdr->clid( $data ) unless $data =~ /^Public$/i;
+    },
+
+    skip(22), #124-145 inclusive
 
     # 146: chargedNumber
     'charged_party',

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

Summary of changes:
 FS/FS/cdr/broadsoft.pm | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)




More information about the freeside-commits mailing list