1d2236c386bbd288c3d8a6b6a6024b816452b470
[freeside.git] / FS / FS / cdr / zintel.pm
1 package FS::cdr::zintel;
2
3 use strict;
4 use vars qw( @ISA %info $tmp_mon $tmp_mday $tmp_year );
5 use Time::Local;
6 use FS::cdr qw(_cdr_date_parser_maker);
7 use Date::Parse;
8
9 @ISA = qw(FS::cdr);
10
11 %info = (
12   'name'          => 'Zintel',
13   'weight'        => 123,
14   'header'        => 1,
15   'import_fields' => [
16
17         'accountcode',  #customer
18         'src',          #anumber
19         'dst',          #bnumber
20                  sub { my ($cdr, $calldate) = @_;
21                         $cdr->set('calldate', $calldate);
22
23                         $calldate =~ /^(\d{2})\/(\d{2})\/(\d{4})\s*(\d{2}):(\d{2}):(\d{2})$/
24                                 or die "unparseable date: $calldate";
25                         my $tmp_date = "$2/$1/$3 $4:$5:$6";
26
27                         $tmp_date = str2time($tmp_date);
28                         $cdr->set('startdate', $tmp_date);
29
30                   },    #DateTime
31         'billsec',      #duration
32         skip(3),        #calltype
33                         #status
34                         #product
35         'upstream_price',#sellprice
36         skip(1),        #fromregion
37         'upstream_src_regionname',              #fromarea
38         skip(2),        #fromc2city
39                         #toregion
40         'upstream_dst_regionname',              #toarea
41         skip(2),        #toc2city
42                         #group_label
43   ],
44 );
45
46 sub skip { map {''} (1..$_[0]) }
47
48 1;
49