Задать вопрос
  • Как вывести имя пользователя после юза modal menu? pycord-discord.py?

    Lapita12
    @Lapita12
    Тесты, тесты?
    Чтобы получить имя пользователя, который использовал modal menu, вам нужно использовать атрибут user в объекте interaction. Вот так можно выводить имя пользователя:

    #Извлекаем имя пользователя
    username = interaction.user.name
    
    # Создаем embed и выводим данные пользователя
    embed = discord.Embed(title="Набор на эвентера")
    embed.add_field(name="Имя пользователя", value=username, inline=False)
    embed.add_field(name="Сколько вам лет", value=self.children[0].value, inline=False)
    embed.add_field(name="Почему мы должны взять именно вас?", value=self.children[1].value, inline=False)
    embed.add_field(name="Был ли у вас опыт в модерации?", value=self.children[2].value, inline=False)
    embed.add_field(name="Откуда вы?", value=self.children[3].value, inline=False)
    embed.add_field(name="Расскажите о себе", value=self.children[4].value, inline=False)
    embed.set_footer(text=f"Заявку оставил: {username}")


    Здесь мы используем метод name, чтобы получить имя пользователя из объекта user, и затем добавляем его в footer нашего Embed.
    Ответ написан
    Комментировать
  • Как сделать бан на создание веб хука?

    TemaSM
    @TemaSM
    Fullstack, DevOps, InfSec
    Да, в Discord.py можно настроить бота таким образом, чтобы он банил пользователей, создающих веб-хуки в вашем сервере. Для этого нужно использовать событие on_webhooks_update и метод Guild.ban().

    Вот пример кода:
    import discord
    
    client = discord.Client()
    
    @client.event
    async def on_webhooks_update(channel):
        for webhook in await channel.webhooks():
            await channel.guild.ban(webhook.user, reason="Создание веб-хука запрещено")
    
    client.run("Ваш токен от Discord бота")

    Этот код будет запускаться каждый раз, когда пользователь создает веб-хук в канале на сервере, к которому подключен ваш бот. Если пользователь создаст веб-хук, бот получит список всех веб-хуков в этом канале, затем забанит пользователя, создавшего этот веб-хук, с помощью метода Guild.ban(). В параметре reason можно указать причину бана.

    Обратите внимание, что для этого ваш бот должен иметь права на бан пользователей в сервере. Более того, создание веб-хуков может быть полезным для некоторых пользователей, поэтому прежде чем запрещать создание веб-хуков, убедитесь, что это необходимо для вашего сервера.
    Ответ написан
    Комментировать
  • Undefined ^ SyntaxError: Unexpected token u in JSON at position 0 ошибка?

    TemaSM
    @TemaSM
    Fullstack, DevOps, InfSec
    Ошибка Unexpected token u in JSON at position 0 возникает, когда вы пытаетесь разобрать не правильно сформатированный JSON объект. В большинстве случаев это может быть вызвано неправильным синтаксисом при парсинге JSON-строки или пустым ответом (пустой строкой) в ответе от сервера на http запрос.

    Чтобы исправить эту ошибку, вам нужно убедиться, что вы правильно формируете JSON объект перед его парсингом. Возможно, вы пытаетесь разобрать объект, который не является JSON-строкой.

    Если вы используете метод JSON.parse() для разбора JSON-строки, убедитесь, что входная строка содержит правильный синтаксис JSON. Проверьте, чтобы строка начиналась с открывающейся фигурной скобки { и заканчивалась закрывающейся фигурной скобкой }.

    Вот пример правильно сформированного JSON объекта:
    {
      "name": "Иван Иванов",
      "age": 30,
      "city": "Москва"
    }

    Если вы получаете ошибку при попытке отправить сообщение через Discord API, убедитесь, что вы правильно форматируете объект сообщения и передаете его в правильном формате.

    Если проблема не устраняется, пожалуйста, предоставьте более подробную информацию о том, как вы используете Discord.js, какой код вызывает ошибку и какую именно операцию вы пытаетесь выполнить, чтобы можно было предоставить более точный ответ.
    Ответ написан
    Комментировать