所以我试图做一个say命令,如果我的服务器Discord开发团队的成员使用它,那么它会向公告频道发送一条消息。 它根本不会发送消息或删除消息 IM 使用 discord.py 和 Python 的重写 这是我的代码
@bot.command(pass_context=True)
@commands.has_role('Manager')
async def say(ctx, content):
channel = ctx.guild.get_channel("714229744798925012")
await channel.send(channel,content)
await Message_delete(content)
idk 为什么会发生这种情况还说经理 cos im 在上线之前在测试服务器上对其进行了测试
不能将要作为参数发送的文本传递给 @bot.command 函数。一般你用这个:
async def say(ctx, *args):
args 是消息(又名单词 ;-(的空格分隔子字符串的元组。例如
!say Hello world
将向您展示
args = ("Hello", "world")
要转换元组整数字符串,只需使用:
message = ""
message = ' '.join(args)
总共:
@bot.command(pass_context=True)
@commands.has_role('Manager')
async def say(ctx, *args):
message = ""
message = ' '.join(args)
channel = ctx.guild.get_channel("714229744798925012")
await channel.send(channel, message)
如果您希望添加命令以稍后删除消息,我建议存储其ID以供以后使用。