Переменные
Инструкция для новичков
Переменная — это набор определенных символов, для получения нужной нам информации: имени, телефона, id, суммы оплаты, ссылки на пост и других значений.
Переменная состоит из пути к этому значению.
Путь к значению = Результат значения
Пример стандартной переменной:
{var:users.user.first_name} = Кирилл
Пример временной переменной:
{var:name} = Кирилл
Что такое "путь значения" на простом примере
Например, путь к файлу на вашем компьютере может выглядеть так:
C:\Users\Kirill\Music
Если бы мы хотели получить содержимое папки music через переменные, то это выглядело бы так:
Переменная: {var:Users.Kirill.Music}
Где результат: Vetrom_stat'.mp3, Otpuskayu.mp3, ...
Получить первую песню:
Переменная: {var:Users.Kirill.Music[0]}
Результат: Vetrom_stat'.mp3
Где [0] — это перва строчка/пункт/файл/значение.
Получить конкретную песню:
Переменная: {var:Users.Kirill.Music.Otpuskayu}
Результат: Otpuskayu.mp3
Получить текст песни:
Переменная: {var:Users.Kirill.Music.Otpuskayu.text}
Результат: Я не могу дышать...
Получить автора песни:
Переменная: {var:Users.Kirill.Music.Otpuskayu.author}
Результат: МакSим
Это лишь примеры для понимания. Ниже рассмотрим более конкретные примеры.
P.S. Я не слушаю Максим, просто подобрал популярного исполнителя)
После того, как мы получили значение переменной, мы можем делать с ним что угодно: подставлять в текст, отправлять себе, проводить математические операции, проверять условия этих значений и многое другое.
Есть три типа переменных:
Стандартные переменные
Временные переменные
Глобальные переменные
Стандартные переменные
— это значения, которые мы получаем из событий и действий, которые произошли с пользователем или платформой (ВК, Telegram, Prodamus и т.д.)
Например, человек написал сообщение. И мы можем получить значения этого события:
Имя пользователя
Айди пользователя
Тип платформы (ВК, ТГ...)
Айди платформы
Текст сообщения
и т.д.
Соответственно, получить эти значения мы можем только в момент активации каких-то событий.
[Полный список стандартных переменных]
Временные переменные
— это переменные, которые вы придумываете сами и сохраняете туда любые значения внутри блок-схем.
Эти переменные называются временными, потому что они существуют до тех пор, пока пользователь не выйдет из ветки в блок-схеме.
Что такое "ветка" в блок-схеме
Ветка — это цепочка соединенных между собой блоков с помощью стрелок. Их может быть много.
Ветка всегда начинается с блока события.
Выйти из ветки — означает, что пользователь попал в последний блок и вышел из него (завершилось выполнение последнего блока).
Это значит, что в конце ветки:
не стоит блок событий, который ожидает от пользователя каких-то действий
не стоит блок сообщения с кнопками, которое ждет нажатия на кнопку, либо они (кнопки) должны отработать (нажаты)
не стоит таймер или он должен закончиться
Пока пользователь полностью не выйдет из этих блоков, будет считаться, что он находится в схеме, в соответствующей ветке.
Они делятся на текстовые и числовые. Текстовые поддерживают любые символы и числа. А в числовые могут быть сохранены только числа.
Например, нам нужно получить от пользователя данные о ребенке, чтобы переслать их менеджеру.
Мы создаем текстовую переменную child_name и сохраняем туда имя ребенка.
Затем создаем числовую переменную child_age и сохраняем туда возраст ребенка.
А в текст для менеджера подставляем переменную:
Имя ребенка: {var:child_name}
Возраст ребенка: {var:child_age}
Как создавать временные переменные читайте в соседнем разделе.
Временные переменные идеально подходят, когда нужно сделать что-то здесь и сейчас. Например, сохранить данные пользователя и передать администратору. Либо посчитать количество баллов за тест и выдать результат.
Т.е. данные, которые мы обрабатываем и выдаем сразу, а не сохраняем для хранения.
Для хранения данных лучше использовать: поля пользователей или элементы геймификации.
Также мы можем брать стандартные переменные и сохранять их во временные, чтобы временно запомнить их и совершить с ними какие-то операции в рамках текущей ветки. Но это уже более продвинутые настройки.
Глобальные переменные
Глобальные переменные - это переменные проекта, содержимое которых доступно всем пользователям и не удаляется само по себе.
Глобальные переменные создаются в отдельном разделе.
В отличие от временных переменных, содержимое глобальных не привязано к пользователям, а привязано к проекту.
Например, вы можете создать глобальную переменную и указать, что в ней лежит 10 подарков. Они не принадлежат никому из пользователей, только проекту. Если кто-то из пользователей выиграет один подарок, то их станет 9.
Будете ли вы во временные переменные или поля пользователей сохранять этот подарок или нет - это уже другой вопрос.
Это лишь простой пример.
Вариантов работы с глобальными переменными огромное количество.
В глобальной переменной есть три ячейки для хранения данных разных типов:
Текст
Число
JSON-объект
Соответственно в текст можно добавить текст, числа и другие символы. В число только число. А в json можете добавить любой объем разных типов информации.
Правила оформления переменных
Переменная обрамляется фигурными скобками и функцией с двоеточием перед названием.
Например: {var:name}
В названиях переменных поддерживаются:
Латинские буквы нижнего регистра
Цифры
Символ нижнего подчеркивания:
_
Примеры написания переменных:
Корректный
{var:var_number_1}Некорректный:
{var:Перем. № 1!}
Также поддерживается встраивание переменных внутрь других переменных:
{var:{var:zakaz}.value}
{global:{var:zakaz}.value}
Важно!
Если переменная не найдена, то результат вернет
undefinedЕсли между открывающей скобкой и названием переменной есть пробел или другие символы - переменная не выдаст результат а будет считаться обычным текстом с набором символов.
Last updated