昨日、コマンドのボット!name Barty
がプリントバックするような単純なものに取り組んでいましたHello Barty
@bot.command()
async def name(ctx, args):
await ctx.send("hello {}".format(args)
しかし、現時点で私が直面している問題は、ボットが私が使用しているすべてのチャネルに応答することで!name XXXX
あり、私がやろうとしていることは、特定のチャネルに不一致でのみ反応したいということです。
私がやろうとした:
@bot.event
async def on_message(message):
if message.channel.id == 1234567:
@bot.command()
async def name(ctx, args):
await ctx.send("hello {}".format(args)
しかし、それは完全に機能していませんでした。私はアイデアがなく、ここにいます。
特定のチャネルにコマンドを送信し、そこから応答を返すにはどうすればよいですか?
ええと、定義コードをIFステートメントから移動します
@bot.command()
async def name(ctx, args):
await ctx.send("hello {}".format(args)
あなたがそれをしたとき、あなたはすることができるはずです。
if (message.channel.id == 'channel id'):
await message.channel.send('message goes here')
else:
# handle your else here, such as null, or log it to ur terminal
知っているドキュメントもチェックしてください-https : //discordpy.readthedocs.io
コマンドを作成したら、その中にIFステートメントを作成します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加