Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Инлайн-кнопки в aiogram

Макар Поторочин Ученик (133), открыт 2 недели назад
Почему вместо текста мне выдает строчку вверху чата с ботом?Вот код:

@dp.message_handler(content_types=['text'])
async def handle_text(message: types.Message):
if message.text.strip() == 'Каталог':
await bot.send_message(message.chat.id, 'Отряд Фортнайт', reply_markup=keyboard)
async def button_callback(callback_query: types.CallbackQuery):
if callback_query.data == "button1":
await bot.send_message(message.chat.id, '11')
1 ответ
Артём Аристов Ученик (197) 2 недели назад
Функция внутри функции получилась у тебя.
Отображает локально, попробуй поменять:


 from aiogram import types 
from aiogram.types import ReplyKeyboardMarkup

@dp.message_handler(content_types=['text'])
async def handle_text(message: types.Message):
if message.text.strip() == 'Каталог':
await bot.send_message(message.chat.id, 'Отряд Фортнайт', reply_markup=keyboard)

@dp.callback_query_handler(lambda callback_query: callback_query.data == "button1")
async def button_callback(callback_query: types.CallbackQuery):
await bot.send_message(callback_query.message.chat.id, '11')


keyboard = ReplyKeyboardMarkup(resize_keyboard=True)
button1 = types.KeyboardButton("button1")
keyboard.add(button1)
Макар ПоторочинУченик (133) 2 недели назад
Спасибо, текст получилось вывести, а как насчёт экрана покупки?
Макар Поторочин Ученик (133) Макар Поторочин, @dp.callback_query_handler(lambda callback_query: callback_query.data == "button1") async def button_callback(callback_query: types.CallbackQuery): if config.PAYMENTS_TOKEN.split(':')[1] == 'TEST': await bot.send_message(message.chat.id, "Тестовый платеж!!!") await bot.send_invoice(message.chat.id, title="aaaaa", description="aa", provider_token=config.PAYMENTS_TOKEN, currency="rub", photo_url=" https://www.aroged.com/wp-content/uploads/2022/06/Telegram-has-a-premium-subscription.jpg ", photo_width=416, photo_height=234, photo_size=416, is_flexible=False, prices=[PRICE], start_parameter="one-month-subscription", payload="test-invoice-payload")
Макар ПоторочинУченик (133) 2 недели назад
А, спасибо, сам допёр, нужно было добавить callback_query к message.chat.id
Похожие вопросы