PangobotДокументация
RU

Префиксные команды

Вводите слеш-команды обычным сообщением — !ban, !mute, !rank, !remind и другие. Выключено, пока вы не включите.

Кому-то быстрее написать !timeout @Max 10m flooding, чем заполнять слеш-команду. Когда включены префиксные команды, большинство слеш-команд Pangobot можно вводить и обычным сообщением. Введённая команда и есть слеш-команда: те же проверки, те же ответы, те же записи в ваших логах и случаях.

Как включить

  1. Откройте панель управления, затем Настройки (Общие настройки).
  2. В разделе Текстовые команды проверьте Префикс (!, если вы его не меняли) и включите Префиксные команды.
  3. Сохраните. Введённые команды сразу начинают работать в каждом канале, где можно использовать слеш-команду.
На каждом сервере это выключено, пока кто-нибудь не включит. На многих серверах есть другие боты с префиксом ! — если оба ответят на одно сообщение, участники получат два ответа.

Команды

<required> (обязательный) [optional] (необязательный). Слова в скобках — параметры слеш-команды.

Как вводитьПримерДругое названиеМодуль
!ban <user> [duration] [delete_days] [reason…]!ban @Max 7d 1 posting invites–Модерация
!unban <user> [reason…]!unban 123456789012345678–Модерация
!softban <user> [reason…]!softban @Max spam bot–Модерация
!kick <user> [reason…]!kick @Max being rude–Модерация
!timeout <user> [duration] [reason…]!timeout @Max 10m flooding!muteМодерация
!untimeout <user> [reason…]!untimeout @Max!unmuteМодерация
!warn <user> <reason…>!warn @Max no self-promotion–Модерация
!purge <amount> [user] [bots] [contains…]!purge 20 @Max!clearМодерация
!lock [channel] [reason…]!lock #general raid–Модерация
!unlock [channel]!unlock #general–Модерация
!slowmode <off|5s|10s|15s|30s|1m|…>!slowmode 30s–Модерация
!avatar [user]!avatar @Max!avОбщие настройки
!serverinfo!serverinfo!siОбщие настройки
!rank [user]!rank @Max!levelУровни
!leaderboard [page]!leaderboard 2–Уровни
!balance [member]!balance!balЭкономика
!daily!daily–Экономика
!pay <member> <amount>!pay @Max 100–Экономика
!rich!rich–Экономика
!shop!shop–Экономика
!buy <item…>!buy VIP role–Экономика
!afk [message…]!afk back tonight–AFK
!remind <me|list|delete> …!remind me 2h take the pizza out–Напоминания
!birthday <set|remove|show|next> …!birthday set 24 12–Дни рождения
!ticket <close|add|remove> …!ticket add @Max–Тикеты
!voice <name|limit|lock|unlock|kick> …!voice limit 5–Временные голосовые
!invites <show|top> …!invites top–Трекер приглашений
!stats!stats–Статистика сервера

Если модуль команды на вашем сервере выключен, она отвечает, что модуль выключен, — так же, как слеш-команда.

Только слеш-командой, и это намеренно: то, что должно оставаться скрытым, а в обычном сообщении не может, — /report, /redeem (ключ оказался бы в канале), /note, /history, /case, /userinfo (окончание тайм-аута видят модераторы), /invites who (код приглашения видят администраторы) и /search (результаты, которые остановил бы AutoMod, видит только сам участник), — а также то, чему нужны формы или меню: /giveaway, /game, /sendmessage, плюс /ask и /summarize из ИИ-помощника.

