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

Octera работает со слэш-командами (/command) и текстовыми командами с префиксом твоего сервера (по умолчанию .). Почти всё настраивается и в веб-панели.

Подсказка: набери .help <command> (например, .help ban, .help eco), чтобы узнать, что делает команда, и увидеть живые примеры — или .help <category> для целого раздела. <command> help тоже по-прежнему работает.

Premium-серверы: страница Premium в панели (боковое меню → Настройки) показывает подписку сервера с одного взгляда — план, дату продления и кто платит, — а кнопки улучшения и управления находятся там же.

Префикс & помощь

/help [query]
Меню команд по категориям — либо укажи команду, чтобы увидеть её синтаксис и примеры, либо категорию, чтобы вывести её список.
Пример: .help timeout
/prefix [set]
Показать или изменить префикс текстовых команд (Управление сервером).
Пример: /prefix set: ?
/enable & /disable <targets>
Включай и выключай модули и/или команды — сразу несколько.
Пример: /disable economy music warn

Модерация

/warn @user [reason]
Выдать участнику предупреждение; добавляет очки эскалации и создаёт кейс.
/timeout @user <duration> [reason]
Временно заглушить участника.
Пример: /timeout @user 10m spamming
/kick · /ban · /unban
Стандартная модерация, всё фиксируется в кейсах.
/case [id|@user]
Посмотреть конкретный кейс или всю историю участника.
/modlog
Указать канал мод-логов.
/unbanall run
Массово разбанить всех, кроме защищённого чёрного списка.
/unbanall blacklist add|remove|list
Управление защищённым списком — пользователями, которых массовый разбан никогда не тронет.
/purge <all | number | time span> [@user]
Массовое удаление сообщений. all очищает канал (и блокирует его на время очистки, если он большой), число удаляет столько последних сообщений, а период (например 7d, 2mo) удаляет сообщения за этот промежуток. Укажи пользователя, чтобы удалить только его сообщения. Учти: Discord не разрешает ботам массово удалять сообщения старше 14 дней.
Пример: .purge 50 · .purge 2mo · .purge all

Безопасность

/security
Анти-нюк, роль карантина и сведения о защите.
/quarantine @user · /release @user
Снять с участника роли и изолировать его — или вернуть всё обратно.
/security panic on|off
Экстренная блокировка — закрыть каналы и/или отправлять новичков в карантин.
/security let-in @user · let-in-remove @user · let-in-list
Пропустить кого-то прямо мимо фильтров на входе, кика во время рейда при входе и верификации, например друга с совсем новым аккаунтом. Тот же список есть на странице «Входы на сервер», а когда проверки при входе кого-то удаляют, у его записи в твоих логах появляется кнопка, которая его впускает.
Пример: /security let-in @friend
/lockdown all|channel|end
Закрыть все каналы (или один), чтобы участники не могли писать — /lockdown end снимает блокировку и всё восстанавливает.
Пример: /lockdown all

Отслеживание «нагрева», фильтры рейдов & проверки на входе, верификация и капча настраиваются в панели управления.

Уровни

/rank [@user]
Показать уровень & XP карточкой ранга.
/leaderboard
Топ участников по опыту.
/xp · /level
Админ: добавить/убрать/установить XP или уровень участника.
/leveling
Указать канал повышений уровня и импортировать уровни из других ботов.

Экономика

/balance · /bank
Кошелёк, банк и проценты.
/deposit · /withdraw · /pay
Перевести или отправить монеты.
/work · /crime · /rob · /daily
Зарабатывай монеты. Удача (от предметов & безделушек) повышает шансы в /crime, /rob, сборе ресурсов и лутбоксах.
/farm
Занимайся фермой в интерактивной панели — сажай культуры, собирай урожай, продавай товар и покупай новые грядки.
/fish · /hunt · /dig · /search
Мини-игры на добычу, у каждой свой кулдаун — находи монеты и товары на продажу.
/pet
Заведи питомца, корми его и собирай с него монеты каждый час.
/trade @user
Предложить обмен — монеты и/или товары, — который другой участник принимает или отклоняет.
/coinflip · /slots · /blackjack · /roulette · /highlow · /rps · /guess · /dice
Ставь свои монеты — восемь игр казино.
/economy-info guide|games
Краткий разбор того, как устроена вся экономика, и каждой игры казино с её выплатами. (.games по-прежнему работает как ярлык.)
/shop · /buy · /sell · /use · /open
Смотреть магазин (кнопки покупки), покупать и продавать предметы, использовать расходники, открывать лутбоксы.
Пример: .buy lucky coin 3
/inventory · /collect · /multipliers · /rich
Предметы, роли с доходом, активные бусты & дебаффы и топ богачей.
/eco
Админ: выдать/забрать монеты или предметы магазина, дать временные бусты, начислить проценты.
/lootbox
Для менеджеров: внезапные дропы лутбоксов, которые участники открывают наперегонки — сбрось один прямо сейчас, включи или выключи автоматические дропы, задай их частоту и награду (монеты или XP).

