1
0
mirror of https://github.com/hanxi/xiaomusic.git synced 2025-12-08 15:08:12 +08:00

Compare commits

..

6 Commits

Author SHA1 Message Date
涵曦
946be390ed bump: version 0.3.96 → 0.3.97 2025-11-01 13:02:13 +08:00
涵曦
5d32590c76 build: update static version 2025-11-01 13:02:12 +08:00
Issues Docs [BOT]
c0528342a1 Auto-Generate docs 🤖 2025-11-01 02:11:34 +00:00
Formatter [BOT]
9660079b02 Auto-format code 🧹🌟🤖 2025-11-01 02:09:09 +00:00
涵曦
f535fd149e feat: 升级 miservice 2025-11-01 10:08:34 +08:00
涵曦
34d1aab7f5 fix: 优化登录问题 2025-11-01 10:08:34 +08:00
12 changed files with 54 additions and 33 deletions

3
.gitmodules vendored
View File

@@ -1,3 +0,0 @@
[submodule "MiService"]
path = MiService
url = git@github.com:hanxi/MiService.git

View File

@@ -1,3 +1,13 @@
## v0.3.97 (2025-11-01)
### Feat
- 升级 miservice
### Fix
- 优化登录问题
## v0.3.96 (2025-10-28) ## v0.3.96 (2025-10-28)
### Fix ### Fix

Submodule MiService deleted from 898d7de17f

View File

