This repository has been archived on 2026-03-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files

24 lines
663 B
Python

from flask import Blueprint, jsonify
from flask_login import login_required, current_user
from app.db import get_db
presence_bp = Blueprint("presence", __name__)
def _mark_current_user_online() -> None:
db = get_db()
db.execute(
"UPDATE users SET last_seen_at = CURRENT_TIMESTAMP WHERE id = ?",
(current_user.id,),
)
db.commit()
@presence_bp.route("/api/presence/ping", methods=["POST"])
@login_required
def presence_ping():
if not current_user.is_authenticated: # should not happen due to @login_required, but just in case
return ("", 204)
_mark_current_user_online()
return jsonify({"status": "ok"})