SessionSv1.ProcessEvent - adding processed chargers attributes to reply

This commit is contained in:
DanB
2026-02-17 20:59:31 +01:00
parent 0d7c5666e8
commit bd1c0edc46
2 changed files with 14 additions and 2 deletions

View File

@@ -114,6 +114,11 @@ type ChrgSProcessEventReply struct {
CGREvent *utils.CGREvent
}
// so we can compare from outside if event changed with AttributeS
var ChargerSDefaultAlteredFields = []string{utils.MetaOptsRunID,
utils.MetaOpts + utils.NestingSep + utils.MetaChargeID,
utils.MetaOpts + utils.NestingSep + utils.MetaSubsys}
func (cS *ChargerS) processEvent(ctx *context.Context, tnt string, cgrEv *utils.CGREvent) (rply []*ChrgSProcessEventReply, err error) {
cPs, err := cS.matchingChargerProfilesForEvent(ctx, tnt, cgrEv)
if err != nil {
@@ -133,7 +138,7 @@ func (cS *ChargerS) processEvent(ctx *context.Context, tnt string, cgrEv *utils.
AlteredFields: []*attributes.FieldsAltered{
{
MatchedProfileID: utils.MetaDefault,
Fields: []string{utils.MetaOptsRunID, utils.MetaOpts + utils.NestingSep + utils.MetaChargeID, utils.MetaOpts + utils.NestingSep + utils.MetaSubsys},
Fields: slices.Clone(ChargerSDefaultAlteredFields),
},
},
}

View File

@@ -863,7 +863,14 @@ func (sS *SessionS) BiRPCv1ProcessEvent(ctx *context.Context,
return
}
for _, chrgr := range chrgrs {
cgrEvs[utils.IfaceAsString(chrgr.CGREvent.APIOpts[utils.MetaRunID])] = chrgr.CGREvent
runID := utils.IfaceAsString(chrgr.CGREvent.APIOpts[utils.MetaRunID])
cgrEvs[runID] = chrgr.CGREvent
if len(chrgr.AlteredFields) != len(chargers.ChargerSDefaultAlteredFields) {
apiRply.Attributes[runID] = &attributes.AttrSProcessEventReply{
AlteredFields: chrgr.AlteredFields,
CGREvent: chrgr.CGREvent,
}
}
}
}