Update app.py
Browse files
app.py
CHANGED
@@ -5,9 +5,9 @@ from flask import Flask, request, jsonify
|
|
5 |
from datetime import datetime, timedelta
|
6 |
import asyncio
|
7 |
import re
|
8 |
-
import webdav3.client as wc
|
9 |
import threading
|
10 |
import time
|
|
|
11 |
|
12 |
app = Flask(__name__)
|
13 |
|
@@ -475,18 +475,10 @@ async def unbanUser(chatId, userId):
|
|
475 |
await sendTelegramMessage(chatId, f"用户 {userId} 已被解禁。")
|
476 |
print(f"用户 {userId} 在群组 {chatId} 中被解禁。")
|
477 |
|
478 |
-
|
479 |
WEBDAV_USERNAME = os.environ.get('WEBDAV_USERNAME')
|
480 |
WEBDAV_PASSWORD = os.environ.get('WEBDAV_PASSWORD')
|
481 |
|
482 |
-
webdav_options = {
|
483 |
-
'webdav_hostname': WEBDAV_HOSTNAME,
|
484 |
-
'webdav_login': WEBDAV_USERNAME,
|
485 |
-
'webdav_password': WEBDAV_PASSWORD
|
486 |
-
}
|
487 |
-
|
488 |
-
webdav_client = wc.Client(webdav_options)
|
489 |
-
|
490 |
def save_data_to_webdav():
|
491 |
data = {
|
492 |
'chatHistories': chatHistories,
|
@@ -499,15 +491,24 @@ def save_data_to_webdav():
|
|
499 |
}
|
500 |
|
501 |
json_data = json.dumps(data)
|
502 |
-
|
503 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
504 |
|
505 |
def load_data_from_webdav():
|
506 |
global chatHistories, GROUP_SETTINGS, USER_SETTINGS, USER_LAST_ACTIVE, GROUP_ACTIVE_USERS, GROUP_INFO, BANNED_USERS
|
507 |
|
508 |
-
|
509 |
-
|
510 |
-
|
|
|
|
|
511 |
|
512 |
chatHistories = data['chatHistories']
|
513 |
GROUP_SETTINGS = data['GROUP_SETTINGS']
|
@@ -519,7 +520,7 @@ def load_data_from_webdav():
|
|
519 |
|
520 |
print("数据已从WebDAV加载")
|
521 |
else:
|
522 |
-
print("WebDAV
|
523 |
|
524 |
def periodic_save():
|
525 |
while True:
|
|
|
5 |
from datetime import datetime, timedelta
|
6 |
import asyncio
|
7 |
import re
|
|
|
8 |
import threading
|
9 |
import time
|
10 |
+
from requests.auth import HTTPBasicAuth
|
11 |
|
12 |
app = Flask(__name__)
|
13 |
|
|
|
475 |
await sendTelegramMessage(chatId, f"用户 {userId} 已被解禁。")
|
476 |
print(f"用户 {userId} 在群组 {chatId} 中被解禁。")
|
477 |
|
478 |
+
WEBDAV_URL = os.environ.get('WEBDAV_URL')
|
479 |
WEBDAV_USERNAME = os.environ.get('WEBDAV_USERNAME')
|
480 |
WEBDAV_PASSWORD = os.environ.get('WEBDAV_PASSWORD')
|
481 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
482 |
def save_data_to_webdav():
|
483 |
data = {
|
484 |
'chatHistories': chatHistories,
|
|
|
491 |
}
|
492 |
|
493 |
json_data = json.dumps(data)
|
494 |
+
|
495 |
+
response = requests.put(f"{WEBDAV_URL}/tg_bot/bot_data.json",
|
496 |
+
data=json_data,
|
497 |
+
auth=HTTPBasicAuth(WEBDAV_USERNAME, WEBDAV_PASSWORD))
|
498 |
+
|
499 |
+
if response.status_code in [200, 201, 204]:
|
500 |
+
print("数据已保存到WebDAV")
|
501 |
+
else:
|
502 |
+
print(f"保存到WebDAV失败: {response.status_code}")
|
503 |
|
504 |
def load_data_from_webdav():
|
505 |
global chatHistories, GROUP_SETTINGS, USER_SETTINGS, USER_LAST_ACTIVE, GROUP_ACTIVE_USERS, GROUP_INFO, BANNED_USERS
|
506 |
|
507 |
+
response = requests.get(f"{WEBDAV_URL}/tg_bot/bot_data.json",
|
508 |
+
auth=HTTPBasicAuth(WEBDAV_USERNAME, WEBDAV_PASSWORD))
|
509 |
+
|
510 |
+
if response.status_code == 200:
|
511 |
+
data = json.loads(response.text)
|
512 |
|
513 |
chatHistories = data['chatHistories']
|
514 |
GROUP_SETTINGS = data['GROUP_SETTINGS']
|
|
|
520 |
|
521 |
print("数据已从WebDAV加载")
|
522 |
else:
|
523 |
+
print("WebDAV中没有找到数据或加载失败,使用初始值")
|
524 |
|
525 |
def periodic_save():
|
526 |
while True:
|