RunID is not longer added to event but to APIOpts

This commit is contained in:
andronache
2021-10-19 15:39:51 +03:00
committed by Dan Christian Bogos
parent 37dfdf6e58
commit 1e080a7123
20 changed files with 152 additions and 81 deletions

View File

@@ -647,7 +647,7 @@ func testRAitAcctStart(t *testing.T) {
if err := raRPC.Call(utils.SessionSv1GetActiveSessions,
utils.SessionFilter{
Filters: []string{
fmt.Sprintf("*string:~*req.%s:%s", utils.RunID, utils.MetaDefault),
fmt.Sprintf("*string:~*opts.%s:%s", utils.MetaRunID, utils.MetaDefault),
fmt.Sprintf("*string:~*req.%s:%s", utils.OriginID, "e4921177ab0e3586c37f6a185864b71a@0:0:0:0:0:0:0:0-51585361-75c2f57b"),
},
}, &aSessions); err != nil {
@@ -718,7 +718,7 @@ func testRAitAcctStop(t *testing.T) {
if err := raRPC.Call(utils.SessionSv1GetActiveSessions,
utils.SessionFilter{
Filters: []string{
fmt.Sprintf("*string:~*req.%s:%s", utils.RunID, utils.MetaDefault),
fmt.Sprintf("*string:~*opts.%s:%s", utils.MetaRunID, utils.MetaDefault),
fmt.Sprintf("*string:~*req.%s:%s", utils.OriginID, "e4921177ab0e3586c37f6a185864b71a@0:0:0:0:0:0:0:0-51585361-75c2f57b"),
},
}, &aSessions); err == nil || err.Error() != utils.ErrNotFound.Error() {

View File

@@ -486,17 +486,17 @@ func testChgrsProcessEvent(t *testing.T) {
expected := &[]*engine.ChrgSProcessEventReply{
{
ChargerSProfile: "TEST_CHARGERS_IT_TEST",
AlteredFields: []string{"*req.RunID"},
AlteredFields: []string{"*opts.*runID"},
CGREvent: &utils.CGREvent{
Tenant: "cgrates.org",
ID: "eventCharger",
Event: map[string]interface{}{
utils.AccountField: "1001",
utils.Destination: "1002",
utils.RunID: utils.MetaDefault,
},
APIOpts: map[string]interface{}{
"*subsys": "*chargers",
"*subsys": "*chargers",
utils.MetaRunID: utils.MetaDefault,
},
},
},

View File

@@ -61,7 +61,7 @@ func TestEeSProcessEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.MetaRunID: utils.MetaDefault,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},

View File

@@ -112,12 +112,13 @@ func testDspStsGetStatFailover(t *testing.T) {
utils.AnswerTime: time.Date(2014, 7, 14, 14, 25, 0, 0, time.UTC),
utils.Usage: 135 * time.Second,
utils.Cost: 123.0,
utils.RunID: utils.MetaDefault,
utils.Destination: "1002",
utils.Destination: "1002",
},
APIOpts: map[string]interface{}{
utils.OptsAPIKey: "stat12345",
utils.MetaRunID: utils.MetaDefault,
},
}
if err := dispEngine.RPC.Call(utils.StatSv1ProcessEvent, args, &reply); err != nil {

View File

@@ -272,7 +272,7 @@ func exportEventWithExporter(ctx *context.Context, exp EventExporter, ev *utils.
}
}
key := utils.ConcatenatedKey(utils.FirstNonEmpty(engine.MapEvent(ev.Event).GetStringIgnoreErrors(utils.CGRID), utils.GenUUID()),
utils.FirstNonEmpty(engine.MapEvent(ev.Event).GetStringIgnoreErrors(utils.RunID), utils.MetaDefault))
utils.FirstNonEmpty(engine.MapEvent(ev.APIOpts).GetStringIgnoreErrors(utils.MetaRunID), utils.MetaDefault))
return ExportWithAttempts(ctx, exp, eEv, key)
}

View File

@@ -176,11 +176,14 @@ func TestV1ProcessEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.MetaRunID: utils.MetaDefault,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
var rply map[string]map[string]interface{}

View File

@@ -138,11 +138,14 @@ func testElasticExportEvents(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -165,11 +168,14 @@ func testElasticExportEvents(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Nanosecond,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.012,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -192,11 +198,14 @@ func testElasticExportEvents(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: time.Duration(1),
utils.RunID: utils.MetaDefault,
utils.Cost: 0.15,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -213,10 +222,11 @@ func testElasticExportEvents(t *testing.T) {
utils.AccountField: "1001",
utils.Subject: "1001",
utils.Destination: "1002",
utils.RunID: utils.MetaDefault,
},
APIOpts: map[string]interface{}{
"ExporterUsed": "ElasticExporterWithNoFields",
utils.MetaRunID:utils.MetaDefault,
},
},
}
@@ -289,7 +299,7 @@ func testElasticVerifyExports(t *testing.T) {
utils.Destination: "1002",
utils.OriginID: "sdfwer",
utils.RequestType: "*rated",
utils.RunID: "*default",
utils.MetaRunID: "*default",
utils.SetupTime: "2013-11-07T08:42:25Z",
utils.Subject: "1001",
utils.Tenant: "cgrates.org",
@@ -309,7 +319,7 @@ func testElasticVerifyExports(t *testing.T) {
utils.Destination: "1002",
utils.OriginID: "dsafdsaf",
utils.RequestType: "*rated",
utils.RunID: "*default",
utils.MetaRunID: "*default",
utils.SetupTime: "2013-11-07T08:42:25Z",
utils.Subject: "1001",
utils.Tenant: "cgrates.org",
@@ -328,8 +338,9 @@ func testElasticVerifyExports(t *testing.T) {
utils.AccountField: "1001",
utils.Subject: "1001",
utils.Destination: "1002",
utils.RunID: utils.MetaDefault,
utils.MetaRunID: utils.MetaDefault,
}
if !reflect.DeepEqual(eMp, hit.(map[string]interface{})["_source"]) {
t.Errorf("Expected %+v, received: %+v", eMp, hit.(map[string]interface{})["_source"])
}

View File

@@ -124,8 +124,11 @@ func testCsvExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.01,
utils.Cost: 1.01,
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -149,9 +152,11 @@ func testCsvExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Nanosecond,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.012,
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -174,8 +179,11 @@ func testCsvExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 1,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.15,
utils.Cost: 0.15,
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -241,11 +249,14 @@ func testCsvExportComposedEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.016374,
utils.Cost: 1.016374,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -269,11 +280,14 @@ func testCsvExportComposedEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 1,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.155462,
utils.Cost: 0.155462,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
var reply map[string]utils.MapStorage
@@ -331,11 +345,14 @@ func testCsvExportEventWithInflateTemplate(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.01,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -358,11 +375,14 @@ func testCsvExportEventWithInflateTemplate(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Nanosecond,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.012,
utils.Cost: 0.012,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
@@ -385,11 +405,14 @@ func testCsvExportEventWithInflateTemplate(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 1,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.15,
utils.Cost: 0.15,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}
var reply map[string]utils.MapStorage
@@ -452,11 +475,14 @@ func testCsvExportNotFoundExporter(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.01,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
},
},
}

View File

@@ -118,9 +118,12 @@ func testFwvExportEvent(t *testing.T) {
utils.SetupTime: time.Date(2013, 11, 7, 8, 42, 20, 0, time.UTC),
utils.AnswerTime: time.Date(2013, 11, 7, 8, 42, 26, 0, time.UTC),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 2.34567,
"ExtraFields": map[string]string{"field_extr1": "val_extr1", "fieldextr2": "valextr2"},
utils.Cost: 2.34567,
"ExtraFields": map[string]string{"field_extr1": "val_extr1", "fieldextr2": "valextr2"},
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}

View File

@@ -135,11 +135,14 @@ func testHTTPExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.01,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}
@@ -162,11 +165,14 @@ func testHTTPExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Nanosecond,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.012,
utils.Cost: 0.012,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}
@@ -189,11 +195,14 @@ func testHTTPExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 1,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.15,
utils.Cost: 0.15,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}
@@ -212,7 +221,9 @@ func testHTTPExportEvent(t *testing.T) {
utils.AccountField: "1001",
utils.Subject: "1001",
utils.Destination: "1002",
utils.RunID: utils.MetaDefault,
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}

View File

@@ -132,13 +132,14 @@ func testHTTPJsonMapExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.01,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaEventType: utils.CDR,
utils.RunID: utils.MetaDefault,
},
},
}
@@ -162,13 +163,14 @@ func testHTTPJsonMapExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Nanosecond,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.012,
utils.Cost: 0.012,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaEventType: utils.CDR,
utils.RunID: utils.MetaDefault,
},
},
}
@@ -192,14 +194,15 @@ func testHTTPJsonMapExportEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 1,
utils.RunID: utils.MetaDefault,
utils.Cost: 0.15,
utils.OrderID: 10,
utils.Cost: 0.15,
utils.OrderID: 10,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.MetaEventType: utils.CDR,
utils.RunID: utils.MetaDefault,
},
},
}
@@ -216,7 +219,9 @@ func testHTTPJsonMapExportEvent(t *testing.T) {
utils.Category: "call",
utils.AccountField: "1001",
utils.Destination: "1002",
utils.RunID: utils.MetaDefault,
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}

