Commit Graph
100 Commits
Author SHA1 Message Date
Rapptz 9b2a78a031 Add InvalidArgument exception and change exceptions thrown. 2015-10-27 21:25:21 -04:00
Rapptz 027b7b33c9 All HTTP requests now throw HTTPException. 2015-10-27 21:19:32 -04:00
Rapptz cc397d6e6a Document cases where GatewayNotFound is thrown. 2015-10-27 19:11:56 -04:00
Rapptz 3266d1ed10 GatewayNotFound now has a default message. 2015-10-27 19:08:29 -04:00
Rapptz d14bffcd96 Rename InvaldiDestination to a generic ClientException. 2015-10-27 19:02:12 -04:00
Rapptz 61e41ec3b9 All exceptions now derive from DiscordException. 2015-10-27 18:09:26 -04:00
Rapptz 6ae6bd8e6d Remove InvalidEventName exception due to it being unused 2015-10-27 18:03:51 -04:00
Rapptz f770fc1c67 Add discord.Object to the documentation. 2015-10-27 17:59:23 -04:00
Rapptz dd2e08e185 Add support for passing in Object to methods. 2015-10-27 17:39:51 -04:00
Rapptz c49ff36a7b Make Message.channel an Object if something goes wrong.
Fixes #21
2015-10-27 17:21:08 -04:00
Rapptz 9f12067b3d Add discord.Object class for generic pass-by-ID. 2015-10-27 17:04:50 -04:00
Rapptz a0073c734e Split data classes into more files. 2015-10-27 16:23:20 -04:00
Rapptz 616f2bb4e9 Remove the name from logging.
Fixes #28.
2015-10-25 23:17:02 -04:00
Rapptz 60dfd04439 Check if member is in list for GUILD_MEMBER_REMOVE. 2015-10-25 23:08:06 -04:00
Rapptz 2938d0cfcf Don't update member.roles in add/remove_roles. 2015-10-24 23:36:12 -04:00
Rapptz 5efddaf35d Support unavailable servers. 2015-10-24 05:10:58 -04:00
Rapptz 72674b4c2d Add Channel.mention to mention a channel. 2015-10-23 21:04:52 -04:00
Rapptz 1a13f9ad30 Add Message.server attribute shortcut. 2015-10-23 17:41:28 -04:00
Rapptz 8552e24945 Version bump to v0.8.0 2015-10-22 22:21:52 -04:00
Rapptz f018895f2c Fix documentation warnings. 2015-10-22 22:20:36 -04:00
Rapptz 6981c51e0a Change default parameter to None for Client.set_channel_permissions 2015-10-22 22:20:35 -04:00
Rapptz 6f76a5ab33 Add Client.delete_channel_permissions
Fixes #18
2015-10-22 22:20:35 -04:00
Rapptz ec5b7bb493 Add Client.set_channel_permissions 2015-10-22 22:20:34 -04:00
Rapptz b94dffaf87 Change Permissions constants to be class method factories instead. 2015-10-22 22:20:34 -04:00
Rapptz 8b8312608c Change Colour constants to be class method factories instead. 2015-10-22 22:20:33 -04:00
Rapptz 9188184e85 Fix permission resolution in Channel.permissions_for 2015-10-22 22:20:33 -04:00
Rapptz b9c40955ab Add instructions for installing development version. 2015-10-21 21:09:50 -04:00
Rapptz c8535f714e Documentation fixes for Message. 2015-10-21 21:09:01 -04:00
Rapptz ce9a8ff75b Add note for edit_role about custom RGB colours. 2015-10-21 20:38:28 -04:00
Rapptz d2741ca38a Better detection for the everyone role. Fixes #23. 2015-10-21 20:27:08 -04:00
Rapptz edd3d47220 Add Client.replace_roles 2015-10-21 19:46:33 -04:00
Rapptz 6bb6a0a0a7 Add Client.add_roles and Client.remove_roles 2015-10-21 19:44:37 -04:00
Rapptz 77253d7717 Fix Client.create_invite invalid method call issue. 2015-10-20 15:59:45 -04:00
Rapptz 0e106cd8c4 Change default limit for Client.logs_from to 100. 2015-10-19 08:31:28 -04:00
Rapptz 7ff2cd008f Properly set requirements of ws4py and requests. 2015-10-18 23:34:27 -04:00
Rapptz e2af5d545a Add Client.create_role to create a server-wide role. 2015-10-17 17:54:16 -04:00
Rapptz 84e9300a3d Change Client.edit_role to be less stateful. 2015-10-17 17:53:55 -04:00
Rapptz 8fbaa29e9c Document Permissions constants and set default permissions to 0. 2015-10-17 07:17:40 -04:00
Rapptz 61f62c1468 Add Channel.permissions_for and PrivateChannel.permissions_for.
These functions handle permission resolution for a specific member.

