diff --git a/data/conf/cgrates/cgrates.json b/data/conf/cgrates/cgrates.json index 11d078e55..41ee0b50f 100644 --- a/data/conf/cgrates/cgrates.json +++ b/data/conf/cgrates/cgrates.json @@ -8,6 +8,7 @@ // "general": { // "node_id": "", // identifier of this instance in the cluster, if empty it will be autogenerated +// "logger":"*syslog", // controls the destination of logs <*syslog|*stdout> // "log_level": 6, // control the level of messages logged (0-emerg to 7-debug) // "http_skip_tls_verify": false, // if enabled Http Client will accept any TLS certificate // "rounding_decimals": 5, // system level precision for floats @@ -29,43 +30,6 @@ // }, -// "cache":{ -// "destinations": {"limit": 10000, "ttl":"0s", "precache": false}, // control destination caching -// "reverse_destinations": {"limit": 10000, "ttl":"0s", "precache": false}, // control reverse destinations index caching -// "rating_plans": {"limit": 10000, "ttl":"0s","precache": true}, // control rating plans caching -// "rating_profiles": {"limit": 10000, "ttl":"0s", "precache": false}, // control rating profiles caching -// "lcr": {"limit": 10000, "ttl":"0s", "precache": false}, // control lcr rules caching -// "cdr_stats": {"limit": 10000, "ttl":"0s", "precache": false}, // control cdr stats queues caching -// "actions": {"limit": 10000, "ttl":"0s", "precache": false}, // control actions caching -// "action_plans": {"limit": 10000, "ttl":"0s", "precache": false}, // control action plans caching -// "account_action_plans": {"limit": 10000, "ttl":"0s", "precache": false}, // control account action plans index caching -// "action_triggers": {"limit": 10000, "ttl":"0s", "precache": false}, // control action triggers caching -// "shared_groups": {"limit": 10000, "ttl":"0s", "precache": false}, // control shared groups caching -// "aliases": {"limit": 10000, "ttl":"0s", "precache": false}, // control aliases caching -// "reverse_aliases": {"limit": 10000, "ttl":"0s", "precache": false}, // control reverse aliases index caching -// "derived_chargers": {"limit": 10000, "ttl":"0s", "precache": false}, // control derived charging rule caching -// "resource_limits": {"limit": 10000, "ttl":"0s", "precache": false}, // control resource limits caching -// "timings": {"limit": 10000, "ttl":"0s", "precache": false}, // control timings caching -// "supplier_profiles": {"limit": 10000, "ttl":"0s", "precache": true}, // control supplier_profile caching -// "attribute_profiles": {"limit": 10000, "ttl":"0s", "precache": true}, // control attribute_profiles caching -// }, - - -// "listen": { -// "rpc_json": "127.0.0.1:2012", // RPC JSON listening address -// "rpc_gob": "127.0.0.1:2013", // RPC GOB listening address -// "http": "127.0.0.1:2080", // HTTP listening address -// }, - - -// "http": { // HTTP server configuration -// "json_rpc_url": "/jsonrpc", // JSON RPC relative URL ("" to disable) -// "ws_url": "/ws", // WebSockets relative URL ("" to disable) -// "use_basic_auth": false, // use basic authentication -// "auth_users": {} // basic authentication usernames and base64-encoded passwords (eg: { "username1": "cGFzc3dvcmQ=", "username2": "cGFzc3dvcmQy "}) -// }, - - // "data_db": { // database used to store runtime data (eg: accounts, cdr stats) // "db_type": "redis", // data_db type: // "db_host": "127.0.0.1", // data_db host address @@ -91,14 +55,18 @@ // }, -// "rals": { -// "enabled": false, // enable Rater service: -// "cdrstats_conns": [], // address where to reach the cdrstats service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> -// "pubsubs_conns": [], // address where to reach the pubusb service, empty to disable pubsub functionality: <""|*internal|x.y.z.y:1234> -// "users_conns": [], // address where to reach the user service, empty to disable user profile functionality: <""|*internal|x.y.z.y:1234> -// "aliases_conns": [], // address where to reach the aliases service, empty to disable aliases functionality: <""|*internal|x.y.z.y:1234> -// "rp_subject_prefix_matching": false, // enables prefix matching for the rating profile subject -// "lcr_subject_prefix_matching": false // enables prefix matching for the lcr subject +// "listen": { +// "rpc_json": "127.0.0.1:2012", // RPC JSON listening address +// "rpc_gob": "127.0.0.1:2013", // RPC GOB listening address +// "http": "127.0.0.1:2080", // HTTP listening address +// }, + + +// "http": { // HTTP server configuration +// "json_rpc_url": "/jsonrpc", // JSON RPC relative URL ("" to disable) +// "ws_url": "/ws", // WebSockets relative URL ("" to disable) +// "use_basic_auth": false, // use basic authentication +// "auth_users": {} // basic authentication usernames and base64-encoded passwords (eg: { "username1": "cGFzc3dvcmQ=", "username2": "cGFzc3dvcmQy "}) // }, @@ -107,6 +75,70 @@ // }, +// "cache":{ +// "destinations": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // destination caching +// "reverse_destinations": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // reverse destinations index caching +// "rating_plans": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // rating plans caching +// "rating_profiles": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // rating profiles caching +// "lcr_rules": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // lcr rules caching +// "cdr_stats": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // cdr stats queues caching +// "actions": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // actions caching +// "action_plans": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // action plans caching +// "account_action_plans": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // account action plans index caching +// "action_triggers": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // action triggers caching +// "shared_groups": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // shared groups caching +// "aliases": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // aliases caching +// "reverse_aliases": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // reverse aliases index caching +// "derived_chargers": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // derived charging rule caching +// "timings": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // timings caching +// "resource_profiles": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control resource profiles caching +// "resources": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control resources caching +// "event_resources": {"limit": -1, "ttl": "1m", "static_ttl": false}, // matching resources to events +// "statqueue_profiles": {"limit": -1, "ttl": "1m", "static_ttl": false, "precache": false}, // statqueue profiles +// "statqueues": {"limit": -1, "ttl": "1m", "static_ttl": false, "precache": false}, // statqueues with metrics +// "threshold_profiles": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control threshold profiles caching +// "thresholds": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control thresholds caching +// "filters": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control filters caching +// "supplier_profiles": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control supplier profile caching +// "attribute_profiles": {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control attribute profile caching +// "resource_filter_indexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control resource filter indexes caching +// "resource_filter_revindexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control resource filter reverse indexes caching +// "stat_filter_indexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control stat filter indexes caching +// "stat_filter_revindexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control stat filter reverse indexes caching +// "threshold_filter_indexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control threshold filter indexes caching +// "threshold_filter_revindexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control threshold filter reverse indexes caching +// "supplier_filter_indexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control supplier filter indexes caching +// "supplier_filter_revindexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control supplier filter reverse indexes caching +// "attribute_filter_indexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control attribute filter indexes caching +// "attribute_filter_revindexes" : {"limit": -1, "ttl": "", "static_ttl": false, "precache": false}, // control attribute filter reverse indexes caching +// }, + + +// "filters": { // Filters configuration (*new) +// "stats_conns": [], // address where to reach the stat service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> +// }, + + +// "rals": { +// "enabled": false, // enable Rater service: +// "thresholds_conns": [], // address where to reach the thresholds service, empty to disable thresholds functionality: <""|*internal|x.y.z.y:1234> +// "cdrstats_conns": [], // address where to reach the cdrstats service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> +// "stats_conns": [], // address where to reach the stat service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> +// "pubsubs_conns": [], // address where to reach the pubusb service, empty to disable pubsub functionality: <""|*internal|x.y.z.y:1234> +// "attributes_conns": [], // address where to reach the attribute service, empty to disable attributes functionality: <""|*internal|x.y.z.y:1234> +// "users_conns": [], // address where to reach the user service, empty to disable user profile functionality: <""|*internal|x.y.z.y:1234> +// "aliases_conns": [], // address where to reach the aliases service, empty to disable aliases functionality: <""|*internal|x.y.z.y:1234> +// "rp_subject_prefix_matching": false, // enables prefix matching for the rating profile subject +// "lcr_subject_prefix_matching": false, // enables prefix matching for the lcr subject +// "max_computed_usage": { // do not compute usage higher than this, prevents memory overload +// "*any": "189h", +// "*voice": "72h", +// "*data": "107374182400", +// "*sms": "10000" +// }, +// }, + + // "cdrs": { // "enabled": false, // start the CDR Server service: // "extra_fields": [], // extra fields to store in CDRs for non-generic CDRs @@ -116,9 +148,12 @@ // {"address": "*internal"} // address where to reach the Rater for cost calculation, empty to disable functionality: <""|*internal|x.y.z.y:1234> // ], // "pubsubs_conns": [], // address where to reach the pubusb service, empty to disable pubsub functionality: <""|*internal|x.y.z.y:1234> +// "attributes_conns": [], // address where to reach the attribute service, empty to disable attributes functionality: <""|*internal|x.y.z.y:1234> // "users_conns": [], // address where to reach the user service, empty to disable user profile functionality: <""|*internal|x.y.z.y:1234> // "aliases_conns": [], // address where to reach the aliases service, empty to disable aliases functionality: <""|*internal|x.y.z.y:1234> -// "cdrstats_conns": [], // address where to reach the cdrstats service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> +// "cdrstats_conns": [], // address where to reach the cdrstats service, empty to disable cdrstats functionality: <""|*internal|x.y.z.y:1234> +// "thresholds_conns": [], // address where to reach the thresholds service, empty to disable thresholds functionality: <""|*internal|x.y.z.y:1234> +// "stats_conns": [], // address where to reach the stat service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> // "online_cdr_exports":[], // list of CDRE profiles to use for real-time CDR exports // }, @@ -142,7 +177,6 @@ // {"tag":"TOR", "type": "*composed", "value": "ToR"}, // {"tag":"OriginID", "type": "*composed", "value": "OriginID"}, // {"tag":"RequestType", "type": "*composed", "value": "RequestType"}, -// {"tag":"Direction", "type": "*composed", "value": "Direction"}, // {"tag":"Tenant", "type": "*composed", "value": "Tenant"}, // {"tag":"Category", "type": "*composed", "value": "Category"}, // {"tag":"Account", "type": "*composed", "value": "Account"}, @@ -192,7 +226,6 @@ // {"tag": "TOR", "field_id": "ToR", "type": "*composed", "value": "2", "mandatory": true}, // {"tag": "OriginID", "field_id": "OriginID", "type": "*composed", "value": "3", "mandatory": true}, // {"tag": "RequestType", "field_id": "RequestType", "type": "*composed", "value": "4", "mandatory": true}, -// {"tag": "Direction", "field_id": "Direction", "type": "*composed", "value": "5", "mandatory": true}, // {"tag": "Tenant", "field_id": "Tenant", "type": "*composed", "value": "6", "mandatory": true}, // {"tag": "Category", "field_id": "Category", "type": "*composed", "value": "7", "mandatory": true}, // {"tag": "Account", "field_id": "Account", "type": "*composed", "value": "8", "mandatory": true}, @@ -209,7 +242,6 @@ // {"tag": "TOR", "type": "*composed", "value": "ToR"}, // {"tag": "OriginID", "type": "*composed", "value": "OriginID"}, // {"tag": "RequestType", "type": "*composed", "value": "RequestType"}, -// {"tag": "Direction", "type": "*composed", "value": "Direction"}, // {"tag": "Tenant", "type": "*composed", "value": "Tenant"}, // {"tag": "Category", "type": "*composed", "value": "Category"}, // {"tag": "Account", "type": "*composed", "value": "Account"}, @@ -224,16 +256,19 @@ // ], -// "sm_generic": { -// "enabled": false, // starts SessionManager service: +// "sessions": { +// "enabled": false, // starts session manager service: // "listen_bijson": "127.0.0.1:2014", // address where to listen for bidirectional JSON-RPC requests // "rals_conns": [ -// {"address": "*internal"} // address where to reach the Rater <""|*internal|127.0.0.1:2013> +// {"address": "*internal"} // address where to reach the RALs <""|*internal|127.0.0.1:2013> // ], // "cdrs_conns": [ // {"address": "*internal"} // address where to reach CDR Server, empty to disable CDR capturing <*internal|x.y.z.y:1234> // ], -// "smg_replication_conns": [], // replicate sessions towards these SMGs +// "resources_conns": [], // address where to reach the ResourceS <""|*internal|127.0.0.1:2013> +// "suppliers_conns": [], // address where to reach the SupplierS <""|*internal|127.0.0.1:2013> +// "attributes_conns": [], // address where to reach the AttributeS <""|*internal|127.0.0.1:2013> +// "session_replication_conns": [], // replicate sessions towards these session services // "debit_interval": "0s", // interval to perform debits on. // "min_call_duration": "0s", // only authorize calls with allowed duration higher than this // "max_call_duration": "3h", // maximum call duration a prepaid call can last @@ -242,11 +277,15 @@ // //"session_ttl_last_used": "", // tweak LastUsed for sessions timing-out, not defined by default // //"session_ttl_usage": "", // tweak Usage for sessions timing-out, not defined by default // "session_indexes": [], // index sessions based on these fields for GetActiveSessions API +// "client_protocol": 1.0, // version of protocol to use when acting as JSON-PRC client <"0","1.0"> // }, -// "sm_asterisk": { -// "enabled": false, // starts Asterisk SessionManager service: +// "asterisk_agent": { +// "enabled": false, // starts the Asterisk agent: +// "sessions_conns": [ +// {"address": "*internal"} // connection towards session service: <*internal> +// ], // "create_cdr": false, // create CDR out of events and sends it to CDRS component // "asterisk_conns":[ // instantiate connections to multiple Asterisk servers // {"address": "127.0.0.1:8088", "user": "cgrates", "password": "CGRateS.org", "connect_attempts": 3,"reconnects": 5} @@ -254,25 +293,16 @@ // }, -// "sm_freeswitch": { -// "enabled": false, // starts SessionManager service: -// "rals_conns": [ -// {"address": "*internal"} // address where to reach the Rater <""|*internal|127.0.0.1:2013> +// "freeswitch_agent": { +// "enabled": false, // starts the FreeSWITCH agent: +// "sessions_conns": [ +// {"address": "*internal"} // connection towards session service: <*internal> // ], -// "cdrs_conns": [ -// {"address": "*internal"} // address where to reach CDR Server, empty to disable CDR capturing <*internal|x.y.z.y:1234> -// ], -// "rls_conns": [], // address where to reach the ResourceLimiter service, empty to disable functionality: <""|*internal|x.y.z.y:1234> +// "subscribe_park": true, // subscribe via fsock to receive park events // "create_cdr": false, // create CDR out of events and sends them to CDRS component // "extra_fields": [], // extra fields to store in auth/CDRs when creating them -// "debit_interval": "10s", // interval to perform debits on. -// "min_call_duration": "0s", // only authorize calls with allowed duration higher than this -// "max_call_duration": "3h", // maximum call duration a prepaid call can last -// "min_dur_low_balance": "5s", // threshold which will trigger low balance warnings for prepaid calls (needs to be lower than debit_interval) -// "low_balance_ann_file": "", // file to be played when low balance is reached for prepaid calls // "empty_balance_context": "", // if defined, prepaid calls will be transferred to this context on empty balance // "empty_balance_ann_file": "", // file to be played before disconnecting prepaid calls on empty balance (applies only if no context defined) -// "subscribe_park": true, // subscribe via fsock to receive park events // "channel_sync_interval": "5m", // sync channels with freeswitch regularly // "max_wait_connection": "2s", // maximum duration to wait for a connection to be retrieved from the pool // "event_socket_conns":[ // instantiate connections to multiple FreeSWITCH servers @@ -281,19 +311,13 @@ // }, -// "sm_kamailio": { +// "kamailio_agent": { // "enabled": false, // starts SessionManager service: -// "rals_conns": [ -// {"address": "*internal"} // address where to reach the Rater <""|*internal|127.0.0.1:2013> +// "sessions_conns": [ +// {"address": "*internal"} // connection towards session service: <*internal> // ], -// "cdrs_conns": [ -// {"address": "*internal"} // address where to reach CDR Server, empty to disable CDR capturing <*internal|x.y.z.y:1234> -// ], -// "rls_conns": [], // address where to reach the ResourceLimiter service, empty to disable functionality: <""|*internal|x.y.z.y:1234> // "create_cdr": false, // create CDR out of events and sends them to CDRS component -// "debit_interval": "10s", // interval to perform debits on. -// "min_call_duration": "0s", // only authorize calls with allowed duration higher than this -// "max_call_duration": "3h", // maximum call duration a prepaid call can last +// "timezone": "", // timezone of the Kamailio server // "evapi_conns":[ // instantiate connections to multiple Kamailio servers // {"address": "127.0.0.1:8448", "reconnects": 5} // ], @@ -304,11 +328,11 @@ // "enabled": false, // enables the diameter agent: // "listen": "127.0.0.1:3868", // address where to listen for diameter requests // "dictionaries_dir": "/usr/share/cgrates/diameter/dict/", // path towards directory holding additional dictionaries to load -// "sm_generic_conns": [ -// {"address": "*internal"} // connection towards SMG component for session management +// "sessions_conns": [ +// {"address": "*internal"} // connection towards SessionService // ], // "pubsubs_conns": [], // address where to reach the pubusb service, empty to disable pubsub functionality: <""|*internal|x.y.z.y:1234> -// "create_cdr": true, // create CDR out of CCR terminate and send it to SMG component +// "create_cdr": true, // create CDR out of CCR terminate and send it to SessionS // "cdr_requires_session": true, // only create CDR if there is an active session at terminate // "debit_interval": "5m", // interval for CCR updates // "timezone": "", // timezone for timestamps where not specified, empty for general defaults <""|UTC|Local|$IANA_TZ_DB> @@ -331,10 +355,10 @@ // "client_dictionaries": { // per client path towards directory holding additional dictionaries to load (extra to RFC) // "*default": "/usr/share/cgrates/radius/dict/", // key represents the client IP or catch-all <*default|$client_ip> // }, -// "sm_generic_conns": [ -// {"address": "*internal"} // connection towards SMG component for session management +// "sessions_conns": [ +// {"address": "*internal"} // connection towards SessionService // ], -// "create_cdr": true, // create CDR out of Accounting-Stop and send it to SMG component +// "create_cdr": true, // create CDR out of Accounting-Stop and send it to SessionS // "cdr_requires_session": false, // only create CDR if there is an active session at terminate // "timezone": "", // timezone for timestamps where not specified, empty for general defaults <""|UTC|Local|$IANA_TZ_DB> // "request_processors": [], @@ -342,32 +366,70 @@ // "pubsubs": { -// "enabled": false, // starts PubSub service: . +// "enabled": false, // starts PubSub service: . // }, // "aliases": { -// "enabled": false, // starts Aliases service: . +// "enabled": false, // starts Aliases service: . // }, // "users": { -// "enabled": false, // starts User service: . -// "indexes": [], // user profile field indexes +// "enabled": false, // starts User service: . +// "indexes": [], // user profile field indexes // }, -// "rls": { +// "attributes": { // Attribute service +// "enabled": false, // starts attribute service: . +// //"string_indexed_fields": [], // query indexes based on these fields for faster processing +// "prefix_indexed_fields": [], // query indexes based on these fields for faster processing +// }, + + +// "resources": { // Resource service (*new) // "enabled": false, // starts ResourceLimiter service: . -// "cdrstats_conns": [], // address where to reach the cdrstats service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> -// "cache_dump_interval": "0s", // dump cache regularly to dataDB, 0 - dump at start/shutdown: <""|*never|$dur> +// "store_interval": "", // dump cache regularly to dataDB, 0 - dump at start/shutdown: <""|$dur> +// "thresholds_conns": [], // address where to reach the thresholds service, empty to disable thresholds functionality: <""|*internal|x.y.z.y:1234> +// //"string_indexed_fields": [], // query indexes based on these fields for faster processing +// "prefix_indexed_fields": [], // query indexes based on these fields for faster processing +// }, + + +// "stats": { // Stat service (*new) +// "enabled": false, // starts Stat service: . +// "store_interval": "", // dump cache regularly to dataDB, 0 - dump at start/shutdown: <""|$dur> +// "thresholds_conns": [], // address where to reach the thresholds service, empty to disable thresholds functionality: <""|*internal|x.y.z.y:1234> +// //"string_indexed_fields": [], // query indexes based on these fields for faster processing +// "prefix_indexed_fields": [], // query indexes based on these fields for faster processing +// }, + + +// "thresholds": { // Threshold service (*new) +// "enabled": false, // starts ThresholdS service: . +// "store_interval": "", // dump cache regularly to dataDB, 0 - dump at start/shutdown: <""|$dur> +// //"string_indexed_fields": [], // query indexes based on these fields for faster processing +// "prefix_indexed_fields": [], // query indexes based on these fields for faster processing +// }, + + +// "suppliers": { // Supplier service (*new) +// "enabled": false, // starts SupplierS service: . +// //"string_indexed_fields": [], // query indexes based on these fields for faster processing +// "prefix_indexed_fields": [], // query indexes based on these fields for faster processing +// "rals_conns": [ +// {"address": "*internal"}, // address where to reach the RALs for cost/accounting <*internal> +// ], +// "resources_conns": [], // address where to reach the Resource service, empty to disable functionality: <""|*internal|x.y.z.y:1234> +// "stats_conns": [], // address where to reach the Stat service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234> // }, // "mailer": { -// "server": "localhost", // the server to use when sending emails out -// "auth_user": "cgrates", // authenticate to email server using this user -// "auth_password": "CGRateS.org", // authenticate to email server with this password +// "server": "localhost", // the server to use when sending emails out +// "auth_user": "cgrates", // authenticate to email server using this user +// "auth_password": "CGRateS.org", // authenticate to email server with this password // "from_address": "cgr-mailer@localhost.localdomain" // from address used when sending emails out // }, @@ -401,4 +463,5 @@ // "tax_exemption_code_list": "", // template extracting tax exemption code list out of StoredCdr; <$RSRFields> // }, -} + +} \ No newline at end of file