sipXecs Call Detail Recording (CDR)

Introduction

Call Detail Recording (CDR) is a feature which monitors call activity in the sipXecs system and constructs, in a condensed format, records that describe these calls. The records, which are stored in a database, are often used for call accounting and/or general system utilization monitoring purposes. Although sipXecs does not provide a call accounting reporting mechanism (left for 3 rd party application developers which specialize in this), it does provide a near real-time display of active and historic calls as well as a set of basic reports.

Remote CDR Database Access

The built-in reporting capabilities of sipXecs, although powerful, are sometimes not sufficient for a customer's needs. In order to fulfill the reporting/analysis requirements, it is often necessary to utilize a 3 rd party reporting application or have the customer create one. These specialized applications must be run outside of sipXecs and as such would require remote access to the CDR database.

CDR records are stored in a Postgres database (Database SIPXCDR) on the sipXecs system. The default configuration for this database is to only allow local connections. In order to open up the ability for remote database access, two Postgres configuration files must be modified.

The pg_hba.conf configuration file is found under /var/lib/pgsql/data. The steps detailed below are an example of how to allow remote connections from IP address 172.20.32.200 .

  1. Open up a terminal to the sipXecs system and login as root.
  2. Change to the directory /var/lib/pgsql/data. (i.e. cd /var/lib/pgsql/data)
  3. Edit the pg_hba.conf file. (i.e. vi pg_hba.conf)
  4. Add the following line in the section commented as IPv4 remote connections.
    host all all 172.20.32.200/20 trust
  5. Save the file change.

The postgresql.conf configuration file is found under /var/lib/pgsql/data. The steps detailed below are an example of how to tell PostgreSQL to listen for connection requests from any address.

  1. Open up a terminal to the sipXecs system and login as root.
  2. Change to the directory /var/lib/pgsql/data. (i.e. cd /var/lib/pgsql/data)
  3. Edit the postgresql.conf file. (i.e. vi postgresql.conf)
  4. Add the following line in the section commented as CONNECTIONS AND AUTHENTICATION.
    listen_addresses = '*'
  5. Save the file change.

PostgreSQL configuration reload

Once all the configuration changes have been made to allow remote connectivity to the database, PostgreSQL must be told to reload its configuration in order to recognize the changes.

  1. Restart the PostgreSQL service. service postgresql restart

Configure a PostgreSQL client to access the data remotely, exp. Navicat for PostgreSQL.
Use IP: (server IP), port: 5432, Initial Database: SIPXCDR, User Name: postgres, P/W: your root p/w.