QNext Cases
168 subscribers
3 photos
84 links
Download Telegram
4️⃣8️⃣ Глобальный триггер: изменение статуса бота в чате
Сложность: ⭐️

Позволяет получать уведомления о добавлении, удалении и назначении бота админом в чате

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

⚙️ Настройки бота🔗Триггеры🤖Глобальный Триггер🔗Триггер До⚡️Реакции

⚡️ takeTechChat
🚧ОграниченияДобавить условие bool — Укажите путь до значения: ${update.my_chat_member.new_chat_member.status} — Значение: andbool — Укажите путь до значения: ${update.my_chat_member.new_chat_member.user.is_bot} — Значение: - and - string - Укажите путь до значения: ${update.my_chat_member.chat.type}private

⚡️localVarSet — Тип: Список — Название: userLink — Значение: !{user|path: targetUser; }

⚡️message — Текст:
Информация о чате:
title: ${update.my_chat_member.chat.title| notFound: n/a; }
ID: ${update.my_chat_member.chat.id| notFound: n/a; }
СтатусДо: ${update.my_chat_member.old_chat_member.status| notFound: n/a; }
СтатусПосле: ${update.my_chat_member.new_chat_member.status| notFound: n/a; }

Инициатор:
Ссылка: ${localVar.userLink| notFound: n/a; }
ID: ${update.my_chat_member.from.id| notFound: n/a; }

#${update.my_chat_member.new_chat_member.status| notFound: n/a; }_bot #changeStatusChat
— Файл: Пропустить
(Установить: ☑️Ответить в чате)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Опционально.
Можно добавить отправку сообщения в чат, куда добавляете бота.


⚡️takeChat ${update.my_chat_member.chat.id}
⚡️message - текст: ваш текст на усмотрение — Файл: Пропустить
(Установить: ☑️Ответить в чате)

🚧ОграниченияДобавить условие bool — Укажите путь до значения: ${update.my_chat_member.new_chat_member.user.is_bot} — Значение: — and — string — Укажите путь до значения: ${update.my_chat_member.old_chat_member.status} = left

#GlobalTrigger #bool #string

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

Описание: Если вашем чате был заблокирован/разблокирован пользователь администратором чата, бот вам отправит уведомление

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

👥Чаты/Каналы — выбрать чат — 🔗Триггеры🔗Триггер Обновления участника⚡️Реакции

⚡️
takeTechChat

⚡️message — Текст:
👮‍♂️ ${user.name} [${user.id}] заблокировал(а) в группе ${update.chat_member.chat.title} пользователя 👤 ${newMember.user.first_name} [${newMember.user.id}]
Time: !{macros.open|executeMode:contentPublication}date|
when: now;
format: dd.mm.yyyy HH:MM:ss
}
— Файл: Пропустить

🚧ОграниченияДобавить условие string — Укажите путь до значения: ${update.chat_member.new_chat_member.status} — Выберите значение: = — Укажите строку с чем сравнивать: kickedor — string — Укажите путь до значения: ${update.chat_member.old_chat_member} — Выберите значение: = — Укажите строку с чем сравнивать: kicked

⚡️message — Текст:
👮‍♂️ ${user.name} [${user.id}] разблокировал(а) в группе ${update.chat_member.chat.title} пользователя 👤 ${oldMember.user.first_name} [${oldMember.user.id}]
Time: !{macros.open|executeMode:contentPublication}date|
when: now;
format: dd.mm.yyyy HH:MM:ss
}
— Файл: Пропустить

🚧ОграниченияДобавить условие string — Укажите путь до значения: ${update.chat_member.old_chat_member.status} — Выберите значение: = — Укажите строку с чем сравнивать: kicked

#ограничение #string #group

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

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

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

❗️Внимание! Эксперимент!
Описание кейса в нестандартном формате.

#GlobalTrigger #bool #string

Требуется помощь?
5️⃣1️⃣ Глобальный триггер: остановка и повторный запуск бота
Сложность: ⭐️⭐️⭐️

Позволяет проверять, останавливал ли пользователь бота и запускал ли повторно.

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

⚙️ Настройки бота🔗Триггеры🤖Глобальный Триггер🔗Триггер До⚡️Реакции

⚡️ groupReactionsstartStopBot
Ограничения:
🚧ОграниченияДобавить условие string — Укажите путь до значения: ${update.my_chat_member.chat.type}— = —
private

