无法将DM发送给我以外的人

时间:2020-11-01 16:35:48

标签: python discord discord.py

当我尝试自行管理DM或与漫游器一起使用message.author时,它工作正常,但是当我尝试使用其ID从服务器DM他人进行访问时,它只会返回discord.ext.commands.errors.BadArgument: User "ID" not found。尝试在同一台计算机上使用2个帐户,而当我仅使用其中一个帐户时,它不起作用,但是当我登录到第二个帐户(同时仍打开我的主帐户)时,它工作正常。这是我正在使用的:

@bot.command()
async def dm(ctx, victim: discord.User, *, message=None):
        user = await bot.fetch_user("ID")
        await user.send("message")

此外,当我自己(或message.author)DM时,我设置了一个用于读取消息的事件,因此无法正常工作。当我注释掉时,DM命令再次起作用。

@bot.event
   async def on_message(message):
     print(message.author.name + " : " + message.content)

2 个答案:

答案 0 :(得分:0)

您遇到的问题是将ID放置为字符串,而不是victim.id。另外,您没有使用message变量

像这样使用 {prefix} dm @user Hello this is a test

@bot.command()
async def dm(ctx, victim: discord.Member, *, message: str = None):
    if message:
        await victim.send(message)
    else:
        await victim.send("No message context")

答案 1 :(得分:0)

尝试

await ctx.message.author.send("Hello.")