Описание функциональных характеристик

1. Общее описание:

Boto Education – технологический стартап, разрабатывающий образовательные и HRTech-проекты на базе собственной платформы Boto Engine. Платформа позволяет создавать чат-ботов, запускать их в различных мессенджерах и осуществлять взаимодействие с пользователями, включая микро-обучение.


2. Ключевые функции платформы Boto Engine:

  • Конструктор сценариев: Визуальный интерфейс для создания логики работы бота, включая ветвление сценария в зависимости от выбора пользователя или других факторов, на основе предоставленного сценария клиентом.
  • Интеграция с мессенджерами: Подключение к Telegram, eXpress и другим платформам.
  • Управление контентом: Загрузка и управление различными типами контента: видео, аудио, изображения, PDF, GIF, стикеры и т.д.
  • Интерактивные задания: Создание и проведение тестов, опросов, заданий с выбором ответа, открытых вопросов и вопросов с проверкой на ключевые слова.
  • Персонализация: Возможность обращения к пользователю по имени, учет часового пояса и других индивидуальных характеристик.
  • Автоматические уведомления: Напоминания о ключевых датах, событиях и необходимости продвижения по сценарию.
  • Коммуникация: Обеспечение взаимодействия между пользователями, HR, руководителями и коллегами.
  • Оценка и аналитика: Оценка результатов, проведение опросов, предоставление аналитики по пользователям в режиме онлайн.
  • Автоматизация HR-процессов: Онбординг, адаптация, оценка персонала, развитие команды и другие HR-функции.
  • Защита данных: Обеспечение безопасности данных пользователей, соответствие требованиям законодательства о персональных данных.

Архитектура ПО:

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

  1. Обслуживание двигателя Boto
  2. Отвечает за обработку сценариев и логику чат-бота. Получает от сервера мессенджера запросы (сообщения пользователей), определяет следующий шаг по сценарию и возвращает ответные сообщения. Кроме того, в Boto engine service ведётся учёт пользовательских данных — положение пользователя в сценарии, набранные баллы, история взаимодействий и т. д.
  3. Сервер мессенджера
  4. Обеспечивает связь между пользователями и Boto engine service. Принимает сообщения от участников чата, передаёт их в Boto engine service и возвращает пользователям сформированные сервисом ответы.
  5. Сценарий
  6. Содержит структуру и логику диалога: шаги, вопросы, задания, варианты ответов и правила перехода к следующим этапам. Сценарий загружается в Boto engine service, который последовательно «ведёт» пользователя по заданному маршруту.
  7. Хранилище пользовательских данных
  8. Здесь сохраняется информация о каждом пользователе: текущее место в сценарии, набранные баллы, результаты пройденных этапов и прочие сведения, необходимые для прохождения сценария.

Схема взаимодействия компонентов:




3. Этапы создания чат-бота:

Весь процесс создания чат-бота можно разделить на следующие этапы:

  • Постановка задачи и предоставление сценария: Вы формулируете задачу, которую должен решать бот, и предоставляете подробный сценарий его работы.
  • Разработка и настройка бота на платформе: Мы разрабатываем и настраиваем бота на нашей платформе в соответствии с предоставленным сценарием.
  • Подключение к мессенджеру: Мы подключаем готового бота к выбранному вами мессенджеру (например, Telegram, eXpress).
  • Тестирование и запуск: Вы тестируете работу бота, и после вашего согласования  мы запускаем его для ваших пользователей.
Для запуска кода необходимо:
# Подготовка
  • Создать нового бота у https://t.me/BotFather и получить api token
  • Скопировать сценарий https://disk.yandex.ru/i/5i7chVfa8xoM6A на свой яндекс диск
  • создать пароль приложений в https://id.yandex.ru/security/app-passwords  c доступом к webdav
  • установить пакетный менеджер UV https://docs.astral.sh/uv/getting-started/installation/

# Настройка проекта

* В папке проекта скопировать 'configuration.yaml.example' , назвав файл 'configuration.yaml'

* заполнить 'configuration.yaml',  а именно пункты: 'API_TOKEN, FILES_GROUP_ID, CONTROL_SHEET:  ID, USERNAME, PASSWORD'

# Запуск

Команда запуска

```

uv run eXpeditiousBot/expeditious_bot.py

```

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



