Earthlink CDR's import additional info
[freeside.git] / FS / FS / cdr / earthlink.pm
1 package FS::cdr::earthlink;
2
3 use strict;
4 use vars qw( @ISA %info $date);
5 use Time::Local;
6 use FS::cdr qw(_cdr_date_parser_maker _cdr_min_parser_maker);
7 use Date::Parse;
8
9 @ISA = qw(FS::cdr);
10
11 %info = (
12   'name'          => 'Earthlink',
13   'weight'        => 120,
14   'header'        => 1,
15   'import_fields' => [
16
17         'accountcode',                  #Account number
18               skip(2),                  #SERVICE LOC / BILL NUMBER 
19         sub { my($cdr, $date) = @_;  
20         $date;  
21         },                              #date 
22         sub { my($cdr, $time) = @_;
23
24         my $datetime = $date. " ". $time;
25         $cdr->set('startdate', $datetime );
26         },                              #time
27         skip(1),                        #TollFreeNumber
28         sub { my($cdr, $src) = @_;      
29         $src =~ s/\D//g;
30         $cdr->set('src', $src);
31         },                              #ORIG NUMBER
32         skip(2),                        #ORIG CITY/ORIGSTATE
33         sub { my($cdr, $dst) = @_;
34         $dst =~ s/\D//g;
35         $cdr->set('dst', $dst);
36         },                              #TERM NUMBER
37         skip(2),                        #TERM CITY / TERM STATE
38         _cdr_min_parser_maker,          #MINUTES
39         skip(1),                        #AMOUNT
40         disposition,                    #Call Type
41   ],
42 );
43
44 sub skip { map {''} (1..$_[0]) }
45
46 1;
47