1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
package FS::cdr::cisco;
use strict;
use base qw( FS::cdr );
use vars qw( %info );
use FS::cdr qw( _cdr_date_parser_maker _cdr_min_parser_maker );
%info = (
'name' => 'Cisco Unified Call Manager',
'weight' => 160,
'header' => 2, #0 default, set to 1 to ignore the first line, or
# to higher numbers to ignore that number of lines
'type' => 'csv', #csv (default), fixedlength or xls
'sep_char' => ',', #for csv, defaults to ,
'disabled' => 0, #0 default, set to 1 to disable
'import_fields' => [
skip(2), #cdrRecordType
#globalCallID_callManagerId
'clid', #globalCallID_callId
skip(1), #origLegCallIdentifier
'startdate', #dateTimeOrigination
skip(3), #origNodeId
#origSpan
#origIpAddr
'src', #callingPartyNumber
skip(20), #callingPartyUnicodeLoginUserID
#origCause_location
#origCause_value
#origPrecedenceLevel
#origMediaTransportAddress_IP
#origMediaTransportAddress_Port
#origMediaCap_payloadCapability
#origMediaCap_maxFramesPerPacket
#origMediaCap_g723BitRate
#origVideoCap_Codec
#origVideoCap_Bandwidth
#origVideoCap_Resolution
#origVideoTransportAddress_IP
#origVideoTransportAddress_Port
#origRSVPAudioStat
#origRSVPVideoStat
#destLegIdentifier
#destNodeId
#destSpan
#destIpAddr
'dst', #originalCalledPartyNumber
skip(17), #finalCalledPartyNumber
#finalCalledPartyUnicodeLoginUserID
#destCause_location
#destCause_value
#destPrecedenceLevel
#destMediaTransportAddress_IP
#destMediaTransportAddress_Port
#destMediaCap_payloadCapability
#destMediaCap_maxFramesPerPacket
#destMediaCap_g723BitRate
#destVideoCap_Codec
#destVideoCap_Bandwidth
#destVideoCap_Resolution
#destVideoTransportAddress_IP
#destVideoTransportAddress_Port
#destRSVPAudioStat
#destRSVPVideoStat
'answerdate', #dateTimeConnect
'enddate', #dateTimeDisconnect
skip(6), #lastRedirectDn
#pkid
#originalCalledPartyNumberPartition
#callingPartyNumberPartition
#finalCalledPartyNumberPartition
#lastRedirectDnPartition
'billsec', #duration
skip(48), #origDeviceName
#destDeviceName
#origCallTerminationOnBehalfOf
#destCallTerminationOnBehalfOf
#origCalledPartyRedirectOnBehalfOf
#lastRedirectRedirectOnBehalfOf
#origCalledPartyRedirectReason
#lastRedirectRedirectReason
#destConversationId
#globalCallId_ClusterID
#joinOnBehalfOf
#comment
#authCodeDescription
#authorizationLevel
#clientMatterCode
#origDTMFMethod
#destDTMFMethod
#callSecuredStatus
#origConversationId
#origMediaCap_Bandwidth
#destMediaCap_Bandwidth
#authorizationCodeValue
#outpulsedCallingPartyNumber
#outpulsedCalledPartyNumber
#origIpv4v6Addr
#destIpv4v6Addr
#origVideoCap_Codec_Channel2
#origVideoCap_Bandwidth_Channel2
#origVideoCap_Resolution_Channel2
#origVideoTransportAddress_IP_Channel2
#origVideoTransportAddress_Port_Channel2
#origVideoChannel_Role_Channel2
#destVideoCap_Codec_Channel2
#destVideoCap_Bandwidth_Channel2
#destVideoCap_Resolution_Channel2
#destVideoTransportAddress_IP_Channel2
#destVideoTransportAddress_Port_Channel2
#destVideoChannel_Role_Channel2
#IncomingProtocolID
#IncomingProtocolCallRef
#OutgoingProtocolID
#OutgoingProtocolCallRef
#currentRoutingReason
#origRoutingReason
#lastRedirectingRoutingReason
#huntPilotPartition
#huntPilotDN
#calledPartyPatternUsage
],
);
sub skip { map {''} (1..$_[0]) }
1;
|