Роли & участники

/role <add|remove> <roles> (user or everyone) [duration]
Добавить или убрать одну или несколько ролей у участника или у всех сразу. Указанная длительность делает роль временной — она снимается автоматически, когда срок истечёт.
Пример: /role add roles:@VIP @Booster user:@someone duration:7d
/serverinfo
Статистика сервера — владелец, дата создания, участники, роли, каналы, бусты.
/info [@user]
Возраст аккаунта участника, дата входа, роли и цвет.
/av [@user]
Показать аватар пользователя в полном размере.
/roles
Список всех ролей вместе с их ID.
/dump [role]
Выгрузить участников роли (или всего сервера) в файл.
/oldest · /youngest
Участник с самым старым / самым новым аккаунтом Discord.
/clonecategory · /stylechannels · /cleanroles · /counters
Клонируй категорию вместе с правами, добавляй эмодзи-префиксы к каналам, убирай украшения из названий ролей, настраивай каналы с живой статистикой.

Автоматизация

/tag
Свои префиксные команды на TagScript — смотри руководство ниже.
/reactionrole sync|list|convert
Опубликовать/обновить меню ролей или перевести их все на кнопки / выпадающий список / эмодзи-реакции.
/embed post|list|copy|color|edit|source
Все инструменты эмбедов в одной команде — публикуй или смотри сохранённые эмбеды, копируй опубликованные между каналами и категориями, перекрашивай все эмбеды, которые отправил бот, редактируй эмбед из сырого JSON или забирай эмбеды и текст сообщения в виде JSON.
/log list
Показать маршруты логирования событий — само логирование настраивается в панели управления.
/stealemoji <emoji> [name]
Добавь кастомный эмодзи с другого сервера на этот. Страница Эмодзи в панели управления заведует всем набором — загрузка, переименование, удаление, захват и просмотр занятых слотов.

Automations (панель управления → Utilities → Automations) — это правила «когда происходит это, делай то»: выбери триггер (отправлено сообщение, добавлена реакция, зашёл участник, выдана или снята роль), при желании добавь условия (канал, роль, ключевые слова, возраст аккаунта), а затем выполни до 10 действий по порядку — отправить сообщение, эмбед или ЛС, выдать или снять роль, поставить реакцию, удалить сообщение или создать ветку. Начни с готовых шаблонов вроде Welcomer, Keyword auto-reply и Auto-thread — до 50 на сервер, бесплатно.

Auto Send (панель управления → Utilities → Auto Send) публикует повторяющееся сообщение с заданным интервалом или ежедневно в указанное время UTC — выбери дни недели, при желании добавь окно отправки, включи защиту от флуда (пропускает отправку, пока последнее сообщение бота остаётся самым свежим) или отправляй его как эмбед.

Дни рождения

/birthday set <date> [year]
Сохранить свой день рождения — MM-DD или YYYY-MM-DD. Укажи год, если хочешь, чтобы отмечали и возраст.
Пример: /birthday set 10-12 · /birthday set 1993-12-16
/birthday view [@user] · /birthday next
Посмотреть день рождения участника или ближайшие 10 на сервере.
/birthday remove
Удалить сохранённую дату рождения.
/birthday set-user @user <date>
Админ: установить день рождения участника (Управление сервером).

Включи объявления в панели (Утилиты → Дни рождения): выбери канал, настрой сообщение и при желании выдавай роль именинника на этот день.

Достижения

/achievements [@user]
Твой (или чужой) прогресс достижений — все открытые ступени и следующая цель, со ссылкой на публичную страницу достижений сервера.

Настрой их в панели (Достижения): включи функцию, чтобы получить готовый стартовый набор, а затем добавь свои — одиночные или многоуровневые цели от Бронзы → до Алмаза по сообщениям, реакциям, времени в голосовых, веткам, бустам, участию в розыгрышах, покупкам в магазине и дням рождения, у каждой — необязательные награды-роли и объявления об открытии.

