Исполняемые модули
Исполняемые модули qnext - это такие разделы, которые выполняют какое-либо действие и возвращают результат своей работы. Существует несколько видов исполняемых модулей:
Реакции
⚡ Реакция - это основной исполняемый модуль qnext. Реакции это самые различные действия, которые вы можете выполнить ри различных условиях. Например:
- Отправить сообщение(⚡️
sendMessage) - Удалить пост (⚡️
deleteMessage) - Запустить форму (⚡️
formStart)
Реакций в qnext очень много, полный список вы сможете найти на странице Реакции.
Ограничения
Если вы хотите чтобы ⚡ реакции выполнялись не всегда или не для всех, вы можете указывать различные условия, при выполнении которых реакция будет выполнена. Делается это с помощью 🚧Ограничений. Про ограничения читайте в документации Ограничения.
Макросы и Переменные
Макросы и Переменные - это такие исполняемые модули, которые выполняются внутри реакций прямо в реакции, и заменяют собой результат своей работы.
Переменные
Переменная - это путь, содержащий параметр, который необходимо отобразить (или получить). Все переменные имеют
строгий формат ввода, начинаются с символов ${ и заканчиваются символом }.
Примеры переменных:
${user.name}- отобразит имя пользователя${user.id}- отобразит ID пользователя${update.message.text}- отобразит введенный текст${update.message.message_id}- отобразит ID отправленного сообщения
Например, если вам необходимо в реакции ⚡️sendMessage написать имя пользователя, вам необходимо написать в тексте этой
реакции такую Переменную:
Привет, ${user.name}, добро пожаловать!
Запомнить полный список всех переменных невозможно, их слишком много и это не имеет смысла. Поэтому для облегчения поиска нужной переменной, необходимо пользоваться логами, там вы сможете найти любую доступную вам переменную. Подробнее про логи читайте документации Реакция log.
Параметр: default
Параметр |default: text} позволяет отображать текст в том случае, если переменная не создана или не обнаружена. Параметр
указывается через разделительную черту |
Пример применения:
${user.id|default: произвольный текст}${update.message.text|default: произвольный текст}
Важно
Параметр сработает только в том случае, если переменной нет. В случаях, если переменная есть, но значение равно: "" - параметр не сработает, т.к. переменная существует, и содержит параметр, пусть и пустой.
Макросы
Макросы - это небольшие мини программы, формат похож на переменные, но, в отличие от переменных, макросы не просто отображают имеющиеся значения, макросы умеют выполнять какую то работу/преобразование и выдавать результат. Например, чтобы показать текущую дату, вы можете воспользоваться макросом:
!{date}
Подробнее про макросы вы можете прочитать в документации Макросы.
При составлении макроса необходимо соблюдать несколько простых правил:
- макрос должен начинаться с символов
!{и заканчиваться символом} - каждый параметр может содержать только одно значение
- все параметры должны разделяться точкой с запятой
;. - (рекомендация) для удобства чтения, рекомендуется разделять параметры новой строкой:
параметр: 1;
параметр: 2;
параметр: 3;
Параметр: default
Параметр default будет выдавать текст по умолчанию, в случае если результат работы макроса будет отсутствовать (например профиль пуст или макрос обращается к несуществующему параметру).
Пример многострочного макроса
> !{var|
type: value;
name: Баллы;
path: targetUser;
default: текст по умолчанию
}