Discord бот не выводит логи сообщения пользователя (Python)
Вот код с которым у меня возникли проблемы:
@client.event
async def on_message(message):
channel = client.get_channel(1085938113420988506)
if message.author != client.user:
await channel.send(f'{message.author} в "{message.channel}": {message.content or "пустое сообщение"}')
Этот код просто выводит: "ник" в "канал": и всё. Но после того как я немного модифицировал конец строки из {message.content} в {message.content or "пустое сообщение"}, то код начал выводить: "ник" в "канал": пустое сообщение.
Я пробовал это выводить через print() консоль - итог тот же. Пытался еще взять кусок кода, который берёт информацию введенную пользователем и сохраняет в отдельную переменную, но там буквально тоже самое, что и у меня.
Ответы (2 шт):
Согласно официальной документации:
message.content - The actual contents of the message. If Intents.message_content is not enabled this will always be an empty string unless the bot is mentioned or the message is a direct message.
Проверяй эти условия.
Попробуйте вот так:
import discord
from discord.ext import commands
intents = discord.Intents.default()
intents.message_content = True
client = commands.Bot(command_prefix = '!', intents=intents)
@client.event
async def on_message(message):
channel = client.get_channel(1085938113420988506)
if message.author != client.user:
await channel.send(f'{message.author} в "{message.channel}": {message.content or "пустое сообщение"}')