{ // Real-time Charging System for Telecom & ISP environments // Copyright (C) ITsysCOM GmbH // // This file contains the default configuration hardcoded into CGRateS. // This is what you get when you load CGRateS with an empty configuration file. "general": { "log_level": 7, }, "rals": { "enabled": true, // enable Rater service: }, "stor_db": { // database used to store offline tariff plans and CDRs "db_password": "CGRateS.org", // password to use when connecting to stordb }, "scheduler": { "enabled": true, // start Scheduler service: }, "cdrs": { "enabled": true, // start the CDR Server service: }, "cdrc": [ { "id": "FLATSTORE", "enabled": true, // enable CDR client functionality "cdrs_conns": [ {"address": "*internal"} // address where to reach CDR server. <*internal|x.y.z.y:1234> ], "cdr_format": "opensips_flatstore", // CDR file format "field_separator": "|", // separator used in case of csv files "run_delay": 0, // sleep interval in seconds between consecutive runs, 0 to use automation via inotify "max_open_files": 1024, // maximum simultaneous files to process "data_usage_multiply_factor": 1024, // conversion factor for data usage "cdr_in_dir": "/tmp/cgr_flatstore/cdrc/in", // absolute path towards the directory where the CDRs are stored "cdr_out_dir": "/tmp/cgr_flatstore/cdrc/out", // absolute path towards the directory where processed CDRs will be moved "failed_calls_prefix": "missed_calls", // used in case of flatstore CDRs to avoid searching for BYE records "cdr_source_id": "flatstore", // free form field, id identifying the source of the CDRs within CDRS database "partial_record_cache": "1s", // duration to cache partial records when not pairing "content_fields":[ // import template, id will match internally CDR field, in case of .csv value will be represented by index of the field value {"tag": "Tor", "field_id": "ToR", "type": "*composed", "value": "*voice", "mandatory": true}, {"tag": "OriginID", "field_id": "OriginID", "type": "*composed", "mandatory": true}, {"tag": "RequestType", "field_id": "RequestType", "type": "*composed", "value": "~7", "mandatory": true}, {"tag": "Direction", "field_id": "Direction", "type": "*composed", "value": "out", "mandatory": true}, {"tag": "Tenant", "field_id": "Tenant", "type": "*composed", "value": "cgrates.org", "mandatory": true}, {"tag": "Category", "field_id": "Category", "type": "*composed", "value": "call", "mandatory": true}, {"tag": "Account", "field_id": "Account", "type": "*composed", "value": "~8", "mandatory": true}, {"tag": "Subject", "field_id": "Subject", "type": "*composed", "value": "~8", "mandatory": true}, {"tag": "Destination", "field_id": "Destination", "type": "*composed", "value": "~9", "mandatory": true}, {"tag": "SetupTime", "field_id": "SetupTime", "type": "*composed", "value": "~6", "mandatory": true}, {"tag": "AnswerTime", "field_id": "AnswerTime", "type": "*composed", "value": "~6", "mandatory": true}, {"tag": "Usage", "field_id": "Usage", "type": "*composed", "mandatory": true}, {"tag": "DisconnectCause", "field_id": "DisconnectCause", "type": "*composed", "value": "~4; ;~5", "mandatory": true}, {"tag": "DialogId", "field_id": "DialogId", "type": "*composed", "value": "~11"}, ], }, ], }