Topic blueworx.cdr

The blueworx.cdr topic contains both Call and Conference Detail Records (CDRs)

Call Detail Records are created after a successful call.

Call

A single call entry is generated for each successful call processed by BVR.

Table 1. JSON for Call Detail Record
Name Type Optional Description
type string No Always contains "Call"
callIndex string No Call index on the BVR
callIndexFull string No Call index unique across all BVRs
conferenceIndex string No Last conference index if the call was in a conference
accountId string No Account handling the call
applicationId string No Application handling the call
start date No Call start time/date
end date No Call end time/date
duration duration No Call duration
tts object No TTS information - see below Media Resource
asr object No ASR information - see below Media Resource
record object No SIPREC record information - see below Recording
direction string No Inbound or Outbound call
from uri No SIP uri of caller
to uri No SIP uri of called/BVR
ani string No ANI/user of caller
dnis string No DNIS/user of called/BVR
terminationReason string No Call termination reason
bvrMachine string No Address of the BVR
xml object No Initial/final XML - see below Call XML
dialogs array No List of dialogs - see below Dialog
tromboneStreamDuration duration No Time spent tromboned to another RTP stream

Media Resource

Information about a type of media resource, for example TTS. The durations are the totals across all sub resources. If multiple locales are used the total across all locales is here. The breakdown of the specific locales is within the resources array.

Table 2. JSON for Media Resource
Name Type Optional Description
sessionDuration duration No Duration of the media session
streamDuration duration No Duration of the RTP stream
resources array No List of media resources - see below Media Subresource

Media Subresource

Information about a particular sub type of media resource, for example TTS on a specific locale.

Table 3. JSON for Media Subresource
Name Type Optional Description
locale string No Configured locale of the media resource
sessionDuration duration No Duration of the media session
streamDuration duration No Duration of the RTP stream

Recording

Information about SIPRec recording. This entirely SIPRec based recording and does not contain any information concerning recordings via VXML.

Table 4. JSON for Recording
Name Type Optional Description
sessionDuration duration No Duration of the SIPREC session/call
inboundStreamDuration duration No Duration of the recording of the inbound RTP stream
outboundStreamDuration duration No Duration of the recording of the outbound RTP stream

Call XML

The initial and termination XML documents processed for this call.

Table 5. JSON for Call XML
Name Type Optional Description
initial string No Initial XML document parsed by the call
terminate string No Final XML document parsed by the call

Dialog

Information about a type of dialog, for example VXML or CCXML.

Table 6. JSON for Dialog
Name Type Optional Description
name string No Dialog name
duration duration No Total duration

Example

{
    "type": "Call",
    "callIndex": "0102030400000002",
    "callIndexFull": "1.2.3.4-20190529164159-0102030400000002",
    "accountId": "0x00000000",
    "start": "2019-05-29 16:41:59.602",
    "end": "2019-05-29 16:42:02.468",
    "duration": 2868,
    "tts": {
        "sessionDuration": 2008,
        "streamDuration": 2063,
        "resources": [
            {
                "locale": "en_US",
                "sessionDuration": 2008,
                "streamDuration": 2063
            }
        ]
    },
    "asr": {
        "sessionDuration": 0,
        "streamDuration": 0,
        "resources": []
    },
    "record": {
        "sessionDuration": 0,
        "inboundStreamDuration": 0,
        "outboundStreamDuration": 0
    },
    "direction": "Inbound",
    "from": "sip:anon@5.6.7.8;transport=udp",
    "to": "sip:tts@1.2.3.4",
    "ani": "anon",
    "dnis": "tts",
    "terminationReason": "Far end hangup",
    "conferenceId": "N/A",
    "bvrMachine": "1.2.3.4",
    "xml": {
        "initial": "http://machine.blueworx.com/shortcache_expires/test_tts_audio_2.vxml",
        "terminate": "http://machine.blueworx.com/shortcache_expires/test_tts_audio_2.vxml"
    },
    "tromboneStreamDuration": 0,
    "applicationID": "0x00000003",
    "dialogs": [
        {
            "name": "VXML",
            "duration": 2752
        }
    ]
}

When BVR handles a bridge transfer, Conference Detail Records are logged, in addition to Call Detail Records.

Conference

A single conference entry is generated for each completed conference. The members contains a list of all the parties involved in the conference.

Table 7. JSON for Conference
Name Type Optional Description
type string No Always contains "Conference"
conferenceId string No Conference index unique across all BVRs
duration duration No Total duration
members array No List of conference members - see below Conference Member

Conference Member

Information about a particular conference member.

Table 8. JSON for Conference Member
Name Type Optional Description
callIndex string No Call index on the BVR
callIndexFull string No Call index unique across all BVRs
start date No Call start time/date
end date No Call end time/date

Example

{
  "members":[
    {
      "callIndex":"0102030400000001",
      "callIndexFull":"1.2.3.4-20180628145856-0102030400000001",
      "start":"2018-06-28 14:59:02.340",
      "end":"2018-06-28 14:59:05.899"
    },
    {
      "callIndex":"0102030400000002",
      "callIndexFull":"1.2.3.4-20180628145902-0102030400000002",
      "start":"2018-06-28 14:59:02.340",
      "end":"2018-06-28 14:59:05.900"
    }
  ],
  "conferenceId":"1.2.3.4-20180628145902-00000000",
  "duration":3560,
  "type":"Conference"
}