В данной статье мы разберем интерфейс и возможности вкладки Конструктор.
Для более удобного знакомства с вкладкой рекомендуем просмотреть видео обзор состоящий из двух частей.
Важно! В представленных видео показана старая версия конструктора. В новой версии работа с категориями, сценариями и некоторыми другими функциями перенесена из Дополнительных настроек в подраздел Действия внутри команды.
Часть первая:
00:00 — Вводная часть
00:40 — Интерфейс всей вкладки
01:40 — Интерфейс окна настроек команды, создание команды
02:30 — Виды блоков
03:02 — Интерфейс блока
03:46 — Виды клавиатур и их разница
04:32 — Интерфейс клавиатуры, создание и перенос кнопок
Часть вторая:
00:00 — Вводная часть
00:12 — Синонимы
00:48 — Добавление в категории
01:10 — Создание категории
01:43 — Приватные команды (с ограниченным доступом)
02:18 — Создание группы команд
02:30 — Перемещение команды из группы в группу
03:54 — Выполнение только из клавиатуры
04:46 — Удаление обычной клавиатуры
05:09 — Переход
Подробнее об особенностях Инлайн команд статье Инлайн команда.
Обзор вкладки Кoнструктор
Для перехода в этот раздел выберите вкладку Конструктор на главной странице проекта.

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

1. [📤] → Публикация изменений в бот — после того как вы создадите или отредактируете команды или приложение, то для того чтобы изменения отобразились в вашем боте необходимо нажать кнопку публикации, до этого момента все изменения сохраняются только в конструкторе, а бот продолжает работать по последним опубликованным настройкам.
2. [↰] → Отменить последнее изменение — если вы создали изменения в конструкторе, но еще не опубликовали, то можете отменить последнее действие
3. [×] → Отменить все изменения — эта кнопка отменит все созданные и не опубликованные изменения в конструкторе.
4. [+] → Создать команду — с этой кнопки начинается создание всех сущностей, такие как:
- Обычная команда
- Инлайн команда
- Мини-приложение
- Мини-история
- Условие
- Заметка
Кнопки в левом краю конструктора:
5. Кнопка с корзиной — удаление команды или приложения.
6. Кнопка переноса — для переноса команд или приложений в другую группу команд.

7. Основная группа — название группы команд в которой вы сейчас находитесь, нажав на название вы можете создать или перейди в другую группу команд
8. Настройки группы команд — тут вы можете ограничить все команды находящиеся в этой группе только для определенной категории пользователей или подписчиков канала или группы. Так же можете настроить время работы группы команд.
Подробнее о функционале Групп команд в отдельной инструкции: Группа команд

9. Масштабирование — кнопки в нижней части конструктора позволяют изменить масштаб рабочей зоны конструктора, это происходит так же при прокручивании колесика мыши. Кнопка рядом позволяет изменить масштаб до зоны видимости всех созданных команд.
10. Кнопка поиска — позволяет найти команду, приложение или условие по названию.
Создание команд, мини-приложений и условий:
По умолчанию в боте создана команда /start - с нее начинается запуск и дальнейшие действия в Telegram или Max ботах. Эту команду удалить нельзя, но можно удалить или изменить ее содержимое: контент и действия.

Если вы только добавили бот, то в команде /start будет добавлена картинка и приветственный текст. Для того чтобы удалить картинку выберите команду → нажмите три точки напротив блока "Изображение" → красная кнопка удаления.
Текст удалится автоматически, так как это единый блок в котором текст является описанием для изображения.

После удаления вы увидите бейдж "Изменено" — это означает что удаление или изменение произошло только в конструкторе. Для того чтобы изменения были загружены в бот, нажмите кнопку публикации [📤] в левом углу конструктора.

Для создания команды или приложения нажмите [+] → выберите создаваемый блок
- Обычная команда — для создания большинства функций взаимодействия с пользователем, включает в себя все возможности для отправки и приема сообщений от пользователя.
- Инлайн команда — для создания самозаменяющихся сообщений и кнопок без отправки новых сообщений, например создание слайдера, или изменение текста в одном сообщении. Подробнее: Инлайн команда
- Мини-прилoжение — создание многофункционального приложения в Telegram или Max. Подробнее: Мини-приложения
- Мини-история — создание видеопроигрывателя в формате истории для вашего мини-приложения.
- Услoвие — система проверок и действий для создания разветвления логики переходов, действий или доступов. Применяется как в ботах, так и для мини-приложений. Подробнее: Условия
- Заметка — текстовый блок для написания заметок в конструкторе. Не применяется для создания функционала бота.
Рассмотрим более детально:

