565 Commits

Author SHA1 Message Date
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
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
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
Hornwitser
a4c152cebc Fix keep_alive running after logout()
_keep_alive_handler would set up another keep alive after the first one
by creating a new threading.Timer object, but Client would only keep
track of the first timer object.  Thus casing the keep alive to continue
running after Client.logout calls cancel() on it's timer object, as it
no longer references the actual timer object waiting for the keep alive.

Fix by replacing _keep_alive_handler with a threading.Thread subclass
that sends keep_alives of the given interval and exits when its stop
event is set.
2015-09-19 18:32:39 +02:00
Rapptz
bbf1c5418b Add support for logging. 2015-09-16 17:27:52 -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
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
Rapptz
54fa8dea69 Add the ability to kick, ban and unban users from a server. 2015-09-03 06:41:35 -04:00
Rapptz
c98a723f06 Add on_server_create and on_server_delete events. 2015-09-03 04:22:46 -04:00
Rapptz
4124b097c7 WebSocket gateway now properly uses the auth headers. 2015-09-03 03:59:26 -04:00
Rapptz
b6ab4d54d3 Sandbox some events that didn't get sandboxed. 2015-09-03 03:40:55 -04:00
megamit
6a40a5da2e Fix issue with author changing type
When cycling through the attributes of the data json 'author' within 'message' which was previously a user object is overwritten with a dictionary. This causes an AttributeError to be thrown ( and silently swallowed... thanks except: pass) whenever any of its attributes are referenced in the form message.author.x. User data should change in this step and the user object should not be modified for any reason so its safe to skip updating it.
2015-09-02 23:07:36 +01:00
Rapptz
abc32f5b5d Remove unnecessary comment. 2015-08-28 16:58:03 -04:00
Rapptz
b7fc383013 Python3 import fixes. 2015-08-28 16:55:40 -04:00
Rapptz
b466a2615e Handle GUILD_MEMBER_REMOVE/GUILD_MEMBER_ADD events.
Thanks izy.
2015-08-27 19:42:07 -04:00
Rapptz
197e7c2861 Remove no_offline_members option 2015-08-27 18:56:39 -04:00
Rapptz
795b8ceffe on_status now takes only a member. 2015-08-27 17:45:43 -04:00
Rapptz
52852f4fd2 Give members their server as an attribute. 2015-08-27 17:03:04 -04:00
Rapptz
3aa8cc93a7 Members now have status info. 2015-08-27 07:41:29 -04:00
Rapptz
29b71a7e88 Move websocket hub to the new gateway. 2015-08-26 22:26:06 -04:00
Rapptz
af5292872b Parse roles in the member building. 2015-08-26 22:06:38 -04:00
Rapptz
0e4ccad32a Parse permission_overwrites in every Channel instance. 2015-08-26 21:20:18 -04:00
Rapptz
108f0a6c45 Server members are now their own class that subclass Users.
Roles are also now properly parsed.
2015-08-26 07:43:05 -04:00
Rapptz
adc358168f Fix error in start_private_message. 2015-08-26 06:38:45 -04:00
Rapptz
de3bce2b32 Fix issue with some MESSAGE_UPDATE events. 2015-08-24 06:34:38 -04:00
Rapptz
49b9b987c7 Add support for creating or deleting channels from the client. 2015-08-24 00:11:29 -04:00
Rapptz
9f601a24b1 Add logout support and on_disconnect event. 2015-08-24 00:00:42 -04:00
Rapptz
35084cf98a Add support for channel creation events. 2015-08-23 23:37:56 -04:00
Rapptz
3346b28fee Add on_channel_delete event. 2015-08-23 02:53:56 -04:00