Приглашения

/invites me · /invites user @member
Сколько приглашений у тебя (или у участника) — с разбивкой на входы, выходы и фейки.
Пример: /invites user member: @friend
/invites leaderboard
Топ тех, кто чаще всех приглашает на сервер.
/invites who-invited [@member]
Смотри, кто пригласил участника. Каждый вход засчитывается автоматически — подойдёт любая обычная ссылка-приглашение, специальная отслеживаемая не нужна.

Настрой это в панели (Приглашения): игнорируй совсем свежие аккаунты как фейковые и автоматически выдавай роли-награды за достижение вех по приглашениям.

Розыгрыши

/giveaway start <duration> <prize> [winners]
Запусти розыгрыш с кнопкой участия 🎉, живым таймером и автоматическим выбором победителя — или воспользуйся /giveaway create для пошагового мастера.
Пример: /giveaway start duration: 1d prize: Nitro winners: 2
/giveaway end|reroll|cancel|delete|list
Завершить досрочно, выбрать новых победителей, отменить или удалить розыгрыш либо показать список недавних.

Редактор Розыгрышей в панели идёт дальше — планируй или повторяй розыгрыши, задавай требования к участию и бонусные билеты, выдавай роли победителям, настраивай эмбед и сохраняй пресеты.

Тикеты

Создавай панели тикетов в панели управления (модуль «Тикеты»). Участники открывают тикет кнопкой на панели; сотрудники берут его в работу и закрывают. При закрытии сохраняется и публикуется стенограмма со ссылкой Открыть стенограмму онлайн, чтобы прочитать её в браузере.

/close [reason]
Закрыть текущий тикет и сохранить его стенограмму.
/ticket add|remove|blacklist|unblacklist
Для персонала: добавить кого-то в текущий тикет или убрать оттуда, либо запретить открывать тикеты тому, кто ими злоупотребляет.

Утилиты

/ping
Задержка бота.
/poll create|end
Публикуй встроенный опрос Discord, за который участники голосуют прямо в сообщении, или завершай его досрочно. Страница Опросы в панели тоже создаёт опросы — до 10 вариантов ответа, своя длительность и множественный выбор.
/voice rename|limit|lock|unlock|claim
Управлять своим временным голосовым каналом: переименовать, задать лимит участников, закрыть или открыть доступ либо забрать его себе, если владелец ушёл.
Пример: /voice rename name: Gaming · /voice lock

Временные голосовые каналы (панель управления → Utilities → Voice) работают по принципу «зашёл — создался»: выбери один или несколько каналов-хабов, и участник, зашедший в такой канал, получит рядом собственный — который автоматически удалится, когда опустеет.

Только для оператора: /nuke channels, /nuke category и /restart — служебные команды, жёстко закреплённые в коде за оператором бота; персонал сервера запустить их не может.

Уведомления

Получай оповещения, когда креатор что-то публикует. В панели управления (Socials) добавь ленты для YouTube, Twitch, Kick, TikTok, Reddit (новые посты сабреддита), Podcast (новые выпуски из RSS-ленты шоу) или любой URL Custom RSS — Octera опубликует новые видео, посты, выпуски и старты трансляций в выбранный тобой канал вместе с твоим текстом.

Музыка

Включай музыку в голосовом канале с аккуратной очередью — и без ещё одного бота. (Premium.)

Найди трек по названию или вставь ссылку — SoundCloud, Bandcamp, подкаст, интернет-радио или прямую ссылку на аудио. Octera читает большинство аудиосайтов и показывает, откуда взялся трек.

YouTube недоступен. YouTube блокирует запросы на воспроизведение, приходящие от хостинг-провайдеров, а именно там работает любой Discord-бот — поэтому ссылки на YouTube отклоняются, а не проигрываются. Поиск по названию по-прежнему работает и играет из источников выше. Ссылки Spotify и Apple Music не может воспроизвести ни один бот, потому что их аудио зашифровано; отправь вместо этого название трека.

/play <song or link>
Включить трек или добавить его в очередь. Принимает поисковый запрос или ссылку с любого сайта, который Octera действительно умеет воспроизводить.
/skip · /stop
Пропустить текущий трек или остановить воспроизведение и выйти из голосового канала.
/music join|controls|queue|nowplaying|loop|pause|resume
Всё остальное — одной командой: позвать бота в голосовой канал, открыть панель с кнопками, посмотреть очередь и текущий трек, зациклить трек или очередь, поставить на паузу или продолжить. (Привычные префиксные команды вроде .queue и .pause по-прежнему работают.)

