- Notifications
You must be signed in to change notification settings - Fork1
Telegram бот интернет магазина с реферальной системой регистрации. Проект запускается в Docker-compose, подключены платежи Qiwi.
LoGoFiOS/Wizard_lavka_telegram_bot
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
@WizardLavka_bot – Telegram бот для продажи Чудесного и Невероятного.
Вход не для всех, вы же понимаете...
Стек технологий:Aiogram, PostgresSQL, Redis, Docker Compose, Qiwi Api, Requests.
- Использование БДPostgreSQL,Redis. Первая хранит таблицы с данными о пользователях и счетах системыQiwi, вторая нужна для хранения информации о "состоянии" пользователя –FSM.
- Проект запускается вDocker Compose.
- Работа сQiwi Api для выставления счетов и проверки их оплаты. Реализация черезRequests.
- Управление каталогом через чат. Добавить товар/add.
- Поиск товаров осуществляется в inline mode, т.е. через сообщение вида@WizardLavka_bot QUERY
- Реализована корзина, в которой можно изменять количество товаров.
- Реферальная система – каждый пользователь имеет уникальный реферальный код и ссылку. Чтобы стать покупателем необходимо либо пройти по реферальной ссылке, либо ввести код вручную. Владелец реферального кода получает монеты, которые списываются при оформлении заказа.
В корне скачанного репозитория создать файл.env и заполнить его согласно примеру –.env_example.
Обращу лишь внимание на переменнуюDB_DUMP=. В ней нужно указать абсолютный путь, где будут храниться данные БД Postgre, Redis. Например, если указать/home/logofios/projects/dump/wizard_lavka_bot, то в этом каталоге будут созданы:/wizard_lavka_telegram_bot_redis,/wizard_lavka_telegram_bot_pgdata
В файле /bot/config.py внестиid администраторов. Узнать id проще всего у@MyTidBot.
admins= [23466746,# Latand362089194]
После этого можно запускать проект:
sudo docker-compose buildsudo docker-compose up
В самый первый запуск, скорее всего, потребуется выполнитьdocker-compose up дважды, т.е.:
sudo docker-compose buildsudo docker-compose upctrl+csudo docker-compose up
Это связано с тем, что БД ещё не успеют проинициализироваться к тому моменту, когда к ним начнёт подключаться бот. ¯\(ツ)/¯
- Заменить requests на aiohttp.
- Добавить админам возможность удалять товары (кнопка предусмотрена, но нет обработки её нажатия).
- Ограничить количество приглашаемых покупателей для каждого пользователя. Сейчас – можно приглашать сколько угодно.
Изменить InlineQueryAnswer – убрать реферальную ссылку. Кнопка должна СРАЗУ выдавать товар. Если пользователь УЖЕ начал общение с ботом. Иначе – ничего не происходит.- Переработать момент с инициализацией переменной Telegraph(?).
- Инициализацию БД перенести из bot.py в repository.py.
Заменить polling на вебхуки.(Смысла нет, пока отмена)
About
Telegram бот интернет магазина с реферальной системой регистрации. Проект запускается в Docker-compose, подключены платежи Qiwi.
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.