Commit Graph

314 Commits

Author SHA1 Message Date
43ee53fa99 Client.get_invite now works without a websocket connection 2015-12-29 00:01:59 -05:00
5d2f107070 Client.email is now set when using the cache 2015-12-28 23:56:16 -05:00
49488c9151 make ip/port voice packet logic more clear
Adds comments and also rewrites the logic in a way that is much easier
to see what is going on. For example you can now easily see that the
port is actually encoded in little endian (which is different from
everything else).
2015-12-27 06:05:07 -08:00
57c3363119 fix broken ip and port in voice client
Also added debug logging to make it easier to debug errors in how the
initial packet is parsed.
2015-12-27 01:16:52 -08:00
ac3e583b05 Add missing argument in _rate_limit_helper 2015-12-26 17:01:35 -05:00
740b9a95c2 Added missing Member import to client.py 2015-12-24 08:40:00 -05:00
0aa46e6def Add game data class, replace game_id. 2015-12-23 21:28:18 -05:00
ec23434162 Mentions are now <@id> *only* - remove mentions array on send and edit message 2015-12-23 20:59:41 -05:00
e8a06b7ee9 Insert options before pipe:1 in ffmpeg player, otherwise they are ignored 2015-12-23 18:00:44 -05:00
483384595b Unflip kick/ban permission bits 2015-12-22 17:58:43 -08:00
bb433990e8 None author param in wait_for_message allows any author 2015-12-22 03:51:45 -05:00
1ac2f6437f Fix NameError with Permissions missing. 2015-12-19 20:53:31 -05:00
f0d5d7a490 Rename some listeners to wait_until_.
Mainly login and ready listeners.
2015-12-19 20:31:52 -05:00
7258a9e700 Delete messages from message cache when you leave the server. 2015-12-19 10:36:11 -05:00
f1f0e169e4 Add __slots__ where appropriate to data classes. 2015-12-19 06:18:12 -05:00
4fa5b50d2b Add listener for on_ready event for easier background tasks. 2015-12-19 03:56:07 -05:00
a1693a8c9d Make is_logged_in and is_closed into Events internally. 2015-12-19 03:32:35 -05:00
cf56ddfe4c Release connection when error occurs during login. 2015-12-18 21:18:22 -05:00
037d3ab08a Move email out of ConnectionState. 2015-12-18 21:16:55 -05:00
f5b927f01c Fix GUILD_MEMBER_UPDATE and GUILD_UPDATE not triggering. 2015-12-18 20:59:56 -05:00
070015e408 Disallow duplicates when adding or removing roles. 2015-12-18 20:13:04 -05:00
8a4e2ba958 Fix Client.replace_roles having hashable errors. 2015-12-18 20:08:25 -05:00
2c246a0aa7 Add first support for gateway redirects and reconnects. 2015-12-17 20:30:48 -05:00
9075d46efd Add on_member_ban and on_member_unban events.
Fixes #58.
2015-12-17 18:22:16 -05:00
253e2b1f64 Add way to delete messages after a user is banned.
Fixes #59.
2015-12-17 17:39:30 -05:00
63565026c4 Remove on_status event. Superseded by on_member_update. 2015-12-17 06:18:08 -05:00
49d78c69c7 All update related events now pass in the previous state. 2015-12-17 06:05:35 -05:00
78e95ef755 Documentation fixes. 2015-12-17 04:11:38 -05:00
5f4e13df96 Fix Channel.permissions_for attribute error. 2015-12-17 01:29:20 -05:00
51d91c2a82 Most data classes now support hashing. 2015-12-17 00:32:54 -05:00
613214f197 Add Message.clean_content property to get prettified mentions. 2015-12-17 00:15:41 -05:00
ebcb532c38 Change regex from \d+ to [0-9]+ for performance reasons.
\d+ includes unicode characters while [0-9]+ doesn't.
2015-12-16 23:46:02 -05:00
4f66d41ca3 Add Server.me attribute to access the Member version of Client.user. 2015-12-16 23:35:05 -05:00
f78e3c9f0b Fix Client.logs_from failing if no more messages are found. 2015-12-16 22:44:45 -05:00
434fc5c79e Remove the non-classmethod attributes in Permissions. 2015-12-16 22:21:09 -05:00
9f92536441 Clean-up documentation to use NumPy style docs on remaining classes. 2015-12-16 22:20:54 -05:00
de1c74a399 Make more things into properties.
A lot of the expensive getters were transformed into cached properties
instead. A lot of things that were properties were transformed into
properties as well.
2015-12-16 22:03:16 -05:00
f484a5c023 Channel.is_default_channel is now a property named is_default. 2015-12-16 19:54:26 -05:00
271c7565fc Make Client.unban actually useful. 2015-12-16 19:32:08 -05:00
7d08a07cb9 Fix issue with roles being passed in being strings.
Client.add_roles and Client.remove_roles would dispatch to the
Client.replace_roles function. However, replace_roles expects Role
objects while the dispatching involved string IDs. So as a result this
needed another layer of dispatch into a _replace_roles function to do
the actual call that all three of them dispatch to.
2015-12-16 00:14:58 -05:00
658090f129 Fix NameError with itertools in client. 2015-12-16 00:04:15 -05:00
491d508a97 Cast Retry-After header into a float. 2015-12-15 21:00:11 -05:00
00a98a76fd Add a way to get all active invites from a server. 2015-12-15 20:19:37 -05:00
42c67e3605 Add a way to get bans from a server. 2015-12-15 19:59:41 -05:00
7f0a048299 Fix GUILD_ROLE_DELETE triggering ValueError. 2015-12-14 23:26:22 -05:00
6d26d73e24 Client.run now does cleanup when KeyboardInterrupt is encountered. 2015-12-14 16:26:15 -05:00
9137d92f67 All data classes now support !=, == and str(obj). 2015-12-13 22:53:48 -05:00
ab46afee1d Changed functions that return a constant value into properties. 2015-12-13 20:05:58 -05:00
c52e552888 Editing profile now writes to the cache. 2015-12-13 16:24:23 -05:00
3dc2177ce8 Change the login cache check call to be the gateway retrieval. 2015-12-13 14:45:59 -05:00