Переменные

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

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

Рассмотрим что такое переменные и как их использовать при создании чат ботов на конструкторе Salebot.

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

Как сравнивать значения переменных? В настройках соединения в поле Переменная для сравнения вводим:

client_type == 3 переход, если значение переменной равно 3 attachments != None переход, если значение переменной заполнено любым содержимым attachments == None переход, если значение переменной не задано количество_товара >= 100 переход, если количество товара больше или равно 100 количество_товара <= 100 переход, если количество товара меньше или равно 100

Конструткор понимает вложенные переменные, где значение одной переменной входит в имя переменной другой. Например: {q#{test#{i}}}

Системные переменных

Итак, вот список встроенных переменных:

#{name} - имя собеседника #{full_name} - имя и фамилия собеседника #{custom_answer} - ответ, полученный с сервера, указанного в поле 'URL для ответа с сервера' #{vk_id} - клиента в мессенджере, не только вконтакте. Название сложилось исторически. #{question} - сообщение пользователя #{attachments} - url вложений к сообщению пользователя в формате JSON массива #{order} - содержимое заявки, созданной пользователем #{order_id} - идентификатор заявки(идентификатор клиента и внутренний идентификатор заявки через дефис) #{none} - проигнорировать сообщение #{} - внутрь скобок вы можете указать название поля ввода из соединения #{current_date} - текущая дата в формате dd.mm.yyyy #{next_day} - завтрашняя дата в формате dd.mm.yyyy. Удобно для отправки сообщения завтра. #{message_id} - текущее состояние диалога с клиентом. Идентификатор состояния. По умолчанию NONE. #{current_time} - московское время в формате hh:mm #{weekday} - день недели в виде числа, понедельник - 1, вторник -2 #{client_id} - id клиента в конструкторе. Он передается в вызовы API. #{messenger} - название мессенджера, откуда пришел клиент #{attachment_url} - в этой переменной содержится ссылка на вложение #{client_type} - тип мессенджера, откуда пришел клиент. В переменной просто число. Принимает значения:

для вконтакте 0 для телеграмма 1 для вайбера 2 для фейсбука 3 для толкми 4 для онлайн чата 5 в вотсапе 6 в авито 7 в одноклассниках 8

Раньше конструктор работал только с ВКонтакте, поэтому переменная #{vk_id} так называется, по факту там внутренний идентификатор любого мессенджера, присвоенный клиенту.

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

Итак, создадим приветственное сообщение и через 1 секунду спросим пользователя как его зовут (Рисунок 1).

Рисунок 1

Дальше создаем еще один блок, где благодарим пользователя за предоставленную информацию. В условии перехода в этот блок включим переключатель "Пользователь вводит данные" и в поле "Вводимые данные" напишем "Имя".(Рисунок 2). В нашем случае "Имя" - это как раз и есть переменная, в которую бот запишет имя пользователя. Здесь может быть любое слово как на русском так и на английском языках, в том числе и цифры.

Рисунок 2

После этого мы можем использовать введенные данные. В следующем блоке мы благодарим пользователя и обращаемся к нему по имени, использую нашу переменную, не забыв при этом добавить скобки и решетку. Выглядит это вот так: Спасибо, #{Имя}!

Теперь давайте усложним задачу. В этом же блоке спросим пользователя, его интересует первичное жилье или вторичное и добавим два блока. Условия перехода в первый блок - это ответ "Первичное", во второй - "Вторичное" (Рисунок 3).

Рисунок 3

Теперь рассмотрим второй вариант использования переменных: в блоках. Для этого выделим левый блок, нажмем на "Расширенные настройки" и в поле "Назначение переменных при переходе" введем следующий текст: "Клиента интересует = Первичное жилье". Вписывает это без кавычек (Рисунок 4). В правом блоке соответственно "Клиента интересует = Вторичное жилье"

Рисунок 4

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

Дальше в блоках давайте спросим ценовой диапазон для недвижимости. А из этих блоков создадим условие с проверкой введенных данных через встроенную переменную #{question} (в данном случае эта переменная является введенным ответом пользователя) ну и в этих же стрелках давайте назначим введенному числу переменную "Бюджет"(Рисунок 5).

Рисунок 5

Теперь подробнее о том как это будет работать: встроенная переменная "question" содержит в себе ответ пользователя. Мы берем его ответ и сравниваем. Если введенное им число больше 1 млн, то он переходит вправо, если меньше то влево. Так же мы присвоили ответу нашего пользователя новую переменную и назвали ее "Бюджет", чтобы в итоговой заявке все выглядело понятно и красиво. Теперь сменим тип последних двух блоков на "Конец сбора данных" и посмотрим что получилось (Рисунок 6)

Рисунок 6

На почту приходит финальная заявка вот в таком виде (Рисунок 7):

Рисунок 7

Теперь вы умеете использовать переменные как минимум тремя разными способами:

  1. Присваивать введенным пользователем данным названия переменных ("Имя", "Бюджет")

  2. Присваивать название переменной при переходе в блок (Клиента интересует = Первичное жилье)

  3. Сравнивать переменные с ответом пользователя (question >= 1000001)

Просмотр переменных

Переменные можно просмотреть в разделе лиды и по кнопке подробно в меню клиента

По кнопке изменить их можно отредактировать. Каждая переменная с новой строки и отделена от значения символом =

Переменные клиента

Переменные хранятся в сделке и после "Красного блока"(конец сбора данных) они пропадают.

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

Например клиент.возраст = 28 или client.возраст = 28

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

Созранение в переменные клиента с поля ввода

Лимиты

Максимальная длина названия переменной: 500 Максимальная длина переменной: 50000 Максимальное количество переменных у клиента или сделки: 300