После опыта с телеграфом и ужасным опытом с телеботом решил попробовать aiogram.
Все очень удобно, разбираюсь с подпбием сце в телеграфе, state. Мне надо, чтобы стейт запускался и при нажатии на инлайн кнопку, и при вводе команды. Команда работает, но при нажатии на кнопекк вообще ничего не происходит.
Вот код регистрации хэндлеров:
def register_handlers_server(dp: Dispatcher):
dp.register_message_handler(add_server, commands='addServer')
dp.register_callback_query_handler(add_server, lambda call: call.data == 'add_server')
dp.register_message_handler(name_chosen, state=AddServer.waiting_for_server_name)
dp.register_message_handler(ip_chosen, state=AddServer.waiting_for_server_ip)
dp.register_message_handler(port_chosen, state=AddServer.waiting_for_server_port)
dp.register_message_handler(password_chosen, state=AddServer.waiting_for_server_password)
Вот кнопки, если понадобится:
async def get_main_menu_keyboard():
keyboard = types.InlineKeyboardMarkup()
keyboard.add(types.InlineKeyboardButton(text='Servers list', callback_data='add_server'))
keyboard.add(types.InlineKeyboardButton(text='Add server', callback_data='add_user'))
keyboard.add(types.InlineKeyboardButton(text='Seetings', callback_data='add_user'))
return keyboard
Твкое впечатление, что никому до меня такое не нужно было, ни на форумах нет ничего, ни примеров.