Что такое Action (Экшен)
Функционал Action-ов обширен и гибок в своем применении - поэтому описание всех нюансов работы с ним - это огромный и довольно нудный документ, с которым, тем не менее, необходимо ознакомиться.
Если это первый раз когда вы знакомитесь с этим документом - просто прочтите его ВЕСЬ ЦЕЛИКОМ.
В дальнейшем, для уточнения деталей, можно обращаться к его отдельным частям как к справочнику.
❖ Что такое Action
Action (Действие — англ.) в @MenuBuilderBot - это способ выполнить одно действие. Один Action – одно действие. Действия могут быть разными - изменить значение переменной, проверить условие, отправить команду и т.п.
Action-ы добавляются в кнопку. Добавление похоже на настройку бонусных кнопок и кнопок обмена. Action-ы срабатывают при нажатии пользователем кнопки в вашем боте или при любом другом обращении к функционалу кнопки.
Основным отличием является то, что Action-ов в кнопку можно добавить практически неограниченное количество - это позволит выполнить все их действия одним нажатием кнопки. Комбинируя Action-ы можно создавать уникальные алгоритмы и последовательности действий, в сочетании с условиями получая тем самым нужный функционал.
❖ Приобретение Action-ов
Action-ы приобретаются на Бот по одному или пакетами. Приобретая Action-ы вы, в некотором смысле, приобретаете "Слоты" под них. Приобретенное количество является максимумом для данного бота - это значит что Action-ы можно добавлять и удалять сколько угодно раз, при условии что их общее созданное количество в боте не превышает то количество которое было приобретено.
Action-ы (Экшены).
Для подключения перейдите в свой бот:☞ 🔐Админ | 🧩Расширения | 📂Action-ы
Поскольку Action-ы по своей природе, способны создавать неограниченную нагрузку на систему, их функционал предоставляется на особых условиях.
Продаются они поштучно и пакетами по 25 и 100 единиц на бот. Для создания содержательной системы понадобятся десятки Action-ов, поэтому стоимость Action-ов в пакетах радикально ниже стоимости одиночных Action-ов.
Action-ы можно добавлять в кнопки и удалять их оттуда сколько угодно раз, однако общее количество одновременно добавленных Actoin-ов не может превышать общего приобретенного количества.
После приобретения, вне зависимости от количества, вам будет доступно 50000 срабатываний Action-ов на бот в месяц (50k Токенов Функций). Оставшееся количество на месяц указано при входе в Админке вашего бота. Дата месяца в которую происходит обновление пакета Токенов Функций, индивидуальна для каждого аккаунта и также указана при входе в Админку.
После исчерпания доступных токенов работа всех Action-ов в боте будет замедлена до 1 секунды на срабатывание каждого Action-а.
Если 50k ТОкенов Функций (срабатываний) в месяц вам будет недостаточно, вы можете приобрести дополнительные пакет(ы) «Токенов Функций». Один пакет — 100k срабатываний.
Токен Функций.
Для приобретения перейдите в вашем боте:☞ 🔐Админ | 🧩Расширения | 📂Action-ы
ПОТРЕБЛЕНИЕ ТОКЕНОВ:
● В общем случае 1 Action потребляет 1 Токен Функций.
Исключения:
● Action Текстов - потребляет 3 токена.
● Action Инициализации - потребляет 0.3 токена - если переменная уже инициализирована.
● Любой экшен с заданным Условием. Если условие не удовлетворяется и экшен дальше не работает - потребляет 0.3 токена. Если условие удовлетворяется и экшен сработал - то 1 токен как обычно.
❖ Концепция Action-ов
Чтобы лучше представить концепцию Action-ов вспомните, возможно знакомые вам кнопки «Бонус» и «Фикс. Обмен».
Условно можно сказать что кнопка «Обмен» состоит из двух Action-ов:
1. Списание суммы с одной переменной.
2. Начисление суммы на другую переменную.
Всего 2 действия — 2 Action-а.
В кнопке «Бонус», например, всего 1 Action – начисление (хотя у нее еще есть и дополнительная функция периода срабатывания).
До появления функционала Action-ов кнопки могли выполнять только одно или два заранее заложенных в них действия. Теперь же действий может быть сколько угодно, да и разнообразие самих действий стало больше. Всё ограничено только вашей фантазией и задачами проекта.
❖ Нюансы работы Action-ов
Плагины
Одной из наиболее частых причин появления системных ошибок при работе с Action-ами является отсутствие основных плагинов. Если вы получили ошибку о неправильной работе Action-а - ПРЕЖДЕ ВСЕГО проверьте подключены ли основные плагины.
Для лучшего понимания механики работы Action-ов обратите внимание на следующие моменты:
Если вы хотите иметь возможность в Action-ах использовать
• «Макросы» и «Выражения»
• «Условия»
• А также чтобы Action мог работать c Глобальными Переменными
будет необходимо подключить соответствующие плагины.
Макросы и Выражения Кнопок.
Условия.
Бонус в Глобальной Переменной.
Для подключения перейдите в вашем боте:☞ 🔐Админ | 🧩Расширения | 📂Кнопки
Это общие Плагины и потому они действуют на весь бот: на кнопки Бонус и Обмен, Action-ы, Рассылку и прочее.
Особенности работы
1. Action-ы выполняются по порядку от верхнего с номером 1 до нижнего.
2. При возникновении какой-либо ошибки, выполнение цепочки Action-ов прерывается. Сработать например могут первые два Action-а, а третий даст ошибку — дальнейшее выполнение будет прервано, а изменения внесенные первыми Action-ами останутся "как есть". Если работа каких-то Action-ов является критичной - проверяйте возможность (и необходимость) срабатывания Условиями на самом Action-е, отдельными «Action-ами Условий» или Условием на самой кнопке содержащей такие Action-ы.
3. Action-ы МОГУТ быть использованы в кнопке к которой уже добавлен «Бонус», «Фикс. Обмен 1» или «Курс. Обмен 2» - при этом сначала сработает Бонус или Обмены, а потом Action-ы.
4. Для кнопок «Бонус», «Фикс. Обмен 1» или «Курс. Обмен 2» при добавлении них Action-ов — «Сообщение об Успехе» и «Сообщение о Неудаче» будут общими.
5. На кнопку с Action-ами, как и на любую другую кнопку, может быть добавлено своё условие.
6. Каждому Action-у может быть добавлено своё сообщение об "Успехе" операции и о “Неудаче”.
7. При добавлении Action-ов в кнопку всему их набору могут быть добавлены Общее «Сообщение об Успехе» и Общее «Сообщение о Неудаче» помимо тех что можно добавить индивидуально каждому из Action-ов. Эти сообщения будут показаны вне зависимости от показа индивидуальных сообщений каждого Action-а. Данные сообщения действуют на ВЕСЬ БЛОК ACTION-ов. Т.е. если ВСЕ выполнились - будет сообщение об успехе. Если что-то пошло не так хоть в одном - сообщение об ошибке. Реально "что-то не так" может пойти только если проблемы с «Выражениями» или числовые переменные «пошли в минус».
8. Если в кнопке несколько Action-ов имеют сообщения — все они будут показаны при нажатии (плюс Общие Сообщения).
9. Если в кнопке добавлены ВСЕ возможные функции и расширения то они будут работать в такой последовательности:
0. Команда активации самой кнопки.
1. Условия.
2. Бонусы и Обмены - основной функционал.
3. Pre-Action-ы.
4. Формы и сообщения самой кнопки - содержимое кнопки.
5. Post-Action-ы.
10. Каждому Action-у может быть добавлен комментарий.
11. Если в кнопке содержатся Action-ы, то при выборе такой кнопки в режиме «Редактора Кнопок» - появится инлайн кнопка на их редактирование:
❖ Типы Action-ов (по времени исполнения)
Первоначально все Action-ы выполнялись после основного функционала кнопки (Бонусы, Обмены и т.д.) и ДО показа её содержимого, такого как сообщения, формы и прочее - «Pre_Action». По этой причине показ сообщений кнопки являлся пределом за которым никакого функционала существовать уже не могло, однако с развитием возможностей самого конструктора появилась необходимость выполнения отдельных действий уже и ПОСЛЕ показа содержимого кнопки (сообщений и форм) - «Post_Action».
Например начисления бонусов после "броска" кубика (стикер в Телеграм) при создании игр с использованием форм.
Таким образом, на сегодняшний день, Action-ны делятся на 2 Типа по времени исполнения:
Pre-Action
Pre-Action - исполняестя ДО показа содержимого кнопки, но ПОСЛЕ основного функционала (Бонусы, Обмены и т.д.).
Post-Action
Post-Action - исполняется ПОСЛЕ показа содержимого кнопки (Сообщения, Формы).
❖ Виды Action-ов
На момент написания данного руководства в системе присутствует уже шесть видов Action-ов.
1. ⚫ Action Чисел
2. 🔴 Action Условий
3. 🔵 Action Рефералов
4. 🟤 Action Инициализации
5. 🟢 Action Команд
6. 🟣 Action Транзакций
7. ⚪ Action Сообщений
8. 🟡 Action Текстов
9. 🟠 Action Очистки
Подробнее о каждом Типе Action-а читайте в отдельном руководстве (на следующей странице):
«Типы Action-ов в @MenuBuilderBot» или по ссылке...
Добавление Action-а
Для добавления Action-а:
• Перейдите в вашем боте:
☞ Редактор Кнопок.
• Выберите кнопку, нажав ее.
• Нажмите инлайн кнопку со звездочкой ( * ) в сообщении с данными кнопки для попадания в её Настройки.
• Нажмите «Назначить Pre-Action» или «Назначить Post-Action», чтобы попасть в меню Action-ов (о Типах Action-ов).
Вам будет предложено выбрать один из нескольких видов Action-ов.
Обратите внимание что информационное сообщение содержит ссылку на "Материалы Помощи".
❖ Элементы управления Action-ами
Основные элементы управления
Созданные Action-ы, в режиме редактирования, представлены сообщениями в чате с ботом. Под каждым сообщением с данными Action-а присутствуют инлайн кнопки которые позволяют вам управлять уже созданными Action-ами.
Заменить
«Заменить» - позволит вам изменить данные уже существующего Action-а.
Удалить
«Удалить» - удалит Action.
Стрелки вверх и вниз
Стрелки «Вверх» и «Вниз» - позволяют перемещать Action-ы изменяя порядок выполнения их в цепочке при нажатии кнопки.
Дополнительные элементы управления
Копировать
«Копировать» - копирует в буфер созданный вами Action и позволяет вставить копию в эту же цепочку или добавить в цепочку любой другой кнопки. То есть Action-ы можно копировать между кнопками.
Выключить
«Выключить» (Выкл) - можно остановить выполнение отдельного Action-а. Данная функция предназначена для поиска ошибок при создании сложных последовательностей действий, путем исключения из обработки отдельных элементов. Это позволяет не удалять Action ради одного теста.
Комментарий
«Коммент» - позволяет добавить комментарий каждому экшену. Бывает полезно оставить себе "напоминание" для особо сложных Action-ов или при большом их количестве.
Предпросмотр сообщений Action-ов при их создании.
Для того что бы текст сообщений присвоенных Action-ам выводился в настройках Action-ов используйте команду с параметрами:/actionmessage
Параметром служит любое целое число от 0 до 200.
Параметр определяет количество символов которое будет показано в предпросмотре.
При параметре равном 0 (ноль)(значение по умолчанию), вместо сообщения будет выводиться галка, как раньше.
Например:/actionmessage 0
Установка по умолчанию
Покажет 30 первых букв присвоенных сообщений.
Настройка применима к сообщениям о несрабатывании условий или об успешном срабатывании самого Action-а.
❖ Дополнительная Информация
Где приобретать плагины для Action-ов?
Поскольку Action-ы являются частью функционала кнопок, плагины расширяющие их функционал:
● «Макросы»
● «Выражения»
● «Условия»
● Работа с Глобальными Переменными
являются общими с плагинами кнопок Бонус и Обмен и потому приобретаются там же.
Макросы и Выражения Кнопок.
Условия.
Бонус в Глобальной Переменной.
Для подключения перейдите в вашем боте:☞ 🔐Админ | 🧩Расширения | 📂Кнопки
Если вы уже приобретали какие либо из плагинов для Бонусных кнопок или Кнопок Обмена в этом боте, то покупать их больше не нужно - это общие для всех плагины.
• • •
Использование выражений в Action-ах.
Более того, работа с выражениями является ключевой особенностью Action-ов, поэтому четкое понимание механик работы с ними поднимет ваш проект на совершенно иной уровень (Руководство по выражениям).
• • •
Использование переменных Времени в выражениях Action-ов.
Позволит вам отмечать определенные даты сохраняя их в переменных, отмерять отрезки времени, показывать юзеру время оставшееся до события (оставшееся время подписок, походы «в лес» в играх и прочее), вычислять другие данные (размеры инвестов в зависимости от прошедшего времени например) - Руководство по Переменным Времени.