View File

@@ -163,11 +163,13 @@ func testSqlEeExportEventFull(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 1.01,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}
@@ -198,11 +200,13 @@ func testSqlEeExportEventPartial(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: utils.MetaDefault,
utils.Cost: 123,
"ExtraFields": map[string]string{"extra1": "val_extra1",
"extra2": "val_extra2", "extra3": "val_extra3"},
},
APIOpts: map[string]interface{}{
utils.RunID: utils.MetaDefault,
},
},
}

View File

@@ -119,9 +119,11 @@ func testVirtExportSupplierEvent(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: "SupplierRun",
utils.Cost: 1.23,
},
APIOpts: map[string]interface{}{
utils.MetaRunID: "SupplierRun",
},
},
}
@@ -152,9 +154,11 @@ func testVirtExportEvents(t *testing.T) {
utils.SetupTime: time.Unix(1383813745, 0).UTC(),
utils.AnswerTime: time.Unix(1383813746, 0).UTC(),
utils.Usage: 10 * time.Second,
utils.RunID: "SupplierRun",
utils.Cost: 1.01,
},
APIOpts: map[string]interface{}{
utils.MetaRunID: "SupplierRun",
},
},
}
var reply map[string]utils.MapStorage

View File

@@ -106,16 +106,17 @@ func (cS *ChargerService) processEvent(ctx *context.Context, tnt string, cgrEv *
if cPs, err = cS.matchingChargerProfilesForEvent(ctx, tnt, cgrEv); err != nil {
return nil, err
}
rply = make([]*ChrgSProcessEventReply, len(cPs))
for i, cP := range cPs {
clonedEv := cgrEv.Clone()
clonedEv.Tenant = tnt
clonedEv.Event[utils.RunID] = cP.RunID
clonedEv.APIOpts[utils.MetaRunID] = cP.RunID
clonedEv.APIOpts[utils.Subsys] = utils.MetaChargers
rply[i] = &ChrgSProcessEventReply{
ChargerSProfile: cP.ID,
CGREvent: clonedEv,
AlteredFields: []string{utils.MetaReqRunID},
AlteredFields: []string{utils.MetaOptsRunID},
}
if len(cP.AttributeIDs) == 1 && cP.AttributeIDs[0] == utils.MetaNone {
continue // AttributeS disabled

View File

@@ -453,11 +453,11 @@ func TestChargerProcessEvent(t *testing.T) {
rpl := []*ChrgSProcessEventReply{
{
ChargerSProfile: "CPP_1",
AlteredFields: []string{utils.MetaReqRunID},
AlteredFields: []string{utils.MetaOptsRunID},
CGREvent: chargerEvents[0],
},
}
rpl[0].CGREvent.Event[utils.RunID] = cPPs[0].RunID
rpl[0].CGREvent.APIOpts[utils.MetaRunID] = cPPs[0].RunID
rcv, err := chargerSrv.processEvent(context.Background(), rpl[0].CGREvent.Tenant, chargerEvents[0])
if err != nil {
t.Fatalf("Error: %+v", err)

View File

@@ -145,7 +145,7 @@ func TestChargersprocessEventCallNilErr(t *testing.T) {
exp := []*ChrgSProcessEventReply{
{
ChargerSProfile: "1001",
AlteredFields: []string{utils.MetaReqRunID, utils.AccountField},
AlteredFields: []string{utils.MetaOptsRunID, utils.AccountField},
CGREvent: &utils.CGREvent{
Tenant: "cgrates.org",
ID: "cgrEvID",
@@ -221,15 +221,15 @@ func TestChargersprocessEventCallErr(t *testing.T) {
exp := []*ChrgSProcessEventReply{
{
ChargerSProfile: "1001",
AlteredFields: []string{utils.MetaReqRunID},
AlteredFields: []string{utils.MetaOptsRunID},
CGREvent: &utils.CGREvent{
Tenant: "cgrates.org",
ID: "cgrEvID",
Event: map[string]interface{}{
utils.AccountField: "1001",
"RunID": utils.MetaDefault,
},
APIOpts: map[string]interface{}{
utils.MetaRunID: utils.MetaDefault,
utils.OptsAttributesProfileIDs: []string(nil),
utils.Subsys: utils.MetaChargers,
utils.OptsContext: utils.MetaChargers,
@@ -460,7 +460,7 @@ func TestChargersV1ProcessEvent(t *testing.T) {
exp := &[]*ChrgSProcessEventReply{
{
ChargerSProfile: "1001",
AlteredFields: []string{utils.MetaReqRunID, utils.AccountField},
AlteredFields: []string{utils.MetaOptsRunID, utils.AccountField},
CGREvent: &utils.CGREvent{
Tenant: "cgrates.org",
ID: "cgrEvID",

View File

@@ -139,7 +139,7 @@ func (s *Session) AsExternalSessions(tmz, nodeID string) (aSs []*ExternalSession
for i, sr := range s.SRuns {
aSs[i] = &ExternalSession{
CGRID: s.CGRID,
RunID: sr.Event.GetStringIgnoreErrors(utils.RunID),
RunID: sr.RunID,
ToR: sr.Event.GetStringIgnoreErrors(utils.ToR),
OriginID: s.EventStart.GetStringIgnoreErrors(utils.OriginID),
OriginHost: s.EventStart.GetStringIgnoreErrors(utils.OriginHost),
@@ -169,7 +169,7 @@ func (s *Session) AsExternalSessions(tmz, nodeID string) (aSs []*ExternalSession
func (s *Session) AsExternalSession(sr *SRun, tmz, nodeID string) (aS *ExternalSession) {
aS = &ExternalSession{
CGRID: s.CGRID,
RunID: sr.Event.GetStringIgnoreErrors(utils.RunID),
RunID: sr.RunID,
ToR: sr.Event.GetStringIgnoreErrors(utils.ToR),
OriginID: s.EventStart.GetStringIgnoreErrors(utils.OriginID),
OriginHost: s.EventStart.GetStringIgnoreErrors(utils.OriginHost),
@@ -249,6 +249,7 @@ type SRun struct {
LastUsage time.Duration // last requested Duration
TotalUsage time.Duration // sum of lastUsage
NextAutoDebit *time.Time
RunID string
}
// Clone returns the cloned version of SRun

View File

@@ -192,7 +192,6 @@ func TestSessionAsCGREvents(t *testing.T) {
utils.Subject: "1001",
utils.Destination: "1004",
utils.Category: "call",
utils.RunID: utils.MetaDefault,
utils.Tenant: "cgrates.org",
utils.RequestType: utils.MetaPrepaid,
utils.SetupTime: time.Date(2016, time.January, 5, 18, 30, 59, 0, time.UTC),
@@ -214,8 +213,8 @@ func TestSessionAsCGREvents(t *testing.T) {
if len(cgrEvs) != 1 {
t.Errorf("Expecting: 1, received: %+v", len(cgrEvs))
}
if cgrEvs[0].Event[utils.RunID] != utils.MetaDefault {
t.Errorf("Expecting: %+v, received: %+v", utils.MetaDefault, cgrEvs[1].Event[utils.RunID])
if cgrEvs[0].Event[utils.RequestType] != utils.MetaPrepaid {
t.Errorf("Expecting: %+v, received: %+v", utils.MetaPrepaid, cgrEvs[1].Event[utils.RequestType])
} else if cgrEvs[0].Event[utils.Cost] != 12.13 {
t.Errorf("Expecting: %+v, received: %+v", 12.13, cgrEvs[1].Event[utils.Cost])
}
@@ -245,7 +244,7 @@ func TestSessionAsExternalSessions(t *testing.T) {
utils.Subject: "1001",
utils.Destination: "1004",
utils.Category: "call",
utils.RunID: utils.MetaDefault,
utils.MetaRunID: utils.MetaDefault,
utils.Tenant: "cgrates.org",
utils.RequestType: utils.MetaPrepaid,
utils.SetupTime: time.Date(2016, time.January, 5, 18, 30, 59, 0, time.UTC),
@@ -267,7 +266,6 @@ func TestSessionAsExternalSessions(t *testing.T) {
}
exp := []*ExternalSession{{
CGRID: "RandomCGRID",
RunID: utils.MetaDefault,
ToR: utils.MetaVoice,
OriginID: "123451",
// OriginHost: s.EventStart.GetStringIgnoreErrors(utils.OriginHost),
@@ -283,7 +281,7 @@ func TestSessionAsExternalSessions(t *testing.T) {
Usage: 2 * time.Second,
ExtraFields: map[string]string{
utils.EventName: "TEST_EVENT2",
},
utils.MetaRunID: utils.MetaDefault},
NodeID: "ALL",
DebitInterval: time.Second,
NextAutoDebit: tTime,
@@ -554,7 +552,7 @@ func TestUpdateSRuns(t *testing.T) {
utils.Subject: "1001",
utils.Destination: "1004",
utils.Category: "call",
utils.RunID: utils.MetaDefault,
utils.MetaRunID: utils.MetaDefault,
utils.Tenant: "cgrates.org",
utils.RequestType: utils.MetaPrepaid,
utils.SetupTime: time.Date(2016, time.January, 5, 18, 30, 59, 0, time.UTC),

View File

@@ -958,6 +958,7 @@ func (sS *SessionS) newSession(ctx *context.Context, cgrEv *utils.CGREvent, resI
me := engine.MapEvent(chrgr.CGREvent.Event)
s.SRuns[i] = &SRun{
Event: me,
RunID: chrgr.CGREvent.APIOpts[utils.MetaRunID].(string),
}
}
return
@@ -2448,7 +2449,7 @@ func (sS *SessionS) BiRPCv1ProcessEvent(ctx *context.Context,
return
}
for _, chrgr := range chrgrs {
events[utils.IfaceAsString(chrgr.CGREvent.Event[utils.RunID])] = chrgr.CGREvent
events[utils.IfaceAsString(chrgr.CGREvent.APIOpts[utils.MetaRunID])] = chrgr.CGREvent
}
}

View File

@@ -214,13 +214,16 @@ const (
FallbackSubject = "FallbackSubject"
DryRun = "DryRun"
CustomValue = "CustomValue"
Value = "Value"
LastUsed = "LastUsed"
PDD = "PDD"
Route = "Route"
RunID = "RunID"
CustomValue = "CustomValue"
Value = "Value"
LastUsed = "LastUsed"
PDD = "PDD"
Route = "Route"
RunID = "RunID"
MetaRunID = "*runID"
AttributeIDs = "AttributeIDs"
MetaOptsRunID = "*opts.*runID"
MetaReqRunID = "*req.RunID"
Cost = "Cost"
CostDetails = "CostDetails"
@@ -230,7 +233,6 @@ const (
StaticValuePrefix = "^"
CSV = "csv"
FWV = "fwv"
MetaCombimed = "*combimed"
MetaMongo = "*mongo"
MetaPostgres = "*postgres"
MetaInternal = "*internal"