QNext Cases
168 subscribers
3 photos
84 links
Download Telegram
Channel created
Статистика после голосования

Очень часто пользователи пытаются создать кнопку Статистика в голосовании. При этом они желают, чтобы эта кнопка была доступна только тем, кто принял участие в голосовании.

- Для этого:
На условную кнопку Статистика нужно установить реакцию ⚡️takeVote, которая проверит наличие голосов в текущем опросе
- После ⚡️takeVote нужно установить блокирующую реакцию ⚡️brake или ⚡️return с условием voteResult ≠ exist (голоса в опросе нет). Таким образом бот с помощью ⚡️takeVote бот проверит наличие голосов и передаст информацию блокирующей реакции, которая сработает, если пользователь не проголосовал в данном опросе. На кнопку статистики можно установить 2 реакции ⚡️message.
-⚡️message - Чтобы посмотреть статистику, нужно проголосовать. (У этого сообщения должно быть ограничение с таким же условием, как на блокирующей реакции. Эта реакция должна идти перед блокирующей реакцией).
-⚡️message - Результаты голосования !{macros.open}vote|type:results;template: $title ($count)} (Эта реакция должна идти после блокирующей реакции).

#statistic #Статистика #Опрос
1️⃣ СПИСОК:

1️⃣ Ограничение работы команды в определённом чате.
2️⃣ Ограничение работы команды на определенного пользователя.
3️⃣ Создание рандомного ответа от бота.
4️⃣ Публикация в чат ссылки скрытой под текстом.
5️⃣ Позволяет выбрать несколько случайных пользователей бота.
6️⃣ Создание кнопки-переключателя в меню.
7️⃣ API курсов валют ЦБ РФ.
8️⃣ Создание формы для новичков и показ результата формы.
9️⃣ Отправка сообщений через указанный промежуток времени.
🔟 Первое расписание.
1️⃣1️⃣ Доступ к боту только для подписчиков.
1️⃣2️⃣ Работа с реакцией: ⚡️runScript.
1️⃣3️⃣ Вывод размера файла добавленного в Контент.
1️⃣4️⃣ Простой калькулятор.
1️⃣5️⃣ Публикация случайного (рандомного) контента.
1️⃣6️⃣ Премирование пользователей в чате (начисление баллов).
1️⃣7️⃣ Телеграм клавиатуры.
1️⃣8️⃣ Предупреждение пользователей.
1️⃣9️⃣ Команда start для пользователей бота
2️⃣0️⃣ Капча!
2️⃣1️⃣ Скрытое ветвление поля branch в Форме
2️⃣2️⃣ Выбор языка общения с ботом.
2️⃣3️⃣ Публикация списка участников группы.
2️⃣4️⃣ Публикация списка участников 👥Списка пользователей.
2️⃣5️⃣ Публикация сообщения в чат на 24 часа.
2️⃣6️⃣ Публикация сообщения в чат по расписанию.
2️⃣7️⃣ Эмодзи игра с ботом в чате.
2️⃣8️⃣ Временное отключение команды в чате, для всех пользователей, после запуска команды одним из пользователей.
2️⃣9️⃣ Отслеживание N сообщений подряд от одного пользователя, длиной менее L символов.
3️⃣0️⃣ Синхронизация значения параметра профиля пользователей со значения параметра профиля администратора.
3️⃣1️⃣ Загрузка и вывод результата последней заполненной формы.
3️⃣2️⃣ Публикация сообщения в чат на 5 секунд.
3️⃣3️⃣ Преобразование целого числа в строку цифровых эмодзи.
3️⃣4️⃣ Преобразование цифровых эмодзи в целое число.
3️⃣5️⃣ Голосование в контенте.

✴️1️⃣ Исключение в bot.api.
✴️2️⃣ Ограничение profileValue.
✴️3️⃣ Проверка условий строки.
✴️4️⃣ Работа бота в группе.
✴️5️⃣ Быстрый опрос из Контента.
✴️6️⃣ FAQ По параметрам 🆎Профиля.

#️⃣ Хештеги
2️⃣ СПИСОК:
3️⃣ СПИСОК:
👍2
1️⃣ Ограничение работы команды в определённом чате.
Сложность: ⭐️

Позволяет ограничить работу команды в том или ином чате.

