Я хотел бы отправить сообщение в специальном текстовом канале c независимо от сервера, поэтому я не могу жестко запрограммировать идентификатор своего канала.
Эта часть кода работает:
@client.event
async def on_guild_join(guild):
general = find(lambda x: x.name == 'general', guild.text_channels)
if general and general.permissions_for(guild.me).send_messages:
await general.send('Hello {}!'.format(guild.name))
Но моя проблема в том, что эта часть ведьмы находится в Cog:
import discord, httplib2, random, string
from discord.ext import commands
from datetime import datetime
from discord.ext.commands import cooldown
from discord.utils import find
class Cog01(commands.Cog):
def __int__(self, client):
self.client = client
@commands.Cog.listener()
async def on_ready(self):
print('Cog01 is loaded')
fff = find(lambda x: x.name == 'general', guild.text_channels)
def setup(client):
client.add_cog(Cog01(client))
Я получил эту ошибку:
NameError: name 'guild' is not defined
Я много чего пробовал, иногда ошибка пропадала, но все равно не работала.
Я уверен, что это возможно, я потерял старую версию своего кода, которая работала.
Я искал решение в течение нескольких часов, но решение может быть действительно простым, я новичок в программировании.