Как сделать что-бы определённая роль могла просматривать скрытые каналы, без категории (тикеты)?

Чтобы позволить определенной роли просматривать скрытые каналы без категории (тикетов) на сервере Discord с использованием библиотеки Discord.py в Python, вам понадобятся следующие шаги:

  1. Установите Discord.py, если еще не сделали этого:
pip install discord.py
  1. Импортируйте необходимые модули:
import discord
from discord.ext import commands
from discord.utils import get
  1. Создайте объект Intents, чтобы включить необходимые опции доступа:
intents = discord.Intents.default()
intents.members = True
  1. Создайте объект Bot с учетом ваших токена и предопределенного префикса команд:
bot = commands.Bot(command_prefix="!", intents=intents)
  1. Создайте команду, которая будет назначать определенную роль для просмотра скрытых каналов:
@bot.command()
@commands.has_permissions(administrator=True)
async def allow_view(ctx, role: discord.Role):
    # Находим категорию, к которой относятся скрытые каналы
    category_channel = discord.utils.get(ctx.guild.categories, name="Категория скрытых каналов")
    # Проверяем, существует ли указанная роль
    if role is None:
        await ctx.send("Указанная роль не найдена")
        return
    # Проверяем, существуют ли все необходимые каналы
    if category_channel is None:
        await ctx.send("Категория скрытых каналов не найдена")
        return
    # Ищем скрытые каналы и разрешаем просмотр указанной роли
    for channel in category_channel.channels:
        await channel.set_permissions(role, read_messages=True)
    await ctx.send(f"Роль {role.name} теперь может просматривать скрытые каналы")
  1. Запустите бота:
bot.run("ваш_токен")

Примечания:

  • Убедитесь, что у бота есть права администратора на сервере, чтобы он мог изменять разрешения каналов.
  • Замените "Категория скрытых каналов" на имя вашей категории скрытых каналов.
  • Команда @commands.has_permissions(administrator=True) проверяет, есть ли у пользователя права администратора перед тем, как разрешить выполнение команды. Это помогает предотвратить злоупотребление этой командой.

С помощью этого кода вы можете создать Discord-бота, который будет разрешать определенной роли просматривать скрытые каналы без категории (тикетов) на вашем сервере Discord.+