Discord.py rewrite 如何 DM 命令?
问题描述
我试图让我的机器人在执行-help"时向用户发送帮助.
I am trying to have my bot DM the user the help when "-help" is executed.
我已经尝试在我的代码中执行此操作,但它不起作用.
I have tried doing this in my code already but it will not work.
async def help(ctx):
helpembed = discord.Embed(color=discord.Color.purple())
helpembed.set_author(name="Help")
helpembed.add_field(name="-new", value="Creates a new ticket. [Logged]",inline=False)
helpembed.add_field(name="-close", value="Closes the ticket.People with the role 'Viewing Team' can close ticets. [Logged]",inline=False)
helpembed.add_field(name="-setup", value='Sets Up your server so it can be used',inline=False)
helpembed.add_field(name="-help", value="Shows this message :rofl:",inline=False)
await client.send_message(ctx.message.author, embed=helpembed)
await ctx.send("Help sent in DM's.")```
The bot should DM the user with help. Instead it does nothing.
解决方案
向discord.py-rewrite,你使用 User.send
方法:
To send a private message to a user in discord.py-rewrite, you use the User.send
method:
async def help(ctx):
...
await ctx.author.send(...)
这是因为 User
是抽象 Messageable
类
This is because User
is a subclass of the abstract Messageable
class
相关文章