Документация
Octera работи със слаш команди (/command) и текстови команди с префикса на твоя сървър (по подразбиране .). Почти всичко се настройва и от уеб таблото.
.help <command> (напр. .help ban, .help eco) за това какво прави дадена команда плюс реални примери — или .help <category> за цял раздел. <command> help също още работи.Premium сървъри: страницата Premium в таблото (странично меню → Настройки) показва абонамента на сървъра с един поглед — плана, датата на подновяване и кой плаща — с бутони за надграждане и управление на същото място.
Префикс & помощ
.help timeout/prefix set: ?/disable economy music warnМодерация
/timeout @user 10m spammingall изчиства канала (и го заключва, докато се изчиства, ако е голям), число изтрива толкова скорошни съобщения, а времеви период (напр. 7d, 2mo) изтрива този интервал. Добави потребител, за да изтриеш само неговите съобщения. Забележка: Discord не позволява на ботове да изтриват масово съобщения, по-стари от 14 дни..purge 50 · .purge 2mo · .purge allСигурност
/security let-in @friend/lockdown end го вдига и възстановява всичко./lockdown allСледенето на заплахата, рейд филтрите & контролът при присъединяване, верификацията и капчата се настройват от таблото.
Нива
Икономика
.games продължава да работи като пряк път.).buy lucky coin 3Роли & членове
/role add roles:@VIP @Booster user:@someone duration:7dАвтоматизация
Автоматизациите (табло → Utilities → Automations) са правила от типа „когато се случи това, направи онова“: избери тригер (публикувано съобщение, добавена реакция, присъединил се член, добавена или премахната роля), добави незадължителни условия (канал, роля, ключови думи, възраст на акаунта) и след това изпълни до 10 действия по ред — изпрати съобщение, ембед или лично съобщение, добави или премахни роля, реагирай, изтрий съобщението или започни нишка. Тръгни от готови шаблони като Welcomer, Keyword auto-reply и Auto-thread — до 50 на сървър, безплатно.
Auto Send (табло → Utilities → Auto Send) публикува повтарящо се съобщение на интервал или всеки ден в зададен UTC час — избери в кои дни от седмицата да върви, добави по желание времеви прозорец за изпращане, включи защита от заливане (пропуска изпращане, докато последното съобщение на бота все още е най-новото) или го изпрати като ембед.
Рождени дни
MM-DD или YYYY-MM-DD. Добави годината, ако искаш възрастта ти да се празнува./birthday set 10-12 · /birthday set 1993-12-16Включи обявленията в таблото (Инструменти → Рождени дни): избери канала, персонализирай съобщението и по желание раздай рожденическа роля за деня.
Постижения
Настрой ги в таблото (Постижения): включи функцията, за да получиш готов начален комплект, после добави свои — единични или степенувани цели от Бронз → Диамант за съобщения, реакции, време в гласов канал, нишки, бустове, участия в раздавания, покупки в магазина и рождени дни, всяко с по желание наградни роли и обявления при отключване.
Покани
/invites user member: @friendНастрой го в таблото (Покани): пренебрегвай съвсем новите акаунти като фалшиви и раздавай наградни роли автоматично при етапи от поканите.
Раздавания
/giveaway create за помощник стъпка по стъпка./giveaway start duration: 1d prize: Nitro winners: 2Редакторът Раздавания в таблото отива по-далеч — планирай или повтаряй раздавания, задай изисквания за участие и бонус участия, раздавай роли на победителите, персонализирай ембеда и запазвай шаблони.
Тикети
Създавай панели за тикети от таблото (модул „Тикети“). Членовете отварят тикет от бутона на панела; екипът го поема и затваря. При затваряне се запазва и публикува транскрипт, с линк Виж транскрипта онлайн за четене в браузъра.
Инструменти
/voice rename name: Gaming · /voice lockВременните гласови канали (табло → Utilities → Voice) работят на принципа влез-за-да-създадеш: избери един или повече основни гласови канала и всеки член, който влезе в такъв, получава собствен канал до него — изтрива се автоматично, щом се изпразни.
Само за оператора: /nuke channels, /nuke category и /restart са команди за поддръжка, заключени в кода за оператора на бота — екипът на сървъра не може да ги изпълнява.
Известия
Получавай известия, когато създател публикува. От таблото (Socials) добави емисии за YouTube, Twitch, Kick, TikTok, Reddit (новите публикации в даден сабредит), Podcast (нови епизоди от RSS емисията на предаване) или всякакъв Custom RSS адрес — Octera публикува новите качвания, публикации, епизоди и стартирали излъчвания в избрания от теб канал, със собствено съобщение.
Музика
Пускай музика в гласов канал с чиста опашка — без допълнителен бот за каним. (Premium.)
Търси песен по име или постави връзка — SoundCloud, Bandcamp, подкаст, интернет радиостанция или директен аудио URL. Octera чете повечето аудио сайтове и ти казва откъде идва песента.
YouTube не е наличен. YouTube блокира заявките за възпроизвеждане, идващи от хостинг доставчици, а именно там работи всеки Discord бот — затова връзките към YouTube се отхвърлят, вместо да се пускат. Търсенето по име продължава да работи и пуска от източниците по-горе. Връзките към Spotify и Apple Music не могат да бъдат пускани от нито един бот, защото аудиото им е криптирано; вместо това изпрати името на песента.
.queue и .pause още работят.)Превод
Членове, които не говорят общ език, могат да си говорят в един и същ канал. Никой не прави нищо по различен начин: който иска да прочете дадено съобщение, реагира на него с флага на своя език, а Octera публикува превода на този език отдолу.
/translate text text: where is the meeting to: Spanish/translate live from: Chinese to: EnglishРеакции с флагове. Реагирай на всяко съобщение с флаг, който 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} | Неговото Discord ID |
| {avatar} | Профилната му снимка — сложи това в поле за картинка или thumbnail |
| {user.color} | Цветът на името му, напр. #a93bf0 |
| {user.top_role} | Името на най-високата му роля |
| {user.joinstamp} | Кога се е присъединил, като число за времева отметка |
| {user.timestamp} | Кога е създаден акаунтът му, като число за времева отметка |
{target} работи по същия начин за първия човек, @споменат в команда (а ако няма такъв — за този, който я е изпълнил) — удобно в таговете: {target.mention}, {target.avatar}.
Сървърът & каналът
| Променлива | Попълва се с |
|---|---|
| {server} | Име на сървъра |
| {server.members} | Брой членове |
| {server.ordinal} | Броят членове като място — „42-ри“ |
| {server.icon} | Иконата на сървъра — може да се ползва в поле за картинка или thumbnail |
| {server.id} | ID на сървъра |
| {server.description} | Описанието на сървъра |
| {channel} | Име на канала |
| {channel.mention} | Кликаем линк към #канал |
Картинки от променливи
Полетата за изображение, миниатюра, икона на автора и икона на долния колонтитул приемат променлива вместо линк — така приветственият embed може да покаже собствения аватар на новия член:
{avatar} в полето thumbnail на приветствен ембед и всеки новодошъл вижда собствената си снимка в ъгъла. {server.icon} работи по същия начин.Всяко от тези полета приема и обикновен https:// линк, или Качване… направо от компютъра ти — Octera съхранява изображението и използва постоянен линк, така че то продължава да работи завинаги.
Полезно да знаеш
- Несъществуваща променлива се заменя с най-близкото съвпадение, вместо да дава грешка — ако нещо се изписва странно, провери правописа спрямо таблиците по-горе.
- Променливите се попълват при изпращането на съобщението, така че прегледът в таблото показва суровия текст
{name}. - Таговете и персонализираните команди добавят логика върху тях — виж създаване на таг команди.
Управление на сървъра: особености на Discord, които си струва да знаеш
Няколко неща в Discord се държат по начин, който изглежда счупен, а не е — рано или късно объркват почти всеки собственик на сървър. Нито едно от тях не се причинява от Octera; поправките са в собствените настройки на Discord.
Потребителско име се показва в грешен цвят
Discord оцветява името с най-високата роля, която има цвят. Роля, зададена на Default (без цвят), се пропуска по замисъл, така че безцветна роля, която държиш най-отгоре — обикновено за да се показваш отделно в списъка с членове — трябва да остави цвета на по-долна роля.
Понякога не. Discord пази старите данни за цвета на ролята дори след като тя се отчита като безцветна, така че името остава заклещено на грешния цвят.
Накарай Discord да прочете ролята наново:
- Отвори Настройки на сървъра → Роли, избери засегнатата роля и иди на Показване.
- Задай я на Плътен, избери какъвто и да е видим цвят и запази.
- Отвори отново същата роля, върни я на По подразбиране (без цвят) и запази пак.
- Натисни Ctrl + R, за да презаредиш Discord.
Ролята вече се отчита като наистина безцветна: остава най-отгоре и продължава да показва членовете отделно, а цветът на името се поема от следващата роля надолу, която има цвят.
Короната на собственика изчезна до името ти
Короната изчезва, когато една от ролите ти има и двете включени едновременно:
- правото Администратор, и
- Показвай членовете на ролята отделно от онлайн членовете.
За да запазиш собствената си роля изведена и да върнеш короната:
- Отвори Настройки на сървъра → Роли и избери своята изведена лична роля.
- Изключи Администратор за тази роля — остави Показвай членовете на ролята отделно включено.
- Натисни Ctrl + R, за да презаредиш Discord.
Ръководство: създаване на команди с тагове
Таговете са персонализирани префикс команди, които сам си пишеш, задвижвани от 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}}