【发布时间】:2021-04-22 03:03:52
【问题描述】:
如果我的机器人输入某个单词(例如字母“E”),我试图让他们直接向用户发送消息,但我不知道该怎么做。任何帮助表示赞赏!
【问题讨论】:
标签: python python-3.x discord discord.py
如果我的机器人输入某个单词(例如字母“E”),我试图让他们直接向用户发送消息,但我不知道该怎么做。任何帮助表示赞赏!
【问题讨论】:
标签: python python-3.x discord discord.py
我猜这就是你的意思:
@bot.event
async def on_message(message):
if(message.content == 'E'):
await message.author.send('You typed E!')
【讨论】:
E
这里有几点需要注意:message.channel.send(<message>) 函数用于像服务器上的公共响应。
message.author.send(<message>) 函数用于私人回复或直接消息(DM)。
@bot.event
async def on_message(message):
if(message.content == 'E'):
await message.author.send('You typed E!')`enter code here`
【讨论】:
Direct Message (DM)改为messaging author不公开留言,请尝试将message.channel改为message.author。但之后你的回答将与FlameDev 回答相同,请尝试更新它
您可以使用Member.create_dm() method
@bot.event
async def on_message(message):
if message.content.lower() == "e":
dmchannel = await message.author.create_dm()
await dmchannel.send("You typed E!")
【讨论】: