Машина состояний aiogram не воспринимает хендлеры. Как это решить?

class admin(StatesGroup):
start = State()
name_task = State()
task = State()

@dp.message_handler(commands=["start"], state=None)
async def commands_start(message: types.Message):
    if message.from_user.id == ID:
        await admin.start.set()
        await message.answer("Выберите действие", reply_markup=admin_kb.kb_admin)

@dp.message_handler(commands=["Добавить задачу"], state=admin.start)
async def add_task(message: types.Message):
    await admin.next()
    await message.answer("Введите задачу")

@dp.message_handler(state=admin.name_task)
async def task(message: types.Message):
    await admin.next()
    await message.answer("Когда задача должна быть выполнена?")

def register_handlers_admin(dp: Dispatcher):
    dp.register_message_handler(commands_start, commands="start", state=None)
    dp.register_message_handler(add_task, commands=["Добавить задачу"], state=admin.start)
    dp.register_message_handler(task, state=admin.name_task)

Вот код клавиатуры:

from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

b1 = KeyboardButton("Добавить задачу")

kb_admin = ReplyKeyboardMarkup(resize_keyboard=True).add(b1)

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

Автор решения: kumchick2055
class admin(StatesGroup):
    start = State()
    name_task = State()
    task = State()

@dp.message_handler(commands=["start"])
async def commands_start(message: types.Message):
    if message.from_user.id == ID:
        await admin.start.set()
        await message.answer("Выберите действие", reply_markup=admin_kb.kb_admin)

@dp.message_handler(commands=["Добавить задачу"], state=admin.start)
async def add_task(message: types.Message):
    await admin.next()
    await message.answer("Введите задачу")

@dp.message_handler(state=admin.name_task)
async def task(message: types.Message):
    await admin.next()
    await message.answer("Когда задача должна быть выполнена?")
→ Ссылка
Автор решения: oleksandrigo

Замените

@dp.message_handler(commands=["Добавить задачу"], state=admin.start)

На

@dp.message_handler(text=["Добавить задачу"], state=admin.start)
→ Ссылка