1. Введение Цель данного проекта — разработать Telegram-бота, который будет автоматически находить и создавать поставки для отгрузки товара на маркетплейс Wildberries, а также уведомлять пользователей о доступных слотах для поставок. Бот должен обеспечить удобный интерфейс для настройки фильтров поиска, подключения к API Wildberries, а также возможности автоматического создания поставок.
2. Основные функции бота
1. Подключение к API Wildberries: – Настроить подключение к API личного кабинета продавца для автоматического создания поставок. – Требуется реализовать интерфейс для ввода API-ключа пользователя и необходимых параметров.
2. Рассылка сообщений о свободных датах: – Настроить функционал для рассылки сообщений о доступных слотах для поставок. – Если автоматическое создание поставок отключено, бот уведомляет пользователя о свободных датах и времени.
3. Пошаговая настройка фильтров для поиска слотов: – Реализовать интерфейс для пошаговой настройки фильтров поиска поставок: – Выбор склада. – Тип поставки. – Коэффициент (если требуется). – Дата или диапазон дат для поиска. – Пример интерфейса: как в боте @POSTAVLENOru_BOT для поиска лимитов.
4. Автоматическое создание поставок: – После настройки фильтров и создания заявки на отслеживание слотов предложить пользователю выбрать: – Автоматическое создание поставки. – Уведомление о свободной дате. – Предусмотреть возможность подключения API с настройками ключа для автоматического создания поставок. – Внедрить систему оплаты для активации функции автоматического создания поставок с разными способами оплаты (карта, электронные деньги и т.д.).
5. Дополнительный функционал: – Информация о влиянии складов на ранжирование в регионе: – Создать интерфейс для получения информации о "топ складах по округам". – Реализовать текстовые ответы с рекомендациями, как в боте @POSTAVLENOru_BOT. – Услуги фулфилмента: – При нажатии на соответствующую команду бот ведет пользователя на страницу менеджера или автоматически присылает сообщение с предложением рассчитать стоимость услуг фулфилмента.
3. Требования к разработке
- Платформа: Telegram Bot API. - Язык разработки: Python (рекомендуется использовать библиотеку aiogram или pyTelegramBotAPI). - База данных: PostgreSQL/MySQL для хранения пользовательских данных, настроек, истории запросов. - Интеграции: API Wildberries для автоматического создания поставок, платежные системы (например, Stripe или ЮKassa) для осуществления платежей.
4. Пользовательский интерфейс
- Бот должен поддерживать следующие команды: – `/start` — приветствие и начало работы. – `/set_api` — установка API-ключа. – `/create_supply` — настройка фильтров и создание поставки. – `/track_slots` — отслеживание доступных слотов. – `/get_top_warehouses` — информация о топ складах. – `/fulfillment` — услуги фулфилмента. – `/help` — справочная информация по работе с ботом.
- Удобные шаги настройки и взаимодействия с пользователем через кнопки и интерактивные меню.
5. Архитектура и технические требования
- Использовать асинхронное программирование для поддержки одновременной работы множества пользователей. - Обеспечить устойчивость и надежность системы, обработку ошибок (например, невалидный API-ключ, ошибки подключения и т.д.). - Разработать систему логирования и мониторинга работы бота.
6. План разработки и сроки
1. Проектирование и настройка окружения – Проектирование архитектуры бота и базы данных. – Настройка окружения разработки (сервер, репозиторий, необходимые библиотеки).
2. Реализация базового функционала – Подключение к API Wildberries. – Разработка основных команд и интерфейсов. – Реализация функционала для установки API-ключа.
3. Реализация автоматического создания поставок и уведомлений – Настройка системы автоматического создания поставок. – Реализация уведомлений о доступных слотах и платежной системы.
4. Реализация дополнительного функционала – Внедрение функций по получению информации о складах и услугах фулфилмента.
Тестирование и отладка – Проведение тестирования всех функций бота. – Отладка и исправление ошибок.
Деплой и запуск – Подготовка к запуску, деплой бота на сервер. – Мониторинг и поддержка.
7. Тестирование
- Провести тестирование всех основных сценариев использования: – Установка и проверка API-ключа. – Настройка фильтров и создание поставок. – Отправка уведомлений и создание поставок через API. – Работоспособность системы оплаты. – Корректность работы всех дополнительных функций.
8. Документация
- Написать документацию по установке и настройке бота. - Подготовить руководство пользователя для конечных клиентов.
Требования к квалификации
- Опыт разработки на Python и работы с Telegram Bot API. - Знание принципов асинхронного программирования. - Опыт работы с API сторонних сервисов. - Опыт интеграции платежных систем.