Основной функционал бота уже написан. Нужна оболочка для пользователей и админка для настройки и управления.
Когда человек запускает бота впервые, то его бот должен поприветствовать и показать кнопки стартового меню.
Кнопки стартового меню:
1. Регистрация
2. Расценки
3. Описание
При нажатии на кнопки расценки и описание должен отправляться текстовый ответ и кнопка возврата в предыдущее меню. Текстовый ответ я впишу самостоятельно после.
При нажатии на кнопку регистрация пользователю нужно задать последовательно несколько вопросов:
1. Напишите свое ФИО нужна валидация (должно быть 3 слова через пробел)
2. Напишите свой номер телефона нужна валидация (должны быть числа)
3. Напишите свою почту нужна валидация(должен быть формат почты)
4. Напишите название своей компании
5. Напишите месячную выручку компании нужна валидация (должно быть число)
При регистрация у пользователя нужно узнать данные:
1. ФИО
2. Номер телефона
3. Почту
4. Название компании
5. Выручка компании
После корректных ответов на вопросы данные заносятся в БД
Данные, которые заносятся в БД после регистрации пользователя
1. User id (из API)
2. Дата регистрации
3. Дата последней оплаты (изначально None)
4. First name (из API)
5. Nickname (из API)
6. ФИО
7. Название компании
8. Выручка компании
Если человек уже зарегистрирован (сверка по user id), то при запуске бота ему сразу должно показываться меню для зарегистрированных пользователей.
Кнопки для зарегистрированного пользователя:
1. Оплата
2. Инструкция по настройке
3. Загрузить cookies файл json
4. Загрузить id company текст
5. Загрузить рекомендации к товарам
6. Загрузить список товаров
7. Вопросы и пожелания
После регистрации пользователь попадает в меню для зарегистрированных пользователей.
При нажатии на кнопку оплата будет происходить процесс оплаты, нужно будет настроить шлюз для Сбербанка.
Когда человек произведет оплату, то нужно будет внести дату оплаты в БД к этому пользователю.
При нажатии на кнопку инструкция должно отправляться сообщение пользователю, содержимое этого сообщения я самостоятельно впишу позже.
При нажатии на кнопку Загрузить cookies должно присылаться сообщение «Вам необходимо загрузить документ формата .json, как его получить можете посмотреть в предыдущем меню, нажав на кнопку инструкция ”
Когда пользователь ответит, то нужно проверит, что он прислал документ в верном формате и после этого загрузить его в БД к этому пользователю.
При нажатии на кнопку Загрузить id company должно присылаться сообщение «Вам необходимо прислать company id, как его получить можете посмотреть в предыдущем меню, нажав на кнопку инструкция”
Когда пользователь ответит, то нужно проверит, что он прислал ответ в верном формате (цифры без текста) и после этого загрузить его в БД к этому пользователю.
При нажатии на кнопку Вопросы и пожелания должно присылаться сообщение пользователю «Вы можете написать свой вопрос или пожелание по работе бота, мы постараемся ответит Вам в ближайшее время»
После того, как пользователь ответит, нужно отправить его ответ администратору бота, список администраторов должен будет редактироваться в админке бота.
При нажатии кнопки Загрузить рекомендации к товарам должно присылаться сообщение пользователю «Вам необходимо прислать файл «рекомендации к товарам» в формате .xlsx, как сформировать такой файл можете посмотреть в предыдущем меню, нажав на кнопку инструкция»
Когда пользователь ответит, то нужно проверит, что он прислал файл с правильным расширением (.xlsx) и после этого загрузить его в БД к этому пользователю.
При нажатии кнопки Загрузить список товаров должно присылаться сообщение пользователю «Вам необходимо прислать файл «список товаров» в формате .xlsx, как сформировать такой файл можете посмотреть в предыдущем меню, нажав на кнопку инструкция»
Когда пользователь ответит, то нужно проверит, что он прислал файл с правильным расширением (.xlsx) и после этого загрузить его в БД к этому пользователю.
!Во всех меню нужна кнопка для возврата в предыдущее меню!
=================================
Админка бота
После старта бота, если пользователь есть в списке администратора бота, то ему должно отображаться меню для администратора.
Меню администратора:
1. Настройка цикла запуска (задается промежуток, между запусками основной логики бота) задается в минутах
2. Настройка списка администраторов
3. Настройка цикла подписки (задается промежуток, сколько действует разовая оплата подписки) задается в днях
4. Запуск бота
5. Остановка бота
=================================
Использовать aiogram
Продолжение описания в файле, так как сюда текстом не влезло.
Разделы:
Прочее
Заказ
Опубликован:
18.11.2022 | 12:25 [последние изменения: 21.11.2022 | 10:19]