⚡️localVarSet — Тип: Список — Название: userLink — Значение: !{user|path: targetUser; }

⚡️ groupReactions UserStartBot
🚧
ОграниченияДобавить условие string — Укажите путь до значения: ${update.my_chat_member.old_chat_member.status} — Выберите значение: = — Укажите строку с чем сравнивать: kickedand string — Укажите путь до значения: ${update.my_chat_member.new_chat_member.status} — Выберите значение: = — Укажите строку с чем сравнивать: member

— — — ⚡️takeTechChat

⚡️ message — текст:
Пользователь повторно запустил бота
Кто: ${localVar.userLink|notFound: n/a; }
ID: ${update.my_chat_member.from.id|notFound: n/a; }
Дата: !{date|
when: now;
format: dd.mm HH:MM:ss;
}

Опционально можно добавлять любые другие реакции
Если
нужна работа с пользователем, используем следующий механизм:
— — — — ⚡️takeUsers${update.my_chat_member.from.id; noParse}
— —⚡️localVarSet тип: Число — Название: userId — Значение: ${targetUser.id; noParse}

⚡️ groupReactions UserStopBot
🚧
ОграниченияДобавить условие string — Укажите путь до значения: ${update.my_chat_member.old_chat_member.status} — Выберите значение: = — Укажите строку с чем сравнивать: memberand string — Укажите путь до значения: ${update.my_chat_member.new_chat_member.status} — Выберите значение: = — Укажите строку с чем сравнивать: kicked

— — — ⚡️takeTechChat

⚡️ message — текст:
Пользователь остановил бота
Кто: ${localVar.userLink|notFound: n/a; }
ID: ${update.my_chat_member.from.id|notFound: n/a; }
Дата: !{date|
when: now;
format: dd.mm HH:MM:ss;
}

Опционально можно добавлять любые другие реакции
Если
нужна работа с пользователем, используем следующий механизм:
— — — — ⚡️takeUsers${update.my_chat_member.from.id; noParse}
— —⚡️localVarSet тип: Число — Название: userId — Значение: ${targetUser.id}

#GlobalTrigger #bool #string

Требуется помощь?
5️⃣2️⃣ Загрузка медиа на https://telegra.ph
Сложность: ⭐️

Описание: Бот отправляет медиа на https://telegra.ph и присылает прямую ссылку на файл

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

🗄ФормыСоздать🗄 — Техническое название: Загрузка медиа — Заголовок формы: Пришлите фотографию

⚙️
Настройки☑️Нельзя отменить

📋Поля
Добавить🖼image — Название поля: Медиа — Текст поля: Пропустить — Файл для поля: Пропустить

➡️🔗Триггеры
🔗Триггеры🔗Триггер Финиш⚡️Реакции

⚡️
message — Текст:
${formResult.data.Медиа.file.url} — Файл: Пропустить

↙️КомандыСоздать↙️ — Команда: /media

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

⚡️formStart — Выберите форму: 🗄Загрузка медиа

#command #form

Требуется помощь?
5️⃣3️⃣ Ежедневный бонус
Сложность: ⭐️

Описание: Ежедневный бонус позволяет один раз в сутки получить пользователю бонус

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

⚙️Настройки бота🆎Профиль👥Участники чатаСоздать — Название профиля: Bonus — тип профиля: number

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

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

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

⚡️ groupReactionsbonus 🔴
🚧
ОграниченияДобавить условие inUsersList — Значение: 🚫 — Список пользователей: 👥Ежедневный бонус

⚡️
profileAdd — Выберите тип: 👥Участники чата — 🆎Bonus — Выражение для записи параметра: 2000

⚡️message — Текст:
Вы получили 2000 монет 💰 — Файл: Пропустить
(Установить: ☑️Ответить в чате)

⚡️ sendMessage — Текст:
Бонус доступен раз в сутки 🎁 — Файл: Пропустить
(Установить: ☑️Ответить в чате)
🚧ОграниченияДобавить условие inUsersList — Значение: — Список пользователей: 👥Ежедневный бонус

⚡️
addToUserList — Список пользователей: 👥Ежедневный бонус

📬Рассылки
Добавить — техническое название: Ежедневный бонус

👥
Получатели👥Список пользователей 👥Ежедневный бонус

