Бот, проверяющий доступность приложений.
- Python 3.12
- python-telegram-bot
- SQLAlchemy 2, Alembic
- aiohttp
- PostgreSQL
- Docker Compose
- Периодическая проверка доступности приложений (по URL).
- Автоматическое оповещение о сохраняющейся недоступности приложения.
Команды для всех пользователей:
/start [ключ доступа]
— открыть доступ к боту (админу — без ключа)./list
— получить список всех приложений.
Команды для администраторов:
/broadcast [сообщение]
— разослать сообщение всем пользователям./add [URL] [имя] [...]
— добавить приложение./remove
— удалить приложение из списка./interval
— задать интервал проверки приложений./genkey
— создать ключ доступа для отправки обычному пользователю.
- Асинхронный стек.
- Защищённые хэндлеры администраторов и авторизованных пользователей.
- Периодическая проверка — с использованием
JobQueue
из PTB (APScheduler). - Дублирование команд на кнопки меню для удобства.
- Запуск бота и базы данных в контейнерах.