所以今天我试图了解 python discord.py 。
在某些时候,我尝试了以下操作:
一个人告诉机器人一个命令 (arr[4]
),通过我所做的所有研究,我只能找到 14
where $DM 'discord user' 'content'
。
有什么办法可以做到:
client.author.send("message")
?
答案 0 :(得分:0)
有几种方法可以做到这一点
来自用户 ID
@client.command()
async def DM(ctx, id: int, *, content):
user = client.get_user(id)
await user.send(content)
# Invoking
# $DM 123123123123123 something here
来自用户名#discriminator
@client.command()
async def DM(ctx, username, *, content):
name, discriminator = username.split("#")
user = discord.utils.get(ctx.guild.members, name=name, discriminator=discriminator)
await user.send(content)
# Invoking
# $DM example#1111 something here
包含用户提及、ID、姓名、昵称(imo 的最佳选择)
@client.command()
async def DM(ctx, member: discord.Member, *, content):
await member.send(content)
# Invoking
# $DM @example#1111 something here
# $DM 1231231231231 something here
# $DM example#1111 something here
还要确保您启用了 intents.members
,有关详细信息,请查看我的 previous answers
PS:您需要使用 commands.Bot
才能使所有这些工作正常进行,而不是 discord.Client