Added integration test for loader cache

This commit is contained in:
Trial97
2021-12-03 12:24:03 +02:00
committed by Dan Christian Bogos
parent ed69df5dfd
commit bcfe27b878
12 changed files with 1565 additions and 4 deletions

View File

@@ -0,0 +1,414 @@
{
"general": {
"log_level": 7,
"reply_timeout": "30s",
},
"data_db": {
"db_type": "*internal",
},
"stor_db": {
"db_type": "*internal"
},
"loaders": [
{
"id": "ParseLoader",
"enabled": true,
"tp_in_dir": "/tmp/In",
"tp_out_dir": "/tmp/parsed",
"run_delay": "-1",
"action": "*parse",
"data":[
{
"id": "Timings",
"type": "*rate_profiles",
"file_name": "Timings.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Hour", "type": "*constant", "value": "*"},
{"path": "*tmp.Hour", "type": "*variable", "value": "~*req.5:s/(\\d+):\\d+:\\d+/$1/", "filters":["*notempty:~*req.5:","*notstring:~*req.5:00:00;00:00:00"]},
{"path": "*tmp.Minute", "type": "*constant", "value": "*"},
{"path": "*tmp.Hour", "type": "*variable", "value": "~*req.5:s/\\d+:(\\d+):\\d+/$1/", "filters":["*notempty:~*req.5:","*notstring:~*req.5:00:00;00:00:00"]},
{"path": "*tmp.MonthDays", "type": "*constant", "value": "*"},
{"path": "*tmp.MonthDays", "type": "*variable", "value": "~*req.3{*split&*join:,}","filters":["*notstring:~*req.3:*any"]},
{"path": "*tmp.Month", "type": "*constant", "value": "*"},
{"path": "*tmp.Month", "type": "*variable", "value": "~*req.2{*split&*join:,}","filters":["*notstring:~*req.2:*any"]},
{"path": "*tmp.WeekDays", "type": "*constant", "value": "*"},
{"path": "*tmp.WeekDays", "type": "*variable", "value": "~*req.4{*split&*join:,}","filters":["*notstring:~*req.4:*any"]},
{"path": "*uch.tmg_<~*tmp.ID>", "type": "*variable", "value": "~*tmp.Minute; ;~*tmp.Hour; ;~*tmp.MonthDays; ;~*tmp.Month; ;~*tmp.WeekDays"},
]
},
{
"id": "Destinations",
"type": "*rate_profiles",
"file_name": "Destinations.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*uch.dst_<~*tmp.ID>", "type": "*composed", "value": "`;`;~*req.1", "filters":["*exists:~*uch.dst_<~*tmp.ID>:"]},
{"path": "*uch.dst_<~*tmp.ID>", "type": "*variable", "value": "~*req.1", "filters":["*notexists:~*uch.dst_<~*tmp.ID>:"]},
]
},
{
"id": "Rates",
"type": "*rate_profiles",
"file_name": "Rates.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Data", "type": "*generic", "value": "~*uch.rate_<~*tmp.ID>","filters":["*exists:~*uch.rate_<~*tmp.ID>:"]},
{"path": "*tmp.Idx", "type": "*constant", "value": "0"},
{"path": "*tmp.Idx", "type": "*variable", "value": "~*tmp.Data{*len}","filters":["*exists:~*tmp.Data:"]},
{"path": "*tmp.Data.<~*tmp.Idx>.RateIntervalStart", "type": "*variable", "value": "~*req.5"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateFixedFee", "type": "*variable", "value": "~*req.1"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateRecurrentFee", "type": "*variable", "value": "~*req.2"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateUnit", "type": "*variable", "value": "~*req.3"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateIncrement", "type": "*variable", "value": "~*req.4"},
{"path": "*uch.rate_<~*tmp.ID>", "type": "*generic", "value": "~*tmp.Data"},
]
},
{
"id": "DestinationRates",
"type": "*rate_profiles",
"file_name": "DestinationRates.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*uch.dst_rate_<~*tmp.ID>.Filters", "type": "*variable", "value": "`*prefix:~*req.Destination:`;~*uch.dst_<~*req.1>"},
{"path": "*uch.dst_rate_<~*tmp.ID>.RatesTag", "type": "*variable", "value": "~*req.2"},
]
},
{
"id": "RatingPlans",
"type": "*rate_profiles",
"file_name": "RatingPlans.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Data", "type": "*generic", "value": "~*uch.rate_plans_<~*tmp.ID>","filters":["*exists:~*uch.rate_plans_<~*tmp.ID>:"]},
{"path": "*tmp.Idx", "type": "*constant", "value": "0"},
{"path": "*tmp.Idx", "type": "*variable", "value": "~*tmp.Data{*len}","filters":["*exists:~*tmp.Data:"]},
{"path": "*tmp.Data.<~*tmp.Idx>.TimingTag", "type": "*variable", "value": "~*uch.tmg_<~*req.2>"},
{"path": "*tmp.Data.<~*tmp.Idx>.Weight", "type": "*variable", "value": "~*req.3"},
{"path": "*tmp.Data.<~*tmp.Idx>.DestinationRatesId", "type": "*variable", "value": "~*req.1"},
{"path": "*uch.rate_plans_<~*tmp.ID>", "type": "*generic", "value": "~*tmp.Data"},
]
}
]
},
{
"id": "StoreLoader",
"enabled": true,
"tp_in_dir": "/tmp/parsed",
"tp_out_dir": "/tmp/Out",
"run_delay": "-1",
"action": "*store",
"data":[
{
"id": "RatingProfiles",
"type": "*rate_profiles",
"file_name": "RatingProfiles.csv",
"fields": [
{"path": "Tenant", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "ID", "type": "*variable", "value": "~*req.1;~*req.2", "mandatory": true},
{"path": "FilterIDs", "type": "*variable", "value": "`*ai:~*req.AnswerTime:`;~*req.3;`;*string:~*req.Category:`;~*req.1", "mandatory": true},
{"path": "FilterIDs", "type": "*composed", "value": "`;*string:~*req.Subject:`;~*req.2", "filters":["*notstring:~*req.2:*any"]},
{"path": "*tmp.RatingPlan", "type": "*generic", "value": "~*uch.rate_plans_<~*req.4>", "mandatory": true},
//// RatingPlan 1
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.0.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.0.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.0.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.0.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 2
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 3
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 4
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 5
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 6
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 7
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 8
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 9
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 10
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 11
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 12
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 13
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
]
}
]
}
],
"admins": {
"enabled": true
}
}

