Несколько обработчиков событий в одном сотоянии aiogram

Как можно реагировать на несколько типов собитий в одном соотянии. В данный момент, у меня проблема состоит в том, чтобы обработать два события. А именно: отправка обычного сообщения, и нажатия на кнопку. Я не могу понять как сделать это в одном сотоянии?


Ответы (1 шт):

Автор решения: ProgerOffline

В общем решил свою проблему. Если нам нужно сделать несколько типов обработчиков в одном состоянии, что нам мешает сделать нужное кол-во обработчиков, но с одинакомыми состояниями? Правильно - ничего. Ниже приложу свой код.

class DialogMachine(StatesGroup):
    one_state = State()

@dp.message_handler(state=DialogMachine.one_state)
    async def one_state_msg(message: types.Message, state: FSMContext):
    await message.answer("Я обработчик сообщения")

@dp.callback_query_handler(state=DialogMashine.one_state)
async def one_state_callback(call, state: FSMContext):
    await bot.answer_callback_query(call.id)
    await call.message.answer("Я обработчик кнопки")
→ Ссылка