我希望机器人将DM消息发送给名称在消息内容中的用户,这是代码:
@commands.Cog.listener()
async def on_message(self, message):
for user in People: # People list includes all members' names in the server
if f'{user}' in message.content:
await message.user.send("Hi")
else:
pass
我知道问题出在await message.user.send("Hi")
中,但我只想在我的味精(例如)“ Hello Ahmed”中说“自动程序”向ahmed发送DM消息时说“嗨”
答案 0 :(得分:1)
您不必在行会中重复每个人的名字。 discord.Message
具有属性mentions
。它返回消息中提到的成员列表。这样您就可以迭代该列表。
@commands.Cog.listener()
async def on_message(self, message):
for member in message.mentions:
await member.send('Hi')