Ответы пользователя по тегу discord.py
  • Как исправить AttributeError: 'str' object has no attribute 'add_reaction'?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    AttributeError: 'str' object has no attribute 'add_reaction'

    Строковой тип данных не имеет метода `add_reaction`.

    Правильно было бы так:
    emoji = ""
    welcome_message = f'>>> Тикет успешно создан, {payload.member.mention}. Ожидайте ответа от <@&{1043276795023208470}>.'
    message = await ticket_channel.send(message)
    await message.add_reaction(emoji)
    Ответ написан
    Комментировать
  • Хочу сделать мьют на discord.py duration reason?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    Вы можете сделать выдачу мута, например, с помощью выдачи роли Mute (но необходимо отозвать права у пользователей, владеющих данной ролью, отправлять сообщения) и далее с помощью использования БД отслеживать (но можно, например, при помощи библиотеки asyncio, но это будет, мягко скажем, не совсем круто), когда необходимо снять мут (предположим, столбец в members mute, в который Вы можете записывать time.time()+tm*60, где tm - срок мута в минутах, и создать функцию чека мута, если time.time() >= user['mute'] - снять роль, то бишь размутить. Можете задать вопрос в комментариях, буду рад отетить.
    Ответ написан
    Комментировать
  • Бот на discord py не присылает embed.?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    Отсутствует обязательный параметр "title" в discord.Embed.
    Ответ написан
    Комментировать
  • Как упомянуть человека, который использовал команду в боте?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    ctx.author.mention
    Ответ написан
    Комментировать
  • Почему он не регистрирует новых пользователей?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    Скорее всего, данного пользователя не существует и в связи с этим выдаёт None, а из None вытащить ничего нельзя, поэтому, возникает данная ошибка.
    Ответ написан
    Комментировать
  • Когда я пишу команду в дискорде для получения данных с api, остаются скобочки; что делать?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    Эти скобочки - выражения последовательности кортежа (tuple), для того, чтобы вытащить их оттуда, возьмите и укажите индекс кортежа, из которого хотите вытащить данные. Пример:
    tuple = ('a', 'n', 'y', ' ', 'i')
    Нам нужно вытащить отсюда букву y, мы отсчитываем каждое выражение с 0, то есть: 0 - a, 1 - n, 2 - y, 3 - '', 4 - i.
    tuple[индекс буквы i] -> tuple[4] -> i.
    Ответ написан
    Комментировать
  • Почему выдает ошибку при вводе команды?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    Скорее всего, данного пользователя нет в Базе Данных. Поэтому, выводит данную ошибку, попробуйте сделать так:
    balance = cursor.execute("SELECT cash FROM users WHERE id={}".format(ctx.author.id)).fetchone()
    member = ctx.author.id if member==None else member.id
    if balance[0] is None:
      await ctx.send("Пользователя не существует в Базе данных.")
    else:
      # код, если пользователь существует


    Если ошибка не пропадет - отпишите в комментарии, попробуем разобраться.
    Ответ написан
    Комментировать
  • Как сделать создание канала с разрешением на просмотр определённому участнику?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    Готовый код для Вас никто не пишет. Вам могут только подсказать, каким образом это сделать.
    Могу Вам прислать подобную команду, попробуйте дальше под себя реорганизовать.
    @Bot.command()
    async def report(ctx):
        everyone = discord.utils.get(ctx.guild.roles,name="@everyone")
        support = discord.utils.get(ctx.guild.roles,name="Discord Support")
        support1 = discord.utils.get(ctx.guild.roles,name="Гл. Модератор")
        channel = await ctx.message.guild.create_text_channel('ticket')
        await channel.set_permissions( ctx.message.author, view_channel = True, send_messages = True)
        await channel.set_permissions( everyone, view_channel = False, send_messages = False)
        await channel.set_permissions( support, view_channel = True, send_messages = True)
        await channel.set_permissions( support1, view_channel = True, send_messages = True)
        await ctx.channel.send(f"```DSBot » Вы успешно создали тикет.```")
        await channel.send(f"Вопрос для <@&852590977381433397>.\nДля закрытия тикета, введите - /close_report")
    @Bot.command()
    async def close_report(ctx,member:discord.Member = None):
        channel = ctx.channel
        await ctx.channel.send(f"```DSBot » Данный тикет успешно закрыт.```")
        await asyncio.sleep(10)
        await ctx.channel.set_permissions( ctx.message.author, view_channel = False, send_messages = False)
        await ctx.channel.set_permissions( "@everyone", view_channel = False, send_messages = False)
        await ctx.channel.set_permissions( "Discord Support", view_channel = False, send_messages = False)
        await ctx.channel.set_permissions( member, view_channel = False, send_messages = False)
        await ctx.channel.set_permissions( "Гл. Модератор", view_channel = False, send_messages = False)

    Мой старенький код, надеюсь, Вам поможет чем-то.
    Ответ написан
    Комментировать
  • Почему пишет no such table users?

    @da_da_ya_neudachnik
    Просто muradixxx :3
    Таблицы "users" не существует.
    Ответ написан
    Комментировать