В Aiogram 3 был изменен способ работы с состояниями пользователей. До версии 3 использовался класс `aiogram.dispatcher.Dispatcher`, однако с версии 3 он был заменен на класс `aiogram.dispatcher.dispatcher.Dispatcher`.
Для установки состояния для конкретного пользователя в Aiogram 3 необходимо использовать метод `set_state()` объекта класса `aiogram.dispatcher.dispatcher.Chat`.
Пример использования:
```python
from aiogram import Bot, Dispatcher, types
from aiogram.dispatcher import FSMContext
# Создаем экземпляры классов Bot и Dispatcher
bot = Bot(token='TOKEN')
dp = Dispatcher(bot)
# Определяем состояние (state) и хранение состояния
class MyState(types.State):
some_data: str
# Определяем хэндлер для команды /start, который устанавливает состояние для пользователя
@dp.message_handler(commands=['start'])
async def start_handler(message: types.Message, state: FSMContext):
# Создаем состояние для пользователя
user_state = MyState(some_data='some_value')
# Устанавливаем состояние для пользователя
await state.update_data(user_state)
await message.answer('Состояние установлено')
# Запускаем бота
dp.run_polling()
```
В данном примере, по команде `/start` устанавливается состояние `MyState` для пользователя, а затем отправляется сообщение "Состояние установлено".