diff options
author | Mark Wells <mark@freeside.biz> | 2016-06-14 16:45:38 -0700 |
---|---|---|
committer | Mark Wells <mark@freeside.biz> | 2016-06-14 16:45:52 -0700 |
commit | 9da45db27c29664242eda042d1457e8d69367c20 (patch) | |
tree | f806ee4049a39a2d4e0f5dd78b4293f4efb4fc75 | |
parent | 608de5fe8395ef4c8d629340a85605cb64b90d84 (diff) |
in a2billing CDR import, parse destination number out of calledstation string, #71205
-rw-r--r-- | FS/bin/freeside-cdr-a2billing-import | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/FS/bin/freeside-cdr-a2billing-import b/FS/bin/freeside-cdr-a2billing-import index a8469e744..aa7fa4a61 100644 --- a/FS/bin/freeside-cdr-a2billing-import +++ b/FS/bin/freeside-cdr-a2billing-import @@ -120,7 +120,13 @@ my $updates = 0; my $row; while ( $row = $sth->fetchrow_hashref ) { - $row->{calledstation} =~ s/^1//; + my $dst = $row->{calledstation}; + my $dst_ip_addr = ''; + if ($dst =~ m[^SIP/(\d+)@(.*)$] ) { + $dst = $1; + $dst_ip_addr = $2; + } + $dst =~ s/^1//; $row->{src} =~ s/^1//; my $cdr = FS::cdr->new ({ uniqueid => $row->{sessionid}, @@ -129,8 +135,10 @@ while ( $row = $sth->fetchrow_hashref ) { enddate => time2str($row->{stoptime}), duration => $row->{sessiontime}, billsec => $row->{real_sessiontime}, - dst => $row->{calledstation}, + dst => $dst, src => $row->{src}, + dst_ip_addr => $dst_ip_addr, + dstchannel => $row->{calledstation}, charged_party => $row->{username}, upstream_rateplanid => $row->{id_tariffplan}, upstream_rateid => $row->{id_ratecard}, # I think? |