from flask import Blueprint, jsonify, request api_bp = Blueprint('devices', __name__) class DeviceController: def __init__(self): pass def ping(self): try : print("Received ping request") return "Hello from server", 200 except Exception as e: print(e) return "", 400 def start_party(self): pass def register_rfid(self): pass def notify_position(self): payload = request.json if not payload or "data" not in payload: return {"error": "No 'data' field"}, 400 data = payload["data"] # Vérifier que latitude et longitude existent latitude = data.get("latitude") longitude = data.get("longitude") if latitude is None or longitude is None: return {"error": "Missing latitude or longitude"}, 400 # Affichage safe avec f-string print(f"Received position data:\nLatitude: {latitude}, Longitude: {longitude}") return {"status": "ok"}, 200 def notify_luminosity(self): return jsonify({"message": "Hello from DeviceController!"}) controller = DeviceController() api_bp.add_url_rule('/ping', view_func=controller.ping, methods=['GET']) api_bp.add_url_rule('/start-party', view_func=controller.start_party, methods=['POST']) api_bp.add_url_rule('/register-field', view_func=controller.register_rfid, methods=['POST']) api_bp.add_url_rule('/notify-position', view_func=controller.notify_position, methods=['POST']) api_bp.add_url_rule('/notify-luminosity', view_func=controller.notify_luminosity, methods=['POST'])