Trae Agent
优化
a77cb59
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