不能仅对特定通道发出命令

时间:2019-04-13 08:57:48

标签: bots discord discord.py-rewrite

Disocord.py重写
错误:
下面的命令无法正常工作

Microsoft.VSCode.CPP.Extension.linux
Microsoft.VSCode.CPP.IntelliSense.Msvc.linux

p / 是bots前缀,上面的代码告诉(在p /中使用此命令在{}'。format(er.mention)中写入此命令)。正确的提示bot没说什么,但是我使用了 p / help 之类的任何命令,但它不起作用。实际上,该事件应允许成员使用bot命令(@ bot.command)仅在指定的通道中没有其他任何通道,但是没有命令在指定的通道中或服务器的任何通道中起作用。任何帮助都会很棒:)编辑:(指定了我的问题,并使其更加清楚了)

1 个答案:

答案 0 :(得分:1)

编辑:
从评论中,您实际上可能想要

之类的东西
@bot.event
async def on_message(message):
    cmdChannel = bot.get_channel(559253532759425044)
    if message.content.lower().startswith('p/'):
        if message.channel.id == cmdChannel.id:
            #command invoked in command channel - execute it
            await bot.process_commands(message)
        else:
            #command attempted in non command channel - redirect user
            await message.channel.send('Write this command in {}'.format(cmdChannel.mention))