help • App. A: Call Detail Records (CDR) • File Format
A.1 File Format
The recorded ASCII text file contains a CDR for each line. Each CDR contains fields which are comma-separated and placed in quotation marks. +The first line is a header line containing comma-separated column names (in quotation marks).
Each line contains the following fields in the given order:
Attribute
Explanation
CallID
Identification for a call.
Each call (each CDR) contains a unique number. This ID is communicated to SwyxIt! Classic, which means that it can be used via the client SDK and it can also be queried in the call routing script.
Format: String
OriginationNumber
Caller's number
In the case of internal calls, it is just the internal extension, for external calls it is the number that is signaled in the network. If the call goes through a trunk, the complete number will be entered in canonical format here (+44204777222). 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 used to start the call, the user name or the name from the SwyxWare global 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, the user name or the name from the SwyxWare global phonebook.
Format: String
DestinationNumber
Destination Number
Number of the subscriber who picks up the call. This is the same as CalledNumber for calls which are not picked up.
Format: String
DestinationName
Destination Name
Name of the subscriber who picks up the call, the user name or the 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 receives the client’s call.
Format: dd.mm.yyyy
StartTime
Start Time
Time at which SwyxServer receives the client’s call.
Format: hh:mm:ss
ScriptConnectDate
Script start date
Date on which a script accepts the call. (Only for incoming calls.)
Format: dd.mm.yyyy
ScriptConnectTime
Script start time
Time at which a script takes the call. (For incoming calls only)
Format: hh:mm:ss
DeliveredDate
Delivery date
Date on which the call is delivered (e.g. by a ConnectTo in the script). (Only for incoming calls.)
Format: dd.mm.yyyy
DeliveredTime
Delivery time
Date on which the call is 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 is picked up.
Format: dd.mm.yyyy
ConnectTime
Connection time
Time at which the call is picked up.
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 is 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 supplied value 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.
If no costs are incurred, this is shown as "0.00".
Format: String
State
State of the call
*Initialized: 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
For outgoing external calls: The public line access number dialed (optional).
Format: String
LCRProvider
LCR code
This field remains empty.
Format: String
ProjectNumber
Project Codes
The code for a project (optional).
Format: String
AOC
Charges information (Advice of Charge)
"1": The 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)
This gives the origin of the call (Name of the trunk).
Format: String
DestinationDevice
Destination (trunk)
This gives the 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
In the case of a call transfer, this is the CallID of the first CDR from which this CDR stems.
Format: String
TransferredCallID2
ID of the second call
In the case of a call transfer, this is the CallID of the second CDR from which this CDR stems.
Format: String
TransferredToCallID
ID of the transferred call
The CallID of the new CDR resulting from a call transfer.
Format: String
TransferDate
Date of transfer
Date on which the call is transferred.
Format: dd.mm.yyyy
TransferTime
Time of transfer
Time at which the call is 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: A 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: The 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 caller
*CallDeflected: The call was manually forwarded to another number or to the Voice Box without being answered
*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: The call has been transferred. The call will be recorded further under the newly assigned TransferredToCallID.
Format: String