mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Adding default configuration to data/conf folder, small config tweaks for increased usability
This commit is contained in:
@@ -108,12 +108,12 @@ func startMediator(responder *rater.Responder, loggerDb rater.DataStorage) {
|
||||
}
|
||||
connector = &rater.RPCClientConnector{Client: client}
|
||||
}
|
||||
if _, err := os.Stat(cfg.MediatorCDRPath); err != nil {
|
||||
rater.Logger.Crit(fmt.Sprintf("The input path for mediator does not exist: %v", cfg.MediatorCDRPath))
|
||||
if _, err := os.Stat(cfg.MediatorCDRInDir); err != nil {
|
||||
rater.Logger.Crit(fmt.Sprintf("The input path for mediator does not exist: %v", cfg.MediatorCDRInDir))
|
||||
exitChan <- true
|
||||
}
|
||||
if _, err := os.Stat(cfg.MediatorCDROutPath); err != nil {
|
||||
rater.Logger.Crit(fmt.Sprintf("The output path for mediator does not exist: %v", cfg.MediatorCDROutPath))
|
||||
if _, err := os.Stat(cfg.MediatorCDROutDir); err != nil {
|
||||
rater.Logger.Crit(fmt.Sprintf("The output path for mediator does not exist: %v", cfg.MediatorCDROutDir))
|
||||
exitChan <- true
|
||||
}
|
||||
// ToDo: Why is here
|
||||
@@ -123,7 +123,7 @@ func startMediator(responder *rater.Responder, loggerDb rater.DataStorage) {
|
||||
// exitChan <- true
|
||||
//}
|
||||
|
||||
m, err := mediator.NewMediator(connector, loggerDb, cfg.MediatorSkipDB, cfg.MediatorCDROutPath, cfg.MediatorPseudoprepaid,
|
||||
m, err := mediator.NewMediator(connector, loggerDb, cfg.MediatorSkipDB, cfg.MediatorCDROutDir, cfg.MediatorPseudoprepaid,
|
||||
cfg.FreeswitchDirectionIdx, cfg.FreeswitchTORIdx, cfg.FreeswitchTenantIdx, cfg.FreeswitchSubjectIdx, cfg.FreeswitchAccountIdx,
|
||||
cfg.FreeswitchDestIdx, cfg.FreeswitchTimeStartIdx, cfg.FreeswitchDurationIdx, cfg.FreeswitchUUIDIdx)
|
||||
if err != nil {
|
||||
@@ -131,7 +131,7 @@ func startMediator(responder *rater.Responder, loggerDb rater.DataStorage) {
|
||||
exitChan <- true
|
||||
}
|
||||
|
||||
m.TrackCDRFiles(cfg.MediatorCDRPath)
|
||||
m.TrackCDRFiles(cfg.MediatorCDRInDir)
|
||||
}
|
||||
|
||||
func startSessionManager(responder *rater.Responder, loggerDb rater.DataStorage) {
|
||||
@@ -154,7 +154,7 @@ func startSessionManager(responder *rater.Responder, loggerDb rater.DataStorage)
|
||||
}
|
||||
switch cfg.SMSwitchType {
|
||||
case FS:
|
||||
dp, _ := time.ParseDuration(fmt.Sprintf("%vs", cfg.SMDebitPeriod))
|
||||
dp, _ := time.ParseDuration(fmt.Sprintf("%vs", cfg.SMDebitInterval))
|
||||
sm = sessionmanager.NewFSSessionManager(loggerDb, connector, dp)
|
||||
errConn := sm.Connect(cfg)
|
||||
if errConn != nil {
|
||||
@@ -274,8 +274,8 @@ func main() {
|
||||
rater.SetStorageLogger(loggerDb)
|
||||
}
|
||||
|
||||
if cfg.SMDebitPeriod > 0 {
|
||||
if dp, err := time.ParseDuration(fmt.Sprintf("%vs", cfg.SMDebitPeriod)); err == nil {
|
||||
if cfg.SMDebitInterval > 0 {
|
||||
if dp, err := time.ParseDuration(fmt.Sprintf("%vs", cfg.SMDebitInterval)); err == nil {
|
||||
rater.SetDebitPeriod(dp)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -61,15 +61,16 @@ type CGRConfig struct {
|
||||
SMEnabled bool
|
||||
SMSwitchType string
|
||||
SMRater string // address where to access rater. Can be internal, direct rater address or the address of a balancer
|
||||
SMDebitPeriod int // the period to be debited in advanced during a call (in seconds)
|
||||
SMDebitInterval int // the period to be debited in advanced during a call (in seconds)
|
||||
SMRPCEncoding string // use JSON for RPC encoding
|
||||
SMDefaultReqType string // Use this request type if not defined on top
|
||||
SMDefaultTOR string // set default type of record
|
||||
SMDefaultTenant string // set default tenant
|
||||
SMDefaultSubject string // set default rating subject, useful in case of fallback
|
||||
MediatorEnabled bool
|
||||
MediatorCDRPath string // Freeswitch Master CSV CDR path.
|
||||
MediatorCDROutPath string // Freeswitch Master CSV CDR output path.
|
||||
MediatorCDRType string // sets the type of cdrs we are processing.
|
||||
MediatorCDRInDir string // Freeswitch Master CSV CDR path.
|
||||
MediatorCDROutDir string // Freeswitch Master CSV CDR output path.
|
||||
MediatorRater string // address where to access rater. Can be internal, direct rater address or the address of a balancer
|
||||
MediatorRPCEncoding string // use JSON for RPC encoding
|
||||
MediatorSkipDB bool
|
||||
@@ -100,11 +101,11 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("global", "datadb_type"); hasOpt {
|
||||
cfg.DataDBType, _ = c.GetString("global", "datadb_type")
|
||||
}
|
||||
cfg.DataDBHost = "localhost"
|
||||
cfg.DataDBHost = "127.0.0.1"
|
||||
if hasOpt = c.HasOption("global", "datadb_host"); hasOpt {
|
||||
cfg.DataDBHost, _ = c.GetString("global", "datadb_host")
|
||||
}
|
||||
cfg.DataDBPort = ""
|
||||
cfg.DataDBPort = "6379"
|
||||
if hasOpt = c.HasOption("global", "datadb_port"); hasOpt {
|
||||
cfg.DataDBPort, _ = c.GetString("global", "datadb_port")
|
||||
}
|
||||
@@ -128,7 +129,7 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("global", "logdb_host"); hasOpt {
|
||||
cfg.LogDBHost, _ = c.GetString("global", "logdb_host")
|
||||
}
|
||||
cfg.LogDBPort = ""
|
||||
cfg.LogDBPort = "27017"
|
||||
if hasOpt = c.HasOption("global", "logdb_port"); hasOpt {
|
||||
cfg.LogDBPort, _ = c.GetString("global", "logdb_port")
|
||||
}
|
||||
@@ -136,11 +137,11 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("global", "logdb_name"); hasOpt {
|
||||
cfg.LogDBName, _ = c.GetString("global", "logdb_name")
|
||||
}
|
||||
cfg.LogDBUser = ""
|
||||
cfg.LogDBUser = "cgrates"
|
||||
if hasOpt = c.HasOption("global", "logdb_user"); hasOpt {
|
||||
cfg.LogDBUser, _ = c.GetString("global", "logdb_user")
|
||||
}
|
||||
cfg.LogDBPass = ""
|
||||
cfg.LogDBPass = "CGRateS.org"
|
||||
if hasOpt = c.HasOption("global", "logdb_passwd"); hasOpt {
|
||||
cfg.LogDBPass, _ = c.GetString("global", "logdb_passwd")
|
||||
}
|
||||
@@ -152,11 +153,11 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("rater", "balancer"); hasOpt {
|
||||
cfg.RaterBalancer, _ = c.GetString("rater", "balancer")
|
||||
}
|
||||
cfg.RaterListen = "127.0.0.1:1234"
|
||||
cfg.RaterListen = "127.0.0.1:2012"
|
||||
if hasOpt = c.HasOption("rater", "listen"); hasOpt {
|
||||
cfg.RaterListen, _ = c.GetString("rater", "listen")
|
||||
}
|
||||
cfg.RaterRPCEncoding = "gob"
|
||||
cfg.RaterRPCEncoding = GOB
|
||||
if hasOpt = c.HasOption("rater", "rpc_encoding"); hasOpt {
|
||||
cfg.RaterRPCEncoding, _ = c.GetString("rater", "rpc_encoding")
|
||||
}
|
||||
@@ -164,7 +165,7 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("balancer", "enabled"); hasOpt {
|
||||
cfg.BalancerEnabled, _ = c.GetBool("balancer", "enabled")
|
||||
}
|
||||
cfg.BalancerListen = "127.0.0.1:2001"
|
||||
cfg.BalancerListen = "127.0.0.1:2013"
|
||||
if hasOpt = c.HasOption("balancer", "listen"); hasOpt {
|
||||
cfg.BalancerListen, _ = c.GetString("balancer", "listen")
|
||||
}
|
||||
@@ -180,15 +181,15 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("mediator", "enabled"); hasOpt {
|
||||
cfg.MediatorEnabled, _ = c.GetBool("mediator", "enabled")
|
||||
}
|
||||
cfg.MediatorCDRPath = ""
|
||||
if hasOpt = c.HasOption("mediator", "cdr_path"); hasOpt {
|
||||
cfg.MediatorCDRPath, _ = c.GetString("mediator", "cdr_path")
|
||||
cfg.MediatorCDRInDir = "/var/log/freeswitch/cdr-csv/"
|
||||
if hasOpt = c.HasOption("mediator", "cdr_in_dir"); hasOpt {
|
||||
cfg.MediatorCDRInDir, _ = c.GetString("mediator", "cdr_in_dir")
|
||||
}
|
||||
cfg.MediatorCDROutPath = ""
|
||||
if hasOpt = c.HasOption("mediator", "cdr_out_path"); hasOpt {
|
||||
cfg.MediatorCDROutPath, _ = c.GetString("mediator", "cdr_out_path")
|
||||
cfg.MediatorCDROutDir = "/var/log/cgrates/cdr_out/"
|
||||
if hasOpt = c.HasOption("mediator", "cdr_out_dir"); hasOpt {
|
||||
cfg.MediatorCDROutDir, _ = c.GetString("mediator", "cdr_out_dir")
|
||||
}
|
||||
cfg.MediatorRater = INTERNAL
|
||||
cfg.MediatorRater = "127.0.0.1:2012"
|
||||
if hasOpt = c.HasOption("mediator", "rater"); hasOpt {
|
||||
cfg.MediatorRater, _ = c.GetString("mediator", "rater")
|
||||
}
|
||||
@@ -201,8 +202,12 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
cfg.MediatorSkipDB, _ = c.GetBool("mediator", "skipdb")
|
||||
}
|
||||
cfg.MediatorPseudoprepaid = false
|
||||
if hasOpt = c.HasOption("mediator", "pseudo_prepaid"); hasOpt {
|
||||
cfg.MediatorPseudoprepaid, _ = c.GetBool("mediator", "pseudo_prepaid")
|
||||
if hasOpt = c.HasOption("mediator", "pseudoprepaid"); hasOpt {
|
||||
cfg.MediatorPseudoprepaid, _ = c.GetBool("mediator", "pseudoprepaid")
|
||||
}
|
||||
cfg.MediatorCDRType = "freeswitch_csv"
|
||||
if hasOpt = c.HasOption("mediator", "cdr_type"); hasOpt {
|
||||
cfg.MediatorCDRType, _ = c.GetString("mediator", "cdr_type")
|
||||
}
|
||||
cfg.SMEnabled = false
|
||||
if hasOpt = c.HasOption("session_manager", "enabled"); hasOpt {
|
||||
@@ -212,26 +217,26 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("session_manager", "switch_type"); hasOpt {
|
||||
cfg.SMSwitchType, _ = c.GetString("session_manager", "switch_type")
|
||||
}
|
||||
cfg.SMRater = INTERNAL
|
||||
cfg.SMRater = "127.0.0.1:2012"
|
||||
if hasOpt = c.HasOption("session_manager", "rater"); hasOpt {
|
||||
cfg.SMRater, _ = c.GetString("session_manager", "rater")
|
||||
}
|
||||
cfg.SMDebitPeriod = 10
|
||||
if hasOpt = c.HasOption("session_manager", "debit_period"); hasOpt {
|
||||
cfg.SMDebitPeriod, _ = c.GetInt("session_manager", "debit_period")
|
||||
cfg.SMDebitInterval = 10
|
||||
if hasOpt = c.HasOption("session_manager", "debit_interval"); hasOpt {
|
||||
cfg.SMDebitInterval, _ = c.GetInt("session_manager", "debit_interval")
|
||||
}
|
||||
cfg.SMRPCEncoding = GOB
|
||||
if hasOpt = c.HasOption("session_manager", "rpc_encoding"); hasOpt {
|
||||
cfg.SMRPCEncoding, _ = c.GetString("session_manager", "rpc_encoding")
|
||||
}
|
||||
cfg.SMDefaultTOR = "0"
|
||||
if hasOpt = c.HasOption("session_manager", "default_tor"); hasOpt {
|
||||
cfg.SMDefaultTOR, _ = c.GetString("session_manager", "default_tor")
|
||||
}
|
||||
cfg.SMDefaultReqType = "" // By default CGRateS is inactive, customer should activate when he feels he is ready
|
||||
if hasOpt = c.HasOption("session_manager", "default_reqtype"); hasOpt {
|
||||
cfg.SMDefaultReqType, _ = c.GetString("session_manager", "default_reqtype")
|
||||
}
|
||||
cfg.SMDefaultTOR = "0"
|
||||
if hasOpt = c.HasOption("session_manager", "default_tor"); hasOpt {
|
||||
cfg.SMDefaultTOR, _ = c.GetString("session_manager", "default_tor")
|
||||
}
|
||||
cfg.SMDefaultTenant = "0"
|
||||
if hasOpt = c.HasOption("session_manager", "default_tenant"); hasOpt {
|
||||
cfg.SMDefaultTenant, _ = c.GetString("session_manager", "default_tenant")
|
||||
@@ -240,13 +245,13 @@ func NewCGRConfig(cfgPath *string) (*CGRConfig, error) {
|
||||
if hasOpt = c.HasOption("session_manager", "default_subject"); hasOpt {
|
||||
cfg.SMDefaultSubject, _ = c.GetString("session_manager", "default_subject")
|
||||
}
|
||||
cfg.FreeswitchServer = "localhost:8021"
|
||||
cfg.FreeswitchServer = "127.0.0.1:8021"
|
||||
if hasOpt = c.HasOption("freeswitch", "server"); hasOpt {
|
||||
cfg.FreeswitchServer, _ = c.GetString("freeswitch", "server")
|
||||
}
|
||||
cfg.FreeswitchPass = "ClueCon"
|
||||
if hasOpt = c.HasOption("freeswitch", "pass"); hasOpt {
|
||||
cfg.FreeswitchPass, _ = c.GetString("freeswitch", "pass")
|
||||
if hasOpt = c.HasOption("freeswitch", "passwd"); hasOpt {
|
||||
cfg.FreeswitchPass, _ = c.GetString("freeswitch", "passwd")
|
||||
}
|
||||
cfg.FreeswitchReconnects = 5
|
||||
if hasOpt = c.HasOption("freeswitch", "reconnects"); hasOpt {
|
||||
|
||||
@@ -53,11 +53,11 @@ func TestConfig(t *testing.T) {
|
||||
cfg.SMEnabled != true ||
|
||||
cfg.SMSwitchType != "test" ||
|
||||
cfg.SMRater != "test" ||
|
||||
cfg.SMDebitPeriod != 11 ||
|
||||
cfg.SMDebitInterval != 11 ||
|
||||
cfg.SMRPCEncoding != "test" ||
|
||||
cfg.MediatorEnabled != true ||
|
||||
cfg.MediatorCDRPath != "test" ||
|
||||
cfg.MediatorCDROutPath != "test" ||
|
||||
cfg.MediatorCDRInDir != "test" ||
|
||||
cfg.MediatorCDROutDir != "test" ||
|
||||
cfg.MediatorRater != "test" ||
|
||||
cfg.MediatorRPCEncoding != "test" ||
|
||||
cfg.MediatorSkipDB != true ||
|
||||
@@ -73,8 +73,51 @@ func TestConfig(t *testing.T) {
|
||||
cfg.FreeswitchTimeStartIdx != "test" ||
|
||||
cfg.FreeswitchDurationIdx != "test" ||
|
||||
cfg.FreeswitchUUIDIdx != "test" {
|
||||
t.Error("Config file read failed!")
|
||||
}
|
||||
t.Log(cfg.DataDBType)
|
||||
t.Log(cfg.DataDBHost)
|
||||
t.Log(cfg.DataDBPort)
|
||||
t.Log(cfg.DataDBName)
|
||||
t.Log(cfg.DataDBUser)
|
||||
t.Log(cfg.DataDBPass)
|
||||
t.Log(cfg.LogDBType)
|
||||
t.Log(cfg.LogDBHost)
|
||||
t.Log(cfg.LogDBPort)
|
||||
t.Log(cfg.LogDBName)
|
||||
t.Log(cfg.LogDBUser)
|
||||
t.Log(cfg.LogDBPass)
|
||||
t.Log(cfg.RaterEnabled)
|
||||
t.Log(cfg.RaterBalancer)
|
||||
t.Log(cfg.RaterListen)
|
||||
t.Log(cfg.RaterRPCEncoding)
|
||||
t.Log(cfg.BalancerEnabled)
|
||||
t.Log(cfg.BalancerListen)
|
||||
t.Log(cfg.BalancerRPCEncoding)
|
||||
t.Log(cfg.SchedulerEnabled)
|
||||
t.Log(cfg.SMEnabled)
|
||||
t.Log(cfg.SMSwitchType)
|
||||
t.Log(cfg.SMRater)
|
||||
t.Log(cfg.SMDebitInterval)
|
||||
t.Log(cfg.SMRPCEncoding)
|
||||
t.Log(cfg.MediatorEnabled)
|
||||
t.Log(cfg.MediatorCDRInDir)
|
||||
t.Log(cfg.MediatorCDROutDir)
|
||||
t.Log(cfg.MediatorRater)
|
||||
t.Log(cfg.MediatorRPCEncoding)
|
||||
t.Log(cfg.MediatorSkipDB)
|
||||
t.Log(cfg.MediatorPseudoprepaid)
|
||||
t.Log(cfg.FreeswitchServer)
|
||||
t.Log(cfg.FreeswitchPass)
|
||||
t.Log(cfg.FreeswitchDirectionIdx)
|
||||
t.Log(cfg.FreeswitchTORIdx)
|
||||
t.Log(cfg.FreeswitchTenantIdx)
|
||||
t.Log(cfg.FreeswitchSubjectIdx)
|
||||
t.Log(cfg.FreeswitchAccountIdx)
|
||||
t.Log(cfg.FreeswitchDestIdx)
|
||||
t.Log(cfg.FreeswitchTimeStartIdx)
|
||||
t.Log(cfg.FreeswitchDurationIdx)
|
||||
t.Log(cfg.FreeswitchUUIDIdx)
|
||||
t.Error("Config file read failed!")
|
||||
}
|
||||
}
|
||||
|
||||
func TestParamOverwrite(t *testing.T) {
|
||||
|
||||
@@ -28,12 +28,12 @@ rpc_encoding = test # use JSON for RPC encoding
|
||||
|
||||
[mediator]
|
||||
enabled = true
|
||||
cdr_path = test # Freeswitch Master CSV CDR path.
|
||||
cdr_out_path = test
|
||||
cdr_in_dir = test # Freeswitch Master CSV CDR path.
|
||||
cdr_out_dir = test
|
||||
rater = test #address where to access rater. Can be internal, direct rater address or the address of a balancer
|
||||
rpc_encoding = test # use JSON for RPC encoding
|
||||
skipdb = true
|
||||
pseudo_prepaid = true
|
||||
pseudoprepaid = true
|
||||
|
||||
[scheduler]
|
||||
enabled = true
|
||||
@@ -42,12 +42,12 @@ enabled = true
|
||||
enabled = true
|
||||
switch_type = test
|
||||
rater = test #address where to access rater. Can be internal, direct rater address or the address of a balancer
|
||||
debit_period = 11
|
||||
debit_interval = 11
|
||||
rpc_encoding = test # use JSON for RPC encoding
|
||||
|
||||
[freeswitch]
|
||||
server = test # freeswitch address host:port
|
||||
pass = test # freeswitch address host:port
|
||||
passwd = test # freeswitch address host:port
|
||||
direction_index = test
|
||||
tor_index = test
|
||||
tenant_index = test
|
||||
|
||||
Reference in New Issue
Block a user