问题描述
我正在尝试制作一个日志记录机器人,但是我遇到了 message.channel.id 的问题
I am attempting to make a logging bot however I am having issues with message.channel.id
触发事件时发送什么;消息 ID - 消息 ID |用户 - 用户 ID |他们的留言 |我的私人日志频道 - 他们发送消息的服务器
What is sent upon event being triggered; Message ID - Message ID | User - User ID | Their Message | My private log channel - Server where they sent message
代码的预期应用;消息 ID - 消息 ID |用户 - 用户 ID |他们的留言 |他们发送消息的服务器 - 他们发送消息的服务器
Intended application of the code; Message ID - Message ID | User - User ID | Their Message | Server where they sent the message - Server where they sent message
@bot.event async def on_message(message): user = message.author user_id = message.author.id message_id = message.id content = message.content channel = message.channel.id guild = message.guild if user.bot: return channel = bot.get_channel(my private log channel) await channel.send(f"Message ID - {message_id} **|** {user} - {user_id} **|** {content} **|** #{channel} - {guild}") await bot.process_commands(message)
推荐答案
你使用了两次同一个变量channel
You used twice the same variable channel
只需重命名其中一个
以下是更改 2 行的示例:
Here is an example of a change of the 2 lines:
@bot.event async def on_message(message): user = message.author user_id = message.author.id message_id = message.id content = message.content message_channel = message.channel.id guild = message.guild if user.bot: return channel = bot.get_channel(my private log channel) await channel.send(f"Message ID - {message_id} **|** {user} - {user_id} **|** {content} **|** #{message_channel} - {guild}") await bot.process_commands(message)