# monitoring-pf Сервис мониторинга объявлений PropertyFinder по DLD Permit Number для портала. Он хранит проекты, конкурирующие объявления и историю цен. Пользовательский UI живёт в Portal: `portal/frontend/src/app/features/monitoring-pf`; этот сервис отдаёт только JSON API, Telegram bot и scheduler. ## Назначение - отслеживать изменение цены конкурента; - фиксировать удаление/withdrawn объявлений; - находить новые объявления с тем же DLD Permit Number; - уведомлять ответственных сотрудников через Telegram. ## Развёртывание Сервис рассчитан на запуск только внутри k8s. Настройки лежат в `k8s/configmap.yaml`, секреты — в `k8s/secrets.yaml`. Локальный `.env` не используется. ```bash kubectl apply -k k8s ``` API доступен через portal proxy `/api/monitoring-pf/api/v1`. Админские действия определяются ролью `admin` в Portal через `X-User-Is-Admin=1`; локального PIN-login больше нет. ## Структура ```text app/ ├── config.py настройки окружения ├── db.py SQLAlchemy engine/session ├── models.py Employee, Project, CompetitorListing, PriceHistory ├── web.py FastAPI JSON API для Portal ├── bot.py Telegram-бот ├── scheduler.py фоновый сканер ├── scrapers/ PropertyFinder/Bayut парсеры ├── services/ бизнес-логика и уведомления k8s/ манифесты для портала ```