From dc486980f87249583a38a22c79aa0f7370b75d55 Mon Sep 17 00:00:00 2001 From: Rapptz Date: Wed, 8 Feb 2017 04:37:16 -0500 Subject: Rewrite RESUME logic to be more in line with what is requested. Apparently we should always try to RESUME first and if we get INVALIDATE_SESSION then we should IDENTIFY instead. This is the preferred way to do RESUMEs. --- discord/shard.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'discord/shard.py') diff --git a/discord/shard.py b/discord/shard.py index 7bb3a201..dade454d 100644 --- a/discord/shard.py +++ b/discord/shard.py @@ -54,10 +54,9 @@ class Shard: def poll(self): try: yield from self.ws.poll_event() - except (ReconnectWebSocket, ResumeWebSocket) as e: - resume = type(e) is ResumeWebSocket - log.info('Got ' + type(e).__name__) - self.ws = yield from DiscordWebSocket.from_client(self._client, resume=resume, + except ResumeWebSocket as e: + log.info('Got a request to RESUME the websocket.') + self.ws = yield from DiscordWebSocket.from_client(self._client, resume=True, shard_id=self.id, session=self.ws.session_id, sequence=self.ws.sequence) -- cgit v1.2.3