View File

@@ -0,0 +1,417 @@
{
"general": {
"log_level": 7,
"reply_timeout": "30s",
},
"data_db": {
"db_type": "mongo",
"db_name": "10",
"db_port": 27017,
},
"stor_db": {
"db_type": "mongo",
"db_name": "cgrates",
"db_port": 27017,
},
"loaders": [
{
"id": "ParseLoader",
"enabled": true,
"tp_in_dir": "/tmp/In",
"tp_out_dir": "/tmp/parsed",
"run_delay": "-1",
"action": "*parse",
"data":[
{
"id": "Timings",
"type": "*rate_profiles",
"file_name": "Timings.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Hour", "type": "*constant", "value": "*"},
{"path": "*tmp.Hour", "type": "*variable", "value": "~*req.5:s/(\\d+):\\d+:\\d+/$1/", "filters":["*notempty:~*req.5:","*notstring:~*req.5:00:00;00:00:00"]},
{"path": "*tmp.Minute", "type": "*constant", "value": "*"},
{"path": "*tmp.Hour", "type": "*variable", "value": "~*req.5:s/\\d+:(\\d+):\\d+/$1/", "filters":["*notempty:~*req.5:","*notstring:~*req.5:00:00;00:00:00"]},
{"path": "*tmp.MonthDays", "type": "*constant", "value": "*"},
{"path": "*tmp.MonthDays", "type": "*variable", "value": "~*req.3{*split&*join:,}","filters":["*notstring:~*req.3:*any"]},
{"path": "*tmp.Month", "type": "*constant", "value": "*"},
{"path": "*tmp.Month", "type": "*variable", "value": "~*req.2{*split&*join:,}","filters":["*notstring:~*req.2:*any"]},
{"path": "*tmp.WeekDays", "type": "*constant", "value": "*"},
{"path": "*tmp.WeekDays", "type": "*variable", "value": "~*req.4{*split&*join:,}","filters":["*notstring:~*req.4:*any"]},
{"path": "*uch.tmg_<~*tmp.ID>", "type": "*variable", "value": "~*tmp.Minute; ;~*tmp.Hour; ;~*tmp.MonthDays; ;~*tmp.Month; ;~*tmp.WeekDays"},
]
},
{
"id": "Destinations",
"type": "*rate_profiles",
"file_name": "Destinations.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*uch.dst_<~*tmp.ID>", "type": "*composed", "value": "`;`;~*req.1", "filters":["*exists:~*uch.dst_<~*tmp.ID>:"]},
{"path": "*uch.dst_<~*tmp.ID>", "type": "*variable", "value": "~*req.1", "filters":["*notexists:~*uch.dst_<~*tmp.ID>:"]},
]
},
{
"id": "Rates",
"type": "*rate_profiles",
"file_name": "Rates.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Data", "type": "*generic", "value": "~*uch.rate_<~*tmp.ID>","filters":["*exists:~*uch.rate_<~*tmp.ID>:"]},
{"path": "*tmp.Idx", "type": "*constant", "value": "0"},
{"path": "*tmp.Idx", "type": "*variable", "value": "~*tmp.Data{*len}","filters":["*exists:~*tmp.Data:"]},
{"path": "*tmp.Data.<~*tmp.Idx>.RateIntervalStart", "type": "*variable", "value": "~*req.5"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateFixedFee", "type": "*variable", "value": "~*req.1"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateRecurrentFee", "type": "*variable", "value": "~*req.2"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateUnit", "type": "*variable", "value": "~*req.3"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateIncrement", "type": "*variable", "value": "~*req.4"},
{"path": "*uch.rate_<~*tmp.ID>", "type": "*generic", "value": "~*tmp.Data"},
]
},
{
"id": "DestinationRates",
"type": "*rate_profiles",
"file_name": "DestinationRates.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*uch.dst_rate_<~*tmp.ID>.Filters", "type": "*variable", "value": "`*prefix:~*req.Destination:`;~*uch.dst_<~*req.1>"},
{"path": "*uch.dst_rate_<~*tmp.ID>.RatesTag", "type": "*variable", "value": "~*req.2"},
]
},
{
"id": "RatingPlans",
"type": "*rate_profiles",
"file_name": "RatingPlans.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Data", "type": "*generic", "value": "~*uch.rate_plans_<~*tmp.ID>","filters":["*exists:~*uch.rate_plans_<~*tmp.ID>:"]},
{"path": "*tmp.Idx", "type": "*constant", "value": "0"},
{"path": "*tmp.Idx", "type": "*variable", "value": "~*tmp.Data{*len}","filters":["*exists:~*tmp.Data:"]},
{"path": "*tmp.Data.<~*tmp.Idx>.TimingTag", "type": "*variable", "value": "~*uch.tmg_<~*req.2>"},
{"path": "*tmp.Data.<~*tmp.Idx>.Weight", "type": "*variable", "value": "~*req.3"},
{"path": "*tmp.Data.<~*tmp.Idx>.DestinationRatesId", "type": "*variable", "value": "~*req.1"},
{"path": "*uch.rate_plans_<~*tmp.ID>", "type": "*generic", "value": "~*tmp.Data"},
]
}
]
},
{
"id": "StoreLoader",
"enabled": true,
"tp_in_dir": "/tmp/parsed",
"tp_out_dir": "/tmp/Out",
"run_delay": "-1",
"action": "*store",
"data":[
{
"id": "RatingProfiles",
"type": "*rate_profiles",
"file_name": "RatingProfiles.csv",
"fields": [
{"path": "Tenant", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "ID", "type": "*variable", "value": "~*req.1;~*req.2", "mandatory": true},
{"path": "FilterIDs", "type": "*variable", "value": "`*ai:~*req.AnswerTime:`;~*req.3;`;*string:~*req.Category:`;~*req.1", "mandatory": true},
{"path": "FilterIDs", "type": "*composed", "value": "`;*string:~*req.Subject:`;~*req.2", "filters":["*notstring:~*req.2:*any"]},
{"path": "*tmp.RatingPlan", "type": "*generic", "value": "~*uch.rate_plans_<~*req.4>", "mandatory": true},
//// RatingPlan 1
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.0.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.0.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.0.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.0.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 2
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 3
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 4
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 5
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 6
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 7
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 8
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 9
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 10
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 11
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 12
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 13
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
]
}
]
}
],
"admins": {
"enabled": true
}
}

View File

@@ -0,0 +1,414 @@
{
"general": {
"log_level": 7,
"reply_timeout": "30s",
},
"data_db": {
"db_type": "redis",
"db_port": 6379,
"db_name": "10",
},
"stor_db": {
"db_password": "CGRateS.org",
},
"loaders": [
{
"id": "ParseLoader",
"enabled": true,
"tp_in_dir": "/tmp/In",
"tp_out_dir": "/tmp/parsed",
"run_delay": "-1",
"action": "*parse",
"data":[
{
"id": "Timings",
"type": "*rate_profiles",
"file_name": "Timings.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Hour", "type": "*constant", "value": "*"},
{"path": "*tmp.Hour", "type": "*variable", "value": "~*req.5:s/(\\d+):\\d+:\\d+/$1/", "filters":["*notempty:~*req.5:","*notstring:~*req.5:00:00;00:00:00"]},
{"path": "*tmp.Minute", "type": "*constant", "value": "*"},
{"path": "*tmp.Hour", "type": "*variable", "value": "~*req.5:s/\\d+:(\\d+):\\d+/$1/", "filters":["*notempty:~*req.5:","*notstring:~*req.5:00:00;00:00:00"]},
{"path": "*tmp.MonthDays", "type": "*constant", "value": "*"},
{"path": "*tmp.MonthDays", "type": "*variable", "value": "~*req.3{*split&*join:,}","filters":["*notstring:~*req.3:*any"]},
{"path": "*tmp.Month", "type": "*constant", "value": "*"},
{"path": "*tmp.Month", "type": "*variable", "value": "~*req.2{*split&*join:,}","filters":["*notstring:~*req.2:*any"]},
{"path": "*tmp.WeekDays", "type": "*constant", "value": "*"},
{"path": "*tmp.WeekDays", "type": "*variable", "value": "~*req.4{*split&*join:,}","filters":["*notstring:~*req.4:*any"]},
{"path": "*uch.tmg_<~*tmp.ID>", "type": "*variable", "value": "~*tmp.Minute; ;~*tmp.Hour; ;~*tmp.MonthDays; ;~*tmp.Month; ;~*tmp.WeekDays"},
]
},
{
"id": "Destinations",
"type": "*rate_profiles",
"file_name": "Destinations.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*uch.dst_<~*tmp.ID>", "type": "*composed", "value": "`;`;~*req.1", "filters":["*exists:~*uch.dst_<~*tmp.ID>:"]},
{"path": "*uch.dst_<~*tmp.ID>", "type": "*variable", "value": "~*req.1", "filters":["*notexists:~*uch.dst_<~*tmp.ID>:"]},
]
},
{
"id": "Rates",
"type": "*rate_profiles",
"file_name": "Rates.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Data", "type": "*generic", "value": "~*uch.rate_<~*tmp.ID>","filters":["*exists:~*uch.rate_<~*tmp.ID>:"]},
{"path": "*tmp.Idx", "type": "*constant", "value": "0"},
{"path": "*tmp.Idx", "type": "*variable", "value": "~*tmp.Data{*len}","filters":["*exists:~*tmp.Data:"]},
{"path": "*tmp.Data.<~*tmp.Idx>.RateIntervalStart", "type": "*variable", "value": "~*req.5"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateFixedFee", "type": "*variable", "value": "~*req.1"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateRecurrentFee", "type": "*variable", "value": "~*req.2"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateUnit", "type": "*variable", "value": "~*req.3"},
{"path": "*tmp.Data.<~*tmp.Idx>.RateIncrement", "type": "*variable", "value": "~*req.4"},
{"path": "*uch.rate_<~*tmp.ID>", "type": "*generic", "value": "~*tmp.Data"},
]
},
{
"id": "DestinationRates",
"type": "*rate_profiles",
"file_name": "DestinationRates.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*uch.dst_rate_<~*tmp.ID>.Filters", "type": "*variable", "value": "`*prefix:~*req.Destination:`;~*uch.dst_<~*req.1>"},
{"path": "*uch.dst_rate_<~*tmp.ID>.RatesTag", "type": "*variable", "value": "~*req.2"},
]
},
{
"id": "RatingPlans",
"type": "*rate_profiles",
"file_name": "RatingPlans.csv",
"fields": [
{"path": "*tmp.ID", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "*tmp.Data", "type": "*generic", "value": "~*uch.rate_plans_<~*tmp.ID>","filters":["*exists:~*uch.rate_plans_<~*tmp.ID>:"]},
{"path": "*tmp.Idx", "type": "*constant", "value": "0"},
{"path": "*tmp.Idx", "type": "*variable", "value": "~*tmp.Data{*len}","filters":["*exists:~*tmp.Data:"]},
{"path": "*tmp.Data.<~*tmp.Idx>.TimingTag", "type": "*variable", "value": "~*uch.tmg_<~*req.2>"},
{"path": "*tmp.Data.<~*tmp.Idx>.Weight", "type": "*variable", "value": "~*req.3"},
{"path": "*tmp.Data.<~*tmp.Idx>.DestinationRatesId", "type": "*variable", "value": "~*req.1"},
{"path": "*uch.rate_plans_<~*tmp.ID>", "type": "*generic", "value": "~*tmp.Data"},
]
}
]
},
{
"id": "StoreLoader",
"enabled": true,
"tp_in_dir": "/tmp/parsed",
"tp_out_dir": "/tmp/Out",
"run_delay": "-1",
"action": "*store",
"data":[
{
"id": "RatingProfiles",
"type": "*rate_profiles",
"file_name": "RatingProfiles.csv",
"fields": [
{"path": "Tenant", "type": "*variable", "value": "~*req.0", "mandatory": true},
{"path": "ID", "type": "*variable", "value": "~*req.1;~*req.2", "mandatory": true},
{"path": "FilterIDs", "type": "*variable", "value": "`*ai:~*req.AnswerTime:`;~*req.3;`;*string:~*req.Category:`;~*req.1", "mandatory": true},
{"path": "FilterIDs", "type": "*composed", "value": "`;*string:~*req.Subject:`;~*req.2", "filters":["*notstring:~*req.2:*any"]},
{"path": "*tmp.RatingPlan", "type": "*generic", "value": "~*uch.rate_plans_<~*req.4>", "mandatory": true},
//// RatingPlan 1
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.0.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.0.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.0.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.0.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:1"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.0.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:1","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 2
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:2"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.1.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:2","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 3
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:3"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.2.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:3","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 4
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:4"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.3.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:4","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 5
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:5"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.4.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:5","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 6
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:6"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.5.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:6","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 7
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:7"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.6.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:7","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 8
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:8"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.7.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:8","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 9
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:9"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.8.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:9","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 10
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:10"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.9.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:10","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 11
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:11"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.10.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:11","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 12
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:12"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.11.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:12","*gte:~*tmp.Rates{*len}:2"]},
//// RatingPlan 13
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].ActivationTimes", "type": "*variable", "value": "~*tmp.RatingPlan.1.TimingTag", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].Weights", "type": "*variable", "value": "`;`;~*tmp.RatingPlan.1.Weight", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].FilterIDs", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.Filters", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "*tmp.RatesTag", "type": "*variable", "value": "~*uch.dst_rate_<~*tmp.RatingPlan.1.DestinationRatesId>.RatesTag", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
{"path": "*tmp.Rates", "type": "*generic", "value": "~*uch.rate_<~*tmp.RatesTag>", "filters":["*gte:~*tmp.RatingPlan{*len}:13"]},
///////////Rates
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.0.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.0.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.0.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.0.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.0.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:1"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.IntervalStart", "type": "*variable", "value": "~*tmp.Rates.1.RateIntervalStart", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"],"new_branch":true},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.FixedFee", "type": "*variable", "value": "~*tmp.Rates.1.RateFixedFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.RecurrentFee", "type": "*variable", "value": "~*tmp.Rates.1.RateRecurrentFee", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Unit", "type": "*variable", "value": "~*tmp.Rates.1.RateUnit", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
{"path": "Rates[<~*req.4;_;~*tmp.RatingPlan.12.DestinationRatesId>].IntervalRates.Increment", "type": "*variable", "value": "~*tmp.Rates.1.RateIncrement", "filters":["*gte:~*tmp.RatingPlan{*len}:13","*gte:~*tmp.Rates{*len}:2"]},
]
}
]
}
],
"admins": {
"enabled": true
}
}

View File

@@ -0,0 +1,11 @@
#Id,DestinationId,RatesTag,RoundingMethod,RoundingDecimals,MaxCost,MaxCostStrategy
DR_1002_20CNT,DST_1002,RT_20CNT,*up,4,0,
DR_1002_10CNT,DST_1002,RT_10CNT,*up,4,0,
DR_1003_20CNT,DST_1003,RT_40CNT,*up,4,0,
DR_1003_10CNT,DST_1003,RT_10CNT,*up,4,0,
DR_FS_40CNT,DST_FS,RT_40CNT,*up,4,0,
DR_FS_10CNT,DST_FS,RT_10CNT,*up,4,0,
DR_SPECIAL_1002,DST_1002,RT_1CNT,*up,4,0,
DR_1007_MAXCOST_DISC,DST_1007,RT_1CNT_PER_SEC,*up,4,0.62,*disconnect
DR_1007_MAXCOST_FREE,DST_1007,RT_1CNT_PER_SEC,*up,4,0.62,*free
DR_GENERIC,*any,RT_GENERIC_1,*up,4,0,
1 #Id DestinationId RatesTag RoundingMethod RoundingDecimals MaxCost MaxCostStrategy
2 DR_1002_20CNT DST_1002 RT_20CNT *up 4 0
3 DR_1002_10CNT DST_1002 RT_10CNT *up 4 0
4 DR_1003_20CNT DST_1003 RT_40CNT *up 4 0
5 DR_1003_10CNT DST_1003 RT_10CNT *up 4 0
6 DR_FS_40CNT DST_FS RT_40CNT *up 4 0
7 DR_FS_10CNT DST_FS RT_10CNT *up 4 0
8 DR_SPECIAL_1002 DST_1002 RT_1CNT *up 4 0
9 DR_1007_MAXCOST_DISC DST_1007 RT_1CNT_PER_SEC *up 4 0.62 *disconnect
10 DR_1007_MAXCOST_FREE DST_1007 RT_1CNT_PER_SEC *up 4 0.62 *free
11 DR_GENERIC *any RT_GENERIC_1 *up 4 0

View File

@@ -0,0 +1,8 @@
#Id,Prefix
DST_1002,1002
DST_1003,1003
DST_1007,1007
DST_FS,10
DST_DE_MOBILE,+49151
DST_DE_MOBILE,+49161
DST_DE_MOBILE,+49171
1 #Id Prefix
2 DST_1002 1002
3 DST_1003 1003
4 DST_1007 1007
5 DST_FS 10
6 DST_DE_MOBILE +49151
7 DST_DE_MOBILE +49161
8 DST_DE_MOBILE +49171

View File

@@ -0,0 +1,15 @@
#Id,ConnectFee,Rate,RateUnit,RateIncrement,GroupIntervalStart
RT_10CNT,0.2,0.1,60s,60s,0s
RT_10CNT,0,0.05,60s,1s,60s
RT_20CNT,0.4,0.2,60s,60s,0s
RT_20CNT,0,0.1,60s,1s,60s
RT_40CNT,0.8,0.4,60s,30s,0s
RT_40CNT,0,0.2,60s,10s,60s
RT_1CNT,0,0.01,60s,60s,0s
RT_1CNT_PER_SEC,0,0.01,1s,1s,0s
RT_GENERIC_1,0,1,1,1,0
1 #Id ConnectFee Rate RateUnit RateIncrement GroupIntervalStart
2 RT_10CNT 0.2 0.1 60s 60s 0s
3 RT_10CNT 0 0.05 60s 1s 60s
4 RT_20CNT 0.4 0.2 60s 60s 0s
5 RT_20CNT 0 0.1 60s 1s 60s
6 RT_40CNT 0.8 0.4 60s 30s 0s
7 RT_40CNT 0 0.2 60s 10s 60s
8 RT_1CNT 0 0.01 60s 60s 0s
9 RT_1CNT_PER_SEC 0 0.01 1s 1s 0s
10 RT_GENERIC_1 0 1 1 1 0

View File

