🟧Блок «Условие»

Учимся разветвлять сценарий в зависимости от данных пользователя.

Чтобы понять, что делает блок "Условие", начнём с нескольких общедоступных примеров.

Ситуация 1. Бытовая

Школьник получает оценку. В голове у родителей работает условие:

Если оценка 4 или 5 — похвалить.

Если оценка 2 или 3 — провести воспитательную беседу.

Смотрим реализацию в чат-боте:

Как это работает? У нас объявлено, что условие будет выполнено, если оценка школьника будет больше 3.

Четыре больше трёх? Да. Этот вариант подойдёт, условие будет выполнено.

Это значит, что сработает зелёный выход и приведёт к "Шагу 2", где мы хвалим ребёнка за хорошую оценку.

То же самое с оценкой 5.

Что касается "плохих" оценок, будет действовать то же правило. Посмотрим:

Три больше трёх? Нет, три равно трём. Условие не выполнено. На "Нет" сработает красный выход и приведёт к "Шагу 3", в котором мы проводим воспитательную беседу с ребёнком.

Ситуация 2

Заполняем на каком-либо сайте форму регистрации или форму с заказом обратного звонка.

Поле "Телефон" оставляем пустым, нажимаем "Отправить".

За такие проделки нам высветится предупреждение: "Введите корректный номер телефона".

Если же телефон заполнен корректно, наша заявка отправится.

Эта ситуация — самая настоящая работа "Условия":

Если поле "Телефон" содержит меньше 5 цифр, выводим на экране ошибку.

Если всё заполнено корректно, отправляем данные в CRM или на почту.

В условии всегда есть два варианта событий. Положительное и отрицательное. И для каждого события у нас будет припасено дальнейшее решение.

Создаем блок "Условие"

В режиме редактирования бота нажимаем на красную кнопку с плюсом в правом нижнем углу экрана.

Если вы не знаете, как попасть в режим редактирования бота, посмотрите начальные статьи: 1. Создаём бота | С чего начать?

Для редактирования блока нужно кликнуть по нему левой кнопкой мыши.

Разбираем параметры блока "Условие"

Название условия

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

К примеру, можно написать "Условие: проверка оплаты" и т.д.

Условие выполнится, если подписчик соответствует

В блоке "Условие" можно проверять одновременно несколько условий.

Например:

Условие 1 : проверяем, заполнена ли переменная "Телефон".

Условие 2 : проверяем переменную "Возраст", она должна быть больше или равна 18.

Выбор соответствия условию(-ям) можно выбрать в этом параметре.

Каждому из условий

Соответствие каждому из условий означает, что все заданные условия при проверке должны отдавать результат "Да" ( если использовать пример выше: И переменная телефон заполнена, И возраст больше или равен 18 ).

Если хотя бы одно условие будет "Нет", сценарий пойдет по красной ветке и условие будет считаться невыполненным.

Одному из условий

В данном случае условие выполнится при результате "Да" хотя бы на одно из множества условий.

По примеру выше:

Телефон заполнен, проверка успешная, результат: да.

Возраст 15, условие не выполнено, т.к. число должно быть больше или равно 18. Результат: нет.

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

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

Условия: + ДОБАВИТЬ УСЛОВИЕ

Начнём разбор параметров по порядку.

"Группа". Проверяет, состоит человек в группе пользователей или нет.

Группа — это список пользователей, объединённых по какому-то признаку. Например, группа подписчиков, которые проходили бота с викториной или группа подписчиков, которые купили товар/курс.

Условие с параметром "Группа" проверяет, состоит ли человек, проходящий бота, в определённой группе.

Как будет работать условие на скриншоте выше? Подписчик доходит до блока "Условие". В блоке "Условие" запускается проверка, состоит ли подписчик в группе "Оплатили". В зависимости от результата — Да или Нет — будет строиться дальнейшая автоворонка.

Например, если человек не состоит в группе "Оплатили", следующим шагом мы отправим Товар и предложим купить.

"День". Проверяем день недели.

Чтобы было понятно, как работать с условиями "Больше, Меньше" представляем, что дни недели пронумерованы. Понедельник - первый день. Воскресенье - седьмой. Из этой логики Воскресенье больше чем Понедельник. А Понедельник, меньше Вторника, Пятницы, и т.д.

Возможные значения:

  • Равен: проверяет совпадение на 100%. Если указан "понедельник", то условие сработает ТОЛЬКО в понедельник.

  • Не равен: проверяет, чтобы был только не понедельник (выбрать нужный день). Пятница? Воскресенье? Вторник? — условие сработает. Если понедельник, то сценарий пойдёт по красной ветке.

  • Больше чем: например, прохождение бота рассчитано на выходные дни. Чтобы это реализовать, поставим условие, что День Больше чем Пятница. Под это условие как раз подходят Суббота и Воскресенье.

  • Меньше чем: например, нам нужно сделать прохождение бота только в будние дни. Для этого сделаем условие День Меньше чем Суббота. Под это условие попадут дни с Понедельника по Пятницу, т.е. все будние дни.

  • Больше или равен: например, проводим акцию только в выходные дни. Для этого используем условие День Больше или равен Субботе. Под это условие подходят Суббота и Воскресенье.

  • Меньше или равен: например, нам нужно сделать прохождение бота только в будние дни. Для этого используем условие День Меньше или равен Пятнице. С этим условием будут выбраны все дни с ПН по ПТ, т.е. будние дни.

"Время". Работа чат-бота по часам.

Время устанавливается по Москве.

Возможные значения:

  • Равен: такое условие ожидает 100% совпадения времени, вплоть до минуты. Пример: мы решили раздавать щедрый бонус, но только тем, кто напишет в сообщество ровно в 20:00. Для этого используем "Условие" с параметром Время Равен 20:00. Это разовая акция, и если человек опоздал хоть на минутку, условие не сработает, и продлить его действие никак нельзя.

  • Не равен: суть этого условия в том, что оно выполнится только когда время не равно, к примеру, 22:00.

  • Больше чем: это условие может пригодиться, когда мы с уважением относимся ко сну своих подписчиков. Задача — не беспокоить новыми сообщениями с 00:00 до 09:00. В таком случае ставим блок "Условие", после которого взаимодействие будет только с утра.

  • Реализация: параметр Время Больше чем 09:00. С этим условием сообщения смогут приходить в период с 09:01 по 23:59.

  • Меньше чем: например, записаться на вебинар можно до 19:00. Для этого делаем условие Время Меньше чем 19:00. Если время меньше 19:00, то добавляем человека в группу пользователей "Записались на вебинар" и потом делаем для этой группы рассылку. Если человек пришёл в бота ровно в 19:00 или позже, то он не успел.

  • Больше или равен: пример реализации такой же, как и условием Больше чем. Ставим условие параметр Время Больше или равен 09:00. Тогда бот не будет беспокоить новыми сообщениями в период с 00:00 до 08:59.

  • Меньше или равен: например, нужно прекратить отправку новых сообщений вечером, чтобы не мешать людям спать. Ставим условие параметр Время Меньше или равен 21:00. Результат: с 21:01 до 23:59 новые сообщения не будут никого беспокоить.

    Можно соединить последние два условия и не беспокоить человека в период с 21:01 до 23:59 и с 00:00 до 08:59. Пример реализации на скриншоте 👇

"Дата"

Для параметра "Дата" есть следующие доступные значения:

  • Равен: условие выполнится только в определённый день. Например, 8-го марта отправляем промокод со скидкой на косметику. Если любой другой день, условие не сработает, бонусов не будет. Реализация: параметр Дата Равен 08.03.2022

  • Не равен: условие выполнится в любой из 364-365 дней в году, кроме одного дня. Реализация: параметр Дата Не равен 31.12.2021

  • Больше чем: условие выполнится, если дата, указанная в условии, уже прошла. Пример: показываем условия конкурса в новом году. Для этого поставим условие Дата Больше чем 31.12.2021. Под такое условие попадает весь январь 2022 года, февраль и все дни 2022-го года, 23-го, и т.д.

  • Меньше чем: условие выполнится, когда дата, написанная в условии, ещё не наступила. Пример: акция действует до февраля 2022 года. Нужно создать условие: Дата Меньше чем 01.02.2022.

  • Больше или равен: условие выполнится, если дата, написанная в условии уже прошла, или сегодня дата, которая указана в условии. Например, акция действует до февраля. Напишем условие Дата Больше или равен 31.01.2022. Под это условие подойдёт весь февраль, март и т.д., а также и 31.01.2022, которую мы указали в условии.

  • Меньше или равен: например, акция — успей до нового года. Реализация: параметр Дата Меньше или равен 31.12.2021. Под это условие подходят все даты, что были до 31 декабря, и само 31 декабря.

"Имя" и "Фамилия"

Самое банальное применение условия по параметру Имя — "Содержит".

Пример: нужно провести акцию в день Святого Валентина, чтобы все Валентины получили подарок-скидку-бонус. Для этого делаем условие: Имя Содержит Валентин. Под такое условие попадёт и Валентин, и Валентина.

ВНИМАНИЕ! Под это условие может попасть также и "Валентиниан" и "Невалентин", "Валентинка" и тому подобное. Потому что в этих словах тоже содержится "Валентин".

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

С помощью условия "Заполнен" — "Не заполнен" можно проверить, заполнены ли эти данные. Но для параметров Имя и Фамилия в 99% случаев информация будет заполнена, т.к. она автоматически берется из соцсетей и мессенджеров.

Также можно проверить Имя/Фамилию на соответствие регулярке (регулярному выражению).

Регулярное выражение — это список, например, ^(1[8-9]|[2-8][0-9]|9[0-5])$, который посимвольно проверяет, подходит написанное или нет. Например, номер телефона должен начинаться с +, содержать 12 символов, первой цифрой должна быть 7 и т.д.

Если по-простому, регулярное выражение — это список требований к тексту. Имя и Фамилию также можно проверять таким методом.

Пример: нам нужны все люди, с фамилией, заканчивающейся на -ОВ. Например, Иванов, Петров, Сидоров. Делаем такое условие: параметр Фамилия Соответствует регулярке ^.+?ов$

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

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

pageРегулярные выражения

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

Переменная — это термин из программирования, но понять его не сложно. Представим, что у нас есть шкаф с ящиками. И мы знаем, что в каждом ящике что-то лежит.

Например, в этом ящике лежит зимняя одежда, в том — одеяло и т.д.

Переменная — это ящик, в котором что-то лежит. Например, выше мы уже работали с переменными Имя и Фамилия. У каждого пользователя они свои. У этого человека переменная Имя — Иван. Переменная Фамилия — Сидоров.

Переменные хранят значения, информацию. У Сидорова переменная "телефон" хранит 8-800-555-35-35. А у Иванова в переменной "телефон" содержится +7918-88888888-8888888.

В LeadConverter есть информация о каждом пользователе, проходящем чат-бота. В разделе "Подписчики" открываем "шкаф" Иванова, и там много-много ящиков: имя, фамилия, телефон, email, количество баллов, статус оплаты и др.

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

Возможные значения:

Далее все примеры будут строиться на основе переменной "Баллы". Например, у нас есть простенький чат-бот с вопросами, и если ответ правильный, то плюс 1 балл в переменную. Если неправильный — минус один балл из переменной.

  • Равен: например, по окончании теста должно получиться максимум 12 баллов. Чтобы определить самых крутых, делаем условие: переменная Баллы Равен 12.

  • Не равен: например, разделим людей на чемпионов с максимальным количеством баллов и на тех, кто ответил не на все вопросы. Сделаем условие: переменная Баллы Не равен 12. Если условие выполнено, пишем: "У тебя не получилось везде дать правильный ответ".

  • Больше чем: например, будем считать, что 10-11-12 баллов, это хороший результат. Делаем условие: переменная Баллы Больше чем 9. Под это условие подходят все участники с баллами 10-12.

  • Меньше чем: например, если количество баллов 5-6 и ниже, будем считать это плохим результатом. Для этого делаем условие: параметр Баллы Меньше чем 7. Под такое условие подходят все числа с минусом, а также с 0 до 6 включительно.

  • Больше или равен: например, будем считать, что 10-11-12 баллов — это хороший результат. Делаем условие: переменная Баллы Больше или равен 10. Под это условие подходят все участники с баллами 10-12.

  • Меньше или равен: например, если количество баллов 5-6 и ниже, будем считать это плохим результатом. Для этого делаем условие: параметр Баллы Меньше или равен 6. Под такое условие подходят все числа с минусом, а также с 0 до 6 включительно.

  • Соответствует регулярке: например, для нас главное, чтобы при прохождении теста человек не ушёл в минус. Для проверки этого можно использовать регулярное выражение. Реализация: параметр Баллы Соответствует регулярке ^\d+$ .

    Данное регулярное выражение взято из этой статьи и будет проверять положительное целое число. Т.е. числа с минусом не пройдут в этом условии.

  • Содержит: например, можно также проверить, является ли число отрицательным, и сделать условие параметр Баллы Содержит - . Если там действительно отрицательное число, то условие сработает. Можно написать: "Дружище, ты не справился".

  • Не содержит: например, проверяем, отрицательное число, или нет. Для этого также делаем условие параметр Баллы Не содержит - . Условие выполнится, если у числа не будет минуса.

  • Заполнен: например, можно проверить, проходил ли человек тест. Если не проходил, то переменная Баллы будет пустой, т.е. не заполненной. Реализация: параметр Баллы Заполнен. Если заполнено и тест проходился, тогда условие выполнится.

  • Не заполнен это условие противоположно прошлому. Если выполнится, значит переменная Баллы пустая и тест не проходился. Реализация: параметр Баллы Не заполнен.

Остались вопросы? Задайте их в техподдержку! Мы всегда рады прийти на помощь ☺️👇

💟pageКак задать вопрос в поддержку?

Last updated