import vona.config as config import base64 import os from flask import ( Blueprint, jsonify, request, ) citadel = Blueprint("citadel", __name__) # These are endpoints made by Thales Citadel # TODO: Add more endpoints, this likely # isn't all of them @citadel.route("/_matrix/client/r0/citadel/stats/m.news/", methods=["GET", "PUT"]) async def news_stats(event): if request.method == "PUT": return jsonify({"success": True}) return jsonify({ "total_clicks": config.the_funny_number, "user_readings": config.the_funny_number }) @citadel.route("/_matrix/client/r0/citadel/rooms//closeRoom", methods=["POST"]) async def close_room(room): store_response = request.json.get("store_response", True) operation_id = base64.b64encode( bytes( os.urandom(8).hex(), "utf-8" ) ).decode("utf-8")[:14] if store_response: resp = {"operation_id": operation_id} else: resp = { "operation_id": operation_id, "previous_state": { "progress": { "steps": { "step_kick_users": { "status": "complete" }, "step_purge_history": { "status": "complete" }, "step_purge_media": { "status": "complete" } } }, "status": "complete" } } return jsonify(resp)