Add rollback strategy to Client.join_voice_channel

This commit is contained in:
cookkkie 2017-03-13 01:24:27 +01:00
parent 440bd0da60
commit 38ea40f403

View File

@ -3181,8 +3181,13 @@ class Client:
# request joining
yield from self.ws.voice_state(server.id, channel.id)
session_id_data = yield from asyncio.wait_for(session_id_future, timeout=10.0, loop=self.loop)
data = yield from asyncio.wait_for(voice_data_future, timeout=10.0, loop=self.loop)
try:
session_id_data = yield from asyncio.wait_for(session_id_future, timeout=10.0, loop=self.loop)
data = yield from asyncio.wait_for(voice_data_future, timeout=10.0, loop=self.loop)
except asyncio.TimeoutError:
yield from self.ws.voice_state(server.id, None, self_mute=True)
return None
kwargs = {
'user': self.user,