Бот для нетворкинга. С помощью бота проходят живые и онлайн встречи 1-1 для студентов и IT-специалистов. Каждую неделю рандомно подбирается пара для общения. Встречи проходят за пределами бота - на онлайн звонках или лично.
Бот поддерживает функционал:
- со стороны юзера: регистрация, получение пары, информация о прошедших встречах и возможность оставить отзыв, возможность выставить "каникулы" на определенный срок и не участвовать в распределении без блокировки бота
- со стороны админа: отчётность об участниках и их статусах, ручной запуск алгоритма распределения, бан-лист юзеров (добавление/удаление), отправка сообщения всем активным пользователям через бота.
Бот реально работает по ссылке https://t.me/YP_random_coffee_bot
- Артём https://github.com/a-menshikov
- Александр https://github.com/Aleksandr140590
- Давид https://github.com/Xseron
- python==3.10
- aiogram==2.24
- SQLAlchemy==2.0.4
Проект предназначен для развертывания в ОС Linux
-
Клонировать репозиторий и перейти в него в командной строке:
git clone <ссылка с git-hub>
-
Cоздать виртуальное окружение:
python3 -m venv venv
-
Активируйте виртуальное окружение
source venv/bin/activate
-
Установите зависимости из файла requirements.txt
pip install -r requirements.txt
-
Поместите в папку data/ файл .env следующего формата
# токен телеграм бота, формат string TG_TOKEN = '' # телеграм_id админа бота, формат string # если админов несколько - указывать id последовательно в строке через пробел ADMIN_TG_ID = '' # телеграм_id пары, формат string # используется в случае, если в распределении участвует нечётное количество пользователей # данный юзер обязательно должен быть зарегистрирован в боте и проставить статус "Не участвую" DEFAULT_PARE_iD = ''
-
В корневой папке проекта создайте пустые директории db и logs
-
В корневой папке с файлом main.py выполните команду:
python3 main.py
-
В случае запуска бота на Windows, потребуется дополнительно скомпилировать файл .exe используя инструкцию и файлы из каталога
match_algoritm/lowlevel
Потребуется редактирование пути до файла в match_algoritm/MatchingHelper.py в функции start Организация виртуального окружения также потребует команд соответствующих ОС Windows.
-
Создать в директории data/match_algoritm_data/ пустые файлы input.txt output.txt temp.txt
-
сбилдить образ через Dockerfile
docker build
-
Заполнить tbf поля в docker-compose.yml
-
Поднять контейнер
docker compose up -d
Алгоритм компилируется при сборке.