Ресты участников

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

Рест это официальная отметка «участник отдыхает». Пока она стоит, человек не попадает в проверку нормы, ИИ-компаньон не пишет ему первым, а в инфо-канале он числится в списке отдыхающих. Как рест выглядит с его стороны, описано в разделе для участников.

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

-рест

Ресты участников: выдача, продление, сокращение, снятие и просмотр

Синонимы:-ресты/rest/rests
Просмотр - Модераторы и выше, управление - Администраторы и выше
Синтаксис команды
1-рест<действие>[параметры]
<параметр> — обязательный[параметр] — необязательный

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

[скриншот: список активных рестов с блоком доступных действий]

ДействиеЧто делает
<период>Оформляет участнику рест на указанный период.
<период>Отодвигает конец активного реста или задаёт новый период.
<период>Придвигает конец активного реста ближе.
Закрывает рест досрочно.
Показывает рест одного участника или список всех активных.

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

Участника в любом действии можно указать ответом на его сообщение, юзернеймом или цифровым ид, как и в остальных командах бота.

Выдать рест

-рест дать

Оформляет участнику рест на указанный период

Синонимы:-рест добавить-рест выдать-рест give
Администраторы и вышеИерархия применяется
В ответ на сообщение
1-рест дать<период>
2[причина]
<параметр> — обязательный[параметр] — необязательный
По юзернейму или ид
1-рест дать<@юзер><период>
2[причина]
<параметр> — обязательный[параметр] — необязательный

Слово дать можно опустить, -рест @юзер 7д бот поймёт так же.

ответ бота о выданном ресте

Период пишется либо сроком, либо диапазоном дат. Срок вроде 7д, 2н, 1мес, 1д12ч отсчитывается от момента команды. Диапазон 13.04-20.04 занимает целые дни, с начала первого до конца последнего, и его можно писать через новый год: 25.12-10.01 бот разложит правильно. Дни он считает по часовому поясу чата из настроек.

Пробел внутри срока ставить нельзя, иначе вторая половина уедет в причину: пишите 1д12ч, а не 1д 12ч.

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

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

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

Продлить рест

-рест продлить

Отодвигает конец активного реста

Синонимы:-рест продление-рест extend
Администраторы и вышеИерархия применяется
Синтаксис команды
1-рест продлить<@юзер><период>
<параметр> — обязательный

Срок прибавляется к концу реста: 3д у реста до 20.04 дадут 23.04. Диапазон дат работает иначе, он заменяет период целиком, вместе с датой начала. В ответе бот покажет, что было, что стало и на сколько сдвинулся конец.

Продлить можно только активный рест. Если срок уже вышел, бот закроет запись и скажет, что активного реста нет. Итоговая длительность так же не может выйти за максимум чата.

Сократить рест

-рест сократить

Придвигает конец активного реста ближе

Синонимы:-рест уменьшить-рест shorten
Администраторы и вышеИерархия применяется
Синтаксис команды
1-рест сократить<@юзер><период>
<параметр> — обязательный

Здесь срок вычитается из конца: 3д у реста до 20.04 оставят 17.04. Диапазон дат снова заменяет период целиком. Сократить рест так, чтобы он закончился раньше своего начала, бот не даст, для этого есть снятие.

Снять рест

-рест снять

Закрывает рест досрочно

Синонимы:-рест убрать-рест удалить-рест remove
Администраторы и вышеИерархия применяется
Синтаксис команды
1-рест снять<@юзер>
<параметр> — обязательный

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

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

Посмотреть, кто в ресте

-рест статус

Рест одного участника или список всех активных

Синонимы:-рест список-рест status-рест list
Модераторы и выше
Синтаксис команды
1-рест статус[@юзер]
[параметр] — необязательный

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

карточка реста участника

Заявки участников

Когда участник просит рест сам, заявка приходит в админ-чат карточкой с периодом, причиной и двумя кнопками, подтвердить или отклонить. Если админ-чат к группе не подключён, карточка останется в самом чате.

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

При подтверждении бот ещё раз сверяет заявку с реальностью. Заявка с уже прошедшей датой начала и заявка от человека, у которого рест успел появиться, отклоняются автоматически, с пометкой прямо на карточке. Срок больше максимума бот просто не пропустит: покажет предупреждение, а заявка останется висеть. После одобрения участник получает сообщение в чате, а на карточке остаётся, кто и когда её решил.

[скриншот: карточка заявки на рест с кнопками]

Заявки на продление приходят отдельной карточкой с кнопкой «Продлить рест». Авто-принятие на них не действует, продление всегда смотрит модерация. Такая заявка тоже отклонится сама, если реста уже нет или он истёк.

Правила реста в чате

Условия у каждого чата свои, задаются они в настройках: ⚙️ /настройки → 🧩 Модули → 🌴 Ресты.

НастройкаЧто делаетПо умолчанию
Максимальный срокПредел длительности реста. Заявку длиннее бот не примет, и выдать такой рест вручную тоже не выйдет.30 дней
Срок с обязательной причинойС какой длительности участник обязан объяснить, зачем ему рест. Такая заявка помечается для модерации отдельной строкой. Ноль отключает проверку.14 дней
Запретный деньДень недели, с которого рест начать нельзя. Пригодится, когда в чате есть день чистки или обязательной активности.выключен
Авто-принятиеЗаявки уходят в ресты сразу, без модерации. Лимиты при этом всё равно проверяются.выключено

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

Эти же правила бот пишет в блок правил реста в инфо-канале, так что участникам не приходится ничего спрашивать: там уже сказано, на сколько можно уйти и кто решает по заявкам.

Что бот делает сам

Ресты снимаются по расписанию. Когда срок вышел, бот закрывает запись, пишет участнику в чат, что рест закончился, отправляет строчку в админ-чат и обновляет список в инфо-канале. Снимать вручную ничего не нужно.

Ваши действия тоже уходят в админ-чат: выдача, продление, сокращение и снятие, каждое с участником, периодом, причиной и тем, кто это сделал.

Если несколько чатов привязаны к одному инфо-каналу, список рестов у них общий, и рест, выданный в одном, будет виден в другом.