From f58deb2f8bd7b6ae7ace3cb8eb6c46383420a65f Mon Sep 17 00:00:00 2001 From: Choco <94597336+ChocoMeow@users.noreply.github.com> Date: Sat, 7 Sep 2024 13:08:28 +0800 Subject: [PATCH] Fixed some bugs --- .github/FUNDING.yml | 1 + cogs/playlist.py | 8 ++++---- ipc/client.py | 8 ++++++-- ipc/methods.py | 3 ++- voicelink/player.py | 5 +++-- 5 files changed, 16 insertions(+), 9 deletions(-) create mode 100644 .github/FUNDING.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..a5da168 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1 @@ +ko_fi: chocoo \ No newline at end of file diff --git a/cogs/playlist.py b/cogs/playlist.py index 47e66d2..4abf0b7 100644 --- a/cogs/playlist.py +++ b/cogs/playlist.py @@ -195,18 +195,18 @@ class Playlists(commands.Cog, name="playlist"): text = await get_lang(ctx.guild.id, "playlistViewTitle", "playlistViewHeaders", "playlistFooter") embed = discord.Embed( title=text[0].format(ctx.author.display_name), - description='```prolog\n %4s %10s %10s %10s\n' % tuple(text[1].split(",")), + description='```prolog\n %4s %10s %12s %10s\n' % tuple(text[1].split(",")), color=settings.embed_color ) for index in range(max_p): try: info = results[index] - track_info = (info['emoji'], info['id'], f"[{info['time']}]", info['name'], f"{len(info['tracks'])}/{max_t}") + track_info = (info['emoji'], info['id'], f"[{info['time']}]", info['name'], f"{len(info['tracks'])}") except IndexError: - track_info = ("🎵", "-"*3, "[--:--]", "-"*6, f"-/{max_t}") + track_info = ("🎵", "-"*3, "[--:--]", "-"*6, f"-") - embed.description += '%0s %3s. %10s %10s %10s\n' % track_info + embed.description += '%0s %3s. %10s %12s %10s\n' % track_info embed.description += "```" embed.set_footer(text=text[2]) diff --git a/ipc/client.py b/ipc/client.py index 97c01f0..a1b2513 100644 --- a/ipc/client.py +++ b/ipc/client.py @@ -64,7 +64,7 @@ class IPCClient: self._bot.loop.create_task(process_methods(self, self._bot, msg.json())) async def send(self, data: dict): - if self._is_connected: + if self.is_connected: self._logger.debug(f"Send Message: {data}") await self._websocket.send_json(data) @@ -103,4 +103,8 @@ class IPCClient: async def disconnect(self) -> None: self._is_connected = False self._task.cancel() - self._logger.info("Disconnected to dashboard!") \ No newline at end of file + self._logger.info("Disconnected to dashboard!") + + @property + def is_connected(self) -> bool: + return self._is_connected \ No newline at end of file diff --git a/ipc/methods.py b/ipc/methods.py index 67bc17f..b0f0764 100644 --- a/ipc/methods.py +++ b/ipc/methods.py @@ -18,7 +18,8 @@ SCOPES = { "24/7": bool, "votedisable": bool, "duplicateTrack": bool, - "default_controller": dict + "default_controller": dict, + "stage_announce_template": str } class TempCtx(): diff --git a/voicelink/player.py b/voicelink/player.py index c12f9de..24ab376 100644 --- a/voicelink/player.py +++ b/voicelink/player.py @@ -69,8 +69,9 @@ async def connect_channel(ctx: Union[commands.Context, Interaction], channel: Vo ctx.bot if isinstance(ctx, commands.Context) else ctx.client, channel, ctx, settings )) - - await player.send_ws({"op": "createPlayer", "member_ids": [member.id for member in channel.members]}) + + if ctx.bot.ipc.is_connected: + await player.send_ws({"op": "createPlayer", "member_ids": [str(member.id) for member in channel.members]}) return player