diff options
| author | Giovani Irimea <[email protected]> | 2017-09-17 06:22:39 +0200 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2017-09-18 20:01:57 -0400 |
| commit | 06296bfaf66035196a843d0a42aaa9b3d20afdf9 (patch) | |
| tree | 92355644f16314aa661759bfb76653bf5e52a383 /README.rst | |
| parent | Add webhook.url (diff) | |
| download | discord.py-06296bfaf66035196a843d0a42aaa9b3d20afdf9.tar.xz discord.py-06296bfaf66035196a843d0a42aaa9b3d20afdf9.zip | |
Changed README from using Markdown to use reStructuredText
Diffstat (limited to 'README.rst')
| -rw-r--r-- | README.rst | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/README.rst b/README.rst new file mode 100644 index 00000000..825a9aa4 --- /dev/null +++ b/README.rst @@ -0,0 +1,106 @@ +discord.py +========== + +.. image:: https://img.shields.io/pypi/v/discord.py.svg + :target: https://pypi.python.org/pypi/discord.py +.. image:: https://img.shields.io/pypi/pyversions/discord.py.svg + :target: https://pypi.python.org/pypi/discord.py + +discord.py is an API wrapper for Discord written in Python. + +This was written to allow easier writing of bots or chat logs. Make sure to familiarise yourself with the API using the `documentation <http://discordpy.rtfd.org/en/latest>`__. + +Breaking Changes +--------------- + +The discord API is constantly changing and the wrapper API is as well. There will be no effort to keep backwards compatibility in versions before ``v1.0.0``. + +I recommend that you follow the discussion in the `unofficial Discord API discord channel <https://discord.gg/0SBTUU1wZTUzBx2q>`__ and update your installation periodically. I will attempt to make note of breaking changes in the API channel so make sure to subscribe to library news by typing ``?sub news`` in the channel. + +Installing +---------- + +To install the library without full voice support, you can just run the following command: + +.. code:: sh + + python3 -m pip install -U discord.py + +Otherwise to get voice support you should run the following command: + +.. code:: sh + + python3 -m pip install -U discord.py[voice] + + +To install the development version, do the following: + +.. code:: sh + + python3 -m pip install -U https://github.com/Rapptz/discord.py/archive/master.zip#egg=discord.py[voice] + +or the more long winded from cloned source: + +.. code:: sh + + $ git clone https://github.com/Rapptz/discord.py + $ cd discord.py + $ python3 -m pip install -U .[voice] + +Please note that on Linux installing voice you must install the following packages via your favourite package manager (e.g. ``apt``, ``yum``, etc) before running the above command: + +* libffi-dev (or ``libffi-devel`` on some systems) +* python-dev (e.g. ``python3.5-dev`` for Python 3.5) + +Quick Example +------------ + +.. code:: py + + import discord + import asyncio + + class MyClient(discord.Client): + async def on_ready(self): + print('Logged in as') + print(self.user.name) + print(self.user.id) + print('------') + + async def on_message(self, message): + # don't respond to ourselves + if message.author == self.user: + return + if message.content.startswith('!test'): + counter = 0 + tmp = await message.channel.send('Calculating messages...') + async for msg in message.channel.history(limit=100): + if msg.author == message.author: + counter += 1 + + await tmp.edit(content='You have {} messages.'.format(counter)) + elif message.content.startswith('!sleep'): + with message.channel.typing(): + await asyncio.sleep(5.0) + await message.channel.send('Done sleeping.') + + client = MyClient() + client.run('token') + +Note that in Python 3.4 you use ``@asyncio.coroutine`` instead of ``async def`` and ``yield from`` instead of ``await``. + +You can find examples in the examples directory. + +Requirements +------------ + +* Python 3.4.2+ +* ``aiohttp`` library +* ``websockets`` library +* ``PyNaCl`` library (optional, for voice only) + + - On Linux systems this requires the ``libffi`` library. You can install in + debian based systems by doing ``sudo apt-get install libffi-dev``. + +Usually ``pip`` will handle these for you. + |