内联按钮不工作在Aiogram Telegram Bot



我试图得到一个随机数,而点击内联按钮。我得到一个消息与按钮,但当我点击他们什么都没有发生-我只是看到一个小时钟在按钮。下面是我的处理程序:

from loader import dp
from random import randint
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
from aiogram import types

button1 = InlineKeyboardButton(text="Random 1-10", callback_data="random1-10")
button2 = InlineKeyboardButton(text="Random 1-100", callback_data="random1-100")
keyboard_inline = InlineKeyboardMarkup().add(button1, button2)

@dp.message_handler(commands=["random"], state="*", content_types=types.ContentTypes.ANY)
async def cmd_random(message: types.Message):
await message.reply("Select a range", reply_markup=keyboard_inline)

@dp.callback_query_handler(text=["random1-10", "random1-100"])
async def random_value(call: types.CallbackQuery):
if call.data == "random1-10":
await call.message.answer(str(randint(1, 10)))
elif call.data == "random1-100":
await call.message.answer(str(randint(1, 100)))
await call.answer()
OR
@dp.callback_query_handler(lambda c: c.data == 'random1-10')
async def process_callback_button1(callback_query: types.CallbackQuery):
await dp.bot.answer_callback_query(callback_query.id)
await dp.bot.send_message(callback_query.from_user.id, 'First button clicked!')

我也试着发送一个没有任何函数的静态消息,但什么也没发生。也许我需要打开史密斯?

你需要添加

state="*"

@dp.callback_query_handler(text=["random1-10", "random1-100"])

最新更新