Rapptz
89bbbec37e
Missing name parameter in VoiceChannel.edit documentation.
2017-10-26 05:36:19 -04:00
Rapptz
53b4890435
Add category support.
...
This adds:
* CategoryChannel, which represents a category
* Guild.by_category() which traverses the channels grouping by category
* Guild.categories to get a list of categories
* abc.GuildChannel.category to get the category a channel belongs to
* sync_permissions keyword argument to abc.GuildChannel.edit to sync
permissions with a pre-existing or new category
* category keyword argument to abc.GuildChannel.edit to move a channel
to a category
2017-09-13 09:44:36 -04:00
Rapptz
37b0fdb898
Add webhook support.
...
Allows for usage of either `requests` and `aiohttp` when used in
"Standalone" mode.
Fixes #704
2017-08-21 01:57:07 -04:00
Rapptz
3b3b8a5150
Remove incorrect extraneous usage of reason keyword argument.
...
Fixes #726
2017-08-17 18:20:28 -04:00
Rapptz
63231ef033
Remove reason keyword argument from message deletion.
...
Apparently this is unsupported.
Affected functions include:
* abc.Messageable.send
* Message.delete
* TextChannel.delete_messages
* TextChannel.purge
2017-08-15 22:38:43 -04:00
khazhyk
f1e08cccac
Add bulk argument to TextChannel.purge
...
bulk=False will never use bulk message delete. Useful e.g. for
using the purge interface for deleting the bot's own messages.
2017-07-24 00:11:05 -04:00
Rapptz
6e0902ef57
Implement new-style NSFW channels.
...
No idea how these will change in the future but this is barebones
enough for now.
2017-07-18 16:36:26 -04:00
Rapptz
3fbeb94cdb
Expose reverse parameter in TextChannel.purge
2017-07-14 01:13:50 -04:00
Rapptz
ea078f1c68
Fix TextChannel.purge not working.
2017-07-04 21:59:44 -04:00
Rapptz
77f04539b1
Typo in docstring for TextChannel.delete_messages
2017-06-29 20:33:19 -04:00
Rapptz
64cba11656
Allow TextChannel.delete_messages to take lists of 0 or 1 element.
2017-06-29 14:06:12 -04:00
Rapptz
f4e01b3a92
Make supported operations stand out more than attributes.
2017-05-20 02:08:34 -04:00
Rapptz
f73eb087c9
Use describe instead of tables for supported operations.
2017-05-13 18:48:14 -04:00
Rapptz
cf2269fdf4
Fix some left over incorrect snippets.
2017-05-12 21:12:28 -04:00
Rapptz
b44bba6ee6
First pass at documentation reform.
2017-05-12 20:14:34 -04:00
Rapptz
be2e706b2a
Rename abc.Callable to abc.Connectable.
2017-05-10 21:36:49 -04:00
Rapptz
dff6bcc745
Add support for audit log reasons.
...
Most routes now have a 'reason' keyword argument.
2017-05-07 03:08:06 -04:00
Rapptz
3f45db5c3b
Better TextChannel.is_nsfw() check.
2017-04-30 02:53:33 -04:00
Rapptz
d3a86a5fb6
Add TextChannel.is_nsfw method to check for NSFW channels.
2017-04-26 21:02:30 -04:00
Rapptz
1fc08bc5a2
Remove unused imports.
2017-04-18 04:22:35 -04:00
Rapptz
3b1b26ffb1
Re-implement voice sending.
...
This is a complete redesign of the old voice code.
A list of major changes is as follows:
* The voice websocket will now automatically reconnect with
exponential back-off just like the regular Client does.
* Removal of the stream player concept.
* Audio now gracefully pauses and resumes when a disconnect is found.
* Introduce a discord.AudioSource concept to abstract streams
* Flatten previous stream player functionality with the
VoiceClient, e.g. player.stop() is now voice_client.stop()
* With the above re-coupling this means you no longer have to
store players anywhere.
* The after function now requires a single parameter, the error,
if any existed. This will typically be None.
A lot of this design is experimental.
2017-04-18 03:49:48 -04:00
Rapptz
39d65305a3
Add TextChannel.members to get members that can see a channel.
2017-02-28 17:42:07 -05:00
Rapptz
cf40e94af6
Rename VoiceChannel.voice_members to VoiceChannel.members
2017-02-28 17:40:17 -05:00
Rapptz
cbbc75cd8d
Move purge and delete_messages from Messageable.
...
This is a breaking change. Move these two to TextChannel since the
other things that implement Messageable cannot reliably do bulk delete
actions in their respective channels.
2017-02-26 21:16:20 -05:00
Rapptz
ae36008279
Fix NameError in GroupChannel.
2017-02-10 15:42:52 -05:00
Rapptz
ca81f0c3fc
Better group DM support.
2017-02-09 20:50:02 -05:00
Rapptz
ff9f5749e1
Update copyright year to 2017.
2017-01-20 23:19:19 -05:00
Rapptz
92dd519b1a
Remove _get_guild_id from Messageable ABC.
2017-01-14 19:22:26 -05:00
Rapptz
aae8b783e9
VoiceChannel.voice_members is now computed when needed.
2017-01-08 04:31:33 -05:00
Rapptz
d086b5421d
Fix NameError when dealing with permission resolution.
2017-01-03 20:17:59 -05:00
Rapptz
7431a127cf
Change Messageable channel getter to be a coroutine.
2017-01-03 09:52:11 -05:00
Rapptz
98b981848d
Move message creation to a factory method inside ConnectionState.
2017-01-03 09:52:10 -05:00
Rapptz
d5b616fa11
Rename MessageChannel abc to Messageable.
2017-01-03 09:52:09 -05:00
Rapptz
6709979831
Move GuildChannel over to abc module.
2017-01-03 09:52:08 -05:00
Rapptz
dceba9d962
Add useful repr to all data classes.
2017-01-03 09:52:06 -05:00
Rapptz
79a49f9145
Absolute import some circular dependencies to appease Python 3.4.
2017-01-03 09:52:02 -05:00
Rapptz
59a0df5f98
Rename try_insert_user to store_user
2017-01-03 09:51:56 -05:00
Rapptz
5cb3ad14e8
Make emojis and members stateful.
2017-01-03 09:51:55 -05:00
Rapptz
d1d54a468a
Rename Server to Guild everywhere.
2017-01-03 09:51:54 -05:00
Rapptz
53ab263125
Split channel types.
...
This splits them into the following:
* DMChannel
* GroupChannel
* VoiceChannel
* TextChannel
This also makes the channels "stateful".
2017-01-03 09:51:52 -05:00
Rapptz
e4b16851bf
Slots use tuples instead now.
2017-01-03 09:51:50 -05:00
Rapptz
45c729b167
Switch IDs to use int instead of str
2017-01-03 09:51:49 -05:00
Rapptz
044b0824e6
Begin working on the rewrite.
2017-01-03 09:51:47 -05:00
Rapptz
c7946606f4
Add Channel.overwrites to get a channel's permission overwrites.
...
Fixes #414 .
2016-12-17 14:00:34 -05:00
Rapptz
26f5bcd725
Fix bug when permission overwrites could be applied out of order.
...
The bug was due to the fact that the way overwrites work is by doing
a loop of all the values and then applying deny first and then allow.
That way the overwrite is defined if role A and role B deny a
permission but role C allows it (and said member has A, B, C roles)
then the resolution should allow it rather than deny it regardless of
the order of the data it is received in.
2016-09-10 16:11:52 -04:00
Rapptz
18bdd3e7dd
Make PrivateChannel.__str__ more useful for groups.
...
Also demote is_private to a property instead of a slot.
2016-07-15 21:45:23 -04:00
Rapptz
a128249b63
Add support for different message types and call message.
2016-07-13 20:11:18 -04:00
Rapptz
69c506d7ae
Handle CHANNEL_UPDATE for group direct messages.
2016-07-13 17:23:35 -04:00
Rapptz
ddd3fd0a3d
Begin working on gateway v6 changes.
...
The first batch of changes are related to channel types and group
direct messages. Support these first so READY begins parsing.
2016-07-13 00:10:16 -04:00
Rapptz
0eccd85711
Add implicit cases to permission resolution in Channel.permissions_for
2016-06-28 20:34:03 -04:00