Не могу разобраться в работе машины состояний aiogram python
Что именно я не так сделал в этой части кода? Бот работает до выбора населённого пункта, при выборе он просто ничего не отвечает.
class weather(StatesGroup):
main = State()
tomorrow = State()
today = State()
city = State()
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
await message.reply('Привет!\nЧтобы узнать погоду на сегодняшний или завтрашний день,\nвыберите подходящую опцию.', reply_markup=btn.mainKeyboard)
await weather.main.set()
@dp.message_handler(Text(equals='Погода на этот день'))
async def weather_bot_today_Sr(message: types.Message, state: FSMContext):
await message.reply('Выберите населённый пункт:', reply_markup= btn.todayKeyboard)
await state.update_data(chosen_day = message.text.lower())
await weather.today.set()
@dp.message_handler(Text(equals='Саратов'), state = weather.today)
async def weather_bot_today_Sr(message: types.Message, state: FSMContext):
await message.answer('Пожалуйста подождите..')
weather_today_Sr()
with open('weather_today.json', encoding='utf-8') as file:
data_weather = json.load(file)
for k, v in data_weather.items():
weather_data = f"{k}: {v}"
await message.answer(weather_data)
await state.finish()