Adding ResourceLimiter configuration within SMFreeSWITCH

This commit is contained in:
DanB
2016-08-07 17:39:28 +02:00
parent f8a998600b
commit c8878f8b87
4 changed files with 14 additions and 3 deletions

View File

@@ -250,13 +250,14 @@ const CGRATES_CFG_JSON = `
"sm_freeswitch": {
"enabled": false, // starts SessionManager service: <true|false>
"enabled": false, // starts SessionManager service: <true|false>
"rals_conns": [
{"address": "*internal"} // address where to reach the Rater <""|*internal|127.0.0.1:2013>
{"address": "*internal"} // address where to reach the Rater <""|*internal|127.0.0.1:2013>
],
"cdrs_conns": [
{"address": "*internal"} // address where to reach CDR Server, empty to disable CDR capturing <*internal|x.y.z.y:1234>
{"address": "*internal"} // address where to reach CDR Server, empty to disable CDR capturing <*internal|x.y.z.y:1234>
],
"rls_conns": [], // address where to reach the ResourceLimiter service, empty to disable stats functionality: <""|*internal|x.y.z.y:1234>
"create_cdr": false, // create CDR out of events and sends them to CDRS component
"extra_fields": [], // extra fields to store in auth/CDRs when creating them
"debit_interval": "10s", // interval to perform debits on.

View File

@@ -412,6 +412,7 @@ func TestSmFsJsonCfg(t *testing.T) {
&HaPoolJsonCfg{
Address: utils.StringPointer(utils.MetaInternal),
}},
Rls_conns: &[]*HaPoolJsonCfg{},
Create_cdr: utils.BoolPointer(false),
Extra_fields: utils.StringSlicePointer([]string{}),
Debit_interval: utils.StringPointer("10s"),

View File

@@ -192,6 +192,7 @@ type SmFsJsonCfg struct {
Enabled *bool
Rals_conns *[]*HaPoolJsonCfg
Cdrs_conns *[]*HaPoolJsonCfg
Rls_conns *[]*HaPoolJsonCfg
Create_cdr *bool
Extra_fields *[]string
Debit_interval *string

View File

@@ -163,6 +163,7 @@ type SmFsConfig struct {
Enabled bool
RALsConns []*HaPoolConfig
CDRsConns []*HaPoolConfig
RLsConns []*HaPoolConfig
CreateCdr bool
ExtraFields []*utils.RSRField
DebitInterval time.Duration
@@ -200,6 +201,13 @@ func (self *SmFsConfig) loadFromJsonCfg(jsnCfg *SmFsJsonCfg) error {
self.CDRsConns[idx].loadFromJsonCfg(jsnHaCfg)
}
}
if jsnCfg.Rls_conns != nil {
self.RLsConns = make([]*HaPoolConfig, len(*jsnCfg.Rls_conns))
for idx, jsnHaCfg := range *jsnCfg.Rls_conns {
self.RLsConns[idx] = NewDfltHaPoolConfig()
self.RLsConns[idx].loadFromJsonCfg(jsnHaCfg)
}
}
if jsnCfg.Create_cdr != nil {
self.CreateCdr = *jsnCfg.Create_cdr
}