Порядок действий:
Создать команду
- Зайти в ограничения
Добавить условие:
🚧 number - chat.id = 🆔 чата
* 🆔 вводить с "-" в начале.

Пример:
chat.id = -123456789

#ограничение #number

Требуется помощь?
2️⃣ Ограничение работы команды на определенного пользователя.
Сложность: ⭐️

Позволяет ограничить работу команды определенного юзера (пользователя)

Порядок действий:
Создать команду
- Зайти в ограничения
Добавить условие:
🚧number - user.id = 🆔 пользователя

Пример:
user.id = 123456789

#ограничение #number

Требуется помощь?
3️⃣ Создание рандомного ответа от бота.
Сложность: ⭐️

Позволяет отправлять пользователю разные ответы по одному запросу.

Порядок действий:

⚡️localVarSet: rand = !{macros.open|executeMode:contentPublication}random| type: number; min: 1; max: 5}

⚡️
message: !{macros.open|executeMode:contentPublication}switch| path: localVar.rand; type: number;
case: 1; value: текст 1;
case: 2; value: текст 2;
case: 3; value: текст 3;
case: 4; value: текст 4;
case: 5; value: текст 5;
}

#random #localVarSet

Требуется помощь?
4️⃣ Публикация в чат ссылки скрытой под текстом.
Сложность: ⭐️

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

Порядок действий:

Создать команду, используя регулярное выражение (например: /ссылка\s(.+)/i) в настройках команды указать: ☑️Доступно в чате

- В триггер команды добавить следующие реакции:

⚡️localVarSet — Тип: Строка — Название: url — Значение: <a href="${exec.1}">Ссылка</a>

⚡️
message Текст: ${localVar.url| notFound: null}

Пример:
ссылка https://www.google.com/
Результат:
Текст: Ссылка

#localVarSet

Требуется помощь?
5️⃣ Позволяет выбрать несколько случайных пользователей бота.
Сложность: ⭐️

Как выбрать нескольких пользователей бота из ... и показать их в чате.

Для этого необходимо:

Создаем команду
⚡️takeRandomUser = 2
⚡️sendMessage:
${takeUsers.0.name}
${takeUsers.1.name}

Для получения кликабельных ссылок на пользователей, используйте макросы ниже:

!{user|type: link; path: takeUsers.0;  }
!{user|type: link; path: takeUsers.1; }

#random #log

Требуется помощь?
6️⃣ Создание кнопки-переключателя в меню.
Сложность: ⭐️⭐️

Позволяет создать кнопку-переключатель в меню, с помощью которой можно добавлять и удалять пользователя в список.

Например: Создать кнопку-переключатель в меню, для добавления или удаления пользователя в список пользователей и отобразить это в разделе меню.

Для этого необходимо:

👤Люди👤Пользователи👥Списки пользователейСоздать👥 — Название: OnOff

🕹МенюСоздать🕹 — Название: MenuOnOff — Текст для пункта меню:
Кнопка-переключатель в меню

Пользователь: ${user.name} ${localVar.Action}: OnOff

⚙️Настройки раздела — Установить: 🔗Триггер-> Визуализация

В ➡️🔗Триггеры🔗Триггер Раздела добавить две реакции:

⚡️localVarSet — Тип: Строка — Название: Action — Значение: удален из списка
🚧ОграниченияДобавить условиеinUsersList — Значение: 🚫 — Список: 👥OnOff

⚡️localVarSet — Тип: Строка — Название: Action — Значение: добавлен в список
🚧ОграниченияДобавить условиеinUsersList — Значение: — Список: 👥OnOff

Добавить кнопкуcallback — Название: 🔘 ВклПропустить

⚙️Настройки кнопки🚧Ограничения Показа кнопкиДобавить условиеinUsersList — Значение: — Список: 👥OnOff

В 🔗Триггер раздела добавить три реакции:

⚡️delFromUserList👥OnOff

⚡️localVarSet — Тип: Строка — Название: Action — Значение: удален из списка

⚡️sendMenu🕹MenuOnOffВыбрать этот раздел
Установить: ☑️Редактировать на месте

Добавить кнопкуcallback — Название: ⚪️ ВыклПропустить

