aboutsummaryrefslogtreecommitdiff
path: root/discord/client.py
diff options
context:
space:
mode:
authorRapptz <[email protected]>2020-11-26 04:41:54 -0500
committerRapptz <[email protected]>2020-11-26 04:43:15 -0500
commit12d0ae71dff2606bf3b2337bd5b85e308b04110f (patch)
tree1d76cdc50b35aca1173ad8a17fdefdcb08e64b14 /discord/client.py
parentImplement role tags. (diff)
downloaddiscord.py-12d0ae71dff2606bf3b2337bd5b85e308b04110f.tar.xz
discord.py-12d0ae71dff2606bf3b2337bd5b85e308b04110f.zip
Add a way to check if the websocket is rate limited.
This is mainly for low level decision making for utilities that need to know whether to fetch a member by HTTP or to query through the websocket. The library already does this trick in some places so it's only fair that end users possess the same ability as well.
Diffstat (limited to 'discord/client.py')
-rw-r--r--discord/client.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/discord/client.py b/discord/client.py
index 1ddb09d6..a5bb9c00 100644
--- a/discord/client.py
+++ b/discord/client.py
@@ -282,6 +282,18 @@ class Client:
ws = self.ws
return float('nan') if not ws else ws.latency
+ def is_ws_ratelimited(self):
+ """:class:`bool`: Whether the websocket is currently rate limited.
+
+ This can be useful to know when deciding whether you should query members
+ using HTTP or via the gateway.
+
+ .. versionadded:: 1.6
+ """
+ if self.ws:
+ return self.ws.is_ratelimited()
+ return False
+
@property
def user(self):
"""Optional[:class:`.ClientUser`]: Represents the connected client. ``None`` if not logged in."""