2 Commits

3 changed files with 58 additions and 2 deletions
+54
View File
@@ -0,0 +1,54 @@
# Название проекта: db_timetable
## Описание
db_timetable - это удобное решение для студентов и преподавателей, позволяющее получать актуальное расписание занятий на сегодня, завтра и послезавтра. Проект предлагает функционал выбора группы, настройки уведомлений о предстоящих занятиях и автоматическое переключение на резервное расписание в случае недоступности основного источника данных.
## Функциональность
- Выбор группы: Пользователи могут выбрать свою учебную группу для получения персонализированного расписания.
- Уведомления: Возможность настройки времени получения уведомлений о предстоящих занятиях.
- Резервное расписание: В случае недоступности основного источника данных, система автоматически переключается на резервное расписание.
## Технологии и зависимости
Проект разработан с использованием следующих технологий:
- docker
- python
- aiogram
- BeautifulSoup
- requests
- pymongo
# Для запуска проекта необходимо выполнить следующие шаги:
Для продакшн версии:
```bash
docker-compose -f docker-compose-prod.yml up -d
```
Для разработки:
```bash
poetry install
docker-compose up -d
poetry run python main.py
```
###### Примечание: В режиме разработки поднимается только база данных.
## Использование
Для получения расписания выполните следующие команды:
- На сегодня: /today или просто "сегодня"
- На завтра: /tomorrow или просто "завтра"
- На послезавтра: /the_day_after_tomorrow или просто "послезавтра"
## Конфигурация уведомлений
Для настройки времени уведомлений используйте команду: /on_notification
## Резервное расписание
Резервное расписание активируется автоматически при недоступности основного источника. Обновление резервного расписания происходит автоматически.
## Вопросы и ответы (FAQ)
- Заглушка для часто задаваемых вопросов
## Контакты для связи и поддержки
Если у вас возникнут вопросы или предложения, пожалуйста, свяжитесь со мной:
- Telegram: https://t.me/Dmitrium12
+3 -2
View File
@@ -2,6 +2,7 @@ import asyncio
from datetime import datetime
from aiogram import Dispatcher, Bot, F
from aiogram.client.default import DefaultBotProperties
from aiogram.enums import ParseMode
from aiogram.filters import Command
from aiogram.types import Message
@@ -9,7 +10,7 @@ from aiogram.types import Message
from DB import UseDB
from additional_functions import on_notification, set_group, timetable_for_day, timetable_day
TOKEN = "6555348338:AAHhjvljGrW9wt1ZKjMEIiBEOyHDNCFznKU"
TOKEN = "7171391557:AAGickIyKK-kCAWUO4V_5X3m1_6F4Cmgmdw"
dp = Dispatcher()
@@ -81,7 +82,7 @@ async def send_notification(bot):
async def main() -> None:
bot = Bot(TOKEN, parse_mode=ParseMode.HTML)
bot = Bot(TOKEN, default=DefaultBotProperties(parse_mode=ParseMode.HTML))
_ = asyncio.create_task(send_notification(bot))
await dp.start_polling(bot)
+1
View File
@@ -4,6 +4,7 @@ version = "0.0.2"
description = ""
authors = ["Dmitrium12 <belicdima8@gmail.com>"]
readme = "README.md"
package-mode = false
[tool.poetry.dependencies]
python = "^3.11"