Сервисы MAXONLINE.RU
  • Сервисы MAXONLINE.RU
  • Быстрый старт
  • 🧑‍🏫Поддержка
  • Инструкции для Leadtex
    • 👽БотДжеты
      • 📅Календарь
        • 👷‍♂️Как работает
        • ⬆️Версии ботджета "Календарь"
        • 🎻Как использовать
        • ⚙️Инструкция по настройке Календаря
          • 📹Видео инструкция по настройке
          • ⚠️Возможные ошибки и исправление
      • ☑️Множественный выбор
        • 👷‍♂️Как работает
        • ⬆️Версии ботджета "Множественный выбор"
        • 🎻Как использовать
        • ⚙️Инструкция по настройке "Множественного выбора"
Powered by GitBook
On this page
  • Блок "Операция над переменной"
  • Настройки блока "Операция над переменной"
  • Блок "Цепочка сообщений"
  • Настройка "Цепочки сообщений"
  • Блок "HTTP-запрос"
  • Настройка блока "HTTP-запрос"
  • Блок "Удалить переменную"
  • Настройка блока "Удалить переменную"
  1. Инструкции для Leadtex
  2. БотДжеты
  3. Множественный выбор

Инструкция по настройке "Множественного выбора"

PreviousКак использовать

Last updated 1 year ago

☝🏻 ВНИМАНИЕ! В следующем видео фрагменты, в которых говорится о "результирующих переменных (переменные-близнецы)" относятся к версии v1 ботджета. В версии v2 в "близнецах" сохраняются не маркеры, а значения 0/1, где 0 = выключено, 1 = включено.

Далее по тексту описание для версии v2. Для версии v1 по аналогии.

Для работы Ботджета "Множественный выбор" используется от 2 до 4 блоков

Минимально используй 2 блока: "Цепочка сообщений" и "HTTP-запрос", при условии, что:

  1. переменные с надписями на кнопках "Цепочки сообщений" созданы ранее по сценарию

  2. и не хочешь удалять эти переменные после отработки "Множественного выбора".

Блок "Операция над переменной"

Если уже есть переменные с надписями на кнопках, пропусти этот пункт.

Добавь блок "Операция над переменной"

Настройки блока "Операция над переменной"

Тип операции:

Массовое присвоение

Локальные переменные для присвоения

Присваиваем переменным значения, которые должны выводиться в виде надписей на кнопках. Значение должно включать маркер, который отображает выбор/снятие данного пункта списка. Например: "⬜ Пункт 1".

Также предлагаю сразу создать переменные-близнецы с приставкой "res_" к имени переменной для кнопки. Это результат выбора. Назовем их "переменные-близнецы". В эти переменные ботджет поместит: 0 для "выключен", 1 для "включен".

Ботджет создаст такую результирующую переменную автоматически, но только для кнопок, которые будут нажаты. Если кнопка не нажата, то есть этот пункт списка опций не был выбран пользователем, то переменная автоматически создана не будет.

Далее в сценарии для определения того, какие пункты списка пользователь выбрал, а какие нет, можно использовать как основные переменные кнопок, так и результирующие переменные. Если решите использовать результирующие переменные, то переменные с надписями на кнопках лучше удалить после окончательного выбора пользователя.

Соедините блок "Операция над переменной" со следующим блоком "Цепочка сообщений"

Блок "Цепочка сообщений"

Этот блок выведет список пунктов для выбора, которые пользователь помечает маркером.

Добавьте в сценарий блок "Цепочка сообщений" и настройте его.

Настройка "Цепочки сообщений"

Добавьте текст (картинку) перед блоком кнопок, объясняющие в чем суть списка пунктов для выбора.

В разделе "Меню" добавьте кнопки. В надписях на каждой кнопке вставьте локальные переменные, в которых хранится текст кнопок.

Добавьте кнопку для выхода из блока после того, как все нужные пункты пользователь отметил, например кнопку "Далее" или "Сохранить".

Все кнопки сделайте инлайн и расположите относительно друг друга.


Записать ответ в пользовательскую переменную

включить

Имя переменной

cmd

Повторный вопрос

включить

Подменять предыдущее сообщение в чате

включить


Соедините все кнопки с маркерами, кроме кнопки выхода из Множественного выбора, со следующим блоком HTTP-запрос. Кнопку "Продолжить" HTTP-блока соединить с блоком с кнопками. Кнопку выхода соедините с блоком, в который должен попасть сценарий после выхода из Множественного выбора.

