Эксплуатационная документация · ООО «Хайперпартнер»

HyperPlatform — Руководство пользователя

Версия 1.0.0
Аннотация. Настоящий документ является руководством пользователя по применению и эксплуатации программного обеспечения «HyperPlatform» (далее — ПО). Документ содержит описание интерфейса, инструкции по работе для всех ролей пользователей (администратор, оператор, конечный пользователь), а также описание процедур установки, запуска, завершения работы и удаления ПО.

1. Основные термины и сокращения

ТерминРасшифровка
ПОПрограммное обеспечение
ОСОперационная система
БДБаза данных
APIApplication Programming Interface — программный интерфейс
HTTPHyperText Transfer Protocol — протокол передачи данных
HTTPSHTTP Secure — защищённый протокол передачи данных
PINPersonal Identification Number — код подтверждения
JWTJSON Web Token — токен авторизации
WebSocketПротокол двусторонней связи в реальном времени
SSRServer-Side Rendering — рендеринг страницы на сервере
IPInternet Protocol — сетевой адрес
DockerПлатформа контейнеризации приложений
ЧатДиалог между пользователем и ботом
БотПрограмма, автоматически обрабатывающая сообщения
BotBrotherГлавный бот платформы для управления
CallbackДанные, отправляемые при нажатии на интерактивную кнопку
ФормаСтруктурированный набор полей для ввода данных пользователем

2. Назначение документа

Настоящий документ предназначен для пользователей, администраторов и операторов программного обеспечения «HyperPlatform». Документ содержит подробные инструкции по установке, настройке и использованию ПО, описание интерфейса, описание действий для каждой роли пользователя, а также способы решения типовых проблем.

Предполагается, что пользователи обладают базовыми навыками работы с персональным компьютером и веб-браузером.

3. Назначение ПО

3.1. Функциональное назначение ПО

Программное обеспечение «HyperPlatform» предназначено для:

  1. Обмена текстовыми сообщениями между пользователями и ботами в реальном времени;
  2. Отправки и получения файлов (изображения, видео, аудио, документы);
  3. Использования интерактивных форм для сбора структурированных данных;
  4. Использования кнопок быстрого действия (inline-клавиатура) для callback-взаимодействия;
  5. Управления пользователями, ботами и чатами через API;
  6. Автоматизации бизнес-процессов с помощью ботов.

3.2. Эксплуатационное назначение ПО

ПО может эксплуатироваться в организациях любого профиля для:

4. Условия функционирования ПО

4.1. Требования к аппаратному обеспечению (сервер)

КомпонентМинимальноеРекомендуемое
CPU2 ядра4 ядра
ОЗУ4 GB8 GB
Дисковое пространство20 GB50 GB (SSD)
Сетевой интерфейс100 Мбит/с1 Гбит/с

4.2. Требования к программному обеспечению (сервер)

КомпонентВерсия
Операционная системаLinux (Ubuntu 20.04+, Debian 11+, CentOS 8+)
Docker24.0+
Docker Compose2.0+

4.3. Требования к персоналу

К работе с ПО допускаются:

5. Установка ПО

Установка ПО осуществляется согласно отдельному документу «HyperPlatform — Инструкция по установке». Краткий порядок установки:

  1. Убедиться, что сервер соответствует требованиям (раздел 4);
  2. Проверить наличие Docker и Docker Compose;
  3. Скопировать архив с ПО на сервер;
  4. Распаковать архив командой: tar -xzf HyperPlatform-1.0.0.tar.gz;
  5. Перейти в папку: cd HyperPlatform-1.0.0;
  6. Отредактировать файл .env.example;
  7. Отредактировать файл .env.frontend.example — указать IP-адрес или домен сервера;
  8. Запустить скрипт установки: ./install.sh;
  9. При первом запуске ввести email администратора (первого пользователя платформы);
  10. Сохранить токены доступа, отображаемые в конце установки.

6. Запуск ПО

6.1. Запуск серверной части

Запуск производится автоматически скриптом install.sh. Проверка работоспособности:

docker ps

Должны отображаться 7 контейнеров:

