From 0874efe58b0a4c85734fde6de5fd9944e55a93ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B6=B5=E6=9B=A6?= Date: Sat, 15 Jun 2024 15:56:15 +0000 Subject: [PATCH] =?UTF-8?q?=E6=92=AD=E6=94=BE=E6=AD=8C=E6=9B=B2=E6=8C=87?= =?UTF-8?q?=E4=BB=A4=E9=BB=98=E8=AE=A4=E6=92=AD=E6=94=BE=E6=9C=80=E5=90=8E?= =?UTF-8?q?=E4=B8=80=E6=AC=A1=E6=92=AD=E6=94=BE=E7=9A=84=E6=AD=8C=E6=9B=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xiaomusic/xiaomusic.py | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/xiaomusic/xiaomusic.py b/xiaomusic/xiaomusic.py index cb0bbfd..0259213 100644 --- a/xiaomusic/xiaomusic.py +++ b/xiaomusic/xiaomusic.py @@ -523,17 +523,35 @@ class XiaoMusic: return ("stop", {}) return (None, None) + # 判断是否播放一下私募歌曲 + def check_play_next(self): + # 当前没我在播放的歌曲 + if self.cur_music == "": + return True + else: + filename = self.get_filename(self.cur_music) + # 当前播放的歌曲不存在了 + if len(filename) <= 0: + return True + pass + return False + # 播放歌曲 async def play(self, **kwargs): self._playing = True parts = kwargs["arg1"].split("|") search_key = parts[0] name = parts[1] if len(parts) > 1 else search_key - if search_key == "" and name == "": - await self.play_next() - return if name == "": name = search_key + + if search_key == "" and name == "": + if self.check_play_next(): + await self.play_next() + return + else: + name = self.cur_music + self.log.debug("play. search_key:%s name:%s", search_key, name) filename = self.get_filename(name) @@ -625,7 +643,6 @@ class XiaoMusic: if self._next_timer: self._next_timer.cancel() self.log.info("定时器已取消") - self.cur_music = "" await self.force_stop_xiaoai() async def stop_after_minute(self, **kwargs):