8 (499) 350-92-78 boris@borisbot.com
Все статьи

Переменные

Переменная — это хранилище данных, которым можно присваивать определенное значение (текст или число). Система запоминает значение, которое сохранилось в переменной, и затем ее можно использовать в боте.

Пример. 
Создаем приветственное сообщение и спрашиваем у человека его имя.
Когда пользователь ввел текст, мы получаем данные с определенным значением и можем использовать их. Так, создаем блок, где обращаемся к человеку по имени, используя переменную %first_name%👇
%first_name% – это и есть переменная, которой бот присвоил значение, введенное пользователем. При этом в диалоге с человеком отобразится значение переменной – имя 👇

Виды переменных

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

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

Переменная называется %answer% и ее значение соответствует номеру блока в скрипте: %answer_1%, %answer_2%, %answer_3%

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

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

%username% — имя пользователя в мессенджере 
%first_name% — имя пользователя на платформе
%last_name% — фамилия пользователя 
%city% — город пользователя 
%email% — email пользователя
%phone% — телефон пользователя
%photo% — фото пользователя на платформе
%show_cart% — содержание корзины 
%last_purchase% — последняя покупка 
%utm_source% — значение utm-метки источника трафика
%utm_medium% — значение utm-метки типа рекламы
%utm_campaign% —  значение utm-метки названия рекламной компании
%utm_content% — значение utm-метки содержания рекламной компании
%utm_term% —  значение utm-метки ключевого слова
%ref% — параметр для реферальной программы
%respondent_id% — индивидуальный номер пользователя 
%roistat_visit% — идентификатор визита пользователя
%score% — баллы
%cart_products% — корзина продуктов
%department% — подразделение
%interes% — интересы
%scope% — сфера деятельности
%current_date% — дата
%current_time% — время 
Функции нужны, чтобы присвоить данным значение функции – в переменную запишется результат выполнения функции. Например, сумма нескольких значений (функция sum). Используются для выполнения математических операций. 
Список функций

=sum(1,2,3); – позволяет рассчитать и получить сумму значений 
=calc(1*2/3); – позволяет рассчитать значения и получить результат вычислений, основанный на сложении, вычитании, умножении, делении  
=random(1,2); – позволяет получить случайное значение в диапазоне 
=random_string(1,2); – позволяет получить значение случайной строки в диапазоне
=date_modify(+1 day, %curent_date%, Y-m-d); – позволяет получить значение даты в настоящем, будущем и прошлом 
=date(%curent_date%, Y-m-d); – позволяет преобразовать дату в необходимый формат 

Как вставить переменную

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

Переменную можно скопировать, если навести курсор и нажать на имя переменной рядом с номером блока. 

Как сохранить и создать глобальную переменную

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

Блок Имя пользователя – переменная %first_name%
Блок Телефон – переменная %phone%
Блок Еmail – переменная %email%

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

Например, мы хотим сохранять в базу ответы пользователей о том, чем они увлекаются. Для этого сохраним встроенную переменную – %interes% 👇
Кроме встроенных глобальных переменных, вы можете создать свою. Например, мы хотим сохранять в базу ответы пользователей о том, какими языками они владеют. Для этого создадим и добавим переменную – %language% 👇

❗️Не используйте одинаковые имена для разных переменных.

Как посмотреть переменные в базе данных конструктора

Переменные можно посмотреть в Карточке клиента в разделе Сегменты или Диалоги. Значения глобальных переменных так же сохраняются в таблице пользователей (тип Respondents)

Где использовать переменные + примеры готовых ботов

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

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


*Шаблон – это готовый сценарий бота, который можно скопировать себе в проект. Все шаблоны размещает на маркетплейсе шаблонов.