В данном проекте представлен Telegram-бот для платформы DonorSearch. В функционал данного бота входит
- Регистрация и авторизация на платформе
- Изменение регистрационных данных
- Смена пароля
- Функционал донаций
- Добавление донации
- Планирование донации
- Запрос конкретной донации
- Запрос информации о центрах крови
- Запросить потребности в крови по адресам
- Запросить информацию по центрам
- Получение данных о геймификации
- Узнать статус геймификации
- Получить последнюю информацию о различных играх и спецпроектах
Также вы сможете поддержать проект и запросить статус почётного донора!
.
└── SelectelHack/
├── auth_register/
│ ├── change_creds/
│ │ └── change_creds.py
│ ├── auth.py
│ ├── register.py
│ ├── users.py
│ └── validators.py
├── blood_station/
│ └── blood_station.py
├── sities/
│ └── cities.py
├── donation/
│ ├── donation.py
│ ├── donation_planning.py
│ └── guide.py
├── img/
│ └── logo.jpg
├── menu/
│ ├── menu.py
│ └── menu_handlers.py
├── start/
│ └── start.py
├── api.py
├── bot.py
└── handlers.py
Сам бот создается в файле bot.py:
bot = telebot.TeleBot(os.getenv('BOT_TOKEN'))
BOT_TOKEN это специальный токен, получаемый от бота @BotFather в Telegram. Он передается в переменных окружения
Файл handlers.py содержит информацию о глобальых хэндлерах бота: главное и стартовое
В папке auth_register сождержатся файлы для регистрации и авторизации.
auth.pyописывает авторизацию зарегистрированных пользователейregister.pyописывает регистрацию пользователей; поддерживается регистрация по Email и телефонusers.pyсодержит тестовое поле для хранения аутентификационных данных о пользователе, вместо использования БД для временного храненияvalidators.pyсодержит различные валидаторы телефона, Email и пароля пользователя
В blood_station находится информация о центрах крови:
blood_station.pyописывает выбор Центров сбора крови для просмотра тех, которым нужны определённые группы крови, а также тех, где можно сдать кровь группы пользователя
В donation описан функционал планирования донации и:
donation.pyпозволяет добавить/запланировать/удалить/просмотреть донации
Папка menu содержит файлы основного меню приложения:
menu.pyописывает главное меню, получаемое при успешной авторизацииmenu_handlers.pyвыписаны хэндлеры для кнопок из главного меню
Ссылка на презентацию по проекту, где также можно ознакомиться с тем, как польователю взаимодействовать с ботом! А вот и ссылочка!