🔗Триггеры
🔗Триггер Рассылки⚡️Реакции

⚡️
delFromUserListСписок пользователей 👥Ежедневный бонус

📅Расписание
📅Общие расписанияСоздать📅 — Техническое название: Ежедневный бонус — Дата старта расписания: Сегодня — Время: 12 00 — Как часто повторять: Каждый день — Период повторения: Пропустить — Дата завершения расписания: Пропустить

🔗Триггер
⚡️Реакции

⚡️
newsletterRevoke📬Ежедневный бонус

⚡️newsletterStart📬Ежедневный бонус

#ограничение #command #group

Требуется помощь?
5️⃣4️⃣ Бот знает ответ на любой вопрос
Сложность: ⭐️

Например: Пользователь пишет любой вопрос боту, в ответ случайный ответ от бота.
Примерный бот: @AnsRobot

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

🌐WEB☸️Http-запросыСоздать☸️ — Название: Yes No — URL: https://yesno.wtf/api — Тип: get — Формат ответа: json

↙️Команды
Создать↙️🟠Любое Сообщение🟠Сообщение
🚧ОграниченияДобавить условие bool — Укажите путь до значения: ${update.message.text} — Значение:

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

⚡️localVarSet — Тип: Строка — Название: text — Значение: ${update.message.text}

⚡️httpRequest — Выбрать http-запрос: Yes No

⚡️uploadFile — Путь до ссылки на файл: ${httpResponse.value.image}

⚡️ sendMessage — Текст:
Вопрос - ${localVar.text|notFound: error}
Мой ответ - Да!
!{macros.open}attachment| path: uploadedFile}
— Файл: Пропустить
🚧ОграниченияДобавить условие string — Укажите путь до значения: ${httpResponse.value.answer} — Выберите значение: = — Укажите строку с чем сравнивать: yes

⚡️ sendMessage — Текст:
Вопрос - ${localVar.text|notFound: error}
Мой ответ - Нет!
!{macros.open}attachment| path: uploadedFile}
— Файл: Пропустить
🚧ОграниченияДобавить условие string — Укажите путь до значения: ${httpResponse.value.answer} — Выберите значение: = — Укажите строку с чем сравнивать: no

#localVar #command #ограничение

Требуется помощь?
5️⃣5️⃣ Сократить длинные ссылки
Сложность: ⭐️

Примерный бот: @CurtailBot

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

🌐WEB☸️Http-запросыСоздать☸️ — Название: shorter — URL: https://is.gd/create.php — Тип: get — Формат ответа: json

🔧Параметры
queryСоздать

1) Ключ параметра: format — Значение параметра: json

2) Ключ параметра: url — Значение параметра: ${localVar.URL}

↙️КомандыСоздать↙️🟠Любое Сообщение🟠Сообщение
🚧ОграниченияДобавить условие string — Укажите путь до значения: ${update.message.entities.0.type} — Выберите значение: = — Укажите строку с чем сравнивать: url

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

⚡️localVarSet — Тип: Строка — Название: URL — Значение: ${update.message.text}

⚡️httpRequest
— Выбрать http-запрос: shorter

⚡️
sendMessage — Текст:
Исходная ссылка : ${update.message.text}
Укороченная ссылка : ${httpResponse.value.shorturl|notFound: error}
— Файл: Пропустить

#localVar #command #ограничение

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

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

🕹МенюСоздать🕹 — Техническое название: duel — Текст для пункта меню: 🎯 Пользователь !{macros.open}user} начинает набор на дуэль!

Добавить кнопкуcallback — Текст кнопки: Присоединиться
⚙️Настройки меню✏️Значение 1${user.id}

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

⚡️groupReactionsInitiator
🚧
ОграниченияДобавить условие string — Укажите путь до значения: ${buttonsVar.v1} — Выберите значение: = — Укажите строку с чем сравнивать: ${user.id}

⚡️takeChat — Пропустить — Открыть реакцию — ✏️Изменить текст ${update.callback_query.message.chat.id}

— —⚡️takeUsers ${buttonsVar.v1}

— —— ⚡️alert Текст: 🗿 Похоже, вам нужно обратиться к психологу! Вы пытается вызвать на дуэль самого себя!

