Files
Projet_Smart_Home_Final/routes/security.py

41 lines
1.2 KiB
Python

from flask import Blueprint, jsonify, request
from flask_jwt_extended import jwt_required
import pymysql
from config import Config
security_bp = Blueprint('security', __name__)
def get_db():
return pymysql.connect(
host=Config.MYSQL_HOST,
user=Config.MYSQL_USER,
password=Config.MYSQL_PASSWORD,
database=Config.MYSQL_DB,
cursorclass=pymysql.cursors.DictCursor
)
#GET — Récupérer tous les événements de sécurité
@security_bp.route('/', methods=['GET'])
@jwt_required()
def get_security():
db = get_db()
cursor = db.cursor()
cursor.execute("SELECT * FROM security_events ORDER BY timestamp DESC LIMIT 50")
data = cursor.fetchall()
db.close()
return jsonify(data), 200
# POST — Ajouter un événement de sécurité
@security_bp.route('/', methods=['POST'])
@jwt_required()
def add_security():
body = request.get_json()
db = get_db()
cursor = db.cursor()
cursor.execute(
"INSERT INTO security_events (event_type, location) VALUES (%s, %s)",
(body.get('event_type'), body.get('location'))
)
db.commit()
db.close()
return jsonify({'message': 'Événement ajouté avec succès'}), 201