BroadSoft BroadWorks SMDR setup and CDR format
This page shows how to get call records out of the BroadSoft BroadWorks into Advanced PBX Data Logger: the connection settings, the parser to select and the 21 fields the logger extracts for reports or a database. The settings apply to our logger; other call accounting software may expect a different configuration.
Quick facts
| Item | BroadSoft BroadWorks |
|---|---|
| Interface | Serial printer port or LAN, whichever the system uses for SMDR output. The record layout identifies the format. |
| Parser to select | BroadSoft BroadWorks |
| Fields extracted | 21 |
Settings from the manufacturer's documentation
Taken from Broadworks-AccountingCDRInterfaceSpec-R210. Values are those stated in the documentation; confirm them against your firmware release.
| Setting | Documented value |
|---|---|
| BroadWorks CDR interface enabled (Application Server) | false (disabled by default) |
| CDR file output format (Application Server File parameters) | xml |
| Automatic FTP upload of CDR files (Application Server File/FTP parameters) | false (disabled by default) |
| Real-time RADIUS CDR output (Application Server Radius parameters) | false (disabled by default) |
| FTP passive mode default | false |
Switching SMDR output on, as documented
- Turn on CDR generation under the AS_CLI/Interface/Accounting/BroadWorksCDRInterface command tree, which reports enabled = false until an administrator changes it, and enable File and/or Radius output beneath it as needed.
- Enable AS_CLI/Interface/Accounting/BroadWorksCDRInterface/File/FTP and set remoteHostName, remoteUserId and remotePassword so completed CDR files are uploaded automatically at each file rotation.
Record format notes
- CDR files are batch-transferred via FTP on a rotation schedule (billingRotationHour/Minutes/PerDay), not streamed live; a single mode of FTP transmission (batch) is supported.
- CDR files are named BW-CDR-yyyymmddhhmmss-pri-systemid-seqnum.xml or .csv depending on the configured output format.
- The Header module's type field takes values Start, End, Normal, Long Duration, Interim, or Failover; Start/End records carry only recordId, serviceProvider and type, matching the page's own sample '<type>Start</type>'.
- In CSV output, empty fields are two consecutive commas and each record is exactly one line; commas and backslashes inside field values are escaped with a backslash, and embedded CR/LF are escaped as \r and \n.
- As an alternative to file/FTP delivery, CDRs can be sent one at a time in real time using the RADIUS protocol (RFC 2866 compliant).
Selecting the correct parser for BroadSoft BroadWorks

BroadSoft BroadWorks
BroadSoft BroadWorks
Data items
| Description | Data type | Column name |
|---|---|---|
| Call type | string | CALL_TYPE |
| Call direction | string | DIRECTION |
| User ID | string | EXT |
| Trunk | string | TRUNK |
| Start time | datetime | START_TIME |
| End time | datetime | END_TIME |
| Answer Indicator | string | ANSWER_INDICATOR |
| Answer time | datetime | ANSWER_TIME |
| Call duration | datetime | CALL_DURATION |
| Call duration (s) | integer | CALL_DURATION_S |
| Ring duration | datetime | RING |
| Dialed phone | string | DIALED_PHONE |
| Caller phone | string | CALLER_PHONE |
| User ID | string | FLAG1 |
| Other Party Name | string | FLAG2 |
| Call ID | string | FLAG3 |
| Termination Cause | string | FLAG4 |
| Call Category | string | FLAG5 |
| Access Device Address | string | FLAG6 |
| Account Code | string | ACC |
| Auth Code | string | AUTH |
Sample record
As delivered by the system; phone numbers, names and public addresses are masked.
<basicModule> <userNumber>+124xxxxxxxx</userNumber> <direction>Originating</direction> <asCallType>Network</asCallType> <callingNumber>+124xxxxxxxx</callingNumber> <callingPresentationIndicator>Public</callingPresentationIndicator> <dialedDigits>8</dialedDigits> <calledNumber>8</calledNumber> <startTime>201xxxxxxxxxxx.561</startTime> <userTimeZone>0+080000</userTimeZone> <localCallId>215xxxxx:0</localCallId> <answerIndicator>No</answerIndicator> <releaseTime>201xxxxxxxxxxx.006</releaseTime> <terminationCause>001</terminationCause> <chargeIndicator>n</chargeIndicator> <releasingParty>local</releasingParty> <userId>user@example.com</userId> </basicModule>
Reports and a database
Once records arrive, the logger writes them to a text file or to any ODBC database in real time, or hands them to the PBX Reports utility for manual, scheduled and e-mailed reports with a built-in web server. See exporting call log data to a database for the database setup.
Related BroadSoft systems
Avaya PartnerAvaya MultiVantage (Unformatted Output Format ACM 4.0)
Cadcom 3600
Cisco Call Manager (CSV) v10
All supported PBX systems
Note: Products and companies mentioned here are used only for definition and identification purposes and can be trademarks and/or registered trademarks of the respective companies.
Related topics: Advanced PBX Data Logger
hereCall logging Call accounting SMDR to SQL SMDR Listener Cables and signals