Эта функция добавит к результирующему сообщению шаблона кнопку. Принимает шесть строковых аргументов.
Первый аргумент — стиль кнопки:
LINK
— Кнопка-ссылка серого цвета, используется для открытия веб-страниц;PRIMARY
— Основная кнопка синего цвета, обычно используется для подтверждения какой-либо операции;SECONDARY
— Вторичная кнопка серого цвета, используется как отмена или для редко используемых операций;SUCCESS
— Кнопка зелёного цвета, используется для выполнения какой-либо положительной операции;DANGER
— Кнопка красного цвета, используется для выполнения какой-либо деструктивной операции;Второй аргумент — URL для кнопки-ссылки, для остальных видов кнопок уникальный идентификатор;
Третий аргумент — наименование кнопки;
Четвёртый аргумент — эмоция (опциональная, можно указать null);
Пятый аргумент — UUID Действия для выполнения (для всех видов кнопок, кроме кнопки-ссылки)
Можно найти в действии, кнопка i;
Шестой опциональный аргумент - логический признак того, отключена ли кнопка.
{% do button('LINK', 'https://juniper.bot/', 'Website', '🦊') %}
{% do button('PRIMARY', 'acceptBtn', 'Подтвердить', '✅', 'b39297ea-cc2d-4f88-a475-d4a9df94cb99') %}
{% do button('PRIMARY', 'acceptBtn', 'Accept (Disabled)', '✅', 'b39297ea-cc2d-4f88-a475-d4a9df94cb99', true) %}
#кнопка #компонент #UUID
Расскажу немного для того что бы научиться обращаться к компонентам
Зачем я написал это?
Если мы пропишем команду, то мы увидим вот это:
«Привет выбери что ни будь»
Или мы можем увидеть пустой ответ. Если написать else и endif.
Если мы туда напишем кнопку, получим текст с кнопкой. Указав наш ID, где мы можем указать его в component.id. То мы направим нашу кнопку на него.
Немного не так написал. Айди кнопки, работают вместе с компонентом.
Так же мы можем направить на обратно, т.к у нас в конце else логично, то что если мы пропишем кнопку с ID: back или другим содержанием, сначала поищет айди, если его нет, то переведет на старт меню.
Таким образом не найдя нужного айди, просто мы окажемся в начале.
Вроде мы разобрались с главным
#кнопка #компонент #UUID
#ifelseifelse
{% if component.id == "1" %}
{# В коде возможны ошибки, пишите в комментариях о них #}
Вы в пункте номер 1.
{% else %}
Привет, выбери чо ни будь
{% endif %}
Зачем я написал это?
Если мы пропишем команду, то мы увидим вот это:
«Привет выбери что ни будь»
Или мы можем увидеть пустой ответ. Если написать else и endif.
Если мы туда напишем кнопку, получим текст с кнопкой. Указав наш ID, где мы можем указать его в component.id. То мы направим нашу кнопку на него.
Немного не так написал. Айди кнопки, работают вместе с компонентом.
Примечание: у кнопок есть лимит, лучше не используйте кнопок слишком много
Так же мы можем направить на обратно, т.к у нас в конце else логично, то что если мы пропишем кнопку с ID: back или другим содержанием, сначала поищет айди, если его нет, то переведет на старт меню.
{% if component.id == "1" %}
{# В коде возможны ошибки, пишите в комментариях о них #}
Вы в пункте номер 1.
{% do button('PRIMARY', 'back12112', 'Назад', '🔙', 'b39297ea-cc2d-4f88-a475-d4a9df94cb99') %}
{% else %}
Привет, выбери чо ни будь
{% endif %}
Таким образом не найдя нужного айди, просто мы окажемся в начале.
Вроде мы разобрались с главным
#кнопка #компонент #UUID
#ifelseifelse
Расскажу про run. Ран запускает другое действие. Это очень пригодится для многофункциональных или для тех кто купил донат в Juniper.
Например сделаем показ баланса пользователя. Если у него окажется: куплен скрытый баланс(есть роль или проверяется через атрибут) то ран пригодится и переносимся на другое действие где показывают баланс тип "Эфемерное сообщение" то есть извизибл сообщение, кроме того кто вызвал команду.
Примерно так это выглядит:
1 действие.
Далее во втором действии включаем Эфемерное сообщение и пишем туда баланс. (Новый товар в магазине есть, можно сделать новое в магазине. Это идея)
#run #UUID
#ifelseifelse #role
Например сделаем показ баланса пользователя. Если у него окажется: куплен скрытый баланс(есть роль или проверяется через атрибут) то ран пригодится и переносимся на другое действие где показывают баланс тип "Эфемерное сообщение" то есть извизибл сообщение, кроме того кто вызвал команду.
Примерно так это выглядит:
1 действие.
{% if member.hasRole(ID role) %}
{% run("id второго действия") %}
{% else%}
Тут должен быть баланс для тех у кого нет этой услуги
{% endif %}
Так же может использоваться при проверке на роль:hasRoles(Роли)
Проверяет, есть ли все указанные роли у участника.hasAnyRole(Роли)
Проверяет, есть ли у участника хотя бы одна из перечисленных ролей.
Далее во втором действии включаем Эфемерное сообщение и пишем туда баланс. (Новый товар в магазине есть, можно сделать новое в магазине. Это идея)
Полезно! Если у вас используются кнопки, важно указывать отредактировать сообщение компонента.
#run #UUID
#ifelseifelse #role