@@ -0,0 +1,21 @@
#Id,DestinationRatesId,TimingTag,Weight
RP_RETAIL1,DR_FS_40CNT,PEAK,10
RP_RETAIL1,DR_FS_10CNT,OFFPEAK_MORNING,10
RP_RETAIL1,DR_FS_10CNT,OFFPEAK_EVENING,10
RP_RETAIL1,DR_FS_10CNT,OFFPEAK_WEEKEND,10
RP_RETAIL1,DR_1007_MAXCOST_DISC,*any,10
RP_RETAIL2,DR_1002_20CNT,PEAK,10
RP_RETAIL2,DR_1003_20CNT,PEAK,10
RP_RETAIL2,DR_FS_40CNT,PEAK,10
RP_RETAIL2,DR_1002_10CNT,OFFPEAK_MORNING,10
RP_RETAIL2,DR_1002_10CNT,OFFPEAK_EVENING,10
RP_RETAIL2,DR_1002_10CNT,OFFPEAK_WEEKEND,10
RP_RETAIL2,DR_1003_10CNT,OFFPEAK_MORNING,10
RP_RETAIL2,DR_1003_10CNT,OFFPEAK_EVENING,10
RP_RETAIL2,DR_1003_10CNT,OFFPEAK_WEEKEND,10
RP_RETAIL2,DR_FS_10CNT,OFFPEAK_MORNING,10
RP_RETAIL2,DR_FS_10CNT,OFFPEAK_EVENING,10
RP_RETAIL2,DR_FS_10CNT,OFFPEAK_WEEKEND,10
RP_RETAIL2,DR_1007_MAXCOST_FREE,*any,10
RP_SPECIAL_1002,DR_SPECIAL_1002,*any,10
RP_GENERIC,DR_GENERIC,*any,10
1 #Id DestinationRatesId TimingTag Weight
2 RP_RETAIL1 DR_FS_40CNT PEAK 10
3 RP_RETAIL1 DR_FS_10CNT OFFPEAK_MORNING 10
4 RP_RETAIL1 DR_FS_10CNT OFFPEAK_EVENING 10
5 RP_RETAIL1 DR_FS_10CNT OFFPEAK_WEEKEND 10
6 RP_RETAIL1 DR_1007_MAXCOST_DISC *any 10
7 RP_RETAIL2 DR_1002_20CNT PEAK 10
8 RP_RETAIL2 DR_1003_20CNT PEAK 10
9 RP_RETAIL2 DR_FS_40CNT PEAK 10
10 RP_RETAIL2 DR_1002_10CNT OFFPEAK_MORNING 10
11 RP_RETAIL2 DR_1002_10CNT OFFPEAK_EVENING 10
12 RP_RETAIL2 DR_1002_10CNT OFFPEAK_WEEKEND 10
13 RP_RETAIL2 DR_1003_10CNT OFFPEAK_MORNING 10
14 RP_RETAIL2 DR_1003_10CNT OFFPEAK_EVENING 10
15 RP_RETAIL2 DR_1003_10CNT OFFPEAK_WEEKEND 10
16 RP_RETAIL2 DR_FS_10CNT OFFPEAK_MORNING 10
17 RP_RETAIL2 DR_FS_10CNT OFFPEAK_EVENING 10
18 RP_RETAIL2 DR_FS_10CNT OFFPEAK_WEEKEND 10
19 RP_RETAIL2 DR_1007_MAXCOST_FREE *any 10
20 RP_SPECIAL_1002 DR_SPECIAL_1002 *any 10
21 RP_GENERIC DR_GENERIC *any 10

View File

@@ -0,0 +1,6 @@
#Tenant,Category,Subject,ActivationTime,RatingPlanId,RatesFallbackSubject
cgrates.org,call,*any,2014-01-14T00:00:00Z,RP_RETAIL1,
cgrates.org,call,1001,2014-01-14T00:00:00Z,RP_RETAIL2,
cgrates.org,call,SPECIAL_1002,2014-01-14T00:00:00Z,RP_SPECIAL_1002,
cgrates.org,generic,*any,2014-01-14T00:00:00Z,RP_GENERIC,
cgrates.org,data,*any,2014-01-14T00:00:00Z,RP_GENERIC,
1 #Tenant Category Subject ActivationTime RatingPlanId RatesFallbackSubject
2 cgrates.org call *any 2014-01-14T00:00:00Z RP_RETAIL1
3 cgrates.org call 1001 2014-01-14T00:00:00Z RP_RETAIL2
4 cgrates.org call SPECIAL_1002 2014-01-14T00:00:00Z RP_SPECIAL_1002
5 cgrates.org generic *any 2014-01-14T00:00:00Z RP_GENERIC
6 cgrates.org data *any 2014-01-14T00:00:00Z RP_GENERIC

View File

@@ -0,0 +1,5 @@
#Tag,Years,Months,MonthDays,WeekDays,Time
PEAK,*any,*any,*any,1;2;3;4;5,08:00:00
OFFPEAK_MORNING,*any,*any,*any,1;2;3;4;5,00:00:00
OFFPEAK_EVENING,*any,*any,*any,1;2;3;4;5,19:00:00
OFFPEAK_WEEKEND,*any,*any,*any,6;7,00:00:00
1 #Tag Years Months MonthDays WeekDays Time
2 PEAK *any *any *any 1;2;3;4;5 08:00:00
3 OFFPEAK_MORNING *any *any *any 1;2;3;4;5 00:00:00
4 OFFPEAK_EVENING *any *any *any 1;2;3;4;5 19:00:00
5 OFFPEAK_WEEKEND *any *any *any 6;7 00:00:00

View File

