新增webhook url参数
This commit is contained in:
41
app.py
41
app.py
@@ -1,5 +1,7 @@
|
||||
"""WPS Bot Game - FastAPI主应用"""
|
||||
import logging
|
||||
import argparse
|
||||
import os
|
||||
from fastapi import FastAPI
|
||||
from fastapi.responses import JSONResponse
|
||||
from contextlib import asynccontextmanager
|
||||
@@ -94,14 +96,45 @@ async def global_exception_handler(request, exc):
|
||||
)
|
||||
|
||||
|
||||
def parse_args():
|
||||
"""解析命令行参数"""
|
||||
parser = argparse.ArgumentParser(description='WPS Bot Game')
|
||||
parser.add_argument('--webhook-url', '-w',
|
||||
help='WPS Webhook URL')
|
||||
parser.add_argument('--host', '-H',
|
||||
default='0.0.0.0',
|
||||
help='服务器主机地址 (默认: 0.0.0.0)')
|
||||
parser.add_argument('--port', '-p',
|
||||
type=int, default=11000,
|
||||
help='服务器端口 (默认: 11000)')
|
||||
parser.add_argument('--workers',
|
||||
type=int, default=1,
|
||||
help='工作进程数 (默认: 1)')
|
||||
parser.add_argument('--log-level',
|
||||
default='info',
|
||||
choices=['debug', 'info', 'warning', 'error'],
|
||||
help='日志级别 (默认: info)')
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import uvicorn
|
||||
|
||||
# 解析命令行参数
|
||||
args = parse_args()
|
||||
|
||||
# 如果提供了webhook URL,设置环境变量
|
||||
if args.webhook_url:
|
||||
os.environ['WEBHOOK_URL'] = args.webhook_url
|
||||
logger.info(f"设置Webhook URL: {args.webhook_url}")
|
||||
|
||||
# 启动服务器
|
||||
uvicorn.run(
|
||||
"app:app",
|
||||
host="0.0.0.0",
|
||||
port=11000,
|
||||
workers=1,
|
||||
host=args.host,
|
||||
port=args.port,
|
||||
workers=args.workers,
|
||||
limit_concurrency=5,
|
||||
log_level="info"
|
||||
log_level=args.log_level
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user