fix: 修复M01语音播放问题,X08C X08E X8F 型号默认采用型号兼容模式 see #30

This commit is contained in:
涵曦 2024-12-03 21:25:40 +08:00
parent 742929b9d5
commit 8c92afd09b
2 changed files with 11 additions and 2 deletions

View File

@ -20,3 +20,10 @@ PLAY_TYPE_SEQ = 4 # 顺序播放
GET_ASK_BY_MINA = {
"M01",
}
# 需要使用 play_musci 接口的设备型号
NEED_USE_PLAY_MUSIC_API = {
"X08C",
"X08E",
"X8F",
}

View File

@ -28,6 +28,7 @@ from xiaomusic.const import (
COOKIE_TEMPLATE,
GET_ASK_BY_MINA,
LATEST_ASK_API,
NEED_USE_PLAY_MUSIC_API,
PLAY_TYPE_ALL,
PLAY_TYPE_ONE,
PLAY_TYPE_RND,
@ -187,7 +188,7 @@ class XiaoMusic:
self.last_timestamp[did] = int(time.time() * 1000)
hardware = self.get_hardward(device_id)
if hardware in GET_ASK_BY_MINA or self.config.get_ask_by_mina:
if (hardware in GET_ASK_BY_MINA) or self.config.get_ask_by_mina:
tasks.append(self.get_latest_ask_by_mina(device_id))
else:
tasks.append(
@ -1711,6 +1712,7 @@ class XiaoMusicDevice:
ret = None
try:
audio_id = await self._get_audio_id(name)
hardware = self.get_hardward(device_id)
if self.config.continue_play:
ret = await self.xiaomusic.mina_service.play_by_music_url(
device_id, url, _type=1, audio_id=audio_id
@ -1718,7 +1720,7 @@ class XiaoMusicDevice:
self.log.info(
f"play_one_url continue_play device_id:{device_id} ret:{ret} url:{url} audio_id:{audio_id}"
)
elif self.config.use_music_api:
elif self.config.use_music_api or (hardware in NEED_USE_PLAY_MUSIC_API):
ret = await self.xiaomusic.mina_service.play_by_music_url(
device_id, url, audio_id=audio_id
)