help • 14 Data Storage • Call Detail Records (CDR) • File Format
14.4.1 File Format
The recorded ASCII text file contains one CDR per line. Each CDR, in turn, contains attributes separated by commas and enclosed in quotation marks. The first line contains a header line with column names enclosed in quotation marks separated by commas.
Each row contains the following attributes in the specified order:
Attribute
Explanation
CallID
Identification for a call
Each call (each CDR) contains a unique number. This ID is communicated to SwyxIt! Classic as well, so it can be used via Client SDK, and can also be queried in the call routing script.
Format: String
OriginationNumber
Caller number
For internal calls this is only the internal extension number, for external calls this is the number that is signaled in the network. If the call goes through a Trunk, the complete number in canonical format is entered here (+442314777222). If no number is delivered from the network for an external call, this field will remain empty.
Format: String
OriginationName
Caller name
Name of the Swyx client with which the call was started, User name or name from the global SwyxWare phonebook.
Format: String
CalledNumber
Called number
Number originally dialed by the caller
Format: String
CalledName
Name of the person called
Name of the subscriber called, User name or name from the SwyxWare global phonebook
Format: String
DestinationNumber
Destination Number
Number of the subscriber who picked up the call
This is the same as CalledNumber for calls which have not been picked up.
Format: String
DestinationName
Destination Name
Name of the subscriber called, User name or name from the SwyxWare global phonebook
CalledName will be used in the case of calls which are not picked up.
Format: String
StartDate
Start Date
Date on which SwyxServer received the client’s call
Format: dd.mm.yyyy
StartTime
Start Time
Time at which SwyxServer received the client’s call
Format: hh:mm:ss
ScriptConnectDate
Script start date
Date on which the call was picked up via script (for incoming calls only)
Format: dd.mm.yyyy
ScriptConnectTime
Script start time
Time at which the call was picked up via script (for incoming calls only)
Format: hh:mm:ss
DeliveredDate
Delivery date
Date on which the call was delivered, e.g. by a ConnectTo in the script (for incoming calls only)
Format: dd.mm.yyyy
DeliveredTime
Delivery time
Time at which the call was delivered, e.g. by a ConnectTo in the script (for incoming calls only)
Format: hh:mm:ss
ConnectDate
Connection date
Date on which the call was picked up
Format: dd.mm.yyyy
ConnectTime
Connection time
Time at which the call was transferred
Format: hh:mm:ss
EndDate
End Date
Date on which the call is terminated
Format: dd.mm.yyyy
EndTime
End Time
Time at which the call was terminated
Format: hh:mm:ss
Currency
Currency of the charges
If AOC = ‘1’(Advice of charge) and if the public network supplies the charging units with currency, the currency is included here.
If AOC = ‘1’ and the public network only supplies the charging unit, the currency included here is the currency which was configured in the SwyxWare Administration.
If AOC = ’0’, no charging information was delivered.
Format: String
Costs
Cost of a call
If AOC = ‘1’(Advice of charge) and if the public network supplies the charging units with currency, the currency is included here.
If AOC = ‘1’ and the public network only supplies the charging units, the calculated value of the costs included here as configured in the SwyxWare Administration.
If AOC = ’0’, no charging information was delivered.
’00’ = no costs
Format: String
State
State of the call
*Initialized: This is the initial state when picking up the handset.
*Alerting: The call was ended while it was ringing at the destination number (DestinationNumber).
*Connected: The call was ended while it was connected to the destination number.
*ConnectedToScript: The call was ended while it was connected to a call routing script.
*OnHold: The call was ended while on hold.
*Transferred: The call was ended after it was transferred.
Format: String
PublicAccessPrefix
Public Line Access
Dialed public access number (for outgoing external calls only; optional)
Format: String
LCRProvider
LCR code
This field remains empty.
Format: String
ProjectNumber
Project Codes
Code for a project (optional)
Format: String
AOC
Charges information (Advice of Charge)
"1"= Advice of charge information was taken from the network
'0’ = The advice of charge information could not be taken from the network.
Format: String
OriginationDevice
Origin (Trunk)
Origin of the call (name of the Trunk)
Format: String
DestinationDevice
Destination (Trunk)
Destination of the call (name of the Trunk)
Format: String
TransferredByNumber
Number of the transferor
Number of the subscriber who transferred the call
Format: String
TransferredByName
Name of the transferor
Name of the subscriber who transferred the call
Format: String
TransferredCallID1
ID of the first call
CallID of the first CDR from which this CDR stems (for call transfers only)
Format: String
TransferredCallID2
ID of the second call
CallID of the second CDR from which this CDR stems (for call transfers only)
Format: String
TransferredToCallID
ID of the transferred call
CallID of the new CDR resulting from a call transfer
Format: String
TransferDate
Date of transfer
Date on which the call was transferred
Format: dd.mm.yyyy
TransferTime
Time of transfer
Time at which the call was transferred.
Format: hh:mm:ss
Disconnect
Reason
Reason for call termination
*Busy: Destination number is busy
*Reject: Destination rejects call
*NoAnswer: Destination does not pick up
*TooLate: A different device picked up the call
*UnknownNumber: The number called is unknown.
*Unreachable: Destination cannot be reached
*DirectCallImpossible: A connection for a direct call is not possible (deactivated in the settings)
*DivertToCallerImpossible: Caller cannot divert a call to himself
*NetworkCongestion: Network is overloaded
*BadFormatAddress: Format of the address is invalid
*ProceedWithDestinationScript: The call has been diverted to a call routing script of another subscriber
*CallRoutingFailed: Call routing failed (e. g. a call routing script could not be started)
*CallIgnored: Call has been ignored by the call routing script (e. g., when several ISDN devices are connected)
*PermissionDenied: Insufficient permission for this call
*CallDisconnected: Normal end of call
*CallDeflected: Call was manually diverted to another number or a voicemail without picking up
*IncompatibleDestination: Caller and destination are not compatible, e. g. different codecs
*SecurityNegotiationFailed: Caller and destination have incompatible encryption settings, (e.g. "encryption mandatory" - "no encryption)
*NumberChanged: Destination number has been changed in PSTN
*NoChannelAvailable: No SwyxWare channel available
*OriginatorDisconnected: Caller ended the call
*CallTransferred: Call was transferred (call was recorded further under the newly assigned TransferredToCallID)
Format: String