python discord on bot setup code example
Example 1: how to make a discord bot python
# pip install discord
import discord
class MyClient(discord.Client):
async def on_connect(self):
print('[LOGS] Connecting to discord!')
async def on_ready(self):
print('[LOGS] Bot is ready!')
print("""[LOGS] Logged in: {}\n[LOGS] ID: {}\n[LOGS] Number of users: {}""".format(self.bot.user.name, self.bot.user.id, len(set(self.bot.get_all_members()))))
await self.bot.change_presence(activity=discord.Game(name="Weeke is a god!"))
async def on_resumed(self):
print("\n[LOGS] Bot has resumed session!")
async def on_message(self, message):
# don't respond to ourselves
if message.author == self.user:
return
if message.content == 'ping':
await ctx.send(f'Client Latency: {round(self.bot.latency * 1000)}')
client = MyClient()
client.run('token')
Example 2: discord python application bot
q_list = [
'What is your favorite color?',
'Is the Sky Blue?',
'Am I the best bot ever?'
]
a_list = []
@client.command(aliases=['staff-application'])
async def staff_application(ctx):
a_list = []
submit_channel = client.get_channel(<your channel id>)
channel = await ctx.author.create_dm()
def check(m):
return m.content is not None and m.channel == channel
for question in q_list:
sleep(.5)
await channel.send(question)
msg = await client.wait_for('message', check=check)
a_list.append(msg.content)
submit_wait = True
while submit_wait:
await channel.send('End of questions - "submit" to finish')
msg = await client.wait_for('message', check=check)
if "submit" in msg.content.lower():
submit_wait = False
answers = "\n".join(f'{a}. {b}' for a, b in enumerate(a_list, 1))
submit_msg = f'Application from {msg.author} \nThe answers are:\n{answers}'
await submit_channel.send(submit_msg)