From 463b34a31c44e915b4c915c09a48c78691b46925 Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 25 May 2011 23:25:29 +0000 Subject: [PATCH] fix to Enswitch CDR import, #11613 --- FS/FS/cdr/enswitch.pm | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/FS/FS/cdr/enswitch.pm b/FS/FS/cdr/enswitch.pm index 64518af6d..1475d8dc1 100644 --- a/FS/FS/cdr/enswitch.pm +++ b/FS/FS/cdr/enswitch.pm @@ -23,11 +23,14 @@ use FS::cdr qw(_cdr_min_parser_maker); 'clid', #Calling name skip(1), #Called type 'dst', #Called number - skip(23), #Destination customer, Destination type + skip(5), #Destination customer, Destination type #Destination number #Destination group ID, Destination group name, - #Inbound calling type, Inbound calling number, - #Inbound called type, Inbound called number, + 'in_calling_type', #Inbound calling type, + \&in_calling_num, #Inbound calling number, + '', #Inbound called type, + \&in_called_num, #Inbound called number, + skip(14), #Inbound destination type, Inbound destination number, #Outbound calling type, Outbound calling number, #Outbound called type, Outbound called number, @@ -46,4 +49,14 @@ use FS::cdr qw(_cdr_min_parser_maker); sub skip { map {''} (1..$_[0]) } +sub in_calling_num { + my ($record, $data) = @_; + $record->src($data) if ( ($record->in_calling_type || '') eq 'external' ); +} + +sub in_called_num { + my ($record, $data) = @_; + $record->dst($data) if ( ($record->in_calling_type || '') eq 'external' ); +} + 1; -- 2.20.1