Твоих примеров кнопки не вижу, не понятно как они реализованы.
Вот мой рабочий пример, правда на aiogram:
@bp.message_handler(commands=['test'])
async def commandTest(message: Message):
await bot.send_video(message.chat.id, open('test.mp4', 'rb'), caption="Я отправил test.mp4")
await bot.send_animation(message.chat.id, open('test.gif', 'rb'), caption="Я отправил test.gif")
keyboard = InlineKeyboardMarkup()
keyboard.row(InlineKeyboardButton("Отправить MP4", callback_data="test_mp4"))
keyboard.row(InlineKeyboardButton("Отправить GIF", callback_data="test_gif"))
await bot.send_message(message.chat.id, "Отправить тестовые файлы", reply_markup=keyboard)
@bp.callback_query_handler(text="test_mp4")
async def callbackTestMp4(call: CallbackQuery):
await bot.answer_callback_query(call.id, show_alert=False, text="Начинаю отправку MP4")
await bot.send_video(call.message.chat.id, open('test.mp4', 'rb'), caption="Я отправил callback test.mp4")
@bp.callback_query_handler(text="test_gif")
async def callbackTestGif(call: CallbackQuery):
await bot.answer_callback_query(call.id, show_alert=False, text="Начинаю отправку GIF")
await bot.send_animation(call.message.chat.id, open('test.gif', 'rb'), caption="Я отправил callback test.gif")
То есть кнопки создаю с callback_data test_mp4 и test_gif, и callback_query_handler создаю с соответствующими фильтрамии.