前提・実現したいこと
DiscordのBOTを作っています。
下記のコードで、!globalと打つとグローバルチャットに登録されるのですが、BOTが入っているサーバーの全てのチャンネルのメッセージを送受信してしまいます。どうすれば、!globalと打ったチャンネルだけで送受信できるでしょうか?
発生している問題・エラーメッセージ
エラーメッセージは一切なし
該当のソースコード
python
1import discord 2 3client = discord.Client() 4 5@client.event 6async def on_ready(): 7 client.global_list = [] 8 9@client.event 10async def on_message(message): 11 12 if message.author == message.guild.me: 13 return 14 15 if message.webhook_id: 16 return 17 18 global_tmp = [w for w in await message.channel.webhooks() if w in client.global_list] 19 20 if message.content == "!global": 21 if global_tmp: 22 await message.channel.send("既に登録されています。") 23 return 24 25 new_w = await message.channel.create_webhook(name="global") 26 client.global_list.append(new_w) 27 await message.channel.send("グローバルチャットのチャンネルに登録しました。") 28 return 29 30 for webhook in client.global_list: 31 if message.channel != webhook.channel: 32 await webhook.send(content=message.content,username=message.author.name,avatar_url=message.author.avatar_url) 33 34client.run(TOKEN) 35
試したこと
特になし
補足情報(FW/ツールのバージョンなど)
Python 3.7
開発ツール Pycharm
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。