4. Подробное описание этапов:
4.1. Постановка задачи и предоставление сценария:
  • Формулировка задачи: Четко опишите, какую бизнес-задачу должен решать создаваемый бот. Например, это может быть:
  • Автоматизация процесса онбординга новых сотрудников.
  • Проведение обучающих курсов для персонала.
  • Информирование клиентов о продуктах и услугах.
  • Сбор обратной связи от клиентов.
  • Разработка сценария: Подробно опишите, как должен работать бот, какие шаги он должен выполнять, какие вопросы задавать пользователю и какие ответы предоставлять. Сценарий должен включать:
  • Приветствие пользователя.
  • Последовательность действий бота.
  • Варианты ответов пользователя и реакцию бота на эти ответы.
  • Обработку исключительных ситуаций.
  • Завершение взаимодействия с пользователем.
  • Формат сценария: Сценарий можно предоставить в любом удобном для вас формате: текстовый документ, таблица, блок-схема и т.д. Главное, чтобы он был понятным и содержал всю необходимую информацию.



5 . Интерфейс и пользовательский путь:

Формат возможных команд и ответы программы:





  • Интерфейс ботов Boto Education основан на привычных интерфейсах мессенджеров, таких как Telegram, eXpress и др.
  • Пользовательский путь включает этапы аутентификации, знакомства с ботом, определения индивидуальных характеристик, получения плана обучения, продвижения по сценарию, выполнения заданий, участия в опросах и итогового тестирования.

Пошагово:

  1. Пользователь получает ссылку от своего руководителя
  2. Пользователь переходит по ссылке
  3. Нажимает Старт
  4. Далее отвечает на вопросы бота, нажатием на предложенный ботом вариант ответа
  5. Доходит до конца сценария, бот прощается


Завершение

  • Чтобы завершить работу, Пользователю достаточно выйти из приложения.

6. Технические и технологические требования:

  • Платформа Boto  Education разработана с использованием современных технологий, языков программирования и фреймворков
  • Сервер находится в России, работает на операционной системе Linux Debian.
  • Аналитика формируется через файл конфигурации и визуализируется с помощью сервиса Yandex DataLens.

Информация, необходимая для установки и эксплуатации программного обеспечения

Требования к программным аппаратным средствам

Аппаратно-программные средства системы должны создаваться на передовых мировых технологиях в сфере телекоммуникаций и автоматизации управления и удовлетворять следующим основным требованиям:

  • поддерживать возможность хранения в единой базе данных больших объемов информации (комплексность, единство БД), обеспечивать возможности функционального расширения и наращивания мощности (расширяемость и масштабируемость);
  • поддерживать распределенную обработку информации, доступ к ресурсам системы как по локальной сети, так и через Internet;
  • использовать единую систему классификации и кодирования (унифицированность);
  • иметь встроенные средства оперативной аналитической обработки данных;
  • функционировать в гетерогенных средах и на различных аппаратных платформах (многоплатформенность);
  • обеспечивать взаимодействие и совместимость с различными программными продуктами, уже используемыми в высших учебных заведениях (открытость и интегрируемость);
  • обеспечивать высокую надёжность и устойчивость к сбоям;
  • обеспечивать надлежащий уровень защиты и конфиденциальности передаваемых данных (безопасность);
  • поддерживать возможность модернизации в процессе эксплуатации.


Информация, необходимая для установки ПО:

Установка ПО пользователями не предполагается. ПО представляет собой бот в приложении Telegram.


Информация, необходимая для эксплуатации ПО:
Для функционирования программы необходимо следующее программное

обеспечение: приложение Telegram

Операционная система: любая

Язык программирования: python3

Веб-сервер: debian

Веб-браузер любой

Для функционирования программы необходимо следующее техническое

обеспечение: ПК, смартфон

Дисковое пространство -10гб

Объём ОЗУ - 1гб



Решение проблем с ПО

Штатный порядок работы с ПО определяется эксплуатационной документаций.

Информация о наличии обновления или новой версии ПО доводится до всех заинтересованных сторон руководителем проекта.


Совершенствование ПО

Работа по совершенствованию ПО включает в себя:

  • повышение качества и надежности ПО;
  • актуализация перечня функций, поддерживаемых ПО.

Работы по совершенствованию ПО проводятся в рамках контракта (дополнительного соглашения к контракту) и только на основании Технического задания.