from flask import Flask from flask_cors import CORS import os from application.kodi_alive_thread import start_kodi_alive_check from application.kodi_free_time_thread import start_kodi_free_time_play from utils.logger_config import logger # 导入所有蓝图 from api.auth import auth_bp from api.main import main_bp from api.led import led_bp from api.kodi import kodi_bp from api.mitv import mitv_bp from api.ha import ha_bp from api.door import door_bp from api.utils import UPLOAD_FOLDER app = Flask(__name__) app.secret_key = 'your_secret_key_here_hnhz_0821' # 用于 session 加密,请更改为随机字符串 CORS(app) # 允许跨域请求 # 配置上传文件夹 app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024 # 限制上传文件大小为16MB # 确保上传文件夹存在 if not os.path.exists(UPLOAD_FOLDER): os.makedirs(UPLOAD_FOLDER) # 注册蓝图 app.register_blueprint(auth_bp) app.register_blueprint(main_bp) app.register_blueprint(led_bp) app.register_blueprint(kodi_bp) app.register_blueprint(mitv_bp) app.register_blueprint(ha_bp) app.register_blueprint(door_bp) if __name__ == '__main__': # 创建templates目录 if not os.path.exists('templates'): os.makedirs('templates') logger.info("启动Kodi心跳检测") start_kodi_alive_check() logger.info("启动Kodi空闲时间播放") start_kodi_free_time_play() logger.info("Flask API服务器启动中...") logger.info("访问 http://localhost:5050 查看HTML页面") logger.info("API端点已通过蓝图注册") app.run(debug=True, host='0.0.0.0', port=5050)