Перевод

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

/translate text <text> <to> [from]
Перевести что-то один раз. Начни вводить язык — бот подскажет те, что знает.
Пример: /translate text text: where is the meeting to: Spanish
/translate live <from> <to>
Переводить всё, что ты пишешь в этом канале, пока не остановишь перевод или не замолчишь на три часа.
Пример: /translate live from: Chinese to: English
/translate off
Перестать переводить то, что ты пишешь в этом канале.

Реакции-флаги. Поставь на любое сообщение реакцию с флагом, который Octera распознаёт, — и бот ответит переводом. Если один и тот же флаг поставят несколько человек, ответ всё равно будет один, а на любую другую реакцию бот не отреагирует.

Целые каналы. В панели управления можно выбрать канал и языки, на которых в нём говорят, — до пяти. Octera сама определяет, в какую сторону нужно перевести каждое сообщение, так что испаноговорящий и англоговорящий участники могут просто общаться. Сообщение, уже написанное на одном из указанных языков, никогда не дублируется на том же языке. Это подходит каналу, постоянно разделённому между языками; для эпизодических случаев реакции-флаги обойдутся куда дешевле.

Живой перевод. Для того, кто присоединяется к разговору на незнакомом ему языке. Он один раз запускает /translate live, и всё, что он пишет, дополнительно публикуется на другом языке — пока он не выполнит /translate off или не замолчит. Владелец сервера может отключить это в панели управления.

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

Резервные копии

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

Руководство: переменные в сообщениях

Везде, где Octera пишет сообщение, можно вставить переменную — короткий заполнитель {name}, который сам подставит значение в момент отправки. Они работают в приветствиях и прощаниях, эмбедах, автоответах, тегах, авторассылке, панелях ролей за реакции, панелях тикетов и не только — названия везде одинаковые.

Welcome {user.mention} to **{server}** — you're member #{server.members}!

Пиши их через точку или через скобки — это одно и то же: {user.name} = {user(name)}.

Участник

ПеременнаяЧто подставляется
{user}Отображаемое имя
{user.mention}Настоящий @-пинг
{user.name}Имя пользователя
{user.nick}Ник на этом сервере (если ника нет — имя пользователя)
{user.id}ID пользователя в Discord
{avatar}Его аватар — вставь в слот изображения или миниатюры
{user.color}Цвет его имени, например #a93bf0
{user.top_role}Название его высшей роли
{user.joinstamp}Когда он присоединился — числом-меткой времени
{user.timestamp}Когда был создан его аккаунт — числом-меткой времени

{target} работает так же для первого, кого @упомянули в команде (если никого — для того, кто её запустил), — удобно в тегах: {target.mention}, {target.avatar}.

Сервер & канал

ПеременнаяЧто подставляется
{server}Название сервера
{server.members}Количество участников
{server.ordinal}Количество участников как порядковое место — «42-е»
{server.icon}Иконка сервера — годится для слота изображения или миниатюры
{server.id}ID сервера
{server.description}Описание сервера
{channel}Название канала
{channel.mention}Кликабельная ссылка на #канал

Картинки из переменных

Слоты картинки, миниатюры, иконки автора и иконки футера принимают переменную вместо ссылки — поэтому приветственный эмбед может показать аватар самого новичка:

Поставь {avatar} в поле thumbnail приветственного эмбеда — и каждый новичок увидит в углу свою аватарку. {server.icon} работает так же.

В каждый такой слот можно вставить и обычную ссылку https://, либо нажать Загрузить… и взять файл прямо с компьютера — Octera сохранит картинку и будет использовать постоянную ссылку, так что работать она будет всегда.

Полезно знать

Управление сервером: особенности Discord, о которых стоит знать

Некоторые вещи в Discord ведут себя так, будто что-то сломано, хотя это не так — рано или поздно на них попадается почти каждый владелец сервера. Ни одна из них не связана с Octera: всё решается в настройках самого Discord.

Имя пользователя отображается не тем цветом

Discord окрашивает имя по самой высокой роли, у которой есть цвет. Роль со значением Default (без цвета) должна пропускаться, поэтому бесцветная роль, которую ты держишь наверху — обычно чтобы отдельно выделяться в списке участников, — оставляет цвет роли ниже.

