diff --git a/plugins/guess_song/main.py b/plugins/guess_song/main.py index 90e9126..ca353d5 100644 --- a/plugins/guess_song/main.py +++ b/plugins/guess_song/main.py @@ -228,8 +228,8 @@ class GuessSongPlugin(MessagePluginInterface): return await self._check_answer(message) else: # 没有内容,提示已有游戏在进行中 client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, - f"⚠️ 当前已有猜歌游戏在进行中,请直接回复 [猜歌名 歌名] 进行猜测\n或回复 [猜歌名 下一首] 跳过当前歌曲", - sender) + f"⚠️ 当前已有猜歌游戏在进行中,请直接回复 [猜歌名 歌名] 进行猜测\n或回复 [猜歌名 下一首] 跳过当前歌曲", + sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 4) return True, "已有游戏进行中" @@ -243,7 +243,9 @@ class GuessSongPlugin(MessagePluginInterface): # 搜索歌曲 song_info = await self._get_random_song(singer_name) if not song_info or not song_info.get("play_url"): - client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, f"❌未找到{singer_name or '随机'}歌曲,请重试", sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, + f"❌未找到{singer_name or '随机'}歌曲,请重试", + sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 4) return False, "未找到歌曲" @@ -264,8 +266,8 @@ class GuessSongPlugin(MessagePluginInterface): # 发送游戏开始消息 client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, - f"🎵 猜歌名游戏开始!\n请听10秒钟歌曲片段,然后回复[猜歌名 歌名]来猜测歌曲名称。\n回复[猜歌名 下一首]可跳过当前歌曲。\n歌手: {song_info.get('singer_name', '未知')}", - sender) + f"🎵 猜歌名游戏开始!\n请听10秒钟歌曲片段,然后回复[猜歌名 歌名]来猜测歌曲名称。\n回复[猜歌名 下一首]可跳过当前歌曲。\n歌手: {song_info.get('singer_name', '未知')}", + sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 30) # 发送10秒音频片段 @@ -275,7 +277,9 @@ class GuessSongPlugin(MessagePluginInterface): except Exception as e: self.LOG.error(f"开始猜歌游戏出错: {e}") - client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, f"❌开始猜歌游戏出错,请稍后重试", sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, + f"❌开始猜歌游戏出错,请稍后重试", + sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 5) return False, f"处理出错: {e}" @@ -300,7 +304,8 @@ class GuessSongPlugin(MessagePluginInterface): game_data = self.redis_db.get_game_session(session_id) if not game_data: - client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, "没有进行中的游戏", sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, "没有进行中的游戏", + sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 5) return False, "没有进行中的游戏" @@ -335,16 +340,18 @@ class GuessSongPlugin(MessagePluginInterface): self.redis_db.save_game_session(session_id, game_data) # 告知用户答案错误 - client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, f"❌ 答案错误,请继续猜测!", sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, + f"❌ 答案错误,请继续猜测!", sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 4) - + return False, "答案错误" except Exception as e: self.LOG.error(f"检查答案出错: {e}") session_id = message.get("roomid", "") or message.get("sender", "") sender = message.get("sender", "") bot = message.get("bot") - client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, f"❌检查答案出错,请稍后重试", sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, + f"❌检查答案出错,请稍后重试", sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 4) return False, f"处理出错: {e}" @@ -465,9 +472,9 @@ class GuessSongPlugin(MessagePluginInterface): xml_message = f"{MUSIC_XML}".format(song_name=song_name, singer_name=singer_name, play_url=play_url, data_url=data_url, singer_pic=singer_pic) - self.LOG.info(f"发送音乐消息:{xml_message}") + self.LOG.debug(f"发送音乐消息:{xml_message}") res = await bot.send_app_message(wxid=receiver, xml=xml_message, type=0) - self.LOG.info(f"发送音乐消息 res:{res}") + self.LOG.debug(f"发送音乐消息 res:{res}") return True except Exception as e: @@ -483,16 +490,20 @@ class GuessSongPlugin(MessagePluginInterface): current_game = self.redis_db.get_game_session(session_id) if not current_game or current_game.get("status") != "playing": - client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, f"⚠️ 当前没有进行中的猜歌游戏", sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, + f"⚠️ 当前没有进行中的猜歌游戏", + sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 4) return False, "没有进行中的游戏" # 显示当前歌曲答案 correct_answer = current_game.get("song_name", "") singer_name = current_game.get("singer_name", "") - await bot.send_text_message(session_id, f"⏭️ 已跳过当前歌曲\n歌曲:{correct_answer}\n歌手:{singer_name}", - sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, + f"⏭️ 已跳过当前歌曲\n歌曲:{correct_answer}\n歌手:{singer_name}", + sender) + self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 10) # 发送完整音乐 await self._send_music_message(bot, current_game, session_id) @@ -505,6 +516,8 @@ class GuessSongPlugin(MessagePluginInterface): except Exception as e: self.LOG.error(f"跳过当前歌曲出错: {e}") - client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, f"❌跳过当前歌曲出错,请稍后重试", sender) + client_msg_id, create_time, new_msg_id = await bot.send_text_message(session_id, + f"❌跳过当前歌曲出错,请稍后重试", + sender) self.revoke.add_message_to_revoke(session_id, client_msg_id, create_time, new_msg_id, 4) return False, f"处理出错: {e}"