Update loaderS with *stats *thresholds *suppliers

This commit is contained in:
TeoV
2018-04-12 10:25:41 -04:00
committed by Dan Christian Bogos
parent 6dce7c66eb
commit c0e25dff39
7 changed files with 859 additions and 79 deletions

View File

@@ -117,8 +117,8 @@
"loaders": [
{
"id": "FilterResourceLoader", // identifier of the Loader
"enabled": false, // starts as service: <true|false>.
"id": "TeoLoader", // identifier of the Loader
"enabled": true, // starts as service: <true|false>.
"dry_run": false, // do not send the CDRs to CDRS, just parse them
"run_delay": 0, // sleep interval in seconds between consecutive runs, 0 to use automation via inotify
"lock_filename": ".cgr.lock", // Filename containing concurrency lock in case of delayed processing
@@ -129,18 +129,6 @@
"tp_in_dir": "/tmp/In", // absolute path towards the directory where the CDRs are stored
"tp_out_dir": "/tmp/Out", // absolute path towards the directory where processed CDRs will be moved
"data":[
{
"type": "*filters", // data source type
"file_name": "Filters.csv", // file name in the tp_in_dir
"fields": [
{"tag": "Tenant", "field_id": "Tenant", "type": "*composed", "value": "0", "mandatory": true},
{"tag": "ID", "field_id": "ID", "type": "*composed", "value": "1", "mandatory": true},
{"tag": "FilterType", "field_id": "FilterType", "type": "*composed", "value": "2"},
{"tag": "FilterFieldName", "field_id": "FilterFieldName", "type": "*composed", "value": "3"},
{"tag": "FilterFieldValues", "field_id": "FilterFieldValues", "type": "*composed", "value": "4"},
{"tag": "ActivationInterval", "field_id": "ActivationInterval", "type": "*composed", "value": "5"},
],
},
{
"type": "*resources", // data source type
"file_name": "Resources.csv", // file name in the tp_in_dir
@@ -158,10 +146,96 @@
{"tag": "ThresholdIDs", "field_id": "ThresholdIDs", "type": "*composed", "value": "10"},
],
},
{
"type": "*stats", // data source type
"file_name": "Stats.csv", // file name in the tp_in_dir
"fields": [
{"tag": "Tenant", "field_id": "Tenant", "type": "*composed", "value": "0", "mandatory": true},
{"tag": "ID", "field_id": "ID", "type": "*composed", "value": "1", "mandatory": true},
{"tag": "FilterIDs", "field_id": "FilterIDs", "type": "*composed", "value": "2"},
{"tag": "ActivationInterval", "field_id": "ActivationInterval", "type": "*composed", "value": "3"},
{"tag": "QueueLength", "field_id": "QueueLength", "type": "*composed", "value": "4"},
{"tag": "TTL", "field_id": "TTL", "type": "*composed", "value": "5"},
{"tag": "Metrics", "field_id": "Metrics", "type": "*composed", "value": "6"},
{"tag": "MetricParams", "field_id": "Parameters", "type": "*composed", "value": "7"},
{"tag": "Blocker", "field_id": "Blocker", "type": "*composed", "value": "8"},
{"tag": "Stored", "field_id": "Stored", "type": "*composed", "value": "9"},
{"tag": "Weight", "field_id": "Weight", "type": "*composed", "value": "10"},
{"tag": "MinItems", "field_id": "MinItems", "type": "*composed", "value": "11"},
{"tag": "ThresholdIDs", "field_id": "ThresholdIDs", "type": "*composed", "value": "12"},
],
},
{
"type": "*thresholds", // data source type
"file_name": "Thresholds.csv", // file name in the tp_in_dir
"fields": [
{"tag": "Tenant", "field_id": "Tenant", "type": "*composed", "value": "0", "mandatory": true},
{"tag": "ID", "field_id": "ID", "type": "*composed", "value": "1", "mandatory": true},
{"tag": "FilterIDs", "field_id": "FilterIDs", "type": "*composed", "value": "2"},
{"tag": "ActivationInterval", "field_id": "ActivationInterval", "type": "*composed", "value": "3"},
{"tag": "Recurrent", "field_id": "Recurrent", "type": "*composed", "value": "4"},
{"tag": "MinHits", "field_id": "MinHits", "type": "*composed", "value": "5"},
{"tag": "MinSleep", "field_id": "MinSleep", "type": "*composed", "value": "6"},
{"tag": "Blocker", "field_id": "Blocker", "type": "*composed", "value": "7"},
{"tag": "Weight", "field_id": "Weight", "type": "*composed", "value": "8"},
{"tag": "ActionIDs", "field_id": "ActionIDs", "type": "*composed", "value": "9"},
{"tag": "Async", "field_id": "Async", "type": "*composed", "value": "10"},
],
},
{
"type": "*suppliers", // data source type
"file_name": "Suppliers.csv", // file name in the tp_in_dir
"fields": [
{"tag": "Tenant", "field_id": "Tenant", "type": "*composed", "value": "0", "mandatory": true},
{"tag": "ID", "field_id": "ID", "type": "*composed", "value": "1", "mandatory": true},
{"tag": "FilterIDs", "field_id": "FilterIDs", "type": "*composed", "value": "2"},
{"tag": "ActivationInterval", "field_id": "ActivationInterval", "type": "*composed", "value": "3"},
{"tag": "Sorting", "field_id": "Sorting", "type": "*composed", "value": "4"},
{"tag": "SortingParamameters", "field_id": "SortingParamameters", "type": "*composed", "value": "5"},
{"tag": "SupplierID", "field_id": "SupplierID", "type": "*composed", "value": "6"},
{"tag": "SupplierFilterIDs", "field_id": "SupplierFilterIDs", "type": "*composed", "value": "7"},
{"tag": "SupplierAccountIDs", "field_id": "SupplierAccountIDs", "type": "*composed", "value": "8"},
{"tag": "SupplierRatingPlanIDs", "field_id": "SupplierRatingPlanIDs", "type": "*composed", "value": "9"},
{"tag": "SupplierResourceIDs", "field_id": "SupplierResourceIDs", "type": "*composed", "value": "10"},
{"tag": "SupplierStatIDs", "field_id": "SupplierStatIDs", "type": "*composed", "value": "11"},
{"tag": "SupplierWeight", "field_id": "SupplierWeight", "type": "*composed", "value": "12"},
{"tag": "SupplierBlocker", "field_id": "SupplierBlocker", "type": "*composed", "value": "13"},
{"tag": "SupplierParameters", "field_id": "SupplierParameters", "type": "*composed", "value": "14"},
{"tag": "Weight", "field_id": "Weight", "type": "*composed", "value": "15"},
],
},
],
},
{
"id": "FilterLoader", // identifier of the Loader
"enabled": true, // starts as service: <true|false>.
"dry_run": false, // do not send the CDRs to CDRS, just parse them
"run_delay": 0, // sleep interval in seconds between consecutive runs, 0 to use automation via inotify
"lock_filename": ".cgr.lock", // Filename containing concurrency lock in case of delayed processing
"caches_conns": [
{"address": "*internal"}, // address where to reach the CacheS for data reload, empty for no reloads <""|*internal|x.y.z.y:1234>
],
"field_separator": ",", // separator used in case of csv files
"tp_in_dir": "/tmp/FilterIn", // absolute path towards the directory where the CDRs are stored
"tp_out_dir": "/tmp/FilterOut", // absolute path towards the directory where processed CDRs will be moved
"data":[
{
"type": "*filters", // data source type
"file_name": "Filters.csv", // file name in the tp_in_dir
"fields": [
{"tag": "Tenant", "field_id": "Tenant", "type": "*composed", "value": "0", "mandatory": true},
{"tag": "ID", "field_id": "ID", "type": "*composed", "value": "1", "mandatory": true},
{"tag": "FilterType", "field_id": "FilterType", "type": "*composed", "value": "2"},
{"tag": "FilterFieldName", "field_id": "FilterFieldName", "type": "*composed", "value": "3"},
{"tag": "FilterFieldValues", "field_id": "FilterFieldValues", "type": "*composed", "value": "4"},
{"tag": "ActivationInterval", "field_id": "ActivationInterval", "type": "*composed", "value": "5"},
],
},
],
},
],
"cdrstats": {
"enabled": true,
},