summaryrefslogtreecommitdiff
path: root/internal/server/api
diff options
context:
space:
mode:
Diffstat (limited to 'internal/server/api')
-rw-r--r--internal/server/api/api.go15
-rw-r--r--internal/server/api/migrations/20250718210459_users_last_activity.sql5
2 files changed, 20 insertions, 0 deletions
diff --git a/internal/server/api/api.go b/internal/server/api/api.go
index 5159186..6c602ea 100644
--- a/internal/server/api/api.go
+++ b/internal/server/api/api.go
@@ -11,6 +11,7 @@ import (
"strconv"
"strings"
"sync"
+ "time"
"github.com/kyren223/eko/internal/data"
"github.com/kyren223/eko/internal/packet"
@@ -1703,3 +1704,17 @@ func DeviceAnalytics(ctx context.Context, sess *session.Session, request *packet
return nil
}
+
+func SetLastUserActivity(ctx context.Context, sess *session.Session) {
+ queries := data.New(db)
+ now := time.Now().UnixMilli()
+ err := queries.UpdateUserLastActivity(ctx, data.UpdateUserLastActivityParams{
+ LastActivity: &now,
+ ID: sess.ID(),
+ })
+ if err != nil {
+ slog.ErrorContext(ctx, "database error", "error", err)
+ } else {
+ slog.DebugContext(ctx, "set user activity", "now", now)
+ }
+}
diff --git a/internal/server/api/migrations/20250718210459_users_last_activity.sql b/internal/server/api/migrations/20250718210459_users_last_activity.sql
new file mode 100644
index 0000000..2fbc2c8
--- /dev/null
+++ b/internal/server/api/migrations/20250718210459_users_last_activity.sql
@@ -0,0 +1,5 @@
+-- +goose Up
+ALTER TABLE users ADD COLUMN last_activity INTEGER;
+
+-- +goose Down
+ALTER TABLE users DROP COLUMN last_activity;