КонтейнерНазначение
hyperplatform_postgresБаза данных
hyperplatform_redisКеш
hyperplatform_backendAPI сервер
hyperplatform_frontendВеб-интерфейс
hyperplatform_bot_brotherГлавный бот
hyperplatform_cleanerОчистка данных
hyperplatform_nginxВеб-сервер

6.2. Вход в систему

  1. Открыть браузер;
  2. В адресной строке ввести http://<IP-адрес-сервера>/bot/;
  3. Откроется экран входа в систему.

7. Интерфейс программы

7.1. Экран входа

Экран входа содержит следующие элементы:

7.2. Главный экран

После успешного входа пользователь попадает на главный экран, который состоит из трёх областей:

Левая панель (список чатов)

Центральная область (окно переписки)

7.3. Окно чата

В нижней части центральной области находится поле ввода сообщения и кнопки:

ЭлементНазначение
Поле ввода текстаВвод текста сообщения
Кнопка 📎Прикрепление файла
Кнопка отправкиОтправка сообщения
Кнопка «MENU»Быстрый ввод команд
Кнопка микрофонаОтправка голосовых сообщений

7.4. Типы сообщений

ТипОписание
ТекстОбычное текстовое сообщение
ИзображениеОтправленное изображение с превью
ВидеоВидеофайл с превью-кадром
АудиоАудиофайл
ДокументФайл любого другого формата
КнопкиСообщение с интерактивными кнопками
ФормаСообщение с полями для заполнения

8. Работа в ПО

8.1. Роль: Конечный пользователь

8.1.1. Авторизация

  1. Открыть браузер и перейти по адресу http://<IP-адрес-сервера>/bot/;
  2. На экране входа ввести адрес электронной почты;
  3. Нажать кнопку «Получить код»;
  4. Проверить почтовый ящик (включая папку «Спам»);
  5. Ввести полученный PIN-код в поле «Код подтверждения»;
  6. Нажать кнопку «Войти»;
  7. При успешном входе отобразится главный экран со списком чатов.

8.1.2. Работа с чатами

Выбор чата: щёлкнуть левой кнопкой мыши по названию чата в левой панели — в центральной области отобразится история сообщений.

Отправка текстового сообщения: выбрать чат → ввести текст в поле ввода → нажать Enter или кнопку отправки → сообщение отобразится в чате.

Отправка файла: выбрать чат → нажать кнопку 📎 → выбрать файл на компьютере → файл загрузится и отобразится с превью.

Просмотр истории: история загружается автоматически при выборе чата; при прокрутке вверх подгружаются более ранние сообщения.

Очистка чата: производится нажатием на кнопку в правом верхнем углу (история очищается, чат перезапускается).

8.1.3. Взаимодействие с кнопками

Если сообщение бота содержит кнопки: нажать на кнопку → данные кнопки (callback_data) отправляются боту → бот обрабатывает нажатие и может изменить сообщение или отправить новое.

8.1.4. Заполнение форм

Если сообщение бота содержит форму: заполнить поля (текстовые поля, выпадающие списки, радиокнопки, даты и т.д.) → нажать кнопку «Отправить» внизу формы → данные будут отправлены боту для обработки.

8.1.5. WebSocket-уведомления

При открытой странице чата устанавливается WebSocket-соединение, благодаря чему:

8.2. Роль: Администратор

Администратор взаимодействует с системой через REST API. Все запросы выполняются с использованием токена компании (COMPANY_TOKEN), который передаётся в заголовке Authorization: Bearer <token>. Для удобного взаимодействия со всеми элементами платформы создан главный бот BotBrother, через интерфейс которого можно управлять остальными ботами, чатами и пользователями.

8.2.1. Управление пользователями

ДействиеМетодПуть
Создать пользователяPOST/api/v1/admin/users/create
Список пользователейGET/api/v1/admin/users/list
Удалить пользователяDELETE/api/v1/admin/users/delete/{id}
ДеавторизоватьPOST/api/v1/admin/users/deauthorize/{id}

8.2.2. Управление ботами

ДействиеМетодПуть
Создать ботаPOST/api/v1/admin/bots/create
Список ботовGET/api/v1/admin/bots/list
Обновить ботаPATCH/api/v1/admin/bots/update/{id}
Пересоздать токенPOST/api/v1/admin/bots/token/{id}
Удалить ботаDELETE/api/v1/admin/bots/delete/{id}

8.2.3. Управление чатами

ДействиеМетодПуть
Создать чатPOST/api/v1/admin/chats/create
Список чатовGET/api/v1/admin/chats/list
Удалить чатDELETE/api/v1/admin/chats/delete/{id}

8.3. Роль: Оператор

Оператор взаимодействует с платформой через главного бота BotBrother, который предоставляет возможности по управлению пользователями и созданию ботов непосредственно из интерфейса чата. Возможности оператора: приглашение новых пользователей, создание новых ботов, создание чатов между пользователями и ботами.

8.3.1. Начало работы

ШагДействие
1Войти в систему как конечный пользователь
2В списке чатов выбрать чат с «BotBrother»
3Отправить команду /start
4Бот отобразит доступные команды

8.3.2. Приглашение пользователей

Отправить боту команду для приглашения нового пользователя. Пользователь получит уведомление и сможет войти в систему, используя свой email.

8.3.3. Создание нового бота

Отправить боту команду создания бота. Потребуется указать название бота, описание (опционально) и список команд (опционально). После создания бот получит уникальный токен доступа, который будет отображён в ответном сообщении.

8.3.4. Создание чатов

Оператор может создать чат между любым пользователем и любым ботом своей компании. Бот запросит необходимые данные и создаст чат.

9. Завершение работы ПО

9.1. Завершение сеанса пользователя

9.2. Остановка серверной части

cd <папка-установки>/HyperPlatform-1.0.0

# Полная остановка всех сервисов
docker compose down

# Временная остановка без удаления
docker compose stop

10. Удаление ПО

Для полного удаления ПО с сервера выполните следующие команды:

cd <папка-установки>/HyperPlatform-1.0.0

# Остановить и удалить все контейнеры, тома и сети
docker compose down --volumes

# Удалить все данные
rm -rf data/postgres data/redis Files Previews Static

# Удалить конфигурационные файлы
rm .env .env.frontend

# Перейти выше и удалить папку с ПО
cd ..
rm -rf HyperPlatform-1.0.0
rm HyperPlatform-1.0.0.tar.gz
⚠️ Внимание! Удаление папок data/postgres, data/redis, Files, Previews приведёт к безвозвратной потере всех данных: пользователей, сообщений, файлов, токенов.

11. Решение типовых проблем

ПроблемаВероятная причинаРешение
Письмо с PIN-кодом не приходитНеверный email; письмо в «Спам»; не настроен SMTP-серверПроверить email; проверить папку «Спам»; проверить SMTP-настройки в .env
Не открывается страница входаСервер недоступен; не запущен nginx; порт 80 занят; файрвол блокирует портping <IP>; systemctl status nginx; lsof -i :80; ufw allow 80
Не открывается фронтендНеправильный ORIGIN; фронтенд не запущенПроверить ORIGIN в .env.frontend; docker logs hyperplatform_frontend
Ошибка 502 Bad GatewayБекенд или фронтенд не запущенdocker logs hyperplatform_backend; docker logs hyperplatform_frontend
Контейнеры не запускаютсяНет места на диске; старые контейнеры; ошибка конфигурацииdf -h; docker system prune -a -f; docker compose logs
Ошибка подключения к БДНеверный пароль или схемаПроверить DB_PASS; схема должна быть "HyperPlatform"
Неверный PIN-кодИстёк срок действия; исчерпаны попыткиЗапросить новый PIN; дождаться истечения срока
Новые сообщения не отображаютсяПотеряно WebSocket-соединениеОбновить страницу в браузере
Бот не отвечаетБот не активен; неверный токенПроверить is_active через админ-API; проверить access_token в БД
Переменные не подхватываютсяЗапуск без source .envЗапускать с set -a; source .env; set +a