Разработка чат-бота ВК, выводящего пользователю всех доступных потенциальных партнеров.
- Казаков Борис (
GitHub
: WhiteErMagic,VK
: id24661232) - Терлецкий Максим (
GitHub
: maxter9595,VK
: id218879134) - Алексеева Мария (
GitHub
: 1FiCuS1,VK
: pelmenpersik)
Все параметры вводятся пользователем внутри самого приложения в формате анкеты.
Список параметров для заполнения анкеты:
- имя пользователя
- фамилия пользователя
- возраст
- пол
- город
Далее после ввода всех необходимых параметров будет проведен автоматический поиск партнера.
Запуск чат-бота ВК, в процессе работы с которым пользователь может:
- пролистывать всех своих партнеров нажатием на кнопку "Далее"/"Назад"
- добавлять своих любимых партнеров в раздел "Избранное"
- убирать ненужных партнеров в "Черный список".
Все изменения фиксируются в базе данных PostgreSQL.
Перед запуском кода следует удостовериться, что:
- заведен проект в IDE
- размещены все файлы в папке с проектом
- установлены все библиотеки, указанные в
requirements.txt
CheckBD/
├─ ABCCheckDb.py
├─ CheckDBORM.py
├─ CheckDBSQL.py
├─ StructureDBORM.py
Materials/
├─ Registration/
├── photo.png
├─ Schema/
├── schema.png
Repository/
├─ ABCRepository.py
├─ CardExceptions.py
├─ CardFavorites.py
├─ CardFind.py
├─ ORMRepository.py
├─ SQLRepository.py
VK/
├─ vk_messages.py
├─ VKService.py
.env
.gitignore
README.md
requirements.txt
Criteria.py
Result.py
User.py
main.py
-
criteria
: таблица с критериями поиска относительно пользователяid
: ID критерия поискаuser_id
: VK ID пользователяgender_id
: ID пола, относительно которого ищем партнераstatus
: ID статуса (женат, холост и т.д.)age_from
: начальный возраст партнера, которого мы ищемage_to
: конечный возраст партнера, которого мы ищемcity_id
: ID города партнера, которого мы ищемhas_photo
: наличие фото у партнера (1 - есть фото, 0 - фото отсутствует)
-
users
: таблица с пользователями приложенияid
: VK ID пользователя приложенияfirst_name
: имя пользователяlast_name
: фамилия пользователяage
: возраст пользователяgender_id
: ID пола пользователяcity_id
: ID города пользователяabout_me
: информация о пользователе
-
genders
: таблица с поламиid
: ID полаgender
: наименование пола
-
cities
: таблица с городамиid
: ID городаgender
: наименование города
-
favorites
: таблица с избранными партнерамиid
: id пары "партнер-пользователь"user_id
: VK ID пользователяfirst_name
: имя партнераlast_name
: фамилия партнераage
: возраст партнераgender_id
: ID пола партнераprofile
: профиль партнера в ВКphoto1
: ссылка на фото партнера №1photo2
: ссылка на фото партнера №2photo3
: ссылка на фото партнера №3city_id
: ID города партнера
-
exceptions
: таблица с пользователями, добавленными в "Черный список"id
: id пары "партнер-пользователь"user_id
: VK ID пользователяfirst_name
: имя партнераlast_name
: фамилия партнераage
: возраст партнераgender_id
: ID пола партнераprofile
: профиль партнера в ВКphoto1
: ссылка на фото партнера №1photo2
: ссылка на фото партнера №2photo3
: ссылка на фото партнера №3city_id
: ID города партнера
Для включения программы необходимо:
-
заполнить все сведения в файле
.env
ACCESS_TOKEN
: токен сообщества ВКACCESS_TOKEN_API
: токен пользователя ВКUSER_NAME_DB
: логин пользователя PostgresUSER_PASSWORD_DB
: пароль пользователя Postgres
-
запустить модуль
main.py
ACCESS_TOKEN='vk1...'
ACCESS_TOKEN_API='vk1....'
USER_NAME_DB='postgres'
USER_PASSWORD_DB='postgres'
- После входа на страницу приложения:
- вводим "start":
- нажимаем на кнопку "хочу зарегистрироваться"
- Далее вводим пользовательские данные и нажимаем на кнопку "Сохранить анкету"
- На следующем шаге вводим параметры нашего партнера и нажимаем на кнопку "Сохранить критерии"
- После этого мы окажемся в главном меню
-
Нажимаем кнопку "Поиск"
-
После нажатия кнопки появится первая кандидатура, котрую мы можем пропустить, добавить в избранное или занести в черный список
- Перейти к следующей кандидатуре можно нажатием на кнопку "Вперед". Для возрата к предыдущей кандидатуре следует нажать кнопку "Назад"
- Добавить кандидата в избранное можно нажатием кнопки "Добавить в избранное"
- Добавление кандидата в черный список осуществляется нажатием кнопки "Добавить в черный список"
- Возврат в главное меню осуществляется нажатием кнопки "Главное меню"
- Изменение критериев поиска можно осуществить после нажатия кнопки "Критерии поиска" в главном меню
- Просмотр всех избранных партнеров возможен после нажатия кнопки "Избранные"
- Просмотр всех партнеров из черноего списка возможен после нажатия кнопки "В черный список"