From ffb86e703e039a69351af10dbb5ac5b219374b4c Mon Sep 17 00:00:00 2001 From: Radu Ioan Fericean Date: Tue, 8 Sep 2015 18:03:42 +0300 Subject: [PATCH] fixes after merge --- cmd/cgr-engine/cgr-engine.go | 42 ++++++++++++++++++------------------ engine/responder.go | 4 ++-- sessionmanager/session.go | 2 +- 3 files changed, 24 insertions(+), 24 deletions(-) diff --git a/cmd/cgr-engine/cgr-engine.go b/cmd/cgr-engine/cgr-engine.go index 9976d2132..4b1d95dac 100644 --- a/cmd/cgr-engine/cgr-engine.go +++ b/cmd/cgr-engine/cgr-engine.go @@ -105,7 +105,7 @@ func startCdrc(internalCdrSChan chan *engine.CdrServer, internalRaterChan chan * exitChan <- true // If run stopped, something is bad, stop the application } -func startSmFreeSWITCH(responder *engine.Responder, cdrDb engine.CdrStorage, cacheChan chan struct{}) { +func startSmFreeSWITCH(internalRaterChan chan *engine.Responder, cdrDb engine.CdrStorage, exitChan chan bool) { engine.Logger.Info("Starting CGRateS SM-FreeSWITCH service.") var raterConn, cdrsConn engine.ConnectorPool var client *rpcclient.RpcClient @@ -114,11 +114,11 @@ func startSmFreeSWITCH(responder *engine.Responder, cdrDb engine.CdrStorage, cac for _, raterCfg := range cfg.SmFsConfig.HaRater { if raterCfg.Server == utils.INTERNAL { resp := <-internalRaterChan - raterConn = resp + raterConn = append(raterConn, resp) internalRaterChan <- resp } - for i := 0; i < cfg.SmFsConfig.Reconnects; i++ { - client, err = rpcclient.NewRpcClient("tcp", raterCfg.Server, cfg.ConnectAttempts, cfg.SmFsConfig.Reconnects, utils.GOB) + for i := 0; i < cfg.Reconnects; i++ { + client, err = rpcclient.NewRpcClient("tcp", raterCfg.Server, cfg.ConnectAttempts, cfg.Reconnects, utils.GOB) if err == nil { //Connected so no need to reiterate break } @@ -138,11 +138,11 @@ func startSmFreeSWITCH(responder *engine.Responder, cdrDb engine.CdrStorage, cac for _, cdrsCfg := range cfg.SmFsConfig.HaCdrs { if cdrsCfg.Server == utils.INTERNAL { resp := <-internalRaterChan - cdrsConn = resp + raterConn = append(raterConn, resp) internalRaterChan <- resp } - for i := 0; i < cfg.SmFsConfig.Reconnects; i++ { - client, err = rpcclient.NewRpcClient("tcp", cdrsCfg.Server, cfg.ConnectAttempts, cfg.SmFsConfig.Reconnects, utils.GOB) + for i := 0; i < cfg.Reconnects; i++ { + client, err = rpcclient.NewRpcClient("tcp", cdrsCfg.Server, cfg.ConnectAttempts, cfg.Reconnects, utils.GOB) if err == nil { //Connected so no need to reiterate break } @@ -166,7 +166,7 @@ func startSmFreeSWITCH(responder *engine.Responder, cdrDb engine.CdrStorage, cac exitChan <- true } -func startSmKamailio(responder *engine.Responder, cdrDb engine.CdrStorage, cacheChan chan struct{}) { +func startSmKamailio(internalRaterChan chan *engine.Responder, cdrDb engine.CdrStorage, exitChan chan bool) { engine.Logger.Info("Starting CGRateS SM-Kamailio service.") var raterConn, cdrsConn engine.ConnectorPool var client *rpcclient.RpcClient @@ -176,11 +176,11 @@ func startSmKamailio(responder *engine.Responder, cdrDb engine.CdrStorage, cache for _, raterCfg := range cfg.SmKamConfig.HaRater { if raterCfg.Server == utils.INTERNAL { resp := <-internalRaterChan - raterConn = resp + raterConn = append(raterConn, resp) internalRaterChan <- resp } - for i := 0; i < cfg.SmKamConfig.Reconnects; i++ { - client, err = rpcclient.NewRpcClient("tcp", raterCfg.Server, cfg.ConnectAttempts, cfg.SmKamConfig.Reconnects, utils.GOB) + for i := 0; i < cfg.Reconnects; i++ { + client, err = rpcclient.NewRpcClient("tcp", raterCfg.Server, cfg.ConnectAttempts, cfg.Reconnects, utils.GOB) if err == nil { //Connected so no need to reiterate break } @@ -198,11 +198,11 @@ func startSmKamailio(responder *engine.Responder, cdrDb engine.CdrStorage, cache for _, cdrsCfg := range cfg.SmKamConfig.HaCdrs { if cdrsCfg.Server == utils.INTERNAL { resp := <-internalRaterChan - cdrsConn = resp + raterConn = append(raterConn, resp) internalRaterChan <- resp } - for i := 0; i < cfg.SmKamConfig.Reconnects; i++ { - client, err = rpcclient.NewRpcClient("tcp", cdrsCfg.Server, cfg.ConnectAttempts, cfg.SmKamConfig.Reconnects, utils.GOB) + for i := 0; i < cfg.Reconnects; i++ { + client, err = rpcclient.NewRpcClient("tcp", cdrsCfg.Server, cfg.ConnectAttempts, cfg.Reconnects, utils.GOB) if err == nil { //Connected so no need to reiterate break } @@ -226,7 +226,7 @@ func startSmKamailio(responder *engine.Responder, cdrDb engine.CdrStorage, cache exitChan <- true } -func startSmOpenSIPS(responder *engine.Responder, cdrDb engine.CdrStorage, cacheChan chan struct{}) { +func startSmOpenSIPS(internalRaterChan chan *engine.Responder, cdrDb engine.CdrStorage, exitChan chan bool) { var raterConn, cdrsConn engine.ConnectorPool var client *rpcclient.RpcClient @@ -235,11 +235,11 @@ func startSmOpenSIPS(responder *engine.Responder, cdrDb engine.CdrStorage, cache for _, raterCfg := range cfg.SmOsipsConfig.HaRater { if raterCfg.Server == utils.INTERNAL { resp := <-internalRaterChan - raterConn = resp + raterConn = append(raterConn, resp) internalRaterChan <- resp } - for i := 0; i < cfg.SmOsipsConfig.Reconnects; i++ { - client, err = rpcclient.NewRpcClient("tcp", raterCfg.Server, cfg.ConnectAttempts, cfg.SmOsipsConfig.Reconnects, utils.GOB) + for i := 0; i < cfg.Reconnects; i++ { + client, err = rpcclient.NewRpcClient("tcp", raterCfg.Server, cfg.ConnectAttempts, cfg.Reconnects, utils.GOB) if err == nil { //Connected so no need to reiterate break } @@ -257,13 +257,13 @@ func startSmOpenSIPS(responder *engine.Responder, cdrDb engine.CdrStorage, cache for _, cdrsCfg := range cfg.SmOsipsConfig.HaCdrs { if cdrsCfg.Server == utils.INTERNAL { resp := <-internalRaterChan - cdrsConn = resp + raterConn = append(raterConn, resp) internalRaterChan <- resp } if len(cfg.SmOsipsConfig.HaCdrs) != 0 { delay := utils.Fib() - for i := 0; i < cfg.SmOsipsConfig.Reconnects; i++ { - client, err = rpcclient.NewRpcClient("tcp", cdrsCfg.Server, cfg.ConnectAttempts, cfg.SmOsipsConfig.Reconnects, utils.GOB) + for i := 0; i < cfg.Reconnects; i++ { + client, err = rpcclient.NewRpcClient("tcp", cdrsCfg.Server, cfg.ConnectAttempts, cfg.Reconnects, utils.GOB) if err == nil { //Connected so no need to reiterate break } diff --git a/engine/responder.go b/engine/responder.go index 90602c7f1..0b0600884 100644 --- a/engine/responder.go +++ b/engine/responder.go @@ -803,11 +803,11 @@ func (cp ConnectorPool) LogCallCost(ccl *CallCostLog, reply *string) error { return utils.ErrTimedOut } -func (cp ConnectorPool) GetLCR(cd *CallDescriptor, reply *LCRCost) error { +func (cp ConnectorPool) GetLCR(attr *AttrGetLcr, reply *LCRCost) error { for _, con := range cp { c := make(chan error, 1) lcrCost := &LCRCost{} - go func() { c <- con.GetLCR(cd, lcrCost) }() + go func() { c <- con.GetLCR(attr, lcrCost) }() select { case err := <-c: *reply = *lcrCost diff --git a/sessionmanager/session.go b/sessionmanager/session.go index ab6d16c13..fb876b619 100644 --- a/sessionmanager/session.go +++ b/sessionmanager/session.go @@ -70,7 +70,7 @@ func NewSession(ev engine.Event, connId string, sm SessionManager) *Session { // the debit loop method (to be stoped by sending somenthing on stopDebit channel) func (s *Session) debitLoop(runIdx int) { nextCd := s.sessionRuns[runIdx].CallDescriptor - nextCd.CgrId = s.eventStart.GetCgrId() + nextCd.CgrId = s.eventStart.GetCgrId("") index := 0.0 debitPeriod := s.sessionManager.DebitInterval() for {