Диалоговое окно
Тип действия "Диалоговое окно" используется для отображения всплывающего окна с полями ввода для получения каких-либо данных от участника в удобном интерфейсе.
Чем полезно?
Вы можете создать действие, которое покажет диалоговое окно для заполнения какой-либо информации участником, подтверждение которого запустит другое действие для обработки этих данных.
Поведение и настройки
Диалоговые окна состоят из компонентов и могут быть запущены, используя только:
Все компоненты, доступные для добавления в диалоговое окно, описаны в статье Компоненты.
В настройках диалогового окна необходимо указать действие подтверждения, в шаблоне которого будет доступна переменная-карта modal.values, ключи которой — идентификаторы компонентов, а значения — введённые участником данные.
Ограничения
Ограничения
Диалоговые окна имеют некоторые ограничения:
- Диалоговое окно должно иметь хотя бы один компонент, но не более пяти компонентов.
- Диалоговое окно не может запускать другое диалоговое окно при подтверждении.
Пример
Например, вы хотите создать простую команду профиля участника. Для этого:
Создайте новую пользовательскую команду (обратите внимание на уже существующее действие, не трогайте его пока, оно понадобится позже);
Создайте новое действие с названием "Подтверждение" и выберите "Отправка сообщение" как тип действия, отметьте "Эфемерное сообщение" и вставьте следующий шаблон:
JuniperBot Templatedo member.getAttribute('profile').update(modal.values.profile) Новый профиль успешно сохранён. modal.values.profileСоздайте новое действие с названием "Диалог" и сделайте следующее:
Выберите "Диалоговое окно" как тип действия;
Введите наименование "Обновление профиля";
Установите действие "Подтверждение" как действие подтверждения диалога:
Добавьте компонент Поле ввода как многострочный, заполните наименование как "Введите профиль", введите
profileв идентификатор, отметьте "Требуется значение" и вставьте следующий шаблон в значение по-умолчанию:JuniperBot Templatemember.getAttribute('profile').value
В стандартном действии из первого шага убедитесь что оно типа "Отправка сообщения" и введите следующий шаблон для отображения текущего профиля:
JuniperBot Template- (member.getAttribute('profile').value) ?: 'Нет информации' -Сюда же добавьте новую Кнопку с наименованием "Обновить" и любым идентификатором и выберите "Диалог" как его действие.
Сохраните.