Как получить категорию discord py

How to find out the id of a category by its name, for example: the category is called «Main» and it is necessary that after the category is created, the id of this channel is recorded in the osnid variable in order to create a chat in it later, I tried to write the id by the name of the category, I created it like this:

await ctx.guild.create_text_channel(f»правила»,overwrites=None, category=»Основеное», reason=None)

But it gave an error that there should be an id attribute, I tried to make OSNid = id (input ( » . «)) after creating a category, the user was required to enter the category id, and in the command for the creation of a text channel was entered instead of the name OSNid, but it did not work out anyway, it was written that atrebut str and id is needed

Источник: over.wiki

Мне нужно получить категорию в discord.py

Мне нужно чтобы новый канал создавался в той же категории, где происходит bot.event. У меня create_text_channel категорию по какой то причине указывает none и мне нужно как то получить категорию, в документации я не нашел,уже очень долго не могу решить эту проблему.

Making a Discord Bot | Part 12: Cooldowns | Discord.py 2.0


ticket_channel = await payload.member.guild.create_text_channel(‘cool-channel’)

введите сюда описание изображения

Что выводит:

Если что вот фулл bot.event:

Ответы (1 шт):

Примерно месяц назад шлюз дискорда был обновлен и теперь для того чтобы работать с объектами пользователей, а также с объектами серверов нужно выдавать намерения ( intents ). У вас проблема как раз таки в том, что скорее всего вы не выдали боту необходимые намерения. Чтобы их выдать, вам нужно при инициализации бота, помимо префикса указать также намерения.

Еще по теме:  Как на пс установить дискорд

Выдаем боту намерения при объявлении:

# если у вас discord.Client() bot = discord.Client(intents = discord.Intents.all()) # если у вас commands.Bot() bot = commands.Bot(command_prefix=’/’, intents = discord.Intents.all())

Если проблема осталась, то попробуйте включить два пункта на странице вашего бота. Для этого зайдите в раздел приложений и выберите вашего бота. Затем, слева, на вкладке «Bot»

Бот

Включите параметры PRESENCE INTENT и SERVER MEMBERS INTENT

Источник: husl.ru

Как получить дискорд КАТЕГОРИИ?

у меня create_text_channel категорию по какой то причине указывает none и мне нужно как то получить категорию, в документации я не нашел.

ticket_channel = await payload.member.guild.create_text_channel(‘cool-channel’)

  • Вопрос задан более двух лет назад
  • 421 просмотр

Решения вопроса 1

fixator10

Create a Music Discord bot using Python

Категория — всего лишь другой тип канала. Получить объект категории можно также как и любого другого канала:

await guild.create_text_channel(«channel_name», category=guild.get_channel(732068815788336617)) # или await guild.create_text_channel(«channel_name», category=discord.utils.get(guild.channels, name=»Category»)) # или await guild.get_channel(732068815788336617).create_text_channel(«channel_name») # или await discord.utils.get(guild.channels, name=»Category»).create_text_channel(«channel_name»)

Ответ написан более двух лет назад

Нравится Комментировать

Источник: qna.habr.com

Рейтинг
( Пока оценок нет )
Загрузка ...