Как разбирается введённая команда

  • Порядок: сначала участник или канал, затем числа, длительность и варианты, а свободный текст (причина, заметка) — в конце, в каком бы порядке их ни показывала слеш-команда. !ban @Max 7d 1 posting invites — это бан на семь дней с удалением сообщений за один день.
  • Участники — упоминанием (@Max) или по ID, в том числе в !ban: так можно забанить по ID того, кто уже ушёл с сервера. Каналы — упоминанием (#general) или по ID.
  • Или ответом: ответьте командой на сообщение участника, не указывая самого участника, — !mute 10m spamming в ответе отправит в тайм-аут автора этого сообщения. Если участник указан в команде, он важнее ответа. Не работает для !purge: там участник — это фильтр, который вы указываете намеренно.
  • Тайм-аут без указанной длительности длится 28 дней: бессрочного тайм-аута в Discord нет, а 28 дней — максимум, который он допускает. Ответ бота об этом сообщает — и для /timeout тоже.
  • Длительность — например, 30s, 10m, 2h, 7d, 1w или вместе: 1d12h.
  • Переключатели вроде bots в !purge: напишите название параметра (!purge 50 bots) или yes/no (по-английски).
  • Варианты — как в списке: !slowmode 30s, !slowmode off.
  • Если команду не удаётся разобрать, бот отвечает короткой подсказкой по использованию с указанием ошибки — «Параметр amount должен быть от 1 до 100», «Пользователя с ID … нет» — и ничего не делает.

Кто и где может их использовать

Ровно те, кто может использовать слеш-команду. Это право команды по умолчанию (для /ban нужно Банить участников, для /timeout — Отправлять участников подумать о своём поведении ...) и всё, что вы задали в разделе Настройки сервера > Интеграции > Pangobot: для отдельных команд или всего бота, для ролей, участников и каналов. Если /ban разрешена только в #mod-chat, то и !ban тоже.

  • Pangobot запрашивает эти правила у Discord и хранит их две минуты; когда вы их меняете, Discord сообщает об этом Pangobot, и изменение действует сразу.
  • Если не удаётся спросить Discord, введённая команда отклоняется («Pangobot не удалось проверить, кто может использовать здесь эту команду») — правило, которое никто не может проверить, никогда не пропускается. Слеш-команда при этом работает.
  • Для введённых команд эти правила действуют и на администраторов, и на владельца сервера. Если правило там закрывает кому-то из них доступ, им остаётся слеш-команда.
  • Кроме того, действуют собственные проверки модулей, как и для слеш-команды: например, неприкосновенные роли «Модерации» и её правила иерархии ролей.

Чем они отличаются от слеш-команд

  • Без скрытых ответов. Ответ, который должен видеть только сам участник, — отказ, подсказка по использованию, ошибка — приходит ответом в канале и сам удаляется через 20 секунд.
  • Введённое сообщение тоже удаляется через 20 секунд, чтобы канал оставался читаемым, — кроме !lock, !unlock, !slowmode и !afk: их должны видеть все в канале. Для этого Pangobot нужно право Управлять сообщениями в этом канале; без него сообщение просто остаётся.
  • Без форм. Там, где слеш-команда открыла бы форму, введённая команда отсылает к слеш-команде.
  • **!purge сначала удаляет собственное сообщение**, поэтому !purge 10 удаляет десять других сообщений.
  • Ваши собственные команды в приоритете. Вместо неё отвечает пользовательская команда с тем же названием (например, шуточная !kick).
  • Не больше трёх введённых команд за десять секунд на одного участника.
  • Введённая команда — обычное сообщение: его видит AutoMod. Когда Pangobot потом его удаляет, ваш лог сообщений это удаление не записывает — то, что сделала команда (бан, тайм-аут и его случай), записывается как обычно.
  • Ответ никогда не пингует участника, который ввёл команду, а также роли или @everyone, написанные в причине.

Ничего не происходит

  • Включены ли Префиксные команды и начинается ли сообщение с префикса вашего сервера?
  • Нет ли пользовательской команды с тем же названием? Тогда отвечает она.
  • Не ввёл ли участник больше трёх команд за десять секунд?
  • Ваш сервер обслуживает собственный бот? Тогда введённые команды отвечают через этого бота, как и слеш-команды.
  • «Здесь вы не можете использовать !…»: правила в разделе Настройки сервера > Интеграции не разрешают этому участнику эту команду в этом канале.