Aids with #18.
2015-10-17 06:21:51 -04:00
Rapptz 2813652995 Fix bug with member voice state update. 2015-10-17 05:27:10 -04:00
Rapptz a9fd4fc4e3 Better detection for the @everyone role. 2015-10-17 04:13:15 -04:00
Rapptz ba978cc988 Add Role.managed property. 2015-10-16 23:20:53 -04:00
Rapptz c4f7664bd9 Only remove if the user is actually in the voice channel. 2015-10-16 20:11:29 -04:00
Rapptz 1080941e5e on_socket_response now handles non-op 0 websocket messages. 2015-10-16 18:49:55 -04:00
Rapptz be14fd1dcc Add Channel.voice_members
This allows you to see which members are currently in a voice
channel.
2015-10-16 15:52:11 -04:00
Rapptz 411b477a02 Separate colour tuple into its own class.
Also enumerate all the constant colours that Discord currently
supports.
2015-10-16 07:48:50 -04:00
Rapptz ab2512785b Handle VOICE_STATE_UPDATE websocket events.
This adds a lot of new attributes into the Member class
such as giving a voice_channel that the user is currently connected
to. Initially there was a plan to have a voice_members attribute
in the Channel class but this proved to be difficult when it came to
actually removing users from the voice channel as the response would
return channel_id as null.

Fixes #16.
2015-10-15 01:37:55 -04:00
Rapptz 4ff7d22edd Handle GUILD_ROLE_UPDATE websocket events. 2015-10-15 01:37:55 -04:00
Rapptz 16a20e5f2f Handle GUILD_ROLE_DELETE websocket events. 2015-10-15 01:37:54 -04:00
Rapptz 9235a34916 Handle GUILD_ROLE_CREATE websocket events. 2015-10-15 01:37:54 -04:00
Rapptz 4ec052a35c Check if the server is valid during GUILD_MEMBER_REMOVE. 2015-10-15 01:37:53 -04:00
Rapptz a130706f23 Add Client.change_status. 2015-10-14 18:54:45 -04:00
Rapptz 15b83b2743 Message.author is now either Member or User.
Closes #11.
2015-10-14 05:58:04 -04:00
Rapptz e24806660d Version bump to v0.7.0 2015-10-13 06:28:39 -04:00
Rapptz 0b27044252 Client.send_file now properly closes the file-object. 2015-10-13 06:16:29 -04:00
Rapptz 1f37fe72f2 Documentation cleanup.
Documented the new way of listening to events as well the new
events that could be listened thanks to the recent refactor.

