69 Commits

Author SHA1 Message Date
Rapptz
c54a6a927d Implement audit logs. 2017-04-30 02:58:27 -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
0e5bf09021 Export missing enums. 2017-04-12 20:20:35 -04:00
Rapptz
bf2066278e Add support for multiple file attachments.
This is a breaking change. No longer does Messageable.send have a
filename keyword argument, instead this is all handled through the
discord.File model. To upload many files you must specify a list
of discord.File objects.
2017-04-08 03:33:21 -04:00
Rapptz
c4c17351c6 Add commit number to pip version for easy identification. 2017-03-04 20:43:05 -05:00
Rapptz
62f43889c0 Remove unused ChannelPermissions namedtuple. 2017-01-25 05:58:15 -05:00
Rapptz
02f30f21c4 Implement User.profile coroutine to get a user's profile. 2017-01-24 22:00:27 -05:00
Rapptz
ff9f5749e1 Update copyright year to 2017. 2017-01-20 23:19:19 -05:00
Rapptz
4c981ee631 Add support for relationships. 2017-01-20 19:28:43 -05:00
Rapptz
fa384f2114 Make ClientUser separate from a regular User.
This removes Client.edit_profile in favour of ClientUser.edit.
2017-01-19 19:37:11 -05:00
Rapptz
f877efdd89 Change version info to 1.0.0a0. 2017-01-09 20:52:11 -05:00
Rapptz
20041ea756 Implement AutoShardedClient for transparent sharding.
This allows people to run their >2,500 guild bot in a single process
without the headaches of IPC/RPC or much difficulty.
2017-01-07 23:19:39 -05:00
Rapptz
a557858742 Remove chunks of the voice code to redesign later. 2017-01-03 09:52:07 -05:00
Rapptz
c187d87dae Re-add support for reactions.
We now store emojis in a global cache and make things like adding
and removing reactions part of the stateful Message class.
2017-01-03 09:51:57 -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
b9dafe375f Add some basic ABCs. 2017-01-03 09:51:50 -05:00
Rapptz
5731f3405d Version bump to v0.16.0. 2016-12-19 17:53:41 -05:00
Rapptz
64733c0b19 Version bump to v0.15.1 2016-11-30 17:05:29 -05:00
Rapptz
59d17e4137 Version bump to v0.15.0 2016-11-22 19:59:28 -05:00
Rapptz
af46718460 Add support for rich embeds. 2016-11-13 05:07:58 -05:00
Rapptz
a7ba0bb7c4 Version bump to v0.14.3 2016-11-06 01:04:50 -04:00
Rapptz
4fa1349869 Version bump to v0.14.2 2016-11-04 00:14:07 -04:00
Rapptz
f56dbb0379 Fix Reaction not importing.
Also bump version to v0.14.1
2016-11-03 22:28:18 -04:00
Rapptz
0e856494ed Version bump to v0.14.0 2016-11-03 21:52:21 -04:00
Rapptz
1a624cd037 Version bump to v0.13.0 2016-09-26 23:32:33 -04:00
Rapptz
1987cd10df Version bump to v0.12.0 2016-09-25 19:16:19 -04:00
Rapptz
203c64a9a4 Add support for server verification levels.
This adds a new enum named VerificationLevel to denote said verification
level. This enum will also be used in the Client.edit_server calls
instead of the undocumented int parameter.
2016-09-12 22:38:06 -04:00
Khazhismel
c5a989eeb2 Add custom emoji support. 2016-07-31 22:39:43 -07:00
Rapptz
fd3d775271 Version bump to v0.11.0 2016-07-30 14:02:12 -04:00
Rapptz
66875fbb0a Document VoiceState class. 2016-07-24 04:54:00 -04:00
Rapptz
1c8ab25917 Add support for querying information about group calls. 2016-07-15 22:46:00 -04:00
Rapptz
a128249b63 Add support for different message types and call message. 2016-07-13 20:11:18 -04:00
Rapptz
3cad1aeb59 Version bump to v0.10.0 2016-06-28 01:24:55 -04:00
Rapptz
f0fc70b2cf Add a way to set permission overwrites when creating a channel. 2016-06-14 22:26:14 -04:00
Rapptz
fb82a37cc6 Add discord.PermissionOverwrite type for channel-specific overwrites. 2016-06-14 22:26:13 -04:00
Rapptz
a175c86aa1 Add Client.application_info to retrieve the current app info.
Fixes #241.
2016-06-10 22:28:15 -04:00
Rapptz
1c623ccf11 Begin working on gateway v4 support.
Bump websockets requirement to v3.1

Should be squashed...
2016-04-27 18:36:13 -04:00
Rapptz
db4cc791dd Update license of files to 2016. 2016-01-04 22:28:29 -05:00
Khazhismel
0aa46e6def Add game data class, replace game_id. 2015-12-23 21:28:18 -05:00
Rapptz
2bf527334f Add discord.version_info 2015-12-09 19:50:17 -05:00
Rapptz
4e3301a57c Add enums to __init__.py 2015-12-09 07:07:37 -05:00
Rapptz
60945868b4 Clear up some documentation. 2015-12-08 06:51:46 -05:00
Rapptz
a6d6d832ff Working voice sending implementation.
Currently you can only send from a stream that implements
``read`` and a ``ffmpeg`` or ``avconv``.
2015-12-08 06:37:38 -05:00
Rapptz
39988a36c9 Version bump to v0.9.0 2015-11-28 23:08:35 -05: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
8552e24945 Version bump to v0.8.0 2015-10-22 22:21:52 -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
e24806660d Version bump to v0.7.0 2015-10-13 06:28:39 -04:00