im writing telegram bot on aiogram and have some function:
async def some_func():
err = InlineKeyboardMarkup(row_width=2)
btn_1 = InlineKeyboardButton(text='open_1', callback_data='number_1')
btn_2 = InlineKeyboardButton(text='open_2', callback_data='number_2')
err.add(btn_1, btn_2)
await bot.send_message(chat_id=CHAT_ID, text='choose:', reply_markup=err)
also i have callback_handler:
@dp.callback_query_handler(text_startswith=['number_'])
async def number(callback_query: types.CallbackQuery)
variant = callback_query.data.split("_")
if variant[1] == 1:
bot.send_message(chat_id=CHAT_ID, text='number_1'
else:
bot.send_message(chat_id=CHAT_ID, text='number_2'
also some_func() will be execute by scheduler:
async def scheduler():
aioschedule.every().day.at("20:39").do(some_func)
while True:
await aioschedule.run_pending()
await asyncio.sleep(1)
async def on_startup(_):
await asyncio.create_task(scheduler())
if __name__ == '__main__':
executor.start_polling(dp, skip_updates=True, on_startup=on_startup)
why inlinebuttons dont works? why callback_handler dont catch pressing button?