X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcdr%2Fnetsapiens.pm;h=cf5f8d3e1b965f6af081ebbe3bc7d95c918ff7aa;hb=674cb2d9d7105f4cc2871539b2e9f7088cdaa750;hp=bcaa3496d51ca9b89e3da74936acd79df3b2370b;hpb=3d0a1bb06b895c5be6e3f0517d355442a6b1e125;p=freeside.git diff --git a/FS/FS/cdr/netsapiens.pm b/FS/FS/cdr/netsapiens.pm index bcaa3496d..cf5f8d3e1 100644 --- a/FS/FS/cdr/netsapiens.pm +++ b/FS/FS/cdr/netsapiens.pm @@ -10,16 +10,16 @@ use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker ); 'weight' => 160, 'header' => 1, #0 default, set to 1 to ignore the first line, or # to higher numbers to ignore that number of lines - 'type' => 'csv', #csv (default), fixedlength or xls + 'type' => 'csv', 'sep_char' => ',', #for csv, defaults to , 'disabled' => 0, #0 default, set to 1 to disable 'import_fields' => [ - + sub { my ($cdr, $direction) = @_; - if ($direction =~ /^o/) { # 'origination' + if ($direction =~ /^t/) { # 'origination' # leave src and dst as they are - } elsif ($direction =~ /^t/) { + } elsif ($direction =~ /^o/) { my ($local, $remote) = ($cdr->src, $cdr->dst); $cdr->set('dst', $local); $cdr->set('src', $remote); @@ -28,7 +28,7 @@ use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker ); '', #Domain '', #user 'src', #local party (src/dst, based on direction) - _cdr_date_parser_maker('startddate'), + _cdr_date_parser_maker('startdate'), _cdr_date_parser_maker('answerdate'), sub { my ($cdr, $duration) = @_; $cdr->set('duration', $duration); @@ -37,14 +37,15 @@ use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker ); if $cdr->answerdate; }, 'dst', #remote party - '', #dialed number + sub { my ($cdr, $dialednum) = @_; + $cdr->set('dst',$dialednum) if $dialednum =~ /^(\+?1)?8(8|([02-7])\3)/; + }, #dialed number 'uniqueid', #CallID (timestamp + '-' + 32 char hex string) - 'src_ip_addr', - 'dst_ip_addr', + '', + '', 'disposition', ], ); 1; -