mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
AttributeS.ProcessEvent with better error handling, migrator for aliases using *destinations instead of *destination
This commit is contained in:
@@ -250,7 +250,7 @@ func (alS *AttributeService) V1ProcessEvent(args *AttrArgsProcessEvent,
|
||||
break
|
||||
}
|
||||
}
|
||||
} else if apiRply != nil {
|
||||
} else if err == nil {
|
||||
for _, valIface := range apiRply.CGREvent.Event {
|
||||
if valIface == interface{}(utils.MetaAttributes) {
|
||||
// mandatory IE missing
|
||||
|
||||
@@ -87,13 +87,16 @@ func alias2AtttributeProfile(alias *v1Alias, defaultTenant string) *engine.Attri
|
||||
out.Tenant = defaultTenant
|
||||
}
|
||||
if len(alias.Category) != 0 && alias.Category != utils.META_ANY {
|
||||
out.FilterIDs = append(out.FilterIDs, "*string:~Category:"+alias.Category)
|
||||
out.FilterIDs = append(out.FilterIDs,
|
||||
fmt.Sprintf("%s:~%s:%s", utils.MetaString, utils.Category, alias.Category))
|
||||
}
|
||||
if len(alias.Account) != 0 && alias.Account != utils.META_ANY {
|
||||
out.FilterIDs = append(out.FilterIDs, "*string:~Account:"+alias.Account)
|
||||
out.FilterIDs = append(out.FilterIDs,
|
||||
fmt.Sprintf("%s:~%s:%s", utils.MetaString, utils.Account, alias.Account))
|
||||
}
|
||||
if len(alias.Subject) != 0 && alias.Subject != utils.META_ANY {
|
||||
out.FilterIDs = append(out.FilterIDs, "*string:~Subject:"+alias.Subject)
|
||||
out.FilterIDs = append(out.FilterIDs,
|
||||
fmt.Sprintf("%s:~%s:%s", utils.MetaString, utils.Subject, alias.Subject))
|
||||
}
|
||||
var destination string
|
||||
for _, av := range alias.Values {
|
||||
@@ -115,7 +118,8 @@ func alias2AtttributeProfile(alias *v1Alias, defaultTenant string) *engine.Attri
|
||||
}
|
||||
}
|
||||
if len(destination) != 0 && destination != utils.META_ANY {
|
||||
out.FilterIDs = append(out.FilterIDs, "*destination:~Destination:"+destination)
|
||||
out.FilterIDs = append(out.FilterIDs,
|
||||
fmt.Sprintf("%s:~%s:%s", utils.MetaDestinations, utils.Destination, destination))
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
@@ -158,7 +158,7 @@ func testAlsITMigrateAndMove(t *testing.T) {
|
||||
FilterIDs: []string{
|
||||
"*string:~Account:1001",
|
||||
"*string:~Subject:call_1001",
|
||||
"*destination:~Destination:DST_1003",
|
||||
"*destinations:~Destination:DST_1003",
|
||||
},
|
||||
ActivationInterval: nil,
|
||||
Attributes: []*engine.Attribute{
|
||||
|
||||
@@ -221,7 +221,7 @@ func TestAlias2AtttributeProfile(t *testing.T) {
|
||||
FilterIDs: []string{
|
||||
"*string:~Category:*voice",
|
||||
"*string:~Account:1001",
|
||||
"*destination:~Destination:DST_1003",
|
||||
"*destinations:~Destination:DST_1003",
|
||||
},
|
||||
ActivationInterval: nil,
|
||||
Attributes: []*engine.Attribute{
|
||||
@@ -246,7 +246,7 @@ func TestAlias2AtttributeProfile(t *testing.T) {
|
||||
FilterIDs: []string{
|
||||
"*string:~Account:1001",
|
||||
"*string:~Subject:call_1001",
|
||||
"*destination:~Destination:DST_1003",
|
||||
"*destinations:~Destination:DST_1003",
|
||||
},
|
||||
ActivationInterval: nil,
|
||||
Attributes: []*engine.Attribute{
|
||||
|
||||
Reference in New Issue
Block a user