aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRapptz <[email protected]>2015-10-16 18:49:55 -0400
committerRapptz <[email protected]>2015-10-16 18:49:55 -0400
commit1080941e5ededa0d1ab8eb509455e1f954e78995 (patch)
treea89ff58290d4cb32f314c7e5ed6e3a83dcdf608d
parentUse compact encoding for json on websocket (diff)
downloaddiscord.py-1080941e5ededa0d1ab8eb509455e1f954e78995.tar.xz
discord.py-1080941e5ededa0d1ab8eb509455e1f954e78995.zip
on_socket_response now handles non-op 0 websocket messages.
-rw-r--r--discord/client.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/discord/client.py b/discord/client.py
index f4f473a4..2453fd0c 100644
--- a/discord/client.py
+++ b/discord/client.py
@@ -101,13 +101,16 @@ class WebSocket(WebSocketBaseClient):
self.dispatch('socket_raw_receive', msg)
response = json.loads(str(msg))
log.debug('WebSocket Event: {}'.format(response))
- if response.get('op') != 0:
- log.info("Unhandled op {}".format(response.get('op')))
+ self.dispatch('socket_response', response)
+
+ op = response.get('op')
+ data = response.get('d')
+
+ if op != 0:
+ log.info("Unhandled op {}".format(op))
return # What about op 7?
- self.dispatch('socket_response', response)
event = response.get('t')
- data = response.get('d')
if event == 'READY':
interval = data['heartbeat_interval'] / 1000.0
@@ -120,7 +123,7 @@ class WebSocket(WebSocketBaseClient):
'CHANNEL_DELETE', 'CHANNEL_UPDATE', 'CHANNEL_CREATE',
'GUILD_MEMBER_ADD', 'GUILD_MEMBER_REMOVE',
'GUILD_MEMBER_UPDATE', 'GUILD_CREATE', 'GUILD_DELETE',
- 'GUILD_ROLE_CREATE', 'GUILD_ROLE_DELETE',
+ 'GUILD_ROLE_CREATE', 'GUILD_ROLE_DELETE',
'GUILD_ROLE_UPDATE', 'VOICE_STATE_UPDATE'):
self.dispatch('socket_update', event, data)