По умолчанию YAWBDB отвечает только на слэш-команды. Если вашим участникам удобнее вводить !rank, а не /rank, задайте префикс, и часть бота станет доступна из обычного сообщения.
Эта страница - полный список того, до чего префикс дотягивается и до чего нет, и для каждого исключения указана причина, по которой его нельзя снять.
⚙️ Установка префикса
Панель → ваш сервер → Функции, в карточке Текстовые команды в верхней части страницы.
| Где он находится | На самом сервере, а не в функции, так что вы найдёте его независимо от того, включены ли Пользовательские команды. |
| Что принимает | От 1 до 5 символов, без пробелов. Подходят ! ? . - $ ; %, а также !!, короткое слово вроде yb или эмодзи. |
| Что отвергает | / (им владеет Discord), @, # и < (сообщение, начинающееся с них, - это упоминание или ссылка на канал), > (открывает блок цитаты), ` (открывает блок кода). |
| Отключение | Очистите поле и сохраните. Текстовые команды перестают работать немедленно. |
| По умолчанию | Пусто. Ничего не меняется на вашем сервере, пока вы его не зададите. |
Изменения доходят до бота сразу: нет ни ожидания, ни перезапуска.
Префикс-слово задевает больше, чем вы думаете. При префиксе
ybпроверяется каждое сообщение, начинающееся с этих двух букв. Бот по-прежнему молчит, если остальная часть не называет настоящую команду, но префикс из знака пунктуации - более безопасная привычка.
✅ Что работает с префиксом
Предположим, что префикс - !:
Ваши собственные пользовательские команды
| Введено | То же, что |
|---|---|
!rules |
/rules |
| любая команда, созданная вами на странице Пользовательские команды | её слэш-версия |
Работают и простые, и графовые пользовательские команды. Это главная причина существования префикса.
Игры
| Введено | Примечания |
|---|---|
!hangman |
Буквы по-прежнему выбираются из выпадающего списка. |
!trivia |
Кнопки работают точно так же, как при слэш-команде. |
!rps [choice] [opponent] |
!rps rock, !rps @someone или оба в любом порядке. |
!love <member> [other] |
Второй участник по умолчанию - вы. |
!8ball <question> |
Всё после команды - это вопрос. |
!bingo start / !bingo stop |
Уровни и статистика
| Введено | Примечания |
|---|---|
!rank [@user] |
|
!leaderboard [page] |
|
!top |
|
!boosters |
Ответ удаляется через 30 секунд, см. ниже. |
!trends <type> |
messages, members или activity. |
Дни рождения, предложения и ваша собственная запись модерации
| Введено | Примечания |
|---|---|
!birthday set <day> <month> [year] |
!birthday set 14 7 или !birthday set 14 July 1990. День - от 1 до 31, месяц - от 1 до 12 или его английское название, год необязателен. |
!birthday get [@user] |
По умолчанию - вы. |
!birthday next [count] |
От 1 до 25 ближайших дней рождения, по умолчанию 10. |
!birthday remove / !birthday forget |
Прекратить объявления здесь или удалить везде. |
!suggest <suggestion> |
Всё после команды - это предложение, до 2000 символов. |
!my-history |
Ваши собственные записи модерации на этом сервере. |
Они следуют тем же настройкам, что и их слэш-версии: на сервере должны быть включены функции Дни рождения и Предложения, должен быть задан канал предложений, а блокировка и перезарядка изменения дня рождения действуют без изменений.
Всё остальное пробуется только как одна из ваших пользовательских команд. Сообщение, начинающееся с префикса, но ничего не называющее, не получает никакого ответа: ни ошибки, ни шума.
Если ошибиться в параметре, бот ответит строкой, которую нужно было ввести, например Usage: !bingo <start|stop>.
🚫 До чего префикс не дотягивается и почему
Четырнадцать из тридцати двух команд бота отвечают на текст. Остальные восемнадцать сгруппированы ниже по причине, по которой они не отвечают.
Права Discord решают, кто может их запускать
/ban, /unban, /mute, /unmute, /kick, /warn, /softban, /history, /clear-history, /reason, /info.
Они остаются только слэш-командами намеренно. У слэш-команды есть требование разрешения, которое обеспечивает сам Discord, и сервер может ужесточить его в Server Settings → Integrations → YAWBDB, для каждой команды, роли и канала. Текстовое сообщение через всё это не проходит. Выставление !ban тихо дало бы каждому обход ограничений, заданных вами в Discord, поэтому оно не выставляется.
Используйте слэш-версии; собственные страницы модерации панели тоже остаются доступными.
Они открывают всплывающее окно, чего сообщение не умеет
/form, /wordle play.
Discord позволяет боту открыть форму только в ответ на взаимодействие: слэш-команду, кнопку, меню. Сообщение не является взаимодействием, так что открывать нечего. Это ограничение Discord, а не настройка YAWBDB.
Они должны оставаться незаметными
/report, /ticket.
Сообщение читает весь канал. Пожаловаться на кого-то или открыть тикет на глазах у всех - не то же самое, что сделать это приватно, поэтому они остаются там, где ответ может быть приватным.
Им нужен голосовой контекст или параметры, которые сообщение передать не может
/voice, /voice-chat, /record, /record-storage.
Они действуют на голосовой канал, к которому вы подключены, а некоторые отвечают приватными списками или записями. У набранного сообщения нет ни вашего голосового контекста, ни этих параметров, поэтому они остаются только слэш-командами по замыслу. Если вы введёте одну из них с префиксом, например !voice, бот ответит причиной и направит вас к слэш-версии, а не станет молчать.
Ещё одна, вне списка
Действие правой кнопкой Save Message тоже только слэш: у действия контекстного меню по своей конструкции нет текстового эквивалента.
📌 Два ожидаемых отличия
Ответы публичны. Слэш-команда может ответить приватно, так что видите его только вы. Ответ на сообщение так не может. Там, где команда обычно отвечает приватно (!boosters, !birthday, !suggest, !my-history, пользовательская команда, которую вы задали как ephemeral, уведомление о перезарядке), бот отвечает в канале и удаляет свой ответ через 30 секунд. Это поддерживает чистоту канала, но не делает ответ секретным. Такие приватные ответы никогда никого не упоминают, так что перечисление участников через !birthday next никого не пингует. Набранное вами сообщение остаётся в канале, поэтому не указывайте в нём год рождения, если не хотите его показывать.
Сообщения-команды не приносят XP. Сообщение, запускающее команду, - это команда, а не чат, поэтому оно не учитывается в Leveling. Оно по-прежнему проверяется Automod и Honeypot, как и любое другое сообщение.
🔗 См. также
- Слэш-команды: полный список команд
- Пользовательские команды: создание собственных
- Games