Как сделать так, чтобы при нажатии на инлайн кнопку в боте, выводился текст в новом сообщении?
Создал две кнопки и привязал их к сообщению, но всё никак не пойму, как сделать так, чтобы к примеру при нажатии кнопки "Профиль", бот отправлял новое сообщение с текстом.
Вот код существующих кнопок:
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
startk = InlineKeyboardMarkup(row_width=1)
profil = InlineKeyboardButton(text='Профиль', callback_data='Привет')
contacs = InlineKeyboardButton(text='Контакты', callback_data='Привет')
startk.add(profil, contacs)
Ответы (1 шт):
Автор решения: CausonQ
→ Ссылка
Можно примерно так сделать:
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton, CallbackQuery
startk = InlineKeyboardMarkup(row_width=1)
profil = InlineKeyboardButton(text='Профиль', callback_data='profile')
contacs = InlineKeyboardButton(text='Контакты', callback_data='contacts')
startk.add(profil, contacs)
@dp.callback_query(F.data == "profile")
async def send_profile(callback: types.CallbackQuery):
await callback.message.answer("Тут некий текст")
В callback_data
пишем то, что будем отлавливать хендлером. Это может быть просто слово, как в пример. А можем передавать и несколько значений, необходимых для обработки запроса