03-19-2010 01:45 PM - last edited on 03-25-2019 10:48 PM by ciscomoderator
I am writing an application to take one or multiple Call Detail Records files and insert the data into an SQL database. I haven't been able to find any useful documentation at all on what is what in the CDR (which is basically a CSV file).
I can certainly hazard guesses as to what the data in each field is, but does anyone have any documentation, be it official or not, describing this data?
Where is Cisco on this?
Thanks
Solved! Go to Solution.
03-19-2010 05:50 PM
Andrew, Thanks for sharing your CVS record, I did not have a UC500 device near, and be able to generate a CDR Record, however based on your output and on this link: http://www.cisco.com/en/US/docs/ios/voice/cdr/developer/guide/cdrcsv.html#wp1172378 i got the following
unix_time | call-id | cdr-type | leg-type | h323-conf-id | peer-address | peer-sub-address | h323-setup-time | alert-time | h323-connect-time | h323-disconnect-time | h323-disconnect-cause | disconnect-text | h323-call-origin | charged-units | info-type | paks-out | bytes-out | paks-in | bytes-in | username | clid | dnis | gtd-orig-cic | gtd-term-cic | tx-duration | peer-id | peer-if-index | logical-if-index | acom-level | noise-level | voice-tx-duration | account-code | codec-bytes | codec-type-rate | ontime-rv-playout | remote-udp-port | remote-media-udp-port | vad-enable | receive-delay | round-trip-delay | hiwater-playout-delay | lowater-playout-delay | gapfill-with-interpolation | gapfill-with-redundancy | gapfill-with-silence | gapfill-with-prediction | early-packets | late-packets | lost-packets | max-bitrate | faxrelay-start-time | faxrelay-stop-time | faxrelay-max-jit-buf-depth | faxrelay-jit-buf-ovflow | faxrelay-init-hs-mod | faxrelay-mr-hs-mod | faxrelay-num-pages | faxrelay-tx-packets | faxrelay-rx-packets | faxrelay-direction | faxrelay-pkt-conceal | faxrelay-ecm-status | faxrelay-encap-protocol | faxrelay-nsf-country-code | faxrelay-nsf-manuf-code | faxrelay-fax-success | override-session-time | h323-ivr-out | internal-error-code | h323-voice-quality | remote-media-address | remote-media-id | carrier-id | calling-party-category | originating-line-info | charge-number | transmission-medium-req | service-descriptor | outgoing-area | incoming-area | out-trunkgroup-label | out-carrier-id | dsp-id | in-trunkgroup-label | in-carrier-id | cust-biz-grp-id | supp-svc-xfer-by | voice-feature | feature-operation | feature-op-status | feature-op-time | feature-id | gw-rxd-cdn | gw-rxd-cgn | gtd-gw-rxd-ocn | gtd-gw-rxd-cnn | gw-rxd-rdn | gw-final-xlated-cdn | gw-final-xlated-cgn | gw-final-xlated-rdn | gk-xlated-cdn | gk-xlated-cgn | gw-collected-cdn | ip-hop | redirected-station | subscriber | in-intrfc-desc | out-intrfc-desc | session-protocol | local-hostname | backward-call-id | feature-id_field1 | feature-id_field2 | feature-id_field3 | feature-id_field4 | feature-id_field5 | feature-id_field6 | feature-id_field7 | feature-id_field8 | feature-id_field9 | feature-id_field10 | feature-id_field11 | feature-id_field12 |
1268516157 | 175 | 0 | 1 | 38753326 2E1F11DF 80C6A200 FBA9FC2E | 16:35:47.055 EST Sat Mar 13 2010 | 16:35:57.045 EST Sat Mar 13 2010 | 16:35:57.045 EST Sat Mar 13 2010 | answer | 0 | 0 | 0 | 121 | 19360 | 234 | 234 | 0 | Tariff:Unknown | 0 | ton:0,npi:0,pi:0,si:0,#:234 | 74162200238 | RegularLine | TWC | 35:47.1 | 234 | 0 | 81 | 38753326 2E1F11DF 80C6A200 FBA9FC2E | AF | dn:shared | usr:amelling | tag:3 |
Thanks,
Victor.-
03-19-2010 02:25 PM
Hello Andrew,
CDRs are created by default in the Cisco Unified CallManager Express system, and these records contain starts, stops, attempts, failures, and other information about all the calls in the system.
Billing is achieved through the use of account code field in the CDRs, the account code field is added through the use of the softkey during the call Alerting or Connected state.
To view an account code from the CLI, use the show call active voice command
UC500#show call active voice | inc AccountCode
AccountCode 1234
Please find a sample configuration:
UC500(config)#service timestamps log datetime msec localtime
UC500(config)#aaa new-model
UC500(config)#aaa authentication login default none
UC500(config)#aaa accounting connection H.323 start-stop radius
UC500(config)#gw-accounting syslog
UC500(config)#logging 192.168.10.123 !send the call history to an external syslog server.
UC500(config)#dial-control-mib retain-timer 10000 !log call history to the buffer
UC500(config)#dial-control-mib max-size 500
UC500(config)#logging buffered 51200
This Configuration is greatly explained in this link http://www.cisco.com/en/US/tech/tk1077/technologies_tech_note09186a0080094e72.shtml also in this page you can find a sample CDR, and the meaning of each field, and I know about cisco partner that are developing application with information gathered please check http://forums.cisco.com/eforum/servlet/IPCApps?page=Application_Search
Also please before doing any configuration via CLI, refer to the OOB Giude, so the configuration done can be recognized and read in by CCA https://supportforums.cisco.com/docs/DOC-9809
Thank you,
Victor.-
03-19-2010 03:01 PM
Hi Victor - thank you for your response, however the CDR data I have from my UC looks very different from what the document describes.
Here is an example record:
1268516157,175,0,1,"38753326 2E1F11DF 80C6A200 FBA9FC2E","","","16:35:47.055 EST Sat Mar 13 2010","","16:35:57.045 EST Sat Mar 13 2010","16:35:57.045 EST Sat Mar 13 2010","","","answer",0,"",0,0,121,19360,"234","234","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",0,"Tariff:Unknown","","0","","","","","","","","","","","","","","","","","","","","","","","","ton:0,npi:0,pi:0,si:0,#:234","","","","","","","","","74162200238","","","RegularLine","","","","","","TWC","03/13/2010 16:35:47.055","234","",0,81,38753326 2E1F11DF 80C6A200 FBA9FC2E,AF,"","","","","dn:shared,usr:amelling,tag:3","cme","",""
As you can see, there are many more fields in my record...
03-19-2010 05:50 PM
Andrew, Thanks for sharing your CVS record, I did not have a UC500 device near, and be able to generate a CDR Record, however based on your output and on this link: http://www.cisco.com/en/US/docs/ios/voice/cdr/developer/guide/cdrcsv.html#wp1172378 i got the following
unix_time | call-id | cdr-type | leg-type | h323-conf-id | peer-address | peer-sub-address | h323-setup-time | alert-time | h323-connect-time | h323-disconnect-time | h323-disconnect-cause | disconnect-text | h323-call-origin | charged-units | info-type | paks-out | bytes-out | paks-in | bytes-in | username | clid | dnis | gtd-orig-cic | gtd-term-cic | tx-duration | peer-id | peer-if-index | logical-if-index | acom-level | noise-level | voice-tx-duration | account-code | codec-bytes | codec-type-rate | ontime-rv-playout | remote-udp-port | remote-media-udp-port | vad-enable | receive-delay | round-trip-delay | hiwater-playout-delay | lowater-playout-delay | gapfill-with-interpolation | gapfill-with-redundancy | gapfill-with-silence | gapfill-with-prediction | early-packets | late-packets | lost-packets | max-bitrate | faxrelay-start-time | faxrelay-stop-time | faxrelay-max-jit-buf-depth | faxrelay-jit-buf-ovflow | faxrelay-init-hs-mod | faxrelay-mr-hs-mod | faxrelay-num-pages | faxrelay-tx-packets | faxrelay-rx-packets | faxrelay-direction | faxrelay-pkt-conceal | faxrelay-ecm-status | faxrelay-encap-protocol | faxrelay-nsf-country-code | faxrelay-nsf-manuf-code | faxrelay-fax-success | override-session-time | h323-ivr-out | internal-error-code | h323-voice-quality | remote-media-address | remote-media-id | carrier-id | calling-party-category | originating-line-info | charge-number | transmission-medium-req | service-descriptor | outgoing-area | incoming-area | out-trunkgroup-label | out-carrier-id | dsp-id | in-trunkgroup-label | in-carrier-id | cust-biz-grp-id | supp-svc-xfer-by | voice-feature | feature-operation | feature-op-status | feature-op-time | feature-id | gw-rxd-cdn | gw-rxd-cgn | gtd-gw-rxd-ocn | gtd-gw-rxd-cnn | gw-rxd-rdn | gw-final-xlated-cdn | gw-final-xlated-cgn | gw-final-xlated-rdn | gk-xlated-cdn | gk-xlated-cgn | gw-collected-cdn | ip-hop | redirected-station | subscriber | in-intrfc-desc | out-intrfc-desc | session-protocol | local-hostname | backward-call-id | feature-id_field1 | feature-id_field2 | feature-id_field3 | feature-id_field4 | feature-id_field5 | feature-id_field6 | feature-id_field7 | feature-id_field8 | feature-id_field9 | feature-id_field10 | feature-id_field11 | feature-id_field12 |
1268516157 | 175 | 0 | 1 | 38753326 2E1F11DF 80C6A200 FBA9FC2E | 16:35:47.055 EST Sat Mar 13 2010 | 16:35:57.045 EST Sat Mar 13 2010 | 16:35:57.045 EST Sat Mar 13 2010 | answer | 0 | 0 | 0 | 121 | 19360 | 234 | 234 | 0 | Tariff:Unknown | 0 | ton:0,npi:0,pi:0,si:0,#:234 | 74162200238 | RegularLine | TWC | 35:47.1 | 234 | 0 | 81 | 38753326 2E1F11DF 80C6A200 FBA9FC2E | AF | dn:shared | usr:amelling | tag:3 |
Thanks,
Victor.-
03-20-2010 05:44 AM
Victor, you're the man.
That's exactly what I was looking for. Thank you
10-25-2010 07:28 AM
Hi Victor
I'm just now writing my parser app for the CDR files, and I have found a problem near the end...
At the field "feature-id_field8", you have "AF", which is correct, however you neglected four following empty fields. There are then four additional fields that seem to be outside the scope of the specification in the document you refer to...
-----------------------------------------------------
feature-id_field8: AF
feature-id_field9:
feature-id_field10:
feature-id_field11:
feature-id_field12:
-----------------------------------------------------
Help?
07-12-2011 04:02 AM
Hello Andrew,
Did you find the answer for additional fields?
I have the same problem.
Regards.
08-25-2011 09:01 AM
Victor,
The description of the format has been extremely helpful. Unfortunately, all of the CDR's coming out of a UC540 running 8.2.0 come with a null value for field 31 "voice-tx-duration" which is suposed to be the duration, in ms, of the call.
The template format I have is set to "cdr-type 0", meaning none, so all values ought to be reported.
Should I set a flag to make the UC540 count the ms? Any hints?
Thanks.
Pedro.
11-06-2012 07:50 AM
Hello Victor, You can send account code via syslog server (FAC-- service clid_authen_collect)?
Thanks
Regards, FGA
08-24-2011 04:06 PM
The description of the format has been extremely helpful. Unfortunately, all of the CDR's coming out of a UC540 running 8.2.0 come with a null value for field 31 "voice-tx-duration" which is suposed to be the duration, in ms, of the call.
The template format I have is set to "cdr-type 0", meaning none, so all values ought to be reported.
Should I set a flag to make the UC540 count the ms?
Thanks.
11-06-2012 07:57 AM
Update IOS and check again.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide