1 package FS::cdr::freeside_description_default;
4 use vars qw( @ISA %info $tmp_mon $tmp_mday $tmp_year );
11 'name' => 'Freeside default with description field as destination',
15 'charged_party', # Billed number
19 sub { my($cdr, $date) = @_;
20 $date =~ /^(\d\d(\d\d)?)\/(\d{1,2})\/(\d{1,2})$/
21 or die "unparsable date: $date"; #maybe we shouldn't die...
22 ($tmp_mday, $tmp_mon, $tmp_year) = ( $4, $3-1, $1 );
25 # Time (HH:MM:SS (AM/PM))
26 sub { my($cdr, $time) = @_;
27 $time =~ /^(\d{1,2}):(\d{1,2}):(\d{1,2}) (AM|PM)$/
28 or die "unparsable time: $time"; #maybe we shouldn't die...
30 $hour += 12 if $4 eq 'PM' && $hour != 12;
31 $hour = 0 if $4 eq 'AM' && $hour == 12;
33 timelocal($3, $2, $hour ,$tmp_mday, $tmp_mon, $tmp_year)
39 my($cdr, $number) = @_;
40 $number =~ /(\+|)(\d+)\s(\d+)$/
41 or die "unparsable number: $number"; #maybe we shouldn't die...
45 'description', # Destination (regionname)
49 my($cdr, $duration) = @_;
50 $duration =~ /^(\d{1,3})m (\d{1,2})s$/
51 or die "unparsable duration: $duration"; #maybe we shouldn't die...
59 my($cdr, $amount) = @_;
61 $cdr->upstream_price($amount);