mirror of
https://github.com/Ti-webdev/0-hereconnect-obsidian.git
synced 2026-07-30 20:30:47 +00:00
vault backup: 2025-05-14 11:30:12
This commit is contained in:
@@ -0,0 +1,133 @@
|
||||
## 1. **Основной функционал**
|
||||
1. **Запуск бота**
|
||||
- Реализовать команду `/start` с приветственным сообщением:
|
||||
```
|
||||
Привет! Я бот сервиса "НаСвязи". Помогу вам создать QR-код (для автомобиля, питомца, входной двери и т.д.).
|
||||
```
|
||||
|
||||
2. **Выбор объекта**
|
||||
- Использовать **replyKeyboardMarkup** для отображения кнопок:
|
||||
- Автомобиль
|
||||
- Питомец
|
||||
- Дверь квартиры
|
||||
- Стол в ресторане
|
||||
- Другое
|
||||
- Обработать выбор пользователя и переход к следующему шагу.
|
||||
|
||||
3. **Ввод названия QR-кода**
|
||||
- Запросить название QR-кода с валидацией (минимум 2 символа).
|
||||
- Реализовать повторный запрос при неверном вводе.
|
||||
|
||||
4. **Настройка действий**
|
||||
- Использовать **replyKeyboardMarkup** для выбора действий:
|
||||
- Отправить сообщение
|
||||
- Показать номер телефона
|
||||
- Прикрепить геопозицию
|
||||
- Обработать выбор пользователя и сохранить выбранные действия.
|
||||
|
||||
5. **Генерация QR-кода**
|
||||
- Создать функционал генерации QR-кода с указанным названием и действиями.
|
||||
- Отправить изображение QR-кода пользователю.
|
||||
|
||||
6. **Инструкции по размещению**
|
||||
- Отправить рекомендации по размещению в зависимости от выбранного объекта.
|
||||
- Добавить кнопку с **keyboardButtonUrl** для перехода на страницу доната:
|
||||
```
|
||||
Сделайте НаСвязи удобнее. Будем рады вашей поддержке: [https://hereconnect.condev.ru/donate](https://hereconnect.condev.ru/donate)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2. **Уведомления**
|
||||
1. **Обработка сообщений через QR-код**
|
||||
- Получать данные о сообщении, отправленном через QR-код.
|
||||
- Отправлять уведомление пользователю:
|
||||
```
|
||||
Новое сообщение для QR-кода "Моя машина": "Ваш автомобиль мешает проезду."
|
||||
```
|
||||
|
||||
2. **Отображение действий через QR-код**
|
||||
- Обрабатывать действие "Показать номер телефона" и фиксировать запрос:
|
||||
```
|
||||
QR-код "Моя машина": номер телефона владельца показан.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. **Управление QR-кодами**
|
||||
1. **Просмотр списка QR-кодов**
|
||||
- Отправить список QR-кодов пользователя в виде кнопок:
|
||||
```
|
||||
Вот ваши QR-коды:
|
||||
[Моя машина] [Ошейник собаки]
|
||||
```
|
||||
- Реализовать выбор QR-кода для управления.
|
||||
|
||||
2. **Редактирование QR-кода**
|
||||
- Добавить возможность изменить название QR-кода.
|
||||
- Реализовать выбор доступных действий для редактирования.
|
||||
|
||||
3. **Удаление QR-кода**
|
||||
- Подтвердить удаление перед выполнением.
|
||||
- Удалить QR-код и уведомить пользователя:
|
||||
```
|
||||
QR-код "Моя машина" успешно удалён.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4. **Получение статистики**
|
||||
1. **Просмотр статистики**
|
||||
- Реализовать команду `/stats` для получения статистики:
|
||||
```
|
||||
Статистика для "Моя машина":
|
||||
- Сканирований: 12
|
||||
- Сообщений: 5
|
||||
```
|
||||
- Отправить данные в текстовом формате.
|
||||
|
||||
---
|
||||
|
||||
## 5. **Дополнительные возможности**
|
||||
1. **Запрос номера телефона**
|
||||
- Использовать **keyboardButtonRequestPhone** для запроса номера телефона владельца.
|
||||
|
||||
2. **Запрос геопозиции**
|
||||
- Использовать **keyboardButtonRequestGeoLocation** для получения геопозиции.
|
||||
|
||||
3. **Поддержка инлайн-кнопок**
|
||||
- Добавить инлайн-кнопки к уведомлениям:
|
||||
- Ответить на сообщение.
|
||||
- Удалить сообщение.
|
||||
|
||||
---
|
||||
|
||||
## 6. **Обработка ошибок**
|
||||
1. **Неверный ввод на каждом этапе**
|
||||
- Реализовать обработку ошибок:
|
||||
- Некорректный выбор объекта.
|
||||
- Неверное название QR-кода.
|
||||
- Неправильный выбор действий.
|
||||
- Отправлять соответствующие сообщения и запрашивать повторный ввод.
|
||||
|
||||
---
|
||||
|
||||
## 7. **Административный функционал**
|
||||
1. **Управление пользователями**
|
||||
- Добавить функционал для администратора:
|
||||
- Просмотр статистики всех пользователей.
|
||||
- Удаление неактивных QR-кодов.
|
||||
|
||||
2. **Журнал ошибок**
|
||||
- Логировать ошибки пользователей для анализа и улучшения UX.
|
||||
|
||||
---
|
||||
|
||||
# Приоритеты
|
||||
1. Основной функционал.
|
||||
2. Уведомления.
|
||||
3. Управление QR-кодами.
|
||||
4. Получение статистики.
|
||||
5. Дополнительные возможности.
|
||||
6. Обработка ошибок.
|
||||
7. Административный функционал.
|
||||
Reference in New Issue
Block a user