Add Client.latency, AutoShardedClient.latency and latencies.

This should allow an easier way to query the Discord protocol gateway
latency, defined by the difference HEARTBEAT_ACK between and the last
sent HEARTBEAT.
This commit is contained in:
Rapptz
2017-08-15 23:41:11 -04:00
parent 63231ef033
commit 0f7482ed6e
3 changed files with 29 additions and 0 deletions

View File

@ -172,6 +172,15 @@ class Client:
return m.group(1)
return invite
@property
def latency(self):
"""float: Measures latency between a HEARTBEAT and a HEARTBEAT_ACK in seconds.
This could be referred to as the Discord WebSocket protocol latency.
"""
ws = self.ws
return float('nan') if not ws else ws.latency
@property
def user(self):
"""Optional[:class:`ClientUser`]: Represents the connected client. None if not logged in."""