mirror of
https://github.com/hanxi/xiaomusic.git
synced 2026-05-09 00:34:25 +08:00
fix: 尝试解决七牛设备问题
This commit is contained in:
@@ -69,32 +69,35 @@ class Analytics:
|
||||
return None
|
||||
|
||||
async def post_to_umami(self, event):
|
||||
url = "https://umami.hanxi.cc/api/send"
|
||||
user_agent = self._get_user_agent()
|
||||
event.set_event_param(name="useragent", value=user_agent)
|
||||
data = {
|
||||
"payload": {
|
||||
"hostname": self.config.hostname,
|
||||
"language": "zh-CN",
|
||||
"referrer": "",
|
||||
"screen": "430x932",
|
||||
"title": "后端统计",
|
||||
"url": "/backend",
|
||||
"website": "7bfb0890-4115-4260-8892-b391513e7e99",
|
||||
"name": event.get_event_name(),
|
||||
"data": event.get_event_params(),
|
||||
},
|
||||
"type": "event",
|
||||
}
|
||||
|
||||
async with aiohttp.ClientSession() as session:
|
||||
headers = {
|
||||
"User-Agent": user_agent,
|
||||
try:
|
||||
url = "https://umami.hanxi.cc/api/send"
|
||||
user_agent = self._get_user_agent()
|
||||
event.set_event_param(name="useragent", value=user_agent)
|
||||
data = {
|
||||
"payload": {
|
||||
"hostname": self.config.hostname,
|
||||
"language": "zh-CN",
|
||||
"referrer": "",
|
||||
"screen": "430x932",
|
||||
"title": "后端统计",
|
||||
"url": "/backend",
|
||||
"website": "7bfb0890-4115-4260-8892-b391513e7e99",
|
||||
"name": event.get_event_name(),
|
||||
"data": event.get_event_params(),
|
||||
},
|
||||
"type": "event",
|
||||
}
|
||||
# self.log.info(f"headers {headers}, {data}")
|
||||
async with session.post(url, json=data, headers=headers) as response:
|
||||
self.log.info(f"umami Status: {response.status}")
|
||||
await response.text()
|
||||
|
||||
async with aiohttp.ClientSession() as session:
|
||||
headers = {
|
||||
"User-Agent": user_agent,
|
||||
}
|
||||
# self.log.info(f"headers {headers}, {data}")
|
||||
async with session.post(url, json=data, headers=headers) as response:
|
||||
self.log.info(f"umami Status: {response.status}")
|
||||
await response.text()
|
||||
except Exception as e:
|
||||
self.log.exception(f"Execption {e}")
|
||||
|
||||
def _get_user_agent(self):
|
||||
try:
|
||||
|
||||
@@ -45,6 +45,7 @@ from xiaomusic.utils import (
|
||||
remove_common_prefix,
|
||||
remove_id3_tags,
|
||||
try_add_access_control_param,
|
||||
update_version,
|
||||
)
|
||||
|
||||
xiaomusic = None
|
||||
@@ -571,6 +572,13 @@ async def playlistdelmusic(data: PlayListMusicObj, Verifcation=Depends(verificat
|
||||
return {"ret": "Del failed, may be playlist not exist."}
|
||||
|
||||
|
||||
# 更新版本
|
||||
@app.post("/updateversion")
|
||||
async def updateversion(version: str = "", Verifcation=Depends(verification)):
|
||||
ret = update_version(version)
|
||||
return {"ret": ret}
|
||||
|
||||
|
||||
async def file_iterator(file_path, start, end):
|
||||
async with aiofiles.open(file_path, mode="rb") as file:
|
||||
await file.seek(start)
|
||||
|
||||
@@ -1010,3 +1010,28 @@ def not_in_dirs(filename, ignore_absolute_dirs):
|
||||
return False # 文件在排除目录中
|
||||
|
||||
return True # 文件不在排除目录中
|
||||
|
||||
|
||||
def is_docker():
|
||||
return os.path.exists("/app/.dockerenv")
|
||||
|
||||
|
||||
def restart_xiaomusic():
|
||||
if not is_docker():
|
||||
ret = "xiaomusic 重启只能在 docker 中进行"
|
||||
log.info(ret)
|
||||
return False, ret
|
||||
try:
|
||||
# 重启 xiaomusic 程序
|
||||
subprocess.run(["supervisorctl", "restart", "xiaomusic"], check=True)
|
||||
log.info("xiaomusic 重启成功")
|
||||
except subprocess.CalledProcessError as e:
|
||||
log.info(f"xiaomusic 重启失败: {e}")
|
||||
return False, "xiaomusic 重启失败"
|
||||
return True
|
||||
|
||||
|
||||
def update_version(version):
|
||||
ok, ret = restart_xiaomusic()
|
||||
if not ok:
|
||||
return ret
|
||||
|
||||
Reference in New Issue
Block a user