Задать вопрос
  • Как удалить КОНКРЕТНОЕ сообщение в дискорде?

    @firexrwt Автор вопроса
    В любом случае огромное спасибо за помощь!)
  • Как удалить КОНКРЕТНОЕ сообщение в дискорде?

    @firexrwt Автор вопроса
    Тогда думаю лучше по id удалять, но думаю тут переписать легко будет
  • Как удалить КОНКРЕТНОЕ сообщение в дискорде?

    @firexrwt Автор вопроса
    Так, теперь другая проблема: команда идет тупо в обход реплая. Из-за чего она не работает. Кажись это уже сама проблема дискорда
  • Как удалить КОНКРЕТНОЕ сообщение в дискорде?

    @firexrwt Автор вопроса
    Проглядел точку в написанном вами сообщении, исправил, но положение лучше от этого не стало.
    @bot.slash_command(description="Удаляет сообщение, на которое вы отвечаете.")
    async def msg_delete(interaction: nextcord.Interaction, message: nextcord.Message.reference, reason: str):
        if not interaction.user.guild_permissions.administrator:
            await interaction.response.send_message("Вы не являетесь администратором, "
                                                    "потому вы не можете использовать эту команду!", ephemeral=True)
        else:
            await interaction.response.send_message("Сообщение было удалено!")
            if logging is True:
                log_channel = bot.get_channel(logsChannel)
                await log_channel.send(f"{message.author.mention} отправил очень плохое сообщение! Но админ"
                                       f" {interaction.user.mention} успешно его удалил! Причина: {reason}")
                await message.delete()

    А показывает следующую ошибку:
    652f64f757864667904056.png
  • Как удалить КОНКРЕТНОЕ сообщение в дискорде?

    @firexrwt Автор вопроса
    Проблема в том, что мне пишет, что данный атрибут не поддерживается в Application Commands. Уже какие только я атрибуты не перепробовал, но все мимо.
    Я хотел это добавить как слеш команду, но видать вообще не вариант. Написал следующее:
    @bot.slash_command(description="Удаляет сообщение, на которое вы отвечаете.")
    async def msg_delete(interaction: nextcord.Interaction, message: nextcord.MessageReference, reason: str):
        if not interaction.user.guild_permissions.administrator:
            await interaction.response.send_message("Вы не являетесь администратором, "
                                                    "потому вы не можете использовать эту команду!", ephemeral=True)
        else:
            await interaction.response.send_message("Сообщение было удалено!")
            if logging is True:
                log_channel = bot.get_channel(logsChannel)
                msg = nextcord.Message(message)
                await log_channel.send(f"{msg.author.mention} отправил очень плохое сообщение! Но админ"
                                       f" {interaction.user.mention} успешно его удалил! Причина: {reason}")
                await msg.delete()