Spaces:
Sleeping
Sleeping
File size: 1,260 Bytes
afd0ae6 a77cb59 afd0ae6 980428a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
from flask import Blueprint, request, jsonify
from api.services.chat_service import ChatService
from flask_jwt_extended import jwt_required, get_jwt_identity
from api.models.user import User
chat_bp = Blueprint('chat', __name__, url_prefix='/api/chat')
@chat_bp.route('/message', methods=['POST'])
@jwt_required()
def send_message():
user_id = get_jwt_identity()
data = request.get_json()
message = data.get('message')
if not message:
return jsonify({'status': False, 'message': 'Message is required'}), 400
# Get user risk level
user = User.query.get(user_id)
if not user:
return jsonify({'status': False, 'message': 'User not found'}), 401
risk_level = user.risk_level
result = ChatService.process_message(user_id, message, risk_level)
if result['status']:
return jsonify(result), 200
return jsonify(result), 500
@chat_bp.route('/history', methods=['GET'])
@jwt_required()
def get_history():
user_id = get_jwt_identity()
history = ChatService.get_history(user_id)
return jsonify(history), 200
@chat_bp.route('/status', methods=['GET'])
@jwt_required()
def get_status():
status = ChatService.get_system_status()
return jsonify(status), 200 |