package FS::cdr::cia;
use strict;
-use vars qw( @ISA %info $date $tmp_mday $tmp_mon $tmp_year);
+use vars qw( @ISA %info );
use FS::cdr qw(_cdr_date_parser_maker);
-use Time::Local;
@ISA = qw(FS::cdr);
'weight' => 510,
'header' => 1,
'type' => 'csv',
- 'sep_char' => "|",
+ 'sep_char' => "\t",
'import_fields' => [
- 'accountcode',
- skip(2), # First and last name
-
- sub { my($cdr, $date) = @_;
- $date =~ /^(\d{1,2})\/(\d{1,2})\/(\d\d(\d\d)?)$/
- or die "unparsable date: $date"; #maybe we shouldn't die...
- ($tmp_mday, $tmp_mon, $tmp_year) = ( $2, $1-1, $3 );
- }, #Date
-
- sub { my($cdr, $time) = @_;
- #my($sec, $min, $hour, $mday, $mon, $year)= localtime($cdr->startdate);
- $time =~ /^(\d{1,2}):(\d{1,2}):(\d{1,2})$/
- or die "unparsable time: $time"; #maybe we shouldn't die...
- $cdr->startdate( timelocal($3, $2, $1 ,$tmp_mday, $tmp_mon, $tmp_year));
- $cdr->answerdate( timelocal($3, $2, $1 ,$tmp_mday, $tmp_mon, $tmp_year));
-
- }, # Start time
-
- sub { my($cdr, $time) = @_;
- #my($sec, $min, $hour, $mday, $mon, $year)= localtime($cdr->startdate);
- $time =~ /^(\d{1,2}):(\d{1,2}):(\d{1,2})$/
- or die "unparsable time: $time"; #maybe we shouldn't die...
- #$cdr->startdate( timelocal($3, $2, $1 ,$mday, $mon, $year) );
- $cdr->enddate(
- timelocal($3, $2, $1 ,$tmp_mday, $tmp_mon, $tmp_year) );
- }, # End time
-
- 'disposition', # Disposition
- 'dst', # PhoneNumber
- skip(3), # Extension, Service Type, Filler
- 'src', # ClientContactID
+ skip(2), # Reseller Account Number, Confirmation Number
+ 'description', # Conference Name
+ skip(3), # Organization Name, Bill Code, Q&A Active
+ 'userfield', # Chairperson Name
+ skip(2), # Conference Start Time, Conference End Time
+ _cdr_date_parser_maker('startdate'), # Connect Time
+ _cdr_date_parser_maker('enddate'), # Disconnect Time
+ skip(1), # Duration
+ sub { my($cdr, $data, $conf, $param) = @_;
+ $cdr->duration($data);
+ $cdr->billsec( $data);
+ }, # Roundup Duration
+ skip(1), # User Name
+ 'dst', # DNIS
+ 'src', # ANI
+ skip(2), # Call Type, Toll Free,
+ 'accountcode', # Chair Conference Entry Code
+ skip(1), # Participant Conference Entry Code,
],
);