ododo-pizza - это телегамм_бот-магазин. В данной демке продаем пиццу.
Есть сеть пиццерий. Пользователь выбирает товар, делает заказ, присылает свою гео-позицию. Пользователю предлагается самовызов или доставка. При доставке чек и гео-позиция пользователя отправляется курьеру в телеграмм (по умолчанию вам в чат).
На гифке видно, что нажатии кнопки "Доставка" присылается геопозиция и счет клиента. А также Через 10 секунд (для теста) время присылается сообщение "Что делать, если пицца не была доставлена".
Для запуска скрипта требуется:
Python 3.6
- Установить Python3:
(Windows):python.org/downloads
(Debian):
sudo apt-get install python3
sudo apt-get install python3-pip
- Установить зависимости и скачать сам проект:
git clone https://github.com/Safintim/fish-shop.git
cd quiz-bot
pip3 install -r requirements.txt
-
Зарегистрироваться на Redislabs и получить адрес базы данных.
-
Персональные настройки:
Скрипт берет настройки из .env файла, где указаны токен телеграм-бота, токен чат-логгер-бота, хост, порт, пароль базы данных, а также токен, id и секретный ключ к moltin. Создайте файл .env вида:
ACCESS_TOKEN_MOLTIN=your_token
CLIENT_ID_MOLTIN=your_id
CLIENT_SECRET_MOLTIN=your_secret
TELEGRAM_BOT_TOKEN=your_token
LOGGER_BOT_TOKEN=your_token
LOGS_RECEIVER_ID=your_chat_id
REDIS_HOST=your_redis_host
REDIS_PASSWORD=your_redis_password
REDIS_PORT=your_redis_port
PROXY_IP=ip_proxy_server
PROXY_PROTOCOL=protocol_proxy_server
Демо-бот использует данные от додо-пиццы. В проекте должен быть файл c продуктами (menu.json по умолчанию) ввида:
[
{
"id": 20,
"name": "Чизбургер-пицца",
"description": "мясной соус болоньезе, моцарелла, лук, соленые огурчики, томаты, соус бургер", "food_value": {
"fats": "6,9",
"proteins": "7,5",
"carbohydrates": "23,72",
"kiloCalories": "188,6",
"weight": "470±50"
},
"culture_name": "ru-RU",
"product_image": {
"url": "https://dodopizza-a.akamaihd.net/static/Img/Products/Pizza/ru-RU/1626f452-b56a-46a7-ba6e-c2c2c9707466.jpg",
"height": 1875,
"width": 1875
},
"price": 395
},
...
{
...
},
]
А также файл с адресами пиццерий (address.json по умолчанию) ввида:
[
{
"id": "00000351-0000-0000-0000-000000000000",
"alias": "Афимолл",
"address": {
"full": "Москва, набережная Пресненская дом 2",
"city": "Москва",
"street": "Пресненская",
"street_type": "набережная",
"building": "2"
},
"coordinates": {
"lat": "55.749299",
"lon": "37.539644"
}
},
...
{
...
},
]
python3 load_products_to_moltin.py
python3 main.py
Данный бот готов к использованию. Пример работы указан на гифке выше.
- _@ododo_pizza_bot - телеграм-бот-магазин
- @devmanlogging_bot - телеграм-логгер-бот, данный бот выполняет мониторинг телеграмм бота. В случае ошибки придет уведомление о том, что "бот упал" и почему "бот упал", а также при запуске бот сообщит о запуске.