Also uses the versionadded directive to document when something new
is added to the library.
2015-10-13 05:39:59 -04:00
Rapptz c64420f9d3 Add role colour and hoisting to edit_role. 2015-10-13 05:39:59 -04:00
Rapptz 608384dd4f Parse role colour and other new role attributes.
New attributes include hoist, position, and of course colour. An
alias is in place for British and American spellings (i.e. color).
2015-10-13 05:39:58 -04:00
Rapptz 8b03918c3d Client.send_message can now accept a string ID as the destination. 2015-10-13 05:39:58 -04:00
Rapptz 2559051e06 Pass kwargs to all constructors for future proofing. 2015-10-13 05:39:57 -04:00
Rapptz 6074fe0783 Client.register now takes an invite URL or class. 2015-10-11 07:28:55 -04:00
Rapptz 03d477edd8 edit_profile now returns True or False depending on success. 2015-10-11 06:42:41 -04:00
Rapptz 66c39b6151 Remove get_channel from __getattr__ in Client. 2015-10-11 05:35:10 -04:00
Rapptz ceb9eb07d8 Use v3 of the Discord API. 2015-10-11 05:15:57 -04:00
Rapptz 7b3f31f25c Make reply example a bit more meaningful. 2015-10-05 03:29:04 -04:00
Rapptz bcee23b707 Fix echo example to not infinitely loop. 2015-10-05 03:28:25 -04:00
Rapptz 8c1aa2ccc5 Fix bug with mentions not working. 2015-10-02 21:35:16 -04:00
Rapptz ba62bc414e Check for 2xx range instead of specific status codes. 2015-10-02 18:37:10 -04:00
Rapptz 94e6b4a8ef Fix server attribute not being set in GUILD_MEMBER_ADD. 2015-10-02 15:58:23 -04:00
Rapptz 7f252468b3 Fix another logging error 2015-10-02 15:56:51 -04:00
Rapptz 74db314d30 Fix an error with logging in the login method. 2015-09-27 20:22:44 -04:00
Rapptz a04a526566 Bump to version v0.6.0 2015-09-25 19:42:13 -04:00
Rapptz 3a58f9517a Refactor websocket creation to its own function. 2015-09-25 17:03:01 -04:00
Rapptz 951dc922b0 Add edit_channel. 2015-09-25 16:43:34 -04:00
Rapptz 120b9cd3b2 Listen to CHANNEL_UPDATE events and add on_channel_update 2015-09-25 16:09:10 -04:00
Rapptz 773fc0ad97 Add support for channel topics. 2015-09-25 15:54:04 -04:00
Rapptz a9a030cdb2 Move permission overwrite construction to the Channel constructor. 2015-09-25 15:53:45 -04:00
Rapptz 850d024684 PRESENCE_UPDATE now updates the user as well.
This means that it calls on_member_update just like the
GUILD_MEMBER_UPDATE event in an effort to keep some backwards compat.
2015-09-25 14:48:45 -04:00
Rapptz efc84c8f1f Most functions should now return something more meaningful.
Basically a lot of the request functions now return a booleean
indicating if the request was successful or not.
2015-09-24 23:23:41 -04:00
Rapptz 81a9330f46 Add TTS support for messages. 2015-09-20 02:59:59 -04:00
Rapptz 9559f02f95 accept_invite now works on some invite URLs. 2015-09-19 18:42:19 -04:00
Rapptz 6c54b24a6f Remove duplicated create_channel function. 2015-09-19 18:42:19 -04:00
Rapptz bbf1c5418b Add support for logging. 2015-09-16 17:27:52 -04:00
Rapptz a2b981d19e Document discord.utils.find function 2015-09-14 00:08:43 -04:00
Rapptz a5cf6d275d Add ability to edit or delete roles from a sever. 2015-09-13 22:28:37 -04:00
Rapptz f59ab28741 Add utils.find helper function. 2015-09-13 22:28:02 -04:00
Rapptz d93c18b28e Add get_default_role for servers to get the 'everyone' role. 2015-09-07 18:40:23 -04:00
Rapptz 9119f61caa Fix KeyError with events. 2015-09-05 15:52:48 -04:00
Rapptz 73919fe152 Documentation fixes and version bump. 2015-09-05 01:05:08 -04:00
Rapptz eed4b428aa Add the ability to accept invites. 2015-09-05 00:57:52 -04:00
Rapptz 4aecd5f7b5 Add on_error event for doing something about uncaught exceptions. 2015-09-05 00:46:18 -04:00
Rapptz 568c2a773b Remove owner_id from Server and use owner instead.
owner will be the actual Member who owns the server.
2015-09-04 23:56:00 -04:00
Rapptz e11aaa0566 Add on_member_update event. 2015-09-04 23:50:32 -04:00
Rapptz 80eb567520 Add support for creating invites. 2015-09-04 23:23:47 -04:00
Rapptz b4e6591c9d Refactor parse_time into its own utils file. 2015-09-04 22:00:22 -04:00
Rapptz b00ad4ad79 Use kwargs if the number of arguments needed is too many. 2015-09-04 21:16:27 -04:00
Rapptz 5f69fe9b07 Add ability to delete channels. 2015-09-04 08:30:59 -04:00
Rapptz 0e29d5a136 Add the ability to create channels. 2015-09-04 08:02:31 -04:00
Rapptz 7ab73bdf45 Add support for editing your profile. 2015-09-04 06:46:19 -04:00
Rapptz 9deb743df3 Store email in the client as an attribute. 2015-09-03 19:49:51 -04:00