No description
|
|
||
|---|---|---|
| data | ||
| database | ||
| handlers | ||
| keyboards | ||
| services | ||
| utils | ||
| web | ||
| .env.example | ||
| .gitignore | ||
| backup_version.sh | ||
| config.py | ||
| DEVELOPMENT_PLAN.md | ||
| main.py | ||
| PROCESS.md | ||
| PROJECT_STRUCTURE.md | ||
| PROXY_SETUP.md | ||
| QUICKSTART.md | ||
| README.md | ||
| requirements.txt | ||
| run.sh | ||
| SESSION_CONTEXT.md | ||
| SETUP_GUIDE.md | ||
| start.sh | ||
| STATUS.md | ||
| stop.sh | ||
| TECHNICAL_SPECIFICATION.md | ||
| VERSIONS.md | ||
| АДМИН_МЕНЮ.md | ||
| АНТИ-МАТ.md | ||
| АНТИ-СПАМ_ЛИМИТЫ.md | ||
| БЕЗОПАСНОСТЬ.md | ||
| БЛАГОДАРНОСТИ.md | ||
| ВЕБ_ИНТЕРФЕЙС.md | ||
| ВЕРИФИКАЦИЯ.md | ||
| ВЕРИФИКАЦИЯ_ИСПРАВЛЕНО.md | ||
| ГОТОВО.md | ||
| ДЕТЕКТ_МУЛЬТИАККАУНТОВ.md | ||
| ДОСКА_ОБЪЯВЛЕНИЙ.md | ||
| ДОСТИЖЕНИЯ.md | ||
| ДОСТУПЫ.md | ||
| ИСПРАВЛЕНИЯ_2.md | ||
| ИСПРАВЛЕНИЯ_АДМИНКА.md | ||
| ИСПРАВЛЕНО.md | ||
| ИСТОРИЯ_ПРОФИЛЯ.md | ||
| КАЛЕНДАРЬ_СОБЫТИЙ.md | ||
| КВАРТИРЫ.md | ||
| НАПОМИНАНИЯ_О_ПЛАТЕЖАХ.md | ||
| ОБЛАКО_ТЕГОВ.md | ||
| ОПРОСЫ.md | ||
| РАСПИСАНИЕ_ОТКЛЮЧЕНИЙ.md | ||
| РАССЫЛКА_ИСПРАВЛЕНА.md | ||
| РЕЙТИНГ.md | ||
| РЕЙТИНГ_ТОКСИЧНОСТИ.md | ||
| ТЕЛЕФОНЫ.md | ||
| УПРАВЛЕНИЕ.md | ||
| ЧЁРНЫЙ_СПИСОК_ССЫЛОК.md | ||
🏠 Домовой Бот
Бот для чата жильцов многоквартирного дома.
🚀 Быстрый старт
1. Установка зависимостей
cd /home/matrixhasyou/domovoy_bot
python3 -m venv venv
source venv/bin/activate # Linux
pip install -r requirements.txt
2. Настройка
- Получите токен бота у @BotFather
- Узнайте свой Telegram ID через @userinfobot
- Узнайте ID чата дома (перешлите сообщение из чата боту @GetMyChatIdBot)
- Отредактируйте
.env:
BOT_TOKEN=ваш_токен_от_BotFather
ADMIN_CHAT_ID=-1001234567890 # ID чата дома
ADMIN_USER_ID=123456789 # Ваш ID
3. Инициализация БД
python database/init_db.py
4. Запуск
python main.py
📱 Команды
Для жильцов:
| Команда | Описание |
|---|---|
/start |
Регистрация и главное меню |
/помощь |
Справка по командам |
/телефон |
Экстренные службы |
/мастера |
Сантехники, электрики |
/моя_квартира |
Проверка привязки |
Для админа:
| Команда | Описание |
|---|---|
/admin |
Панель администратора |
/stats |
Статистика чата |
/spies |
Подозрительные пользователи |
/export |
Экспорт JSON |
/users |
Список жильцов |
/verify |
Заявки на верификацию |
🕵️ Детект шпионов
Бот автоматически анализирует пользователей по факторам:
| Фактор | Баллы |
|---|---|
| Нет аватарки | +10 |
| Стандартный ник (user12345) | +15 |
| Не прошёл верификацию >24ч | +25 |
| Активность только 9-18 пн-пт | +15 |
| Провокационные сообщения в пользу УК | +30 |
Пороги:
- 0-30: 🟢 Норма
- 31-60: 🟡 Подозрительно
- 61+: 🔴 Шпион! (уведомление админу)
📊 Экспорт данных
Еженедельно (воскресенье 03:00) бот создаёт JSON-файл в папке exports/:
{
"export_date": "2026-02-23T03:00:00",
"users": [...],
"messages": [...]
}
📁 Структура проекта
domovoy_bot/
├── config.py # Конфигурация
├── main.py # Точка входа
├── requirements.txt # Зависимости
├── .env # Переменные окружения
│
├── database/
│ ├── models.py # SQLAlchemy модели
│ ├── db.py # Подключение к БД
│ └── init_db.py # Инициализация
│
├── handlers/
│ ├── admin.py # Админские команды
│ ├── users.py # Пользовательские команды
│ ├── verification.py # Верификация жильцов
│ └── chat_monitor.py # Мониторинг чата
│
├── services/
│ ├── spy_detector.py # Детект шпионов
│ ├── analytics.py # Аналитика и экспорт
│ └── scheduler.py # Планировщик задач
│
├── keyboards/
│ ├── inline.py # Inline-кнопки
│ └── reply.py # Reply-кнопки
│
├── utils/
│ ├── decorators.py # Декораторы
│ ├── formatters.py # Форматирование
│ └── validators.py # Валидация
│
├── data/
│ ├── phones.json # Телефоны служб
│ └── spies_patterns.json # Паттерны шпионов
│
├── logs/ # Логи
├── exports/ # JSON экспорты
└── backups/ # Бэкапы БД
🔧 Настройка телефонов
Отредактируйте data/phones.json или добавьте через БД:
{
"emergency": [
{"name": "Диспетчер УК", "phone": "+7 (XXX) XXX-XX-XX"}
]
}
🛡 Безопасность
- Персональные данные хранятся только локально
- Доступ к админ-функциям только по
ADMIN_USER_ID - Экспорты JSON в защищённой папке
📝 Логи
Логи сохраняются в logs/bot.log
🔄 Автозапуск (systemd)
Создайте /etc/systemd/system/domovoy-bot.service:
[Unit]
Description=Domovoy Bot
After=network.target
[Service]
Type=simple
User=matrixhasyou
WorkingDirectory=/home/matrixhasyou/domovoy_bot
ExecStart=/home/matrixhasyou/domovoy_bot/venv/bin/python main.py
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl enable domovoy-bot
sudo systemctl start domovoy-bot
sudo systemctl status domovoy-bot
📞 Поддержка
Вопросы и предложения: @your_contact
Версия: 1.0
Лицензия: MIT