将bot分配给单通道discord.py

时间:2018-04-30 09:25:00

标签: discord.py

我想确保我的机器人只响应命令/消息并仅在1个特定通道中响应这是否可能我尝试了多种变化而没有成功。如果我可以为任何事件定义它,那就更好了。有人有任何想法吗?

1 个答案:

答案 0 :(得分:2)

您可以在message.channel事件中检查on_message,如果它符合您的条件,在这种情况下是特定频道,则执行process_commands

以下示例中!ping命令仅在channel.name为"一般"。

时才有效。
from discord.ext import commands

client = commands.Bot(command_prefix='!')

@client.command()
async def ping():
    await client.say('Pong')

@client.event
async def on_message(message):
    if message.channel.name == 'general':
        await client.process_commands(message)

client.run('token')