ELMA Bot > Редактор сценариев бота / Настройка переменных бота

Настройка переменных бота

Переменные бота хранят в себе информацию, которая запрашивается у пользователя во время выполнения сценария. Для создания переменных и получения данных служат элементы групп Запрос данных и ELMA365, а также элементы Вопрос. Текст+кнопки и Вопрос. Ввод текста. В этих же элементах можно ознакомиться с полным списком переменных, добавленных в бота.

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

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

Типы переменных

Для хранения данных в сценариях бота используются простые и сложные переменные. К простым типам относятся: Текст, Число, Да/Нет, Дата и ФИО. К сложным относятся переменные Объект и Пользователь, поскольку они содержат сразу несколько свойств.

Переменная типа Объект используется, когда в ходе отработки сценария нужно получить данные из ELMA365, например, элемент приложения. Также переменные такого типа можно использовать в скриптах или в обработчиках событий.

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

  • Аутентифицирован — в этом поле хранится информация о наличии записи о клиенте в справочнике Пользователи или Внешние пользователи;
  • ФИО — если пользователь записан в справочнике, в это поле автоматически запишется его имя.

Добавление переменных

Переменные создаются при настройке элементов, которые служат для получения данных: Вопрос. Текст + кнопки, Вопрос. Ввод текста или элементов групп Запрос данных и ELMA365.

  1. В редакторе сценариев разместите  элемент из списка, приведённого выше.
  2. В поле Ответ пользователя нажмите кнопку Добавить и в выпадающем списке выберите +Создать новую переменную.

bot-variable-1

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

  1. В открывшемся окне задайте настройки переменной.

bot-variable-2

  • Тип переменной выберите тип переменной в зависимости от вида запрашиваемых данных. Например, если вы хотите уточнить имя пользователя, укажите тип ФИО. Обратите внимание, для таких элементов из группы Запрос данных, как Телефон, Email, Ссылка, Местоположение, используются переменные типа Текст;
  • Область видимости — укажите область, в которой будет применяться и храниться переменная. Переменные можно сохранить на следующих уровнях:
    • Сценарий — значение переменной хранится в конкретном сценарии и становится пустым после его выполнения. В дальнейшем при взаимодействии с ботом по этому сценарию, пользователь снова уточняет значение этой переменной. Например, бот запрашивает даты отпуска при каждом обращении пользователя;  
    • Бот — значение переменной хранится во всех сценариях бота в рамках одной сессии взаимодействия пользователя с ботом;
    • Пользователь — значение переменной сохранится для пользователя в рамках каждого взаимодействия с ботом. Например, бот может запомнить имя пользователя, чтобы не уточнять его повторно при каждом обращении;
    • Сеанс — область доступна только для типа Пользователь. Значение переменной будет храниться во всех сценариях бота в рамках одной сессии взаимодействия с пользователем.
  • Имя переменной — название рекомендуется давать в соответствии с назначением переменной и использовать существительные, например, «Дата рождения», «Количество гостей» и т. д.;
  • Ограничения — определите, каким должен быть ответ пользователя. Если ответ не будет соответствовать заданным настройкам, бот запросит информацию ещё раз. Чтобы создать ограничение, нажмите кнопку +Добавить ограничение и задайте его значение, выбрав из выпадающего списка условие, например, Равно или Не равно, и указав необходимое число или дату. Добавить ограничения можно только для переменных типа Текст, Дата, Число.

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

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

  1. Сохраните настройки.

После этого полученные ботом данные будут сохраняться в переменные.

Работа с переменными

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

bot-variable-3

В этом окне вы можете:

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

Использование переменных

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

Чтобы обратиться к переменной в сообщении, при настройке элемента нажмите на значок bot-variable-icon и выберите переменную в открывшемся окне.

bot-variable-4

Например, в начале сценария «Заказ техники» бот запрашивает детали заявки с помощью элементов Вопрос. Ввод текста. Полученная от пользователя информация записывается в переменные сценария.

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

Также переменные необходимы для написания скриптов, с помощью которых можно расширить функциональные возможности бота. Подробнее об этом читайте в статьях «Скрипт» и «Редактор сценариев бота».