用户登录
用户注册

分享至

如何提及命令的发送者?不和谐.py

  • 作者: 想到你我就硬了唉
  • 来源: 51数据库
  • 2023-02-01

问题描述

我创建了一个超级简单的 .report <person> 命令.我有它,所以当有人键入它时它将被发送到某个频道.我想做的是让它显示报告其他用户的用户的名称.我不知道该怎么做.有谁知道最好的方法吗?

I created a super simple .report <person> command. I have it so it will be sent to a certain channel when someone types it. What I wanted to do is have it display the name of the user who reported the other user. I don't know how to go about doing that. Does anyone know the best way?

@bot.command()
async def report(*, message):
    await bot.delete(message)
    await bot.send_message(bot.get_channel("479177111030988810"), message)

推荐答案

你可以这样做,获取上下文 (ctx) 并从中获取消息的内容及其作者

You could do something like this, where you take the context (ctx) and from it get the contents of the message and its author

@bot.command(pass_context=True)
async def report(ctx):
    await bot.delete_message(ctx.message)
    report = f""{ctx.message.content[8:]}"  sent by {ctx.message.author}"
    await bot.send_message(bot.get_channel("479177111030988810"), report)
软件
前端设计
程序设计
Java相关