Блок "HTTP-запрос"

Блок "HTTP-запрос" обращается к ботджету и производит все операции по замене маркера на нажатой кнопке.

Добавьте блок "HTTP-запрос"

Соедините кнопку "Продолжить" блока HTTP с блоком "Цепочка сообщений", который выводит кнопки.

Настройка блока "HTTP-запрос"

URL

https://maxonline.ru/botjet/multiselect/v2/

Method

POST

Заголовки

нет

Body

x-www-form-urlencoded

cmd

{{ $cmd }}

Параметр "cmd" передает в запросе значение локальной переменной "cmd", в которой сохраняется надпись нажатой кнопки.


marker

⬜.✅

Строка маркеров, которые используются для отметки/снятия выбора пунктов на кнопках.

Строка маркеров должна быть в формате: <маркер><точка><маркер-антипод> без пробелов.

Если хотите использовать в боте несколько блоков "Множественный выбор" с разными парами маркеров, то можно указать в сроке все маркеры сразу, а далее копировать блок в другие части сценария. Ботджет будет самостоятельно выбирать и использовать в конкретном блоке HTTP те пары маркеров, которые увидит на кнопках.

Формат строки для нескольких пар маркеров:

<маркер1><точка><маркер1-антипод><точка><маркер2><точка><маркер2-антипод>...

То есть просто располагайте пары маркеров последовательно и ставьте точку после каждого маркера, кроме последнего.

Пример использования копии блока HTTP в разных частях сценария/бота

Укажите в параметре "marker" строку ⬜.✅.🙍‍♀️.🙋‍♀️

В одном месте бота в переменных "ms_bXX" используйте надписи на кнопках типа: "⬜ текст". При выборе кнопки ботджет увидит "⬜" и заменит его на ✅.

Скопируйте настроенный полностью блок HTTP-запрос "Множественный выбор" и вставьте его в другой сценарий бота. Никакие настройки в блоке HTTP менять не придется.

В этой части бота в переменных "ms_bXX" используйте текст на кнопках типа: "🙍‍♀️ текст". При выборе кнопки ботджет определит пару и заменит маркер на 🙋‍♀️.

То есть, вы можете настроить универсальный блок HTTP для множественного выбора, добавить в него все возможные пары маркеров и далее использовать копии блока во всех своих ботах без перенастроки.

Пример строки marker: ⬜.✅.✋.👌.🔴.🔵.⚪.⚫.0️⃣.1️⃣.🙍‍♀️.🙋‍♀️.🙈.🐵.👉.👈.⛔.🆗


Отправлять в запросе данные контакта

включить

Записать ответ json в переменные

включить

Соотношение переменных

name -> ms_name
value -> ms_value
resname -> ms_resname
resvalue -> ms_resvalue

Обработать ответ с помощью JavaScript

включить

Вставить в поле код:

ms_name=getContactVariable("ms_name"),ms_value=getContactVariable("ms_value"),ms_resname=getContactVariable("ms_resname"),ms_resvalue=getContactVariable("ms_resvalue"),setContactVariable(ms_name,ms_value),setContactVariable(ms_resname,ms_resvalue),deleteContactVariable("ms_name"),deleteContactVariable("ms_value"),deleteContactVariable("ms_resname"),deleteContactVariable("ms_resvalue"),deleteContactVariable("cmd");

Повторный вопрос

включить


Блок "Удалить переменную"

Если далее собираетесь работать с переменными, содержащими текст кнопок, то пропустите этот пункт.

Добавьте блок "Удалить переменную".

Настройка блока "Удалить переменную"

Добавьте все локальные переменные, которые нужно удалить.


Настройка ботджета "Множественный выбор" завершена

Поделитесь в группе своими парами маркеров:

https://t.me/botjets
👽
☑️
⚙️
Множественный выбор. Где использовать. Виды. Настройка
Настройки "Операция над переменной"
Кнопки с пунктами списка и кнопка выхода
Все кнопки перенесите в онлайн и расположите как вам нужно
Цепочка сообщений. Раздел Дополнительно.
Кнопки с маркерами соедините с блоком HTTP-запрос. Кнопку выхода со нужным блоком.
Добавить блок HTTP-запрос
URL блока HTTP-запрос
Раздел Body блока HTTP-запрос
Отправить контакт в запросе и записать ответ json в переменные
Блок JavaScript
Повторный вопрос включить
Удалить переменную
Удалить переменную
Page cover image