diff options
| author | Rapptz <[email protected]> | 2015-12-19 20:40:06 -0500 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2015-12-19 20:40:06 -0500 |
| commit | bee044629d50766d42ddfb1c8c92ed3267033b14 (patch) | |
| tree | e39bddf19fefa6534fcf839eea06e1aac9083e24 /examples/background_task.py | |
| parent | Rename some listeners to `wait_until_`. (diff) | |
| download | discord.py-bee044629d50766d42ddfb1c8c92ed3267033b14.tar.xz discord.py-bee044629d50766d42ddfb1c8c92ed3267033b14.zip | |
Add background_task example to showcase background tasks.
Diffstat (limited to 'examples/background_task.py')
| -rw-r--r-- | examples/background_task.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/examples/background_task.py b/examples/background_task.py new file mode 100644 index 00000000..7da6b7b9 --- /dev/null +++ b/examples/background_task.py @@ -0,0 +1,32 @@ +import discord +import asyncio + +client = discord.Client() + +def my_background_task(): + yield from client.wait_until_ready() + counter = 0 + channel = discord.Object(id='channel_id_here') + while not client.is_closed: + counter += 1 + yield from client.send_message(channel, counter) + yield from asyncio.sleep(60) # task runs every 60 seconds + [email protected]_event +def on_ready(): + print('Logged in as') + print(client.user.name) + print(client.user.id) + print('------') + +loop = asyncio.get_event_loop() + +try: + loop.create_task(my_background_task()) + loop.run_until_complete(client.login('email', 'password')) + loop.run_until_complete(client.connect()) +except Exception: + loop.run_until_complete(client.close()) +finally: + loop.close() |