X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcdr%2Fbroadsoft.pm;h=a6f4d01c09ba631db423d5458af1cecf6f51fe19;hb=ff27c3f36240aee48ed50153dd5d8fe3ac3f2443;hp=559aa2859be70ba234abddf6d678e68ada1056ff;hpb=c77ff7d09126d7040e5f9aa6e0856f6359d91427;p=freeside.git diff --git a/FS/FS/cdr/broadsoft.pm b/FS/FS/cdr/broadsoft.pm index 559aa2859..a6f4d01c0 100644 --- a/FS/FS/cdr/broadsoft.pm +++ b/FS/FS/cdr/broadsoft.pm @@ -23,7 +23,7 @@ use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker ); '' }, # 3: type skip(2), - dcontext, # 6: direction + 'dcontext', # 6: direction trim('src'), # 7: callingNumber skip(1), trim('dst'), # 9: calledNumber @@ -37,7 +37,13 @@ use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker ); _cdr_date_parser_maker('answerdate'), # 13: answerTime _cdr_date_parser_maker('enddate'), # 14: releaseTime skip(17), - accountcode, # 32: group + sub { my($cdr, $accountcode) = @_; + if ($cdr->is_tollfree){ + my $dst = substr($cdr->dst,0,32); + $cdr->set('accountcode', $dst); + } else { + $cdr->set('accountcode', $accountcode); + }}, ], );