aboutsummaryrefslogtreecommitdiff
path: root/discord/utils.py
diff options
context:
space:
mode:
authorRapptz <[email protected]>2017-08-21 01:54:33 -0400
committerRapptz <[email protected]>2017-08-21 01:57:07 -0400
commit37b0fdb898a0f242f68d30abb6c58bd1a15a6524 (patch)
treebd752d8748bfb7aa4304b55183d8544f9d14886f /discord/utils.py
parentUse time.monotonic instead of time.time for heartbeat code. (diff)
downloaddiscord.py-37b0fdb898a0f242f68d30abb6c58bd1a15a6524.tar.xz
discord.py-37b0fdb898a0f242f68d30abb6c58bd1a15a6524.zip
Add webhook support.
Allows for usage of either `requests` and `aiohttp` when used in "Standalone" mode. Fixes #704
Diffstat (limited to 'discord/utils.py')
-rw-r--r--discord/utils.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/discord/utils.py b/discord/utils.py
index 9efb1bf8..e5d366ff 100644
--- a/discord/utils.py
+++ b/discord/utils.py
@@ -28,6 +28,7 @@ from re import split as re_split
from .errors import InvalidArgument
import datetime
from base64 import b64encode
+from email.utils import parsedate_to_datetime
import asyncio
import json
import warnings, functools
@@ -258,6 +259,11 @@ def _bytes_to_base64_data(data):
def to_json(obj):
return json.dumps(obj, separators=(',', ':'), ensure_ascii=True)
+def _parse_ratelimit_header(request):
+ now = parsedate_to_datetime(request.headers['Date'])
+ reset = datetime.datetime.fromtimestamp(int(request.headers['X-Ratelimit-Reset']), datetime.timezone.utc)
+ return (reset - now).total_seconds()
+
@asyncio.coroutine
def maybe_coroutine(f, *args, **kwargs):
if asyncio.iscoroutinefunction(f):