aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--examples/background_task.py32
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
+
+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()