reqrite in discord.py v2

This commit is contained in:
2022-04-26 20:15:38 +02:00
parent 187fb2a090
commit e39e440109
3 changed files with 44 additions and 59 deletions

85
main.py
View File

@@ -1,33 +1,33 @@
####################
# == Main Info ==
# main.py
# by 4nima
# v.0.0.0
#
####################
# == Descrtiption ==
# template for discord bot
#
####################
# == Dependencies ==
# pip3 install discord
# pip3 install flask (for keep_alive)
####################
"""
version 2.0.0
author 4nima, oce
description template for discord bot
requirements
- discord
- flask (for keep_alive)
"""
## Imports
import asyncio as aio
import logging as log
import json
import random
import logging as log
from discord.ext import commands
import discord
from discord import app_commands
#from lib.keep_alive import keep_alive
from bot import client
intents = discord.Intents.default()
intents.message_content = True
guild_id = '283156308465811456'
bot = client(intents)
## Vars
### Load and set Bot Config
with open("bot.conf", 'r') as f:
BOTDATA = json.load(f)
bot = commands.Bot(command_prefix=BOTDATA['prefix'])
### Set logging options
log.basicConfig(
@@ -37,43 +37,10 @@ log.basicConfig(
datefmt='%Y-%m-%d %H:%M:%S'
)
## Run
### Events
@bot.event
async def on_ready():
log.info(f'Logged in as {bot.user}')
print(f'Logged in as {bot.user}')
# run
# bot defination
@bot.tree.command(guild = discord.Object(id=guild_id), name = 'tester', description='testing') #guild specific slash command
async def slash2(interaction: discord.Interaction):
await interaction.response.send_message(f"I am working! I was made with Discord.py!", ephemeral = True)
for guild in bot.guilds:
log.info(f'Connect to Server {guild.name} (id: {guild.id})')
@bot.event
async def on_reaction_add(reac, usr):
print(reac)
print(usr)
### Commands
@bot.command(name='hello', help='Say hello!')
async def say_hello(ctx):
async with ctx.typing():
log.info('Start say_hello function')
await ctx.message.add_reaction('🤔')
reply = await ctx.send(f'Hello, <@{ctx.author.id}>!')
print(ctx.guild)
print(ctx.message.content)
print(ctx.message)
print(ctx.author)
print(reply)
await aio.sleep(random.randint(1,5))
await ctx.message.remove_reaction('🤔', bot.user)
if random.randint(1,100) < 10:
log.error('say_hello function was failed')
await ctx.message.add_reaction('')
else:
log.info('Run say_hello successfully')
await ctx.message.add_reaction('')
await aio.sleep(10)
await ctx.message.delete()
#keep_alive()
bot.run(BOTDATA['token'])
bot.run(BOTDATA['token'])