⚡️groupReactionsNotInitiator
🚧
ОграниченияДобавить условие string — Укажите путь до значения: ${buttonsVar.v1} — Выберите значение: ≠ — Укажите строку с чем сравнивать: ${user.id}

⚡️notification Текст: Вы приняли дуэль!

⚡️deleteMessage (Установить: ☑️Ответить в чате)

⚡️localVarSet — Тип: Число — Название: random — Значение: !{macros.open}random| type: number; min: 1; max: 2}

⚡️ sendMessage — Текст:
Итоги дуэли:
😎 Победитель: ${user.name}
😔 Проигравший: ${update.callback_query.message.entities.0.user.first_name}
— Файл: Пропустить
(Установить
: ☑️Ответить в чате)

🚧ОграниченияДобавить условие number — Путь до значения: ${localVar.random} — Выберите значение: = — Укажите число с чем сравнивать: 1

⚡️sendMessage — Текст:
Итоги дуэли:
😎 Победитель: ${update.callback_query.message.entities.0.user.first_name}
😔 Проигравший: ${user.name
} — Файл: Пропустить
(Установить
: ☑️Ответить в чате)

🚧ОграниченияДобавить условие number — Путь до значения: ${localVar.random} — Выберите значение: = — Укажите число с чем сравнивать: 2

↙️
КомандыСоздать↙️ — Команда: /^дуэль$/i
(Для работы команды в чате, необходимо: ⚙️Настройки☑️Доступно в чате)
🚧ОграниченияДобавить условиеisReplyMessage — Значение: 🚫

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

⚡️sendMenu🕹duel
(Установить: ☑️Ответить в чате)

#ограничение #command #group

Требуется помощь?
5️⃣7️⃣ Работа расписания по первым понедельникам каждого месяца.
Сложность: ⭐️

Описание: Настроить работу расписания по первым понедельникам каждого месяца.

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

📅Расписание
📅Общие расписанияСоздать📅 — Название: firstMondayOfEveryMonth — Дата старта: Понедельник — Время старта: (любое желаемое время) — Частота повторения: Каждую неделю — Период повторения: 1 — Дата завершения: Пропустить

В 🔗Триггер расписания добавить следующие реакции:

⚡️localVarSet — Тип: Число — Название: nowDay — Значение: !{date| when: now; format: dd}

⚡️ groupReactionsfirstMonday
🚧
ОграниченияДобавить условиеnumber — Путь до значения: ${localVar.nowDay} — Значение: <= — Число: 7

В группу firstMonday добавить свои реакции.
Все реакции в этой группе будут выполнятся в первый понедельник каждого месяца.

#ограничение #macros #group

Требуется помощь?
👍1
5️⃣8️⃣ Работа с WEB
Сложность: ⭐️

Пример: https://t.me/Qnext_Examplebot?start=example

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

🌐WEB — 🌐Web-ссылки — Создать — Название ссылки: example (или любое другое удобное название)

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

⚡️ sendMessage — Текст:
Это сообщение отправлено при переходе по ссылке — Файл: Пропустить

#web

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

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

⚙️Настройки бота🔗Триггеры🔗Триггер Сервисные сообщения

В 🔗Триггер добавить следующие реакции:

⚡️groupReactionsnewChatTitle (или любое другое удобное название)
🚧ОграниченияДобавить условие string — Укажите путь до значения: ${update.message.new_chat_title} — Выберите значение: ≠ — Укажите строку с чем сравнивать: ${oldTitle}

⚡️takeTechChat

⚡️ sendMessage — Текст:
👤 !{macros.open}user} [${user.id}]
Group: ${update.message.chat.title}
${oldTitle} ➡️ ${newTitle}
— Файл: Пропустить

#string #group

Требуется помощь?
6️⃣0️⃣ Уведомление о начале/завершение голосового чата
Сложность: ⭐️

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

⚙️Настройки бота🔗Триггеры🔗Триггер Сервисные сообщения

В 🔗Триггер добавить следующие реакции:

⚡️groupReactionsvoiceChatStarted (или любое другое удобное название)
🚧ОграниченияДобавить условие string — Укажите путь до значения: ${serviceMessage.name} — Выберите значение: = — Укажите строку с чем сравнивать: voiceChatStarted

⚡️takeTechChat

⚡️ sendMessage — Текст:
🎙!{user} [${user.id}]
Group: ${update.message.chat.title}
— Файл: Пропустить

