@Hadigon

Что делать если бот не отвечает на команды?

Вот код простенького бота, когда я пишу в дискорд комаду он не отвечает, ошибку в консоль не выводит.
import discord
import random
from discord_components import DiscordComponents, Button, ButtonStyle




PATH = "/Users/mihail/Desktop/chat_botik/"
client = discord.Client()
score = 0

file = open("token_discord.txt", "r", encoding="UTF-8")
token = file.readline()
file.close()



@client.event
async def on_ready():
    DiscordComponents(client)
    await client.change_presence(status=discord.Status.dnd, activity=discord.Game("программиста"))
    print("Бот запущен")



def read_file(file_name):
    file = open(PATH + file_name, "r", encoding="UTF-8")
    list = file.read().split("\n")
    file.close()
    return list


def get_random_answer(filename):
    list = read_file(filename)
    item = random.choice(list)  
    return item

def contain_str(mes, string):
    return mes.content.lower().find(string) != -1

def def_string(list):
    string = ""
    for item in list:
        string += item + "\n"
    return string




async def on_message(message):
    if contain_str(message, "!help"):
        embed = discord.Embed(
            colour = discord.Colour.dark_orange(),
            description = def_string(read_file("help.txt")),
            title = "`Основные команды`"
        )
        embed.set_author(name=message.author.name, icon_url=message.author.avatar_url)
        embed.set_thumbnail(url="https://cdn.discordapp.com/app-icons/1068917659300798605/7f8a3f678c2a85e2aaa9aa4c19cbe3fb.png?size=256")
        embed.set_image(url="https://antislang.ru/wp-content/uploads/%D0%BA%D1%87%D0%B0%D1%83-1.jpg")
        embed.set_footer(text=f"Запрос от {message.author}", icon_url=message.author.avatar_url)
        await message.channel.send(embed=embed)

        

    elif contain_str(message, "!clear"):
        await message.channel.purge(limit= int(message.content[6: message.content.find("<") - 1]) + 1)

    elif contain_str(message, "clean"):
        await message.channel.purge()
    
    elif contain_str(message, "!games"):
        await message.channel.send(
            embed=discord.Embed(title="Выбери игру"),
            components = [
                Button(style=ButtonStyle.grey, label="Казино", emoji=""),
                Button(style=ButtonStyle.grey, label="Бросить игральный кубик", emoji=""),
                Button(style=ButtonStyle.grey, label="Магический шар", emoji="")

            ]
        )

        br = await client.wait_for("button_click")
        if br.component.label == "Казино":
            await message.channel.purge(limit=2)
            
            r1 = random.randint(1, 2)
            if r1 == 1:
                await br.respond(content = "Вы победили")
            else:
                await br.respond(content = "Вы проиграли")

        elif br.component.label == "Бросить игральный кубик":
            r1 = random.randint(1, 6)
            await br.respond(content = r1)
        
        elif br.component.label == "Магический шар":
            await br.respond(content = get_random_answer("ball.txt"))


            
client.run(token)
  • Вопрос задан
  • 33 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы