8bdac8b15b5aa6fc0603e47759facd3c1699d705
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 не
используется.
kubectl apply -k k8s
API доступен через portal proxy /api/monitoring-pf/api/v1. Админские действия
определяются ролью admin в Portal через X-User-Is-Admin=1; локального
PIN-login больше нет.
Структура
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/ манифесты для портала
Description
Languages
Go
51.5%
Python
47.2%
Dockerfile
0.7%
Shell
0.6%