diff options
| author | Rapptz <[email protected]> | 2017-08-21 01:54:33 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2017-08-21 01:57:07 -0400 |
| commit | 37b0fdb898a0f242f68d30abb6c58bd1a15a6524 (patch) | |
| tree | bd752d8748bfb7aa4304b55183d8544f9d14886f /discord/utils.py | |
| parent | Use time.monotonic instead of time.time for heartbeat code. (diff) | |
| download | discord.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.py | 6 |
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): |