Как удалить предыдущее сообщение в aiogram 3

В функции send_GetAccounts пользователь отправляет сообщение боту и дальше в зависимости от условия бот отвечает на сообщение пользователя. Как сделать так что бы после того как бот ответит на сообщение пользователя, все предыдущие сообщение удалились ?

ПРИМЕР:

БОТ: Введите ссылку с токеном, полученный ЗДЕСЬ

ЮЗЕР: (ОТПРАВЛЯЕТ ССЫЛКУ)

БОТ: ССЫЛКА УСПЕШНО ПОЛУЧЕНА

И дальше после последнего сообщения бота все предыдущие сообщения должны быть удалены.

@router.callback_query(StateFilter(None), F.data == 'addAcc')
async def send_GetAccounts(callback: CallbackQuery, state: FSMContext):
    await state.set_state(Auth.token)
    await callback.message.edit_text('Введите ссылку с токеном, полученный <a href=vkhost.github.io>ЗДЕСЬ</a>:',
                                     reply_markup=kb.AddingAccount, parse_mode='html', disable_web_page_preview=True)

@router.message(Auth.token)
async def get_token_and_auth(message: Message, state: FSMContext):
    token_text = message.text
    #получение токена из ссылки пользователя
    token_match = re.search(r'token=(.*?)&expires_in', token_text)
    if token_match:
        token = token_match.group(1)
        await state.update_data(token=token)
        user_id = message.from_user.id
        insert_into_db = await insert_token_into_database(user_id, token)
        if insert_into_db:
            try:
                vk_auth = vk_api.VkApi(token=token)
                vk = vk_auth.get_api()
                user_info = vk.users.get()
                first_name = user_info[0]['first_name']
                last_name = user_info[0]['last_name']
                await message.answer(f'Аккаунт <b>{first_name}</b> <b>{last_name}</b> успшено добавлен!', reply_markup=kb.Countinue, parse_mode='html')
                await state.clear()
                await message.delete()
            except vk_api.AuthError as e:
                await message.answer(f'Произошла ошибка при авторизации под данному токену!')
        else:
            await message.answer('Произошла ошибка при добавление данных в базу данных!')
    else:
        await message.answer("Не правильный формат ссылки!\nПопробуйте еще раз")```

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

Автор решения: Сергей Иванов

Предварительно сохраняя chat_id и message_id:

from aiogram.types import Message
from aiogram.methods.delete_message import DeleteMessage
from config import Token
import asyncio
from aiogram import Bot, Dispatcher

dp = Dispatcher()

@dp.message(Command("start"))
async def start(message: Message):
await message.answer(f'{message.chat.id}\n{message.message_id}')

@dp.message(Command("delete"))
async def delete_msg(message:Message):
    text = message.text.split()
    chat_id, message_id = text[1], text[2]
    global bot
    await bot(DeleteMessage(chat_id=chat_id, message_id=str(message_id)))


async def main() -> None:
    global bot
    bot = Bot(token=Token)
    await dp.start_polling(bot)

if __name__ == "__main__":
    logging.basicConfig(level=logging.INFO)
    asyncio.run(main())

/start присылает мне chat_id и message_id:

/start присылает мне чат ид и мес ид

/delete я удаляю сообщение бота:

/delete я удаляю сообщение бота

Вот одна из реализаций. Еще ты можешь сделать через:

await bot.delete_message(...)

ИЛИ:

msg = await message.answer("Синхронизация с сайтом")

#Между ними нужная логика

await msg.delete()
→ Ссылка