КРАТКОЕ резюме
Что может конфигурация Ботовод:
- Разрабатывать автономных чат-ботов
- Полнофункциональных чат-ботов, работающих самостоятельно, при этом не требуется изменение конфигурации для добавления регистров, справочников и пр. в отдельных сложных случаях это возможно, но есть другие методы (см.ниже)
- Быстро и удобно разрабатывать чат-ботов
- Визуально рисовать общую логику при помощи редактора блок-схем (используется не совсем привычная аннотация, заточенная под предмет, но привыкаешь за день работы)
- Редактор с кучей плюшек для сложной логики и гибкости на языке 1С с "предметными" расширениями: расширения, шаблоны, подсветка синтаксиса и автокомплит в том числе и предметных расширений. Это делает код коротким и очень читаемым.
- Расширенный журнал событий для отладки
- Редактор структур данных позволяет, без использования конфигуратора, создавать и использовать в работе простые структуры данных (переменные, таблицы, списки, структуры), используемые в процессе работы.
- Модульная архитектура позволяет разработчику наработать или загрузить библиотеку/библиотеки уже готовых алгоритмов (как простые ввод даты, времени, любых данных так и сложные типа сканер QR кодов или заготовка админ-панели) и использовать их в своей работе.
- Просто Интегрировать разработки (чат-ботов)
- Для 1С есть расширение, которое делает интеграцию простой и быстрой. Это огромный плюс к безопасности - чат-бот получает только те данные, которые ему разрешены.
- Весь трафик между Ботоводом и внешней системой с установленным расширением защищен
- Поддерживать одновременную параллельную работу множества чат-ботов с множеством клиентов
- Идея: Одна конфигурация Ботовод обслуживает всех чат-ботов предприятия, а с внешними системами работает по АПИ. Поход непопулярный и сложный в реализации, но несет ряд редких преимуществ как минимум исключает сложности при обновлении, убирает зоопарк встроенных в конфигурации конструкторов и пр.
- Конструктор содержит встроенный сервер, отвечающий за поддержку бесперебойной параллельной работы всех чат-ботов установленных в конфигурации.
- Контрольные показатели - подсистема, позволяет следить за состоянием системы (наличие связи, доступность гейта, размер очередей и пр.) и реагировать на нештатные ситуации в ручном режиме или автоматическом. Критерии оценки и реакции могут создаваться пользователем.
- Рабочий стол оптимизирован для удобной работы
- Обмениваться разработками (чат-ботами) и версионировать разработку
- Версионирование может работать как в автоматическом режиме так и в ручном.
- Механизм выгрузки и установки чат-ботов позволяет разворачивать чат-бота аналогично установке мобильного приложения из APK. При установке так же разворачиваются структуры данных и интеграций с внешними системами. При установке учитываются версии объектов и зависимости. к примеру вы можете скинуть чат-бота своему коллеге, просто прикрепив его к почтовому сообщению или отправить клиенту готовую разработку
- Обмен позволяет удобно переносить обновления чат-ботов с разработческой конфигурации на боевую
- Позволяет вашим клиентам получать и самостоятельно устанавливать обновления чат-ботов и экономить ваше время.
Что могут чат-боты работающие на Ботоводе:
- Могут работать автономно, не в составе какой-либо конфигурации.
- Реализовывать абсолютно любую логику без ограничений, свойственных прочим конструкторам. Например организовать персональные настройки пользователей между сессиями
- Защищать ваши данные т.к. все чат-боты работают на ваших мощностях, в отличии от онлайн конструкторов
- Поддерживают нативные телеграмм платежи
- Автоматически организовывать работу по принципу мобильного приложения - вся работа с пользователем происходит в одном экране/сообщении
- работать в группах, супергруппах, приватных чатах и везде одновременно
- Оптимально работают с сетью - минимизировано кол-во запросов к примеру для обновления сообщений
- Учитывают ограничения мессенджера - вы никогда не получите бан за нарушение таймингов.
- Разделять пользователей по правам/ролям
Для быстрого освоения конфигурация имеет примеры.
Разработчик отвечает на любые вопросы и ведет ютуб канал, где, среди прочего, присутствует обучающие видео.
Для ознакомления и разработки конфигурация бесплатна.
... и многое другое, в целом все эти возможности позволяют реализовать очень сложные системы на базе чат-ботов.
В принципе на этом всё.
Краткое описание:
Конфигурация позволяет быстро и просто создать и обеспечить параллельную работу любого количества чат-ботов любой сложности. Архитектурно конфигурация состоит из двух подсистем: сервер и визуальный редактор.
В редакторе создаются "Алгоритмы" - логика приложения , а сервер заданную логику исполняет и обеспечивает взаимодействие с мессенджером.
На данный момент поддерживается Telegram API, но модуль поддержки API может быть адаптирован под работу с любым мессенджером. Телеграм был выбран из-за богатства API и простоты запуска чат-ботов.
Примеры использования:
Конфигурация поддерживает использование двумя способами, оба режима доступны одновременно:
- Автономная работа, без использования какой-либо управляющей системы:
- чат-бот цензор
- всевозможные текстовые квесты и прочие развлечения
- Простые сервисы типа помидорного тайм-менежмента или напоминаний о событиях
- Сервис парсящий веб страницы и сообщающий о новостях
- Управляемый режим позволяет интегрировать конфигурацию с любой системой, начиная с 1с или веб сайта и заканчивая макросами Эксель.
При этом встраивание не требуется в этом режиме конфигурация управляется по API:- Формирование заказа покупателя из мессенджера
- Регистрация продаж в мессенджере
- Двухфакторная авторизация
- Всевозможные оповещения
- Реализация многих функций оператора колл-центра
- Разнообразные личные кабинеты, подключенные напрямую к учетной системе, без потери безопасности
- перенос в мессенджер процесса согласования документов
В "Управляемом режиме" конфигурация работает в интересах "Управляющей системы" (к примеру конфигурация 1С:ERP). Алгоритм работы следующий:
- Управляющая система "просит" конфигурацию исполнить указанный алгоритм, к примеру запросить у клиента какие-то данные или задать вопрос или ознакомиться с предложением с последующим оформлением покупки.
- Конфигурация запускает алгоритм, общается с клиентом, собирает и хранит полученные или преобразованные данные
- По завершении диалога конфигурация сохраняет накопленные данные и передает их управляющей системе
Хорошим примером "Управляемого режима" служит алгоритм запроса текущего статуса и текущего местоположения поездки у водителя/куреьра.
Управляемый режим может инициироваться и со стороны мессенджера пример - формирование заказа покупателя из личного кабинета.
Останавливаться на работе в "Автономном режиме" смысла нет - написали алгоритм и он сразу работает.
Преимущества конфигурации:
- Конфигурация в полной мере реализует все достоинства чат-ботов
- Ваши сервисы для клиента имеют привычный интерфейс и понятные алгоритмы взаимодействия.
- Максимальное сокращение дистанции между вашим сервисом и пользователем
- Высокая скорость разработки
- Благодаря функциональному визуальному редактору разработка наглядна и проста
- Механизм "Подпроцессов" позволяет использовать любые алгоритмы внутри других алгоритмов. Примером могут служить следующие алгоритмы:
- Ввода даты
- Запрос у пользователя данных определенного типа
- Отмена диалога
- Движок презентации
- Карусель - реализация одноименного функционала Фейсбук мессенджера.
- Наличие "Таймеров", это оригинальный инструмент позволяющий:
- Приостанавливать работу алгоритма на любое абсолютное или относительное кол-во секунд
- Запускать или завершать алгоритмы в определенное время
- Организовывать "таймаут ожидания", когда пользователь задумался или забыл про диалог, чат-бот может напомнить о себе или как-то иначе отреагировать.
- Механизм "Контрольные показатели":
- Позволяет мониторить состояние сервера в реальном времени
- Автоматизировать реакцию на нештатные ситуации к примеру при проблемах с API гейтом мессенджера оповестить Администратора или самостоятельно предпринять какие-либо действия.
- Отображать в читаемых пиктограммах текущие события
- Журнал событий Аналог журнала регистрации но с более расширенной аналитикой.
- "Клонирование" позволяет подключать единожды созданный алгоритм к любому количество чат-ботов
- "Глобальные данные" позволяют интерактивно создавать структуры данных (аналог регистров сведений и константам) и сохранять в них данные их между сессиями пользователей. к примеру Бот "Конкурс" привлекающий в канал клиентов на базе реферальных ссылок, использует этот механизм для хранения настроек и подсчета победителя.
Важно: механизм не является заменой регистрам, а предназначен для хранения небольших массивов данных т.к. имеет ряд ограничений в силу своей архитектуры.
Редактор структуры
Редактор данных
Данные могут храниться в разрезе Ботов, Алгоритмов и клиентов - Подсветка синтаксиса и "Сокращения" и "Шаблоны" позволяют сделать код максимально читаемым и ускорить разработку.
- "Статистика" позволяет узнавать о наличии обновлений и предлагает полезные советы. Так же собирает обезличенную статистику требуемую для развития конфигурации.
Подробнее про редактор:
С помощью редактора описываются алгоритмы - логика будущих приложений.
Основой редактора является блок-схема.
На данный момент доступны такие блоки как сообщение, меню, процедура, функция, вложенный процесс, и задержка.
Коротко о каждом блоке.
- Сообщение - текст сообщения может быть задан жестко или вычисляться динамически.
- Меню - организует диалог с пользователем и ожидает ответ. по результатам происходит условный переход. Поддерживается инлайн и обычная клавиатура. Возможно управление строками и столбцами кнопок.
- процедура - выполняет вычисления. часто используется в начале алгоритма для инициализации и в конце для подготовки результата.
- Функция - классический условный переход в зависимости от выполненных вычислений.
- Вложенный процесс - вызов вложенного алгоритма, или безусловный переход, в другой алгоритм. Часто используется при переходе из меню. Незаменим для улучшения читаемости алгоритма, и структурирования работы в целом.
- Задержка - величина задержки может быть абсолютной при указании конкретной даты и времени, или относительной.
Завершение:
Проект пережил 2 реинкарнации. Имеет внедрения.
В данный момент развитие в данном виде приостановлено - система полностью перерабатывается, по итогам 2х годичной эксплуатации.
Ботовод распространяется в открытом виде, как есть. Проверено на платформе 8.3.14.
Настоятельно рекомендую просмотреть материалы на канале "1С БотоВод" в Ютуб, это позволит максимально быстро понять, нужно ли вам в принципе тратить время на ознакомление с данной разработкой.
Ну и всегда готов ответить, в меру сил и времени, на ваши вопросы.
Немного самокритики:
Код БотоВода напоминает лоскутное одеяло :) в силу того, что на первых порах, архитектура не предполагала серьезного развития и разрабатывалась система в свободное время и с большими перерывами. В некоторых местах встречаются "спорные" решения, а иногда и откровенное пренебрежение стандартами в угоду скорости разработки. Однако в итоге система почти отлажена и работоспособна, и уверен, что попав в правильные руки все вышеперечисленное легко исправляется.
Спасибо за внимание.