⚡️groupReactionsvoiceChatEnded (или любое другое удобное название)
🚧ОграниченияДобавить условие string — Укажите путь до значения: ${serviceMessage.name} — Выберите значение: = — Укажите строку с чем сравнивать: voiceChatEnded

⚡️runScript — Текст:
exports.time = qnext.getValue('voiceChatEnded.duration', 0) / 60;

⚡️takeTechChat

⚡️ sendMessage — Текст:
🎙!{user} [${user.id}]
Group: ${update.message.chat.title}
Time: !{script| code: +qnext.getValue("localVar.time", 0).toFixed(0); errorText: error;} minutes or ${voiceChatEnded.duration|notFound: error; } seconds
— Файл: Пропустить

#string #group #JScript

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

Например: Позволяет отдавать информацию другим ботам по запросу

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

Bot1🌐WEB🕸WebhooksСоздать — Название webhook-а: example (или любое другое удобное название)

🔗Триггер🔗Триггер POST/GET — добавить одну реакцию:

⚡️webhookResponse — Ответ для webhook-а
ok (или любой другой удобный текст)

Bot2🌐WEB☸️Http-запросыСоздать☸️ — Название: bot — URL: https://qnext.app/bin/webhooks... — Тип: post — Формат ответа: text

Если у вас нет второго бота, где настраивать вебхук, а интересно, как будет работать, можете использовать эту ссылку для http-запроса: https://qnext.app/bin/webhooks/1/391/8915dOFVzWRs49Pj

#web #httpRequest

Требуется помощь?
6️⃣2️⃣ Загрузка медиа на telegra.ph 2.0
Сложность: ⭐️

Описание: Бот отправляет медиа на telegra.ph и присылает прямую ссылку на файл.
Пример: @MediaDowBot

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

↙️КомандыСоздать↙️🟠Любое Сообщение🟠Сообщение

В 🔗Триггер добавить следующие реакции:

⚡️uploadToTelegraph — Путь к значению: ${update.message}

⚡️ sendMessage — Текст:
${uploadResult.link|notFound: error} — Файл: Пропустить

Важно:
— Реакция работает только с фото и видео.
— Ограничения Телеграфа очень строгие - ~20мб на файл. Загрузить фильм не получится.

#command

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

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

↙️КомандыСоздать↙️ — Команда: /statistics
🚧
ОграниченияДобавить условие isAdmin — Выберите значение:

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

⚡️ sendMessage — Текст:
📊Статистика
Всего пользователей: !{usersCount| type: all;}
Пользователь запустил бота в привате: !{usersCount| type: all; status: started;}
Пользователь заблокировал бота: !{usersCount| type: all; status: blocked;}
Аккаунт пользователя удален Телеграмом: !{usersCount| type: all; status: deleted;}
— Файл: Пропустить

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

Требуется помощь?
6️⃣4️⃣ Работа с глобальными переменными
Сложность: ⭐️

Описание: случайный ответ от бота, используя глобальную переменную

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

💼Переменные🧳Глобальные переменныеСоздать🧳 — Название: random — Код переменной: text — Значение:
текст1
текст2
текст3

↙️
КомандыСоздать↙️ — Команда: /random

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

⚡️loadGlobalVariable

⚡️runScript
— Текст скрипта:
function getRandomNum(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min)) + min;
}
var globVar = qnext.getValue('globalVar.text','');
var array = globVar.split(qnext.constants.NewLine);
var text = getRandomNum(0, array.length);
exports.word = array[text];

⚡️ sendMessage — Текст:
${localVar.word} — Файл: Пропустить

#command #JScript #GlobalVariable

Требуется помощь?
6️⃣5️⃣ Сортировка и публикация списка рейтинга
Сложность: ⭐️ ⭐️⭐️⭐️ ⭐️

Создание команды для публикации в группу отсортированного списка рейтинга участников группы.
❗️Ограничения:
1. В списке могут состоять не более 100 пользователей.
2. В список не попадают пользователи с нулевым рейтингом.
3. Количество пользователей в списке регулируется переменной sort.qantStr

Например: В группе, по команде: !ratings создать и опубликовать список пользователей, у которых профиль пользователя rating больше нуля.

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

Иметь ранее созданный 🆎Профиль 👤Пользователя c именем: rating и ранее установленными значениями.