@@ -872,7 +872,7 @@ func TestRouteProfileSet(t *testing.T) {
if err := rp.Set([]string{"NotAField"}, "", false, utils.EmptyString); err != utils.ErrWrongPath {
t.Error(err)
}
if err := rp.Set([]string{"NotAField", "1"}, "", false, utils.EmptyString); err != utils.ErrWrongPath {
if err := rp.Set([]string{"NotAField", "1"}, ":", false, utils.EmptyString); err != utils.ErrWrongPath {
t.Error(err)
}
@@ -913,7 +913,7 @@ func TestRouteProfileSet(t *testing.T) {
if err := rp.Set([]string{utils.Routes, utils.StatIDs}, "stat1", false, utils.EmptyString); err != nil {
t.Error(err)
}
if err := rp.Set([]string{utils.Routes, utils.Weights}, "", false, utils.EmptyString); err != nil {
if err := rp.Set([]string{utils.Routes, utils.Weights}, ";0", false, utils.EmptyString); err != nil {
t.Error(err)
}
if err := rp.Set([]string{utils.Routes, utils.Blocker}, "true", false, utils.EmptyString); err != nil {

View File

@@ -0,0 +1,250 @@
//go:build integration
// +build integration
/*
Real-time Online/Offline Charging System (OCS) for Telecom & ISP environments
Copyright (C) ITsysCOM GmbH
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>
*/
package general_tests
import (
"io"
"os"
"path"
"path/filepath"
"reflect"
"sort"
"testing"
"time"
"github.com/cgrates/birpc"
"github.com/cgrates/birpc/context"
"github.com/cgrates/cgrates/config"
"github.com/cgrates/cgrates/engine"
"github.com/cgrates/cgrates/utils"
)
var (
testLdro2nRtCfgPath string
testLdro2nRtCfg *config.CGRConfig
testLdro2nRtRPC *birpc.Client
testLdro2nDirs = []string{"/tmp/In", "/tmp/Out", "/tmp/parsed"}
testLdro2nRtTests = []func(t *testing.T){
testCreateDirs,
testLdro2nRtLoadConfig,
testLdro2nRtResetDataDB,
testLdro2nRtResetStorDb,
testLdro2nRtStartEngine,
testLdro2nRtRPCConn,
testLdro2nRtLoadTP,
testLdro2nRtCheckData,
testLdro2nRtStopCgrEngine,
testRemoveDirs,
}
)
func TestLdro2nRtChange(t *testing.T) {
var testLdro2nRtCfgDir string
switch *dbType {
case utils.MetaInternal:
testLdro2nRtCfgDir = "loaders_old2new_internal"
case utils.MetaMySQL:
testLdro2nRtCfgDir = "loaders_old2new_mysql"
case utils.MetaMongo:
testLdro2nRtCfgDir = "loaders_old2new_mongo"
case utils.MetaPostgres:
t.SkipNow()
default:
t.Fatal("Unknown Database type")
}
testLdro2nRtCfgPath = path.Join(*dataDir, "conf", "samples", testLdro2nRtCfgDir)
for _, testLdro2nRtTest := range testLdro2nRtTests {
t.Run(testLdro2nRtCfgDir, testLdro2nRtTest)
}
}
func testCreateDirs(t *testing.T) {
for _, dir := range testLdro2nDirs {
if err = os.MkdirAll(dir, 0755); err != nil {
t.Fatal(err)
}
}
}
func testRemoveDirs(t *testing.T) {
for _, dir := range testLdro2nDirs {
if err = os.RemoveAll(dir); err != nil {
t.Fatal(err)
}
}
}
func testLdro2nRtLoadConfig(t *testing.T) {
var err error
if testLdro2nRtCfg, err = config.NewCGRConfigFromPath(context.Background(), testLdro2nRtCfgPath); err != nil {
t.Error(err)
}
}
func testLdro2nRtResetDataDB(t *testing.T) {
if err := engine.InitDataDB(testLdro2nRtCfg); err != nil {
t.Fatal(err)
}
}
func testLdro2nRtResetStorDb(t *testing.T) {
if err := engine.InitStorDB(testLdro2nRtCfg); err != nil {
t.Fatal(err)
}
}
func testLdro2nRtStartEngine(t *testing.T) {
if _, err := engine.StopStartEngine(testLdro2nRtCfgPath, *waitRater); err != nil {
t.Fatal(err)
}
}
func testLdro2nRtRPCConn(t *testing.T) {
var err error
if testLdro2nRtRPC, err = newRPCClient(testLdro2nRtCfg.ListenCfg()); err != nil {
t.Fatal(err)
}
}
func testLdro2nRtLoadTP(t *testing.T) {
for _, file := range []string{
"Timings.csv",
"Destinations.csv",
"Rates.csv",
"DestinationRates.csv",
"RatingPlans.csv",
"RatingProfiles.csv",
} {
if err = copyFile(filepath.Join(*dataDir, "tariffplans", "oldtutorial2", file), filepath.Join("/tmp/In", file)); err != nil {
t.Fatal(err)
}
}
time.Sleep(time.Second)
}
func testLdro2nRtStopCgrEngine(t *testing.T) {
if err := engine.KillEngine(100); err != nil {
t.Error(err)
}
}
func copyFile(src, dst string) (err error) {
var in *os.File
if in, err = os.Open(src); err != nil {
return
}
defer in.Close()
var si os.FileInfo
if si, err = in.Stat(); err != nil {
return
}
var out *os.File
if out, err = os.OpenFile(dst, os.O_RDWR|os.O_CREATE|os.O_TRUNC, si.Mode()); err != nil {
return
}
defer func() {
if e := out.Close(); e != nil {
err = e
}
}()
if _, err = io.Copy(out, in); err != nil {
return
}
return out.Sync()
}
func testLdro2nRtCheckData(t *testing.T) {
expIDs := []string{"call*any", "data*any", "callSPECIAL_1002", "generic*any", "call1001"}
sort.Strings(expIDs)
var rateIDs []string
if err := testLdro2nRtRPC.Call(context.Background(), utils.AdminSv1GetRateProfileIDs,
&utils.PaginatorWithTenant{
Tenant: "cgrates.org",
Paginator: utils.Paginator{},
}, &rateIDs); err != nil {
t.Error(err)
} else if sort.Strings(rateIDs); !reflect.DeepEqual(rateIDs, expIDs) {
t.Errorf("expected: %s, \nreceived: %s", utils.ToJSON(expIDs), utils.ToJSON(rateIDs))
}
expRatePrf := utils.RateProfile{
Tenant: "cgrates.org",
ID: "call*any",
FilterIDs: []string{"*ai:~*req.AnswerTime:2014-01-14T00:00:00Z", "*string:~*req.Category:call"},
MinCost: utils.NewDecimal(0, 0),
MaxCost: utils.NewDecimal(0, 0),
Rates: map[string]*utils.Rate{
"RP_RETAIL1_DR_1007_MAXCOST_DISC": {
ID: "RP_RETAIL1_DR_1007_MAXCOST_DISC",
FilterIDs: []string{"*prefix:~*req.Destination:10"},
ActivationTimes: "* 00 * * 1,2,3,4,5",
Weights: utils.DynamicWeights{{Weight: 10}},
IntervalRates: []*utils.IntervalRate{{
IntervalStart: utils.NewDecimalFromFloat64(60000000000),
FixedFee: utils.NewDecimalFromFloat64(0),
RecurrentFee: utils.NewDecimalFromFloat64(0.05),
Unit: utils.NewDecimalFromFloat64(60000000000),
Increment: utils.NewDecimalFromFloat64(1000000000),
}},
},
"RP_RETAIL1_DR_FS_10CNT": {
ID: "RP_RETAIL1_DR_FS_10CNT",
FilterIDs: []string{"*prefix:~*req.Destination:10"},
ActivationTimes: "* 00 * * 1,2,3,4,5",
Weights: utils.DynamicWeights{{Weight: 10}},
IntervalRates: []*utils.IntervalRate{{
IntervalStart: utils.NewDecimalFromFloat64(60000000000),
FixedFee: utils.NewDecimalFromFloat64(0),
RecurrentFee: utils.NewDecimalFromFloat64(0.05),
Unit: utils.NewDecimalFromFloat64(60000000000),
Increment: utils.NewDecimalFromFloat64(1000000000),
}},
},
"RP_RETAIL1_DR_FS_40CNT": {
ID: "RP_RETAIL1_DR_FS_40CNT",
FilterIDs: []string{"*prefix:~*req.Destination:10"},
ActivationTimes: "* 00 * * 1,2,3,4,5",
Weights: utils.DynamicWeights{{Weight: 10}},
IntervalRates: []*utils.IntervalRate{{
IntervalStart: utils.NewDecimalFromFloat64(60000000000),
FixedFee: utils.NewDecimalFromFloat64(0),
RecurrentFee: utils.NewDecimalFromFloat64(0.2),
Unit: utils.NewDecimalFromFloat64(60000000000),
Increment: utils.NewDecimalFromFloat64(10000000000),
}},
},
},
}
var rplyRatePrf utils.RateProfile
if err := testLdro2nRtRPC.Call(context.Background(), utils.AdminSv1GetRateProfile,
utils.TenantID{
Tenant: "cgrates.org",
ID: expIDs[0],
}, &rplyRatePrf); err != nil {
t.Error(err)
} else if !reflect.DeepEqual(rplyRatePrf, expRatePrf) {
t.Errorf("expected: %s, \nreceived: %s",
utils.ToJSON(expRatePrf), utils.ToJSON(rplyRatePrf))
}
}

View File

@@ -129,12 +129,12 @@ func NewDataConverter(params string) (conv DataConverter, err error) {
return NewRandomConverter(params[len(MetaRandom)+1:])
case strings.HasPrefix(params, MetaJoin):
if len(params) == len(MetaJoin) { // no extra params, defaults implied
return joinConverter(FieldsSep), nil
return joinConverter(InfieldSep), nil
}
return joinConverter(params[len(MetaJoin)+1:]), nil
case strings.HasPrefix(params, MetaSplit):
if len(params) == len(MetaSplit) { // no extra params, defaults implied
return splitConverter(FieldsSep), nil
return splitConverter(InfieldSep), nil
}
return splitConverter(params[len(MetaSplit)+1:]), nil
default: