Библиотека Python Discord не может отправлять сообщение при использовании функции on_ready()Python

Программы на Python
Ответить
Anonymous
 Библиотека Python Discord не может отправлять сообщение при использовании функции on_ready()

Сообщение Anonymous »

Я хочу, чтобы бот отправлял сообщение после входа в систему. Функция on_ready() выглядит нормально, но когда я пытаюсь отправить сообщение на канал разногласий, выдает ошибку.
import discord
import os

CHANNEL_ID = os.getenv('COMMAND_CHANNEL_ID')
DISCORD_TOKEN = os.genetv('BOT_TOKEN')

intents = discord.Intents.all()
client = discord.Client(intents=intents)
client.run(DISCORD_TOKEN)

@client.event
async def on_ready():
print(f'Logged in as {client.user}')
channel = client.get_channel(CHANNEL_ID)
await channel.send('It is working')

Я пытался отлаживать часами. Я уверен, что переменная идентификатора канала верна и правильно загружается из .env, потому что я могу правильно напечатать ее внутри функции. Я также дважды проверил идентификатор в Discord, и он правильный. Скрипт входит в систему как бот, но я не могу отправить сообщение. Разрешения для ботов тоже в порядке.
2024-09-28 00:08:28 INFO discord.client logging in using static token
2024-09-28 00:08:30 INFO discord.gateway Shard ID None has connected to Gateway (Session ID: d381e468bf2a3f5e67f28de422c65919).

Logged in as Demon#7026

2024-09-28 00:08:32 ERROR discord.client Ignoring exception in on_ready
Traceback (most recent call last):
File "/home/zagnox/Tools/Dystopia_C2/.venv/lib/python3.12/site-packages/discord/client.py", line 449, in _run_event
await coro(*args, **kwargs)
File "/home/zagnox/Tools/Dystopia_C2/builds/server/discord_server.py", line 122, in on_ready
await channel.send('It is working')
^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'



Подробнее здесь: https://stackoverflow.com/questions/790 ... y-function
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»