@@ -263,5 +263,19 @@ https://tutu.to/image/1.N0FHK
同样问题,但我重新使用 [视频教程-群晖1]进行部署就正常了 同样问题,但我重新使用 [视频教程-群晖1]进行部署就正常了
---
### 评论 28 - davedday
这个支持在远程VPS上docker部署然后本地小爱同学使用吗
---
### 评论 29 - hanxi
> 这个支持在远程VPS上docker部署然后本地小爱同学使用吗
支持的,请不要在不相关的话题下面问。
--- ---
[链接到 GitHub Issue](https://github.com/hanxi/xiaomusic/issues/211) [链接到 GitHub Issue](https://github.com/hanxi/xiaomusic/issues/211)

View File

@@ -1,6 +1,6 @@
[project] [project]
name = "xiaomusic" name = "xiaomusic"
version = "0.3.96" version = "0.3.97"
description = "Play Music with xiaomi AI speaker" description = "Play Music with xiaomi AI speaker"
authors = [ authors = [
{name = "涵曦", email = "im.hanxi@gmail.com"}, {name = "涵曦", email = "im.hanxi@gmail.com"},
@@ -24,7 +24,7 @@ dependencies = [
"python-socketio>=5.12.1", "python-socketio>=5.12.1",
"pyjwt>=2.10.1", "pyjwt>=2.10.1",
"fake-useragent>=2.2.0", "fake-useragent>=2.2.0",
"miservice-fork @ file:///${PROJECT_ROOT}/MiService", "miservice-fork",
"edge-tts>=7.2.3", "edge-tts>=7.2.3",
] ]
requires-python = ">=3.10" requires-python = ">=3.10"

View File

@@ -1 +1 @@
__version__ = "0.3.96" __version__ = "0.3.97"

View File

@@ -6,9 +6,9 @@
<meta name="viewport" content="width=device-width"> <meta name="viewport" content="width=device-width">
<title>Debug For XiaoMusic</title> <title>Debug For XiaoMusic</title>
<link rel="stylesheet" type="text/css" href="./main.css?version=1761581012"> <link rel="stylesheet" type="text/css" href="./main.css?version=1761973315">
<script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script> <script src="https://unpkg.com/vconsole@latest/dist/vconsole.min.js"></script>
<script src="./jquery-3.7.1.min.js?version=1761581012"></script> <script src="./jquery-3.7.1.min.js?version=1761973315"></script>
<!-- Google tag (gtag.js) --> <!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script> <script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script>

View File

@@ -4,8 +4,8 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width"> <meta name="viewport" content="width=device-width">
<title>歌曲下载工具</title> <title>歌曲下载工具</title>
<link rel="stylesheet" type="text/css" href="./main.css?version=1761581012"> <link rel="stylesheet" type="text/css" href="./main.css?version=1761973315">
<script src="./jquery-3.7.1.min.js?version=1761581012"></script> <script src="./jquery-3.7.1.min.js?version=1761973315"></script>
<!-- Google tag (gtag.js) --> <!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script> <script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script>

View File

@@ -5,8 +5,8 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>小爱音箱操控面板</title> <title>小爱音箱操控面板</title>
<script src="./jquery-3.7.1.min.js?version=1761581012"></script> <script src="./jquery-3.7.1.min.js?version=1761973315"></script>
<link rel="stylesheet" href="./main.css?version=1761581012"> <link rel="stylesheet" href="./main.css?version=1761973315">
<link rel="icon" href="./favicon.ico"> <link rel="icon" href="./favicon.ico">
<!-- Google tag (gtag.js) --> <!-- Google tag (gtag.js) -->
@@ -196,7 +196,7 @@
Powered by XiaoMusic Powered by XiaoMusic
</div> </div>
<script src="./md.js?version=1761581012"> <script src="./md.js?version=1761973315">
</script> </script>
</body> </body>

View File

@@ -5,7 +5,7 @@
<link rel="icon" href="/favicon.ico"> <link rel="icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width"> <meta name="viewport" content="width=device-width">
<title>M3U to JSON Converter</title> <title>M3U to JSON Converter</title>
<link rel="stylesheet" type="text/css" href="./main.css?version=1761581012"> <link rel="stylesheet" type="text/css" href="./main.css?version=1761973315">
<!-- Google tag (gtag.js) --> <!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script> <script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script>

View File

@@ -4,9 +4,9 @@
<link rel="icon" href="/favicon.ico"> <link rel="icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width"> <meta name="viewport" content="width=device-width">
<title>小爱音箱操控面板</title> <title>小爱音箱操控面板</title>
<script src="./jquery-3.7.1.min.js?version=1761581012"></script> <script src="./jquery-3.7.1.min.js?version=1761973315"></script>
<script src="./setting.js?version=1761581012"></script> <script src="./setting.js?version=1761973315"></script>
<link rel="stylesheet" type="text/css" href="./main.css?version=1761581012"> <link rel="stylesheet" type="text/css" href="./main.css?version=1761973315">
<!-- Google tag (gtag.js) --> <!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script> <script async src="https://www.googletagmanager.com/gtag/js?id=G-Z09NC1K7ZW"></script>

View File

@@ -15,7 +15,7 @@ from dataclasses import asdict
from logging.handlers import RotatingFileHandler from logging.handlers import RotatingFileHandler
from aiohttp import ClientSession, ClientTimeout from aiohttp import ClientSession, ClientTimeout
from miservice import MiAccount, MiIOService, MiNAService from miservice import MiAccount, MiIOService, MiNAService, miio_command
from watchdog.events import ( from watchdog.events import (
FileCreatedEvent, FileCreatedEvent,
FileDeletedEvent, FileDeletedEvent,
@@ -42,6 +42,7 @@ from xiaomusic.const import (
PLAY_TYPE_SEQ, PLAY_TYPE_SEQ,
PLAY_TYPE_SIN, PLAY_TYPE_SIN,
SUPPORT_MUSIC_TYPE, SUPPORT_MUSIC_TYPE,
TTS_COMMAND,
) )
from xiaomusic.crontab import Crontab from xiaomusic.crontab import Crontab
from xiaomusic.plugin import PluginManager from xiaomusic.plugin import PluginManager
@@ -1557,6 +1558,8 @@ class XiaoMusic:
device_list = await self.mina_service.device_list() device_list = await self.mina_service.device_list()
except Exception as e: except Exception as e:
self.log.warning(f"Execption {e}") self.log.warning(f"Execption {e}")
# 重新初始化
await self.xiaomusic.reinit()
return device_list return device_list
async def debug_play_by_music_url(self, arg1=None): async def debug_play_by_music_url(self, arg1=None):
@@ -2046,22 +2049,20 @@ class XiaoMusicDevice:
async def text_to_speech(self, value): async def text_to_speech(self, value):
try: try:
# 有 tts command 优先使用 tts command 说话 # 有 tts command 优先使用 tts command 说话
# if self.hardware in TTS_COMMAND: if self.hardware in TTS_COMMAND:
# tts_cmd = TTS_COMMAND[self.hardware] tts_cmd = TTS_COMMAND[self.hardware]
# self.log.info("Call MiIOService tts.") self.log.info("Call MiIOService tts.")
# value = value.replace(" ", ",") # 不能有空格 value = value.replace(" ", ",") # 不能有空格
# await miio_command( await miio_command(
# self.xiaomusic.miio_service, self.xiaomusic.miio_service,
# self.did, self.did,
# f"{tts_cmd} {value}", f"{tts_cmd} {value}",
# ) )
# else: else:
self.log.debug("Call MiNAService tts.") self.log.debug("Call MiNAService tts.")
await self.xiaomusic.mina_service.text_to_speech(self.device_id, value) await self.xiaomusic.mina_service.text_to_speech(self.device_id, value)
except Exception as e: except Exception as e:
self.log.exception(f"Execption {e}") self.log.exception(f"Execption {e}")
# 重新初始化
# await self.xiaomusic.reinit()
# 同一组设备播放 # 同一组设备播放
async def group_player_play(self, url, name=""): async def group_player_play(self, url, name=""):