Обычная команда, Инлайн команда и Мини-приложение содержат в себе идентичные вкладки:
1. Контент — вкладка для создания контент наполнения, в ней вы можете создать отправку текстовых и медиа блоков. Набор блоков для контента отличается для разных видов команд или приложения.
- Инлайн команда содержит только небольшой набор контента:
- Текст — добавление форматируемого текста.
- Изображение, Видео, Аудио, Документ — добавление медиа. - Обычная команда имеет такой же набор как в инлайн команде + дополнительные блоки:
- Геолокация — добавление геопозиции, отправка в боте будет в виде карты с геопозицией.
- Контакт — добавление номера телефона, отправка в боте с возможность сразу позвонить или добавить в контакты.
- Медиагруппа — блок с возможность загрузить сразу несколько изображений в одном сообщении.
- Фoрма ввода — создание запроса информации от пользователя, при отправке этого блока бот будет ожидать информацию от пользователя, после чего сохранит ее в переменную и в статистику ответов.
Подробнее: Форма ввода
- Таймаут — блок для указания задержки между отправками блоков или выполнения действия в одной команде.
- Слайдер — создание слайдера из текста или медиа, который можно просматривать без отправки нового сообщения, есть возможность указать таблицу как источник информации.
- Список — блок, создающий переменную, которая при каждом вызове подставляет один элемент из заданного списка (например, промокод из набора).
Подробнее: Блок Список
- Результат — блок для отображения результата тестирования, созданного через Форму ввода. - Мини-прилoжение содержит более широкий перечень вариантов отображения контента и кастомных настроек, подробнее в отдельной статье: Мини-приложения
2. Настройки — здесь можно задать настройки, которые будут применяться к отправляемому контенту из выбранной команды.

- Синонимы — возможность задать слова и фразы, введя которые можно вызвать данную команду в боте.
Подробнее: Синонимы - Выполнение только из клавиатуры — при выборе данной функции команду нельзя будет выполнить просто отправив ее название боту.
- Выполнение из текущей группы — команда будет выполнена, только если пользователь находится в текущей группе команд.
- Отправить один случайный блок — при добавлении в команду нескольких блоков на владке Контент будет отправлен только один случайный блок.
- Удалить текущую команду после вызова следующей — сообщения из текущей команды будут удалены из бота после отправки любой другой команды в бот
- Защита контента от пересылки — защищает содержимое отправленного сообщения от пересылки и сохранения. Доступно только для Telegram бота.
- Отображать в Меню — данная команда будет отображаться при вводе символа «/» и в кнопке Меню. Подробнее: Создание кнопки Меню
- Отправить с эффектом — отправленное сообщение из этой команды получит указанную реакцию на сообщение, например "👍" , "🔥".
3. Действия — создание дополнительных действий, которые выполнятся в фоновом режиме вместе с вызовом команды.

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

Сущность Условия отличается от других блоков, и содержит в себе только связанные правила, состоящие из проверки и действия.
Например необходимо чтобы бот проверил подписку на канал, и отправил файл, значит вам нужно:
- Добавить проверку "Наличие подписки" - чтобы произошла проверка
- Добавить действие "Отправить команду" (в которой будет файл) - чтобы выполнилось действие, если подписка найдена.
- Добавить действие в "Исключающее правило" (не обязательно) - чтобы выполнилось действие, если подписки не найдено.
В рамках одного условия вы можете добавить множество таких правил с проверками, например переменные (баланс, баллы), категории (проверка доступа к чему либо), проверка оплаты и тд.
Подробнее в отдельной статье посвященной условиям: Условия (обычное условие и кнопка-условие)
Мини-приложения

Сущности Мини-приложение и Мини-история — элементы Telegram или Max, которые фактически является веб-страницами открывающейся внутри Telegram или Max и использующий расширенные возможности Mini App Api. Все мини-приложения интегрированы в ботов. Дизайн Мини-приложений адаптирован под стилистику iOS и Android.
Подробнее: