我正在制作一个非常简单的discord机器人,可以读取命令并返回答案,但是我也希望它读取非命令消息。我假设面临的问题是我有一个@ client.command()和@ client.even甚至带有异步def消息,因此它读取消息而不是命令
我发现的解决方法是,如果我删除异步def消息,则命令可以再次使用,但是如果我保留它们,则仅返回消息
client=commands.Bot(command_prefix = "&")
@client.command(aliases=["8ball"])
async def _8ball(ctx,*,question):
responses= ["sure","why not","maybe"]
await ctx.send(f"Question: {question}\nAnswer: {random.choice(responses)}")
我有这个
@client.event
async def on_message(message):
if message.content.lower()=="ok":
await message.channel.send("yes")
当我使用命令&8ball并希望我说“确定”时返回“是”,我希望代码能够正常工作。但是似乎当我有on_message时,它不会寻找命令,某种程度上必须是另一个。