QNext Cases
168 subscribers
3 photos
84 links
Download Telegram
4️⃣3️⃣ Выбор случайных значений из указанного диапазона чисел.
Сложность: ⭐️⭐️⭐️⭐️⭐️

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

Команда: !rnd min max num
min
– минимальное значение диапазона
max – максимальное значение диапазона
num – количество выбираемых чисел
Например команда: !rnd 10 100 20 вернет 20 случайных чисел в диапазоне от 10 до 100.

Для этого необходимо:
↙️КомандыСоздать↙️ — Регулярное выражение: /!rnd\s+(\d+)\s+(\d+)\s+(\d+)/i⚙️Настройки☑️Доступно в чате

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

⚡️localVarSet — Тип: Число — Название: minNum — Значение: ${exec.1}

⚡️localVarSet — Тип: Число — Название: maxNum — Значение: ${exec.2}

⚡️localVarSet
— Тип: Число — Название: quanNum — Значение: ${exec.3}

⚡️runScript — Текст:
function getRND(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
var minNum = qnext.getValue("localVar.minNum", 0);
var maxNum = qnext.getValue("localVar.maxNum", 0);
var quanNum = qnext.getValue("localVar.quanNum", 0);
var numRes = [];
if ((maxNum - minNum) >= quanNum) {
while (numRes.length < quanNum) {
var rndNum = getRND(minNum, maxNum);
var found = false;
for (var i = 0; i < numRes.length; i++) {
if (numRes[i] === rndNum){
found = true;
break;
}
}
if (!found) { numRes[numRes.length]=rndNum; }
}
numRes = numRes.sort(function(a, b){return a - b});
} else {
numRes[0] = -1;
}
exports.numRes = numRes;

⚡️message — Текст: Min: ${localVar.minNum}
Max: ${localVar.maxNum}
Кол-во: ${localVar.quanNum}
${localVar.numRes}
— Файл: Пропустить
(Установить: ☑️Ответить в чате)

#localVar #JScript #command

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

Например: Администратор группы может установить правила группы в группе

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

⚙️Настройки бота🆎Профиль👤Чаты/КаналыСоздать🆎 — Название: Правила — Тип: text

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

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

🚧ОграниченияДобавить условие isChatAdmin — Выберите значение: Пропустить

⚡️
profileSet— Выберите тип: 👤Чаты/Каналы🆎Правила — Выражение для записи параметра: ${exec.1}

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

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

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

⚡️loadProfile👥Чаты/Каналы

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

#profile #group #command

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

Улучшенная версия капчи

Для этого необходимо:
🕹МенюСоздать🕹 — Название: Капча — Текст для пункта меню:
Приветствуем, !{user}!

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

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

⚡️groupReactionsuserJoin (или любое другое удобное название)
🚧ОграниченияДобавить условие string ${buttonsVar.v1} = ${user.id}
⚡️takeChat — пропустить — Открыть реакцию — ✏️Изменить текст ${update.callback_query.message.chat.id}
— —⚡️takeUsers${buttonsVar.v1}

— — — ⚡️restrictChatMemberПропустить
⚙️Настройки — Выбираем строки, которые будут разрешены новому участнику чата.

- CanSendMessages - разрешить писать в чате
- CanSendMedia - разрешить отправлять Медиа
- CanSendPolls - разрешить отправлять опросы
- CanSendOtherMessage - разрешить отправлять стикеры и гиф
- CanAddWebPagePreviews - предпросмотр для ссылок (превью)
- CanChangeInfo - разрешить изменять профиль группы
- CanInviteUsers - разрешить добавлять участников
- CanPinMessages - разрешить закреплять сообщения

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Опционально:
— — — ⚡️localVarSet — Тип: Любой объект — Название: userValue — Значение: ${targetUser}
or
— — —⚡️deleteMessage
or
— — — ⚡️addToUserList
или другие необходимые реакции
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
⚡️
alert — Текст: Вы уже разблокированы
🚧
ОграниченияДобавить условие string ${buttonsVar.v1}${user.id}

👥
Чаты/Каналы — Выбрать: 👥чат — ⚙️Настройки☑️activeInGroup
В 🔗Триггер Новый участник добавить одну реакцию:
⚡️restrictChatMemberПропустить
⚙️Настройки — Выбираем строки, которые будут запрещены новому участнику чата.
⚡️ sendMenu — Капча — Выбрать: этот раздел
(Установить: ☑️Ответить в чате)

#capcha #menu

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

Описание: Пишите в чате команду !msg и text

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

🚧ОграниченияДобавить условие isChatAdmin Пропустить

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

⚡️deleteMessage

⚡️message
— Текст: ${exec.1} — Файл: Пропустить
(Установить: ☑️Ответить в чате)

Важно ❗️
Бот должен быть администратором группы с правом ☑️Удаление сообщений

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

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

Описание: Пишите команду !decor и текст.
Например: !decor QNext

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

🕹МенюСоздать🕹 — Название: decorTxt — Текст для пункта меню:
Выберите декор:

Добавить кнопкуcallback — Название: ◦•●◉✿ ${localVar.decorTxt} ✿◉●•Пропустить

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

⚡️message — Текст:
${update.callback_query.message.reply_markup.inline_keyboard.0.0.text} — Файл: Пропустить

Добавить кнопкуcallback — Название: (¯*•.¸,¤°´✿.。.:* ${localVar.decorTxt} *.:。.✿°¤,¸.•*´¯)Пропустить

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

⚡️message — Текст:
${update.callback_query.message.reply_markup.inline_keyboard.1.0.text} — Файл: Пропустить

Добавить кнопкуcallback — Название: ▀▄▀▄▀▄ ${localVar.decorTxt} ▄▀▄▀▄▀Пропустить

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

⚡️message — Текст:
${update.callback_query.message.reply_markup.inline_keyboard.2.0.text} — Файл: Пропустить

Добавить кнопкуcallback — Название: `✵•.¸,✵°✵.。.✰ ${localVar.decorTxt} ✰.。.✵°✵,¸.•✵´Пропустить

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

⚡️message — Текст:
${update.callback_query.message.reply_markup.inline_keyboard.3.0.text} — Файл: Пропустить

Добавить кнопкуcallback — Название: 💢 СкрытьПропустить

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

⚡️hide

↙️
КомандыСоздать↙️ — Команда: /!decor\s(.+)/i

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

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

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

#localVar #command #sendMenu

Требуется помощь?
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

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