mirror of
https://github.com/EDeev/dorm_alarm.git
synced 2026-06-15 19:11:08 +03:00
README
This commit is contained in:
parent
b7403299d2
commit
ede9548514
1 changed files with 104 additions and 1 deletions
105
README.md
105
README.md
|
|
@ -1 +1,104 @@
|
|||
# dorm_alarm
|
||||
# 🔔 Dorm Alarm Bot
|
||||
|
||||
Telegram-бот для мониторинга работоспособности систем с настраиваемыми интервалами уведомлений и персонализированным управлением.
|
||||
|
||||
## 📋 Описание
|
||||
|
||||
Асинхронный Telegram-бот, реализующий систему периодических уведомлений с гибкой настройкой интервалов. Предназначен для мониторинга доступности сервисов и отправки регулярных статусных сообщений пользователям.
|
||||
|
||||
## 🛠 Технологический стек
|
||||
|
||||
- **Python 3.8+**
|
||||
- **aiogram 3.x** - асинхронный фреймворк для Telegram Bot API
|
||||
- **SQLite3** - встроенная реляционная база данных
|
||||
- **asyncio** - асинхронное программирование
|
||||
|
||||
## ⚙️ Функциональные возможности
|
||||
|
||||
- ✅ Регистрация пользователей с автоматической инициализацией
|
||||
- ⏰ Настройка интервалов уведомлений (5 минут - 24 часа)
|
||||
- 🔄 Динамическое управление статусом уведомлений
|
||||
- 📊 Мониторинг активных пользователей и логирование
|
||||
- 🔐 Graceful shutdown с корректным завершением задач
|
||||
- 💾 Персистентное хранение настроек в SQLite
|
||||
|
||||
## 📦 Установка
|
||||
|
||||
```bash
|
||||
# Клонирование репозитория
|
||||
git clone https://github.com/EDeev/dorm_alarm.git
|
||||
cd dorm_alarm
|
||||
|
||||
# Установка зависимостей
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
## 🔧 Конфигурация
|
||||
|
||||
Создайте файл `init.py` и укажите токен бота:
|
||||
|
||||
```python
|
||||
BOT_TOKEN = "your_bot_token_here"
|
||||
```
|
||||
|
||||
## 🚀 Запуск
|
||||
|
||||
```bash
|
||||
python bot.py
|
||||
```
|
||||
|
||||
## 📝 Команды бота
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `/start` | Регистрация и активация уведомлений |
|
||||
| `/status` | Отображение текущих настроек пользователя |
|
||||
| `/help` | Справочная информация |
|
||||
|
||||
## 🏗 Архитектура
|
||||
|
||||
```
|
||||
dorm_alarm/
|
||||
├── bot.py # Точка входа, инициализация и lifecycle management
|
||||
├── handlers.py # Обработчики команд и callback-запросов
|
||||
├── init.py # Конфигурация Bot и Dispatcher
|
||||
├── sql.py # Database manager и ORM-слой
|
||||
└── requirements.txt
|
||||
```
|
||||
|
||||
## 🗄 Структура базы данных
|
||||
|
||||
**Таблица `users`:**
|
||||
- `user_id` - уникальный идентификатор пользователя
|
||||
- `username` - имя пользователя
|
||||
- `interval_minutes` - интервал уведомлений (по умолчанию 60 мин)
|
||||
- `is_active` - статус активности уведомлений
|
||||
- `created_at` - timestamp регистрации
|
||||
|
||||
**Таблица `notifications_log`:**
|
||||
- `id` - автоинкрементный идентификатор
|
||||
- `user_id` - ссылка на пользователя
|
||||
- `sent_at` - timestamp отправки
|
||||
- `status` - статус доставки (sent/failed)
|
||||
|
||||
## 📄 Лицензия
|
||||
|
||||
Этот проект является некоммерческим и распространяется под лицензией MIT.
|
||||
|
||||
## 👨💻 Автор
|
||||
|
||||
**Деев Егор Викторович** - Backend Developer
|
||||
- GitHub: [@EDeev](https://github.com/EDeev)
|
||||
- Email: egor@deev.space
|
||||
- Telegram: [@Egor_Deev](https://t.me/Egor_Deev)
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
<sub>⭐ Если проект оказался полезным, поставьте звездочку на GitHub!</sub>
|
||||
<p><sub>Создано с ❤️ от вашего дорогого - deev.space ©</sub></p>
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
⭐ Если проект оказался полезным, поставьте звезду!
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue