Давайте разобьем вашу проблему на несколько частей, чтобы выяснить, почему бот не принимает и не передает фото администратору. Исходя из предоставленного кода, определено состояние `waiting_for_photo`, которое должно реагировать на получение фотографии. Если не происходит переход в соответствующий обработчик, вероятно, это связано с тем, что ваш код не обрабатывает фото в ожидаемом состоянии.
Вот шаги, которые стоит проверить и исправить в вашем коде:
1. **Обработчик для получения фото**: Убедитесь, что у вас есть обработчик сообщений, который сможет обрабатывать фотографии, когда бот находится в состоянии `waiting_for_photo`. Пример такого обработчика может выглядеть так:
```python
@dp.message_handler(content_types=['photo'], state=TaskStates.waiting_for_photo)
async def handle_photo(message: Message, state: FSMContext):
user_data = await state.get_data()
task_id = user_data.get("task_id")
# Сохранение фото или передача администратору
await bot.send_message(ADMIN_CHAT_ID, f"Пользователь {message.from_user.id} отправил фото для задачи {task_id}.")
await bot.send_photo(ADMIN_CHAT_ID, message.photo[-1].file_id) # Отправка самого фото
await message.answer("Спасибо! Фото отправлено администратору.")
# Переход к следующему состоянию, если необходимо
await state.finish() # Или установите другое состояние, если вам нужно
```
2. **Проверка последовательности контроля состояния**: Убедитесь, что ваш бот действительно переходит в состояние `waiting_for_photo`. Вы можете использовать вывод отладочной информации (`print`), как это было сделано в вашем коде, чтобы отследить текущее состояние.
3. **Завершение состояний**: После обработки фотографии вы можете захотеть завершить текущее состояние или перейти в следующее состояние. Также убедитесь, что не происходит конфликтов между разными состояниями, если у вас есть другие обработчики.
4. **Отладка и логирование**: Если вы все еще не получаете сообщения, добавьте дополнительные сообщения в `print` или используйте систему логирования, чтобы выяснить, когда ваш обработчик запускается и завершается.
5. **Проверка настройки бота**: Если бот на какой-то причине не получает сообщения, убедитесь, что он работает и все необходимые шаблоны сообщества (например, Webhook или Long Polling) настроены и работают правильно.
Обратите внимание на то, что `ADMIN_CHAT_ID` — это идентификатор администратора, куда будут отправляться фото. Убедитесь, что этот ID корректен и бот действительно имеет доступ к этому чату.