Updated agents maxUsage flag handle

This commit is contained in:
Trial97
2020-07-14 15:39:32 +03:00
committed by Dan Christian Bogos
parent a51131e6cd
commit 511ef3a7ef
5 changed files with 14 additions and 8 deletions

View File

@@ -458,3 +458,13 @@ func (ar *AgentRequest) setCGRReply(rply utils.NavigableMapper, errRply error) (
*ar.CGRReply = nm // update value so we can share CGRReply
return
}
func needsMaxUsage(ralsFlags []string) bool {
for _, flag := range ralsFlags {
if utils.IsSliceMember([]string{utils.MetaAuthorize, utils.MetaInitiate, utils.MetaUpdate},
flag) {
return true
}
}
return false
}

View File

@@ -388,11 +388,10 @@ func (da *DiameterAgent) processRequest(reqProcessor *config.RequestProcessor,
ArgDispatcher: cgrArgs.ArgDispatcher,
Paginator: *cgrArgs.SupplierPaginator,
}
needMaxUsage := utils.IsSliceMember([]string{utils.MetaAuthorize, utils.MetaInitiate, utils.MetaUpdate},
reqProcessor.Flags.ParamsSlice(utils.MetaRALs)[0])
rply := new(sessions.V1ProcessEventReply)
err = da.connMgr.Call(da.cgrCfg.DiameterAgentCfg().SessionSConns, da, utils.SessionSv1ProcessEvent,
evArgs, rply)
needMaxUsage := needsMaxUsage(reqProcessor.Flags.ParamsSlice(utils.MetaRALs))
if utils.ErrHasPrefix(err, utils.RalsErrorPrfx) {
cgrEv.Event[utils.Usage] = 0 // avoid further debits
} else if needMaxUsage {

View File

@@ -314,12 +314,11 @@ func (da *DNSAgent) processRequest(reqProcessor *config.RequestProcessor,
ArgDispatcher: cgrArgs.ArgDispatcher,
Paginator: *cgrArgs.SupplierPaginator,
}
needMaxUsage := utils.IsSliceMember([]string{utils.MetaAuthorize, utils.MetaInitiate, utils.MetaUpdate},
reqProcessor.Flags.ParamsSlice(utils.MetaRALs)[0])
rply := new(sessions.V1ProcessEventReply)
err = da.connMgr.Call(da.cgrCfg.DNSAgentCfg().SessionSConns, nil,
utils.SessionSv1ProcessEvent,
evArgs, rply)
needMaxUsage := needsMaxUsage(reqProcessor.Flags.ParamsSlice(utils.MetaRALs))
if utils.ErrHasPrefix(err, utils.RalsErrorPrfx) {
cgrEv.Event[utils.Usage] = 0 // avoid further debits
} else if needMaxUsage {

View File

@@ -244,11 +244,10 @@ func (ha *HTTPAgent) processRequest(reqProcessor *config.RequestProcessor,
ArgDispatcher: cgrArgs.ArgDispatcher,
Paginator: *cgrArgs.SupplierPaginator,
}
needMaxUsage := utils.IsSliceMember([]string{utils.MetaAuthorize, utils.MetaInitiate, utils.MetaUpdate},
reqProcessor.Flags.ParamsSlice(utils.MetaRALs)[0])
rply := new(sessions.V1ProcessEventReply)
err = ha.connMgr.Call(ha.sessionConns, nil, utils.SessionSv1ProcessEvent,
evArgs, rply)
needMaxUsage := needsMaxUsage(reqProcessor.Flags.ParamsSlice(utils.MetaRALs))
if utils.ErrHasPrefix(err, utils.RalsErrorPrfx) {
cgrEv.Event[utils.Usage] = 0 // avoid further debits
} else if needMaxUsage {

View File

@@ -284,11 +284,10 @@ func (ra *RadiusAgent) processRequest(reqProcessor *config.RequestProcessor,
ArgDispatcher: cgrArgs.ArgDispatcher,
Paginator: *cgrArgs.SupplierPaginator,
}
needMaxUsage := utils.IsSliceMember([]string{utils.MetaAuthorize, utils.MetaInitiate, utils.MetaUpdate},
reqProcessor.Flags.ParamsSlice(utils.MetaRALs)[0])
rply := new(sessions.V1ProcessEventReply)
err = ra.connMgr.Call(ra.cgrCfg.RadiusAgentCfg().SessionSConns, nil, utils.SessionSv1ProcessEvent,
evArgs, rply)
needMaxUsage := needsMaxUsage(reqProcessor.Flags.ParamsSlice(utils.MetaRALs))
if utils.ErrHasPrefix(err, utils.RalsErrorPrfx) {
cgrEv.Event[utils.Usage] = 0 // avoid further debits
} else if needMaxUsage {