🌐WEB☸️Http-запросыСоздать☸️ — Название: sortList — Ссылка: https://qnext.app/bin/webhooks/3428/334/AqPMFyFmMr9IqyLD — Тип: post — Формат ответа: json

🔧Параметры
bodyСоздать — Ключ параметра: sort — Значение параметра: ${localVar.sort}

🔧ПараметрыheadersСоздать — Ключ параметра: Content-Type — Значение параметра: application/json

↙️КомандыСоздать↙️ — Регулярное выражение: /!ratings/i
(Установить: ⚙️Настройки☑️ Доступно в чате)

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

⚡️localVarSet — Тип: Число — Название: sort.qantStr — Значение: 10☑️ Собрать объект

⚡️
localVarSet — Тип: Любой объект — Название: sort.bot — Значение: {
"creatorId": ${bot.creatorId},
"ownerId": ${bot.ownerId},
"userId": ${bot.userId},
"username": "${bot.username}"
}
🔘 json☑️ Собрать объект

⚡️takeUserList — Выберите список пользователей: 👥Укажите свой список

⚡️localVarAdd — Тип: Список — Название: sort.listName — Значение: ${targetUser.name}☑️ Собрать объект

⚡️localVarAdd — Тип: Список — Название: sort.listNum — Значение: !{profile| name: rating; sourceType: user; path: targetUser; defaultValue: 0}☑️ Собрать объект

⚡️httpRequest — Выберите http-запрос: sortList

⚡️sendMessage — Текст: Рейтинг участников: ${httpResponse.value.sortStr} — Файл: Пропустить
(Установить: ☑️ Ответить в чате)

❗️ Эксперимент.
💰 Платный кейс.
📩 Доступ по подписке.

#profile #localVar #httpRequest

Требуется помощь?
6️⃣6️⃣ Сортировка и публикация списка рейтинга 2.0
Сложность: ⭐️

Создание команды для публикации в группу отсортированного списка рейтинга.

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

Иметь ранее созданный 🎒Профиль👤Пользователи c именем: Points и ранее установленными значениями.

↙️КомандыСоздать↙️ — Регулярное выражение: /^(!|/)(top|топ)$/i
(Установить: ⚙️Настройки☑️ Доступно в чате)

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

⚡️ takeChat Пропустить

⚡️findProfileValue👤Пользователи🎒Points — Значение: >= — Выражение для записи параметра: 1
✏️ Количество: 10 — Сортировка: ⬇️По значению

⚡️ for — Название параметра: ${findValues}

— — ⚡️takeUsers — Пользователь: ${forItem.value.userId}

— — — ⚡️localVarAdd — Тип: Список — Название: rating — Значение: !{html| type: br;}${forItem.num}. ${targetUser.name|encode;} — ${forItem.value.value} 📊

⚡️sendMessage — Текст: ${localVar.rating|notFound: text;} — Файл: Пропустить

#profile #localVar #command

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

Публикация в чате списка админов чата.

Для этого необходимо:
↙️КомандыСоздать↙️ — Регулярное выражение: /^@admin$/i
(Установить: ⚙️Настройки☑️ Доступно в чате)

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

⚡️ takeChat Пропустить

⚡️takeChatAdmins Пропустить

— — ⚡️localVarAdd — Тип: Список — Название: userList — Значение: !{user| type: link; path: targetUser; encode; }

🚧
ОграниченияДобавить условие bool — Укажите путь до значения: ${targetUser.isBot} — Значение: 🚫

⚡️sendMessage — Текст: ${localVar.userList|notFound: text;} — Файл: Пропустить

#group #localVar #command

Требуется помощь?
6️⃣8️⃣ Случайный ответ бота
Сложность
: ⭐️

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

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

↙️Команды — Добавить↙️ — Ввести название команды.

🔗Триггер — ⚡️Реакции — Добавить:

⚡️localVarSet — Тип: Число — Название: rand — Значение:
!{random|
type: number;
min: 1;
max: 3;
}


⚡️sendMessage — Текст:
!{switch|
type: number;
path: localVar.rand;
defaultValue: Не известно;

case: 1; value: Одно очко;
case: 2; value: Два очка;
case: 3; value: Три очка;
}


Подробнее о макросе random можно прочитать тут:
Документация

Подробнее о макросе switch можно прочитать тут:
Документация

#random #switch

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