我想确保我的机器人只响应命令/消息并仅在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')