如何向执行命令并发送到通道的用户发送DM

时间:2020-07-08 19:38:56

标签: python python-3.x discord discord.py

我正在处理一个名为report的命令,它应该做两件事。

1。将(嵌入式)DM发送给调用该命令的用户。

2。向#reports频道发送消息。

现在,我一直专注于DM部分,而不是现在尝试使用embed(尽管使用生成器应该很容易)。我尝试了很多方法,但是它们对我都不起作用,换句话说,它们根本不向我或用户发送DM。 我应该提到我有一个cog.py,但是我现在正在使用bot.py。对于我的前缀,我正在使用config.py中指定的+,但是如果可能的话,我想对此命令强制使用!

编辑:这对我有用,我必须将(pass_context=True)添加到装饰器中。

# report command
@bot.command(pass_context=True)
async def dm(ctx, user: discord.User, *, value):
    await user.send(f"**{value}**")
    await user.send(Sent by {ctx.author.display_name}")
try:
    bot.run(token)
except:
    pass

我还尝试了以下方法:

https://www.youtube.com/watch?v=OEo7FZpe-VA

https://www.youtube.com/watch?v=uyctSEjJ8r0

如果有人可以向我提供一些方式,我可以检查我是否缺少有关如何正确执行此操作的任何组件,或者向终端发送DM和消息的解决方案,将不胜感激!

编辑:显然,执行命令通常不起作用,因此一旦我修复了上面的资源也应该起作用。

0 个答案:

没有答案