mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
shaping lcr qos
This commit is contained in:
@@ -339,7 +339,8 @@ func startCDRS(logDb engine.LogStorage, cdrDb engine.CdrStorage, responder *engi
|
||||
cdrSrv := v1.CdrsV1{CdrSrv: cdrServer}
|
||||
server.RpcRegister(&cdrSrv)
|
||||
server.RpcRegister(&v2.CdrsV2{CdrsV1: cdrSrv})
|
||||
responder.CdrSrv = cdrServer // Make the cdrserver available for internal communication
|
||||
// Make the cdr servers available for internal communication
|
||||
responder.CdrSrv = cdrServer
|
||||
close(doneChan)
|
||||
}
|
||||
|
||||
|
||||
@@ -656,7 +656,7 @@ func (cd *CallDescriptor) Clone() *CallDescriptor {
|
||||
}
|
||||
}
|
||||
|
||||
func (cd *CallDescriptor) GetLCR() (*LCRCost, error) {
|
||||
func (cd *CallDescriptor) GetLCR(stats StatsInterface) (*LCRCost, error) {
|
||||
lcr, err := dataStorage.GetLCR(cd.GetLCRKey(""), false)
|
||||
if err != nil || lcr == nil {
|
||||
// try the *any customer
|
||||
@@ -719,7 +719,7 @@ func (cd *CallDescriptor) GetLCR() (*LCRCost, error) {
|
||||
}
|
||||
if ts.Entry.Strategy == LCR_STRATEGY_QOS_WITH_THRESHOLD {
|
||||
// get stats and filter suppliers by qos thresholds
|
||||
|
||||
//stats.GetValues()
|
||||
}
|
||||
if cc, err := lcrCD.debit(cd.account, true, true); err != nil || cc == nil {
|
||||
ts.SupplierCosts = append(ts.SupplierCosts, &LCRSupplierCost{
|
||||
|
||||
@@ -44,6 +44,7 @@ type Responder struct {
|
||||
Bal *balancer2go.Balancer
|
||||
ExitChan chan bool
|
||||
CdrSrv *CdrServer
|
||||
Stats StatsInterface
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -241,6 +242,12 @@ func (rs *Responder) ProcessCdr(cdr *StoredCdr, reply *string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (rs *Responder) GetLCR(cd *CallDescriptor, reply *LCRCost) error {
|
||||
lcrCost, err := cd.GetLCR(rs.Stats)
|
||||
*reply = *lcrCost
|
||||
return err
|
||||
}
|
||||
|
||||
func (rs *Responder) FlushCache(arg CallDescriptor, reply *float64) (err error) {
|
||||
if rs.Bal != nil {
|
||||
*reply, err = rs.callMethod(&arg, "Responder.FlushCache")
|
||||
|
||||
Reference in New Issue
Block a user