Что такое компоненты

В Isaak из компонентов строится логика работы бота. Каждый из них представляет собой какое-либо действие, которое совершает бот во время диалога с пользователем.

Например, компонент может выводить на экран текст, изображения или выполнять еще какие-либо действия.

Для всех компонентов:

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

Вывод текста

Этот компонент используется для вывода текста пользователю.

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

Вывод изображения

Компонент Вывод изображения выводит заранее загруженное изображение в диалоге с пользователем.

Как добавить изображение

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

Для добавления изображения со своего компьютера в параметрах компонента нажмите кнопку Загрузить.

Также можно добавить изображение, вставив на него ссылку в настройках компонента.

Сообщение с кнопкой

Компонент Сообщение с кнопкой предназначен для отправки пользователю кнопок, прикрепленных к сообщению.

В настройках компонента в разделе Заголовок кнопки задается название кнопки. Компонент поддерживает два вида функционала:

  1. Переход на экраны

  2. Переход на внешний URL

Для того, чтобы при нажатии кнопки пользователь переходил на следующий экран, нужно указать связь между кнопкой и необходимым компонентом.

Чтобы при нажатии кнопки пользователь переходил по внешней ссылке, в настройках компонента нажмите Внешняя ссылка и в появившейся строке Ссылка вставьте внешний URL.

Кнопки навигации

Компонент Кнопки навигации используется для создания меню внутри окна чата. Отправляет пользователю кнопки, позволяющие выбрать один из вариантов без необходимости набора на клавиатуре.

В настройках компонента можно создать ряды кнопок, переименовать их и выбрать стиль.

Ввод пользователя

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

В настройках компонента можно указать ожидаемый тип данных:

  • ввод текста

  • ввод числа

  • ввод даты

  • запрос файла

  • ввод email

  • ввод геоданных

Также можно указать реплику бота, имя переменной и сообщение об ошибке.

HTTP-запрос

Компонент HTTP-запрос позволяет осуществлять запросы к любому стороннему сервису, который их поддерживает.

В настройках компонента можно указать путь (URL) запроса, выбрать необходимый метод, логин и пароль для авторизации по HTTP basic access authentication. Если требует API, можно добавить необходимые заголовки.

Также необходимо создать связь с компонентами, которые выполнятся при успешном запросе или завершенным с ошибкой.

Условие

Компонент Условие позволяет направить бота на определенный компонент в зависимости от выполнения определенных условий. В качестве условий можно указать любое выражение на JavaScript. Условий может быть несколько, и для каждого есть переход на нужный компонент. Таким образом можно программировать нелинейную логику диалога.

При добавлении нескольких условий выполняется логическая операция "ИЛИ".

Текстовые значения при сравнении следует обрамлять либо двойными, либо одинарными кавычками.

Условие Иначе будет выполняться, если ни одно из условий в компоненте не истинно.

Примеры

lt name 10, если <
lte name 10, если ≤
gt name 10, если >
gte name 10, если ≥
eq, если =
Пример выполнения логической операции "И"

Логирование

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

Запись переменных

Позволяет записать значение или объект в переменную.

Добавление в коллекцию и выборка из коллекции

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

Компонент Добавление в коллекцию позволяет создать локальную базу данных и сохранять в ней информацию.

Компонент Выборка из коллекции позволяет забрать нужную информацию из сохраненных ранее данных.

Пример:

Для начала необходимо в настройках конструктора создать коллекцию и добавить в нее несколько колонок. В данном примере исползуются две колонки name - Имя и date - Дата.

Затем добавляем элемент Выборка из коллекции, в настройках компонента выбираем созданную коллекцию store, отмечаем колонки name и date и записываем коллекцию в переменную shop.

Фразы

Компонент Фразы определяет, что хочет пользователь и переводит его по нужной ветке сценария.

Данный компонент позволяет боту понимать естественный язык при общении с пользователем, а также дает боту возможность следовать по разным веткам сценария в зависимости от ответа пользователя.

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

Созданная вами группа фраз должна содержать как минимум один пример фразы.