У меня есть Хэндлер на команду старт, я хочу чтобы он редактировался на другое сообщение после нажатия кнопки, и чтобы появлялась другая клавиатура с другими кнопками. В целом хочу чтобы почти весь функционал бота был в одном сообщении.
Вот собственно сам код. Здесь есть хэндлер на /start, и здесь же я хочу чтобы после того как человек нажимал на кнопку типа inline, например ( купить ), сообщение редактировалось а не присылалось новое, соответсвенно появлялась новая клавиатура и текст. Как можно это устроить с помощью метода bot.edit_message_caption() ?
@router.message(F.text == '/start')
async def cmd_start(message: Message):
await message.answer('Привет это крипто обменник.', reply_markup=get_inline_keyboard())
await message.answer_sticker('CAACAgQAAxkBAAEKkU1lM5RYih9nIAgK5r6GaNw3zkpA0gACdw0AAvEUWFOUVhzRUGKbKTAE')
await bot.edit_message_caption() # сам метод
@router.callback_query(F.data == 'cmd_buy')
async def send_buy(callback: types.CallbackQuery):
await cmd_buy(callback.message)
@router.message(F.text == '/Buy')
async def cmd_buy(message: Message):
await message.answer('Выберите валюту', reply_markup=cmd_buy_kb())