Иногда не помогает. Discord хранит старые данные о цвете роли даже после того, как роль считается бесцветной, и имя так и остаётся не того цвета.

Заставь Discord перечитать роль:

  1. Открой Настройки сервера → Роли, выбери проблемную роль и перейди во вкладку Отображение.
  2. Переключи на Сплошной, выбери любой заметный цвет и сохрани.
  3. Снова открой ту же роль, верни значение По умолчанию (без цвета) и сохрани ещё раз.
  4. Нажми Ctrl + R, чтобы перезагрузить Discord.

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

Рядом с твоим именем пропала корона владельца

Корона пропадает, когда у одной из твоих ролей одновременно включены обе эти настройки:

Чтобы оставить свою роль выделенной и вернуть корону:

  1. Открой Настройки сервера → Роли и выбери свою личную роль, которая отображается отдельно.
  2. Отключи у этой роли Администратор — а Отображать участников роли отдельно оставь включённым.
  3. Нажми Ctrl + R, чтобы перезагрузить Discord.
Ты ничего не теряешь: у владельца сервера и так есть все права, поэтому личной роли Администратор не нужен. Для команды создай отдельную роль Admin, где Администратор включён, а Отображать участников роли отдельно выключено.

Руководство: как собирать тег-команды

Теги — это твои собственные команды с префиксом, работающие на TagScript: крошечном языке шаблонов с переменными, логикой, математикой, случайностью и управляющими блоками (удалить триггер, отправить ответ в ЛС, поставить реакцию, ограничить по роли, приложить эмбед и не только). Все переменные сообщений работают и здесь.

Создать тег

Используй /tag (или панель → Утилиты → Теги). Задай имя и содержимое. Участники вызывают тег твоим префиксом, например .rules.

/tag name: hello content: Hey {user(mention)}, welcome to {server(name)}! 👋

Вызов .hello → Привет, @Ты, добро пожаловать в Octera! 👋

Переменные

В теге работает любая переменная сообщения — {user.mention}, {server}, {avatar} и остальные. Теги добавляют несколько своих:

ПеременнаяЧто даёт
{args}Всё, что напечатано после команды. {args(1)} = первое слово, {args(2)} = второе…
{target(mention)}Первое @упоминание в сообщении (если его нет — тот, кто запустил команду) — те же атрибуты, что и у {user}
{uses}Сколько раз запускался тег
{unix}Текущая unix-метка времени

Логика, математика & случайность

БлокЧто делает
{if(a==b):yes|no}Условие. Операторы: == != > < >= <=
{any(a==b|c==d):yes|no}any/or и all/and по нескольким условиям
{math:2*(3+4)}Арифметика (+ - * / % ^)
{random:a~b~c}Выбрать один вариант случайно (разделяй с помощью ~ или ,)
{range:1-100}Случайное целое число в заданном диапазоне
{=(name):value}Задать переменную; прочитать её позже через {name}
{lower} {upper} {replace(a,b):text} {length:text}Помощники для текста

Управляющие блоки (побочные эффекты)

БлокЭффект
{delete}Удалить сообщение, вызвавшее тег
{dm}Отправить ответ в ЛС тому, кто запустил команду
{react:✅,🎉}Поставить реакцию на ответ · {reactu:✅} ставит реакцию на триггер
{redirect:#channel}Отправить ответ в другой канал
{require(@Role)} / {blacklist(@Role)}Только / никогда — разрешить этим ролям или каналам использовать тег
{embed(title):Hi}{embed(description):...}Собрать насыщенный эмбед (заголовок, описание, цвет, изображение, миниатюра, футер, поле)
{silent}Выполнить побочные действия тега, ничего не отправляя в чат

Разобранные примеры

Ящик предложений — удаляет команду и публикует аккуратный эмбед в канале:

{delete}{redirect:#suggestions}{embed(title):💡 Suggestion from {user(name)}}{embed(description):{args}}{embed(color):#a855f7}

Подбрасывание монетки с реакциями:

{user(mention)} flips… **{random:Heads~Tails}**! {react:🪙}

Анонс только для персонала — доступ по роли, никаких ЛС, публикация в канал:

{require(@Staff):You can't use this.}{redirect:#announcements}📢 {args}

Персональное приветствие с упоминанием цели:

{=(msg):Welcome {target(mention)} — you're member #{server(member_count)}!}{if({args}==):Mention someone to welcome them.|{msg}}
Всё, что можно сделать в теге, можно собрать и визуально — через Шаблоны сообщений и Автоответы в панели управления.