7️⃣3️⃣ Удаление всех сообщений в чате между командой и reply сообщением
Сложность:
⭐️
По команде
/purge
отправленной в ответ на любое сообщение в чате, удалить все сообщение которые находятся между этими сообщениями включая и эти сообщения.
❗️ВНИМАНИЕ при выполнение команды присутствуют два ограничения:
1. Не будут удалены сообщения которым более 48 часов.
2. Если количество удаляемых сообщений более 200, удалены будут только последние 200 сообщений.
Для этого необходимо:
↙️
Команды —
➕Создать↙️ — Команда:
/purge
⚙️
Настройки —
☑️Доступно в чате
В
🔗Триггер команды добавить следующие реакции:
⚡️ groupReactions
—
isReplyMsg
🚧
Ограничения —
➕
Добавить условие —
isReplyMessage
— Значение:
✅
☑️if-mode —
🔘✅
—⚡️ localVarSet
— Тип:
Любой объект — Название:
idMsg
— Значение:
{
"begin": ${update.message.message_id},
"end": ${update.message.reply_to_message.message_id}
}
🔘json —
☑️Собрать объект
—⚡️ runScript
— Текст скрипта:
var idMsg = qnext.getValue('localVar.idMsg');
idMsg.end = (idMsg.begin - idMsg.end > 200) ? idMsg.begin - 199 : idMsg.end;
idMsg.list = [];
for (let i = idMsg.begin; i >= idMsg.end; i--) {
idMsg.count = idMsg.list.push(i);
}
exports.idMsg = idMsg;
—⚡️ for
— Название параметра:
${localVar.idMsg.list}
— —⚡️ deleteMessage
— Id сообщения:
${forItem.value}
—
☑️Ответить в чате
☑️if-mode —
🔘🚫
—⚡️ deleteMessage
—
☑️Ответить в чате
#isReplyMessage #JScript
Требуется помощь?