ShoppingBot - телеграмм-бот, который помогает рассчитать долг для каждого участника вечеринки.
- Клонируйте репозиторий с github (
git clone
) - Создайте виртуальное окружение (
python -m venv env
) - Установите зависимости
pip install -r requirements.txt
- Создайте файл
settings.py
в папкеsetting_box
- Впишите в
settings.py
следующее:
CLIENT_SECRET = 'IyvrAbKt9h/8p6a7QPh8gpkXYQ4=' - единый ключ доступа к модулю для работы с ФНС
API_KEY = `ключ от телеграмм-бота`
URL = `ссылка на базу данных`
NALOG_URL = 'irkkt-mobile.nalog.ru:8888/v2'
SECRET_KEY = 'переменная конфигурации Flask'
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_DATABASE_URI = `ссылка на базу данных`
- В первой командной строке запустите main_server.py (
python main_server.py
) - Во второй командной строке запустите main_tg_bot.py (
python main_tg_bot.py
)
- Пользователь должен отправить команду
/start
для начала общения с ботом. - Сразу после этого бот попросит поприветствовать его путем нажатия на кнопку
Привет!
- Далее бот показывает главное меню:
- Пользователь может перейти в меню работы с чеками и добавить чек, следуя инструкциям от бота. Внимание - загружать фотографию чека в чат надо со сжатием.
- Если пользователю ранее сообщили код авторизации, то он может нажать в главном меню кнопку "У меня есть код авторизации". В таком случае ему будет предложено перейти по ссылке и авторизоваться на сайте для дальнейшего указания категорий товаров, которыми он пользовался на мероприятии.
5.1. В случае успешной авторизации пользователю будет предложено выбрать категории товаров, которыми он пользовался. Обратите внимание - на сайте выводятся только те категории, которые есть в чеке.
- Если пользователь желает узнать долги по чеку, то он должен нажать в главном меню кнопку "Хочу узнать кто сколько должен" и ввести после соответствующего запроса от бота id чека = код авторизации. На что он увидит ответное сообщение от бота в виде списка участников вечеринки и их долга. Обратите внимание - бот сообщает долги, рассчитывая их по количеству проголосовавших пользователей на сайте.