Configuration

ECGCDRLoader Configuration

The ECGCDRLoader configuration file is a YAML document that controls the different elements of the ECGCDRLoader software.

  • profiles: Select what profiles to use.
  • cdrprocessor: This configuration group controls the ECGCDRLoader settings.
  • mongo : Configuration for the connection to the Mongo database.
  • broadworks : Configuration for how to connect to BroadWorks.
  • smtp: Configuration of the SMTP interface used by the Alarms and Reports Controllers.
  • snmp: Configuration of the SNMP interface used by the Alarms and Reports Controllers.

Profile Configuration

Available Profiles

  • daemon: When this profile is selected, ECGCDRLoader will run as a background service.
  • single: The application will perform a single run through and exit.
  • snmp: Enables SNMP.
spring:
  profiles:
    active: daemon

CDRProcessor Configuration

History

  • max: The maximum number of days of data retained. This value also impacts the license count since users without calls within the history window are removed from the system and the license is returned to the pool.
cdrprocessor:
  history:
    max: 180

Loaders

Each loader group controls a new instance of a co.ecg.cdrprocessor.processors.CDRProcessor subclass.

There is one supported CDRProcessor(s) at this time:

  • co.ecg.cdrprocessor.processors.BroadWorksCDRProcessor - BroadWorks CDR Processor. Verified with BroadWorks versions R14 through R21sp1.

More than one type and/or more than one of each type of loader may be specified.

  • type: Specifies the full class name of the CDRProcessor instance to be used when processing CDRs by this loader.
  • name: Specifies the name of the loader to be used to identify the source of CDRs within ECGCDRLoader. This arbitrary value should be unique within the system. Once set, this value MUST NOT BE CHANGED without contacting ECG support.
  • rowDetails: A map of row types to a list of acceptable lengths.
  • cdrFolders: List of directories for the processor to scan.
loaders:
    -
      type: "co.ecg.cdrprocessor.processors.BroadWorksCDRProcessor"
      name: "production"
      rowDetailMap:
        header: 1
        failover: 45
        call: 435
      cdrFolders:
        - "/mnt/cdr/active"
        - "/mnt/cdr/current"

SMTP

The <smtp> configuration group configures the values related to outbound SMTP server connections used for Alarms and Nightly Reports.

  • hostname: The hostname of the mail server that will relay outbound email messages for Alarms and Nightly Reports.
  • tls/enabled: Enables or disables TLS support between ECGCDRLoader and the outbound SMTP server. The default is disabled.
  • port: The TCP port that will be used to connect to the outbound SMTP server. The default is 25.
  • authentication/enabled: Enables or disables SMTP authentication. If enabled, the username and password must also be provided.
    • username: The username used for SMTP authentication for outbound SMTP connections.
    • password: The password to be used for SMTP authentication for outbound SMTP connections.
  • fromAddress: The email address to be used in the From: header on Alarms and Reports sent via email.
  • toAddresses: This configuration group defines a list of email addresses to be included when Alarms and Reports are sent by ECGCDRLoader. More than one <toAddress> may be specified.
    • toAddress: Emails addresses to be used for outbound email.
  • subject: The subject line prefix to be used for outbound email messages.
smtp:
    host-name: "mail.domain.com"
    tls-enabled: false
    port: 25
    auth-enabled: false
    authentication-username: username
    authentication-password: password
    from-address: mail@domain.com
    to-addresses: 
      - "admin1@domain.com"
      - "admin2@domain.com"
    subject: "[CDR Loader]"

SNMP

community : The SNMP community string. listener-address : The ip and port to listen on. notification-destination : The ip and port to send traps to. trap-community : The trap community string. trap-enabled : Boolean value for whether or not to enable traps.

snmp:
    community: public
    listener-address: 0.0.0.0/8001
    notification-destination: 127.0.0.1/162
    trap-community: public
    trap-enabled: true

Mongo Configuration

  • uri - The address of the local Mongo installation. This is typically mongodb://localhost:27017.
  • database - The name of the database to use for Alpaca. This should always be ecgcdrloader.

Sample MongoDB configuration

data:
    mongodb:
        uri: mongodb://localhost:27017
        database: alpaca

BroadWorks Configuration

  • nickname: The nickname for the Broadworks server.
  • hostName: The address to connect to the BroadWorks server.
  • userName: The connection userName. This can be a user, provisioning admin, or system admin. However, most commands will require admin level access.
  • password: The connection password for the provided userName.
  • timesten.hostname: The address for the application server where the TimesTen installation is contained.
broadworks:
  server-config-list:
    -
      nickname: Production
      hostname: ews1.acme.com
      username: admin
      password: password
      timesten:
        hostname: as1.acme.com