mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-04-21 08:17:47 +00:00
Add a TimeoutError if VoiceClient.connect fails.
This commit is contained in:
parent
570ccbf753
commit
701720a0f8
@ -2450,7 +2450,16 @@ class Client:
|
||||
}
|
||||
|
||||
voice = VoiceClient(**kwargs)
|
||||
yield from voice.connect()
|
||||
try:
|
||||
yield from voice.connect()
|
||||
except asyncio.TimeoutError as e:
|
||||
try:
|
||||
yield from voice.disconnect()
|
||||
except:
|
||||
# we don't care if disconnect failed because connection failed
|
||||
pass
|
||||
raise e # re-raise
|
||||
|
||||
self.connection._add_voice_client(server.id, voice)
|
||||
return voice
|
||||
|
||||
|
@ -553,7 +553,7 @@ class DiscordVoiceWebSocket(websockets.client.WebSocketClientProtocol):
|
||||
@asyncio.coroutine
|
||||
def poll_event(self):
|
||||
try:
|
||||
msg = yield from self.recv()
|
||||
msg = yield from asyncio.wait_for(self.recv(), timeout=30.0, loop=self.loop)
|
||||
yield from self.received_message(json.loads(msg))
|
||||
except websockets.exceptions.ConnectionClosed as e:
|
||||
raise ConnectionClosed(e) from e
|
||||
|
Loading…
x
Reference in New Issue
Block a user