Fixed spamming error msg when track got stuck

This commit is contained in:
Choco
2023-08-01 10:26:41 +08:00
parent 644775c6b1
commit ddd94cbce1
2 changed files with 8 additions and 4 deletions

View File

@@ -32,17 +32,16 @@ class Nodes(commands.Cog):
@commands.Cog.listener()
async def on_voicelink_track_stuck(self, player: voicelink.Player, track, _):
await asyncio.sleep(5)
await asyncio.sleep(10)
await player.do_next()
@commands.Cog.listener()
async def on_voicelink_track_exception(self, player: voicelink.Player, track, _):
try:
await player.context.send(f"{_} Please wait for 5 seconds.", delete_after=5)
player._track_is_stuck = True
await player.context.send(f"{_} Please wait for 5 seconds.", delete_after=10)
except:
pass
await asyncio.sleep(5)
await player.do_next()
@commands.Cog.listener()
async def on_voice_state_update(self, member: discord.Member, before: discord.VoiceState, after: discord.VoiceState):

View File

@@ -116,6 +116,7 @@ class Player(VoiceProtocol):
self._paused: bool = False
self._is_connected: bool = False
self._ping: float = 0.0
self._track_is_stuck = False
self._position: int = 0
self._last_position: int = 0
@@ -318,6 +319,10 @@ class Player(VoiceProtocol):
if self._paused:
self._paused = False
if self._track_is_stuck:
await sleep(10)
self._track_is_stuck = False
if not self.guild.me.voice:
await self.connect(timeout=0.0, reconnect=True)