diff --git a/ee/backend/pkg/sessionmanager/manager.go b/ee/backend/pkg/sessionmanager/manager.go index 030ae7916..d098dd871 100644 --- a/ee/backend/pkg/sessionmanager/manager.go +++ b/ee/backend/pkg/sessionmanager/manager.go @@ -36,6 +36,7 @@ type SessionData struct { UserState *string `json:"userState"` // is UserCity *string `json:"userCity"` // is Metadata *map[string]string `json:"metadata"` // contains + IsActive bool `json:"active"` Raw interface{} } @@ -485,6 +486,12 @@ func matchesFilters(session *SessionData, filters []*Filter, counter map[string] if session.UserCity != nil { value = *session.UserCity } + case IsActive: + if session.IsActive { + value = "true" + } else { + value = "false" + } default: if val, ok := (*session.Metadata)[name]; ok { value = val diff --git a/ee/backend/pkg/sessionmanager/model.go b/ee/backend/pkg/sessionmanager/model.go index 8db256c8f..64e9d7875 100644 --- a/ee/backend/pkg/sessionmanager/model.go +++ b/ee/backend/pkg/sessionmanager/model.go @@ -19,7 +19,7 @@ const ( UserCountry = "userCountry" UserState = "userState" UserCity = "userCity" - Metadata = "metadata" + IsActive = "active" ) type FilterOperator bool