Есть бот в котором есть функция удаления определенного сообщения с канала, но почему то при использовании bot.delete_message он удаляет текст и 1 картинку. А например если было их 5 штук то остальные 4 остаются и не удаляются. Подскажите пожалуйста как удалить все сообщение полностью со всеми картинками.
Вот часть кода которая отвечает за удаление:
@dp.callback_query_handler(lambda c: c.data.startswith('delete'))
async def process_callback_delete_ad(callback_query: types.CallbackQuery):
ad_id = callback_query.data.split("_")[1]
try:
async with aiomysql.create_pool(user=DB_USER, password=DB_PASSWORD, db=DB_NAME, host=DB_HOST) as pool:
async with pool.acquire() as conn:
async with conn.cursor() as cur:
# get message id of the ad
await cur.execute(f"SELECT message_id FROM ads WHERE id = {ad_id}")
message_id = await cur.fetchone()
if message_id is not None:
message_id = message_id[0]
await cur.execute(f"DELETE FROM photos WHERE ad_id = {ad_id}")
await conn.commit()
await cur.execute(f"DELETE FROM ads WHERE id = {ad_id}")
await conn.commit()
# delete message from the channel
if message_id is not None:
await bot.delete_message(CHANNEL_ID, message_id)
await bot.send_message(callback_query.from_user.id, "Ваше объявление успешно удалено!")
except exceptions.MessageCantBeDeleted:
await bot.send_message(callback_query.from_user.id, "Объявление не может быть удалено.")