如何让不和谐机器人复制频道中的最新消息?

时间:2021-04-28 14:53:37

标签: python discord discord.py bots

所以我想创建一个机器人来复制每个人所说的一切。我试图制作一个 .txt 文件,其中包含某人所说的所有内容,但它很快就会变得杂乱无章,无论如何它都不会发送消息。有什么帮助吗?

代码:

@bot.command()
async def copy(ctx):
    with open("file.txt", "w") as f:
        async for message in ctx.history(limit=1000):
            f.write(message.content + "\n")

1 个答案:

答案 0 :(得分:1)

要在发送后立即再次发送每条消息,请添加:

@bot.event
async def on_message(message):
    await message.channel.send(message.content)
    await client.process_commands(message)

为了避免机器人也将自己的消息成倍增加,请检查 message.author 是否是机器人:

@bot.event
async def on_message(message):
    if not message.author.bot:
        ctx = await bot.get_context(message)
        await ctx.send(message.content)
        await client.process_commands(message)

如果需要,您可以删除命令副本。

参考文献: