Развилка

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

Как настроить взаимодействие Кнопок с подсказками и Развилки вы можете посмотреть в видеоуроке:

Файлы от пользователей попадают в переменные конкретного пользователя (раздел Пользователи), хранятся 7 дней, затем исчезают без возможности восстановления. Если нужен доступ к принятым в бота файлам на срок больше чем 7 дней, то все файлы необходимо сохранить на своем устройстве.
Файлы формата pdf и docx, загруженные через Viber, скачиваются без расширения. Чтобы файл открылся, необходимо дописать расширение (.pdf, .docx) вручную после скачивания.

Взаимодействие Развилки и Кнопок с подсказками

Кнопки с подсказками показывают пользователю несколько кнопок. Когда пользователь нажимает на кнопку, в чат отправляется её содержимое (текст, смайлы, номер телефона). Развилка может ловить этот ввод.

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


Проверка значения переменной

Иногда нужно проверить значение конкретной переменной. Например, при открытии доступа к определенным блокам бота.

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

Если у пользователя не будет проверяемой переменной, то он застрянет на Развилке. Чтобы этого избежать, перед Развилкой нужно установить компонент Запись переменной и записать значение {{var}} в переменную var.

Как проверить переменную без значения в Развилке

1. Добавим Развилку, которая проверяет переменную по регулярному выражению для любого ввода:

 .+

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

{{eq var ""}}

где var — это наша переменная.

Если переменная пустая, то запишется true, если нет, то false.

3. Добавляем вторую Развилку, где проверяем ранее записанную переменную и добавляем цель на true, которая ведет на экран для тех пользователей, у кого в переменной пустая строка.

Иначе — цель по умолчанию, которая ведет на экран для пользователей, у кого переменной нет.

4. Осталось только добавить экраны для перехода если переменная есть и если переменная отсутствует.

Запись переменной

Файлы от пользователей (изображения, документы и т.д.) записанные с помощью Развилки, попадают в переменные конкретного пользователя (раздел Пользователи), хранятся 7 дней, затем исчезают без возможности восстановления. Если нужен доступ к принятым в бота файлам на срок больше чем 7 дней, то все файлы необходимо сохранить на своем устройстве.

С помощью Развилки можно записать переменную перед переводом на другой экран.

Чтобы записать название кнопки или текст от пользователя в переменную, достаточно указать Имя переменной. В неё будет записано то, что прислал пользователь, если условие данной цели совпадет.

Выбранная кнопка записалась в переменные.

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

Теперь в переменной заданное в настройках Развилки значение.

Как принять файл или изображение от пользователя

Любой файл или изображение можно принять, выбрав Файл в типе данных и задав имя переменной в настройках Цели развилки. Кнопка Развернуть открывает все настройки Цели.

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

Также файл попадет в Диалог с этим пользователем в виде активной ссылки. Если кликнуть на эту ссылку, начнется скачивание файла.

Настройка постоянного меню из кнопок под строкой ввода

1. Добавьте на экран Кнопки с подсказками, активируйте чекбокс Не сворачивать кнопки в Телеграме.

2. Создайте Развилку для Кнопок с подсказками, заполните все необходимые настройки.

3. Продублируйте Развилку с помощью кнопки Дублировать в настройках компонента.

4. Поместите копии Развилки в конце всех экранов, куда ведут кнопки.

5. Не забудьте сохраниться.

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

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

Также можно предусмотреть неожиданный ввод от пользователя, т.е. если он напишет сообщение вместо нажатия на кнопку.

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

В начало ↑