Rapptz
d440e52a00
Add new_member.py example to showcase messaging new members.
2015-11-27 18:30:20 -05:00
Rapptz
c25e667866
discord.Server is a valid destination in Client.send_message & co.
2015-11-27 18:19:38 -05:00
Rapptz
90d9c9b297
reply.py example now checks for self-authoring
2015-11-27 18:01:52 -05:00
Rapptz
7c060ee7f6
Document supported operations in discord.User
2015-11-27 17:59:22 -05:00
Rapptz
9fb2186785
Update to the new colours.
2015-11-27 17:56:35 -05:00
Rapptz
e884119cd9
Performance improvements in on_typing event.
2015-11-27 17:29:36 -05:00
Rapptz
b1b2c0d099
Add LoginFailure exception for a clearer failure in Client.login
...
The older HTTPException is not exactly the clearest thing for people
who are new to programming or HTTP exceptions in general.
2015-11-27 17:03:36 -05:00
Rapptz
f83442096b
Client.edit_message no longer checks for private channel.
2015-11-27 16:01:39 -05:00
Rapptz
4a32ae444a
Add the message to the exception output.
2015-11-27 03:34:37 -05:00
Rapptz
e75edc2e57
Document Client.run reconnection idiosyncrasy.
2015-11-26 23:59:16 -05:00
Rapptz
4a25011ee1
Revert "GIF support for avatars"
...
This reverts commit 9a5bb439ec .
2015-11-26 23:12:10 -05:00
Rapptz
9a5bb439ec
GIF support for avatars
2015-11-26 22:55:26 -05:00
Rapptz
f0617fbb6a
Add support for uploading avatars.
2015-11-26 22:14:04 -05:00
Rapptz
077817c126
Move _null_event and _verify_successful_response to utils
...
They might be used in other files in the future.
2015-11-26 21:09:50 -05:00
Rapptz
af9e5bc67a
Simplify examples to no longer use logging or Client.is_logged_in
...
The logging module is no longer required to get diagnostic output
since we use `stderr` by default regardless of the logging module.
Which means that the logging module will only give a more verbose
output than is necessary.
Client.is_logged_in checking is no longer necessary since all HTTP
request handling now raise an exception if they fail so those chunks
are also gone.
2015-11-26 19:30:09 -05:00
Rapptz
ea80812fdd
Add Client.get_invite to turn a URL to an Invite object.
2015-11-26 19:05:31 -05:00
Rapptz
0d19273844
Client.accept_invite and Client.register now accept invite IDs.
2015-11-26 18:43:26 -05:00
Rapptz
7f94f75223
Handle TYPING_START event.
2015-11-24 21:11:53 -05:00
Rapptz
2e03927f2c
Merge send_raw_file and send_file
2015-11-21 01:31:51 -05:00
Rapptz
57312d96f7
Fix annoying lack of parenthesis at end of HTTPException
2015-11-20 23:35:23 -05:00
Rapptz
5ca04ea08f
Use try-except instead of checking for membership.
...
Basically, a lot of the checks revolving "if x in y" could be written
more efficiently by doing the task anyway and ignoring the exception
a la the EAFP guideline.
2015-11-20 17:39:51 -05:00
Rapptz
acbbaa39ad
Add Message.channel_mentions
2015-11-19 23:10:15 -05:00
Rapptz
da37ff16c1
Add get_raw_[channel_]mentions to Message
2015-11-19 23:01:43 -05:00
Rapptz
e88c194e9a
Fix is_private check in mentions array handling.
2015-11-19 22:21:15 -05:00
Rapptz
692a6a3bc6
Fix ordering issue with Message.server
2015-11-18 20:04:27 -05:00
Rapptz
75658f46a2
Message.mentions now returns a list of Member instead of User
2015-11-16 21:18:30 -05:00
Rapptz
cc59654216
Add Client.get_all_channels and Client.get_all_members
2015-11-16 21:02:23 -05:00
Rapptz
d1a7d2cad2
Documentation fixes for Client.logs_from
2015-11-16 20:52:56 -05:00
Rapptz
3e072db5d0
Fix Client.unban parameter name (name -> user)
2015-11-16 18:20:44 -05:00
Rapptz
52c1d134ba
Clean-up guild_delete.
2015-11-16 18:19:52 -05:00
Rapptz
5ecaf1df4c
Make unavailable default to None.
2015-11-16 18:15:34 -05:00
Rapptz
3d70966021
Attempt to fix unavailable guilds again
2015-11-16 17:23:05 -05:00
Rapptz
85ac03a081
Role.is_everyone actually uses the proper check.
2015-11-09 00:33:15 -05:00
Rapptz
054cf2e1e0
Channel.permissions_for now correctly handles everyone overwrites.
2015-11-09 00:32:38 -05:00
Rapptz
7a4fab5566
Change iterable to an argument list in role related documentation.
2015-11-07 18:08:50 -05:00
Rapptz
ad6fbbfe43
Fix Client.create_role
2015-11-07 16:28:37 -05:00
Rapptz
7161723034
Change on_server_create/delete to on_server_join/remove.
2015-11-01 15:30:20 -05:00
Rapptz
822e54200d
Document Client.login raising exceptions.
2015-10-27 23:02:50 -04:00
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