⚙️Настройки кнопки🚧Ограничения Показа кнопкиДобавить условиеinUsersList — Значение: 🚫 — Список: 👥OnOff

В 🔗Триггер раздела добавить три реакции:

⚡️addToUserList👥OnOff

⚡️localVarSet — Тип: Строка — Название: Action — Значение: добавлен в список

⚡️sendMenu🕹MenuOnOffВыбрать этот раздел
Установить: ☑️Редактировать на месте

Пример: Смотреть

#menu #profile

Требуется помощь?
7️⃣ API курсов валют ЦБ РФ.
Сложность: ⭐️⭐️⭐️

Создание http-запроса (см. https://t.me/qnext/259) и обработка JSON ответа при помощи динамических переменных (см. https://t.me/qnext/317).

Например: Показать по команде /kurs актуальный курс валют ЦБ РФ для доллара и евро на сегодня.

Для этого необходимо:

🌐WEB — ☸️Http-запросы — Создать☸️ — Название: КурсВалютЦБРФ — Ссылка: https://www.cbr-xml-daily.ru/daily_json.js — Тип: get — Формат ответа: json

💼Переменные — 💼Динамические переменные — Создать💼 — Название: Valute — Код переменной: Valute — Время кеширования: 1д.

В 🔗Триггер Сборки добавить две реакции:

⚡️httpRequest — Выбрать http-запрос: КурсВалютЦБРФ

⚡️dynamicVarSet — Выражение: ${httpResponse.value.Valute}


↙️Команды — Создать↙️ — Команда: /kurs
(Для работы команды в чате, необходимо: ⚙️Настройки — ☑️Доступно в чате)

В 🔗Триггер команды добавить две реакции:

⚡️loadDynamicVar — Переменная: Valute

⚡️sendMessages — Текст: Курс валют ЦБ РФ
на !{date| when: now; format: dd.mm.yyyy; }
Доллар США: ${dynamicVar.Valute.USD.Value} ₽
Евро: ${dynamicVar.Valute.EUR.Value} ₽
Пропустить
(Для работы реакции в чате, необходимо установить: ☑️Ответить в чате)

#httpRequest #DynamicVariable

Требуется помощь?
8️⃣ Создание формы для новичков и показ результата формы.
Сложность: ⭐️


Позволит создать форму, и после прохождения формы отправить ее целиком в чат, или же вывести и показать отдельные ответы.

Для этого необходимо:

🗄Формы - создать - ввести название и текст.
📋Поля - Добавить:
ℹ️info - ввести приветствие или любой желаемый текст
🔤abc - название поля + текст поля (вопрос)
↕️select - название поля + текст поля (вопрос)
- Добавить кнопки - название кнопки (описание можно пропустить)
🔙вернуться в раздел📋Поля
🔢number - название поля + текст поля (вопрос)
ℹ️info - ввести приветствие или любой желаемый текст

🗄Форма готов.

для выведения результатов формы, используйте переменные:
Полный текст:
${formResult.fieldsText}
Ответ на 1 поле:
${formResult.data.имя.text}
Выбор во 2 поле:
${formResult.data.пол.button.key}
Ответ на 3 поле:
${formResult.data.возраст.number}

#formResult

Требуется помощь?
9️⃣ Отправка сообщений через указанный промежуток времени.
Сложность: ⭐️⭐️⭐️

Позволяет отправлять сообщения с задержкой после запуска команды

🔸 Создайте ОД с таймером (относительным временем) - через сколько должно поступить сообщение.

🔸 Добавьте в триггер этого ОД реакцию ⚡️message с текстом.
(если нужна отправка в чат, в реакции message выставьте ☑️ Ответить в чате)

Создайте команду и установите реакцию:
⚡️userActionStart с настроенным раньше ОД.

#useful #delayedActions #ОД

Требуется помощь?
🔟 Первое расписание.
Сложность: ⭐️

Учимся создавать расписание и отправлять циклично сообщение в чат.

Для этого необходимо:

📅Расписание
📅Общие расписания
Создать📅 - ввести название
— Выбрать дату начала расписания — время в формате: [00 00]
— частоту повторения - пропустить - дату завершения (если не нужно, пропустить)

🔗Триггер - ⚡️Реакции:
⚡️takeChat
⚡️message

#расписание

Требуется помощь?