Процесс Enlist в Discord
Enlist — канонический способ присоединиться к гильдии AO Master из Discord. Один клик претендента открывает приватный review-тикет. Recruiter проходит короткий мастер, чтобы верифицировать персонажа Albion, назначить начальные вар-роли и создать аккаунт AO Master одним движением. Потом recruiter закрывает тикет, и полная транскрипция приземляется в forum-канал для архива.
Эта страница проходит весь конвейер — от владельца, настраивающего его впервые, до претендента, кликающего кнопку, до recruiter-а, запускающего две slash-команды одобрения и закрытия. У каждой фазы своя секция ниже.
Предпосылки
- Бот запэйрен к твоей гильдии AO Master — см. Установка + pair.
- Тот, кто настраивает, — либо владелец Discord-сервера, либо имеет право Manage Integrations в AO Master.
- У тебя уже есть одна Discord-роль, которая будет «recruiter-ом» — кто угодно с этой ролью сможет review-ить тикеты. Если её нет, создай в Discord сначала.
1. Владелец — настрой Enlist-hub
Hub провижионится из #⚙️-guild-settings. Два клика открывают панель Manage Enlist; ещё два — выбирают recruiter-роли и подтверждают; бот создаёт каналы.
Открой панель Manage Enlist
Открой #⚙️-guild-settings и нажми зелёную кнопку 🎯 Enable Enlist в pinned-сообщении Guild Settings. (Кнопка читается как 🎯 Manage Enlist после настройки Enlist.) Появляется ephemeral-панель:

Большинство кнопок остаются неактивными до завершения провижионинга. Нажми зелёную ⚙ Setup в row 1.
Шаг 1 — выбери recruiter Discord-роли
Первый экран мастера спрашивает, какие Discord-роли могут review-ить тикеты.

Открой dropdown — увидишь роли сервера с live member count:

Выбери одну или несколько ролей. Любой с одной из этих ролей увидит per-applicant тикеты и сможет запускать /enlist review и /enlist done внутри. После клика вне dropdown мастер автоматически идёт дальше.
Не выбирай @everyone или managed bot-роли
Мастер откажет обоим — претенденты видели бы каждый тикет, что убивает приватность per-applicant канала.
Шаг 2 — подтверди
Короткая карточка подтверждения перечисляет, что произойдёт.

Нажми ✅ Confirm. Карточка переходит в working-state, пока бот создаёт каналы (обычно меньше 5 секунд).

Готово — панель перерендерится в "Accepting applicants"
После провижионинга то же сообщение снова обновляется — на этот раз в полный dashboard Manage Enlist:

В боковой панели Discord теперь новая категория 🎯 Enlist с одним каналом внутри — #📋-enlist-here. Archive forum пока не существует — намеренно: создаётся при первом запуске recruiter-ом /enlist done, чтобы гильдия, ничего не архивирующая, не таскала пустой forum.
Закрой панель кнопкой ✖ Close. Чтобы кастомизировать pinned-сообщение, welcome-тело тикета, надпись кнопки или шаблон имени канала для новых тикетов, вернись через #⚙️-guild-settings → 🎯 Manage Enlist и используй кнопку Edit … — или поменяй те же настройки на вебе Management → Discord Integration → Enlist.
2. Претендент — клик [Enlist]
Для всех, кто ещё не в гильдии, точка входа — #📋-enlist-here — единственный канал, который они видят в категории 🎯 Enlist.
![Discord-вид канала #📋-enlist-here. Боковая панель показывает сервер Minion Test с категориями: Events, Server Boosts, # welcome, ▼ AO Master (содержит #⚙️-guild-settings), ▼ Enlist (содержит выбранный #📋-enlist-here). Главная панель: intro канала "Welcome to # 📋-enlist-here" и pinned-сообщение бота "📋 Enlist into this guild — Click below to open a private review ticket with our recruiters. They'll chat with you about your build, schedule, and what region/timezone you play. The ticket is only visible to you and the recruiter team." Синяя кнопка [✉ Enlist] ниже.](/images/discord-enlist-flow/05-enlist-here-pinned.jpg)
Нажми [✉ Enlist]. Discord показывает короткий «thinking»-индикатор, пока бот создаёт твой приватный канал:

Через секунду бот отвечает ссылкой на новый тикет (видна только тебе):

Кликни ссылку канала. Ты внутри своего личного review-тикета. Бот пометил тебя и recruiter-роли, опубликовал welcome-сообщение с чек-листом того, что рассказать:

Дальше — обычный Discord-диалог: ответь на вопросы, спроси что хочешь о гильдии, дождись recruiter-а. У тикета нет срока; он остаётся открытым, пока recruiter не закроет.
Имя канала из шаблона
По умолчанию канал тикета называется enlist-{your-discord-username} (так пример выше стал #enlist-siam-bot). Владельцы могут менять шаблон через 🎯 Manage Enlist → 📝 Edit Template — placeholder {user} подставляет username претендента, {number} — счётчик, инкрементящийся при каждом новом тикете. Фактическое имя канала зависит от выбора владельца.
3. Recruiter — запусти /enlist review
Когда в тикете дошло до «да, давайте добавим этого человека», recruiter переключается с чата на slash-command мастер. Всё ниже ephemeral — видишь только ты, не претендент.
Набери /enlist, чтобы увидеть три Enlist-подкоманды:

Выбери /enlist review и нажми Enter.
Шаг 1 — найди персонажа Albion претендента
Открывается модалка, спрашивающая имя персонажа.

Введи имя, которое сказал претендент. Частичные совпадения подходят — бот зовёт live search API Albion и получает до десяти кандидатов.

Нажми Submit.
Шаг 2 — выбери правильного персонажа из результатов
Бот заменяет модалку карточкой результатов. У каждого кандидата in-game имя + Albion ID + текущая гильдия (или 🏃 Solo).

Открой dropdown, чтобы сделать выбор:

Если нужного нет на этой странице — или если ты уже знаешь Albion character_id (например, из диалога в тикете) — используй помощники под dropdown:
- 🔁 Search again — открыть search-модалку заново со свежим именем.
- 📝 Enter ID directly — открыть модалку, куда вставить точный Albion
character_id(32-символьная hex-строка). Полезно, когда in-game имя со спецсимволами или совпадений слишком много. - < Back / Next > — пагинация, когда результатов больше десяти.
Шаг 3 — подтверди персонажа
После выбора бот показывает однострочную сводку для проверки.
![Discord ephemeral "🛡 Step 3 — Confirm character". Ниже: "Discord user: @TheGamer", "Albion: 🎮 Zilo [_7ocp2L3QBO9MNk3sZGmKw] · ASIA · ⚔ MIN1ONS". Курсив: "Confirm to lock in this character and move to war-role selection." Три кнопки: ✅ Confirm character (зелёная) · 🔁 Re-select · Cancel.](/images/discord-enlist-flow/09-review-step3-summary.jpg)
Если не совпадает с заявлением претендента, нажми 🔁 Re-select, чтобы вернуться к результатам. Иначе нажми ✅ Confirm character.
Шаг 4 — назначь вар-роли (опционально)
Бот грузит список вар-ролей твоей гильдии из Настройки → War Roles на вебе и показывает их multi-select-ом.
![Discord ephemeral "🛡 Step 4 — War roles". Строка: "🛡 Zilo [_7ocp2L3QBO9MNk3sZGmKw]". Тело: "Pick the war roles to assign on approval. Skip to leave the applicant without war roles (staff can add them later from the Members panel)." Dropdown "Pick war roles (multiple allowed)" (свёрнут). Кнопки: Skip — no war roles · 🔙 Back · Cancel.](/images/discord-enlist-flow/10-review-step4-war-roles.jpg)
Открой dropdown — увидишь что доступно: ровно вар-роли, настроенные на вебе.

Отметь любую комбинацию. Выбранные роли появляются pill-chips ниже dropdown:

Можно ничего не выбирать
Skip — no war roles — нормальный выбор: recruiter-ы часто назначают вар-роли позже с веб-панели #Members, посмотрев, как новый участник играет. Если в гильдии вар-роли не настроены, dropdown пуст и Skip — единственная опция.
После выбора (или skip) мастер идёт к последнему шагу.
Шаг 4.5 — выбери шкафчик (только когда гильдия требует)
Если у гильдии настройка Require Locker включена (web: Настройки → Lockers), мастер вставляет extra-step выбора шкафчика между вар-ролями и финальным одобрением. Увидишь карточку, спрашивающую, какую группу шкафчиков использовать, с опцией ⚡ Quick Assign, авто-подбирающей менее занятый шкафчик. Выбери группу → выбери шкафчик → продолжай.
Гильдии без отслеживания шкафчиков пропускают этот шаг.
Шаг 5 — финальное одобрение
Сводка собирает каждое решение для финальной проверки.
![Discord ephemeral "🛡 Step 5 — Approve applicant". Четыре строки данных: Discord user: @TheGamer · Albion: 🛡 Zilo [_7ocp2L3QBO9MNk3sZGmKw] · ASIA · ⚔ MIN1ONS · Web role: Member (guild default) · War roles: DPS, SUPPORT, TANK. Курсив: "On approve: member is created, character is linked, default web role + selected war roles are assigned, the join request is marked approved." Кнопки: ✅ Approve (зелёная) · 🔙 Back · Cancel.](/images/discord-enlist-flow/11-review-step5-final-approve.jpg)
Нажми ✅ Approve.
Веб-роль по умолчанию не настроена?
Если ты не поставил «guild default» веб-роль в Настройки → Roles → Use as default, карточка одобрения переключает строку Web role в предупреждение, и бот создаёт претендента без веб-ролей вообще. Он по-прежнему будет участником гильдии, но без прав — ему нужно будет выдать роли с веб-панели #Members после одобрения.
4. После Approve — тикет остаётся открытым
Все сообщения мастера были ephemeral. Первое, что все (претендент + recruiter) видят в тикет-канале — публичное подтверждение бота:

Через несколько секунд претендент получает назначенные Discord-роли через цепочку синка web ↔ Discord. Если Auto-Name включён (toggle в панели Manage Enlist), его Discord-ник на сервере переключается на имя персонажа Albion.
Канал НЕ закрывается авто на Approve. Это by design — recruiter-ы часто хотят продолжать общаться после одобрения (welcome chat, «вот наш этикет», расписание первого события и т. д.). Закрывай канал только когда готов — через /enlist done.
5. Recruiter — закрой через /enlist done
Когда наговорился в тикете, набери /enlist done:

Нажми Enter. Бот отвечает ephemerally, потом удаляет канал:

Тикет-канал исчезает в течение секунды-двух. Прежде чем он уйдёт, бот зеркалит каждое сообщение в forum-тред внутри auto-managed archive forum:

Forum по умолчанию называется 🗄 enlist-archive. (Если ты сменил шаблон имени канала на другое начало, например apply-{user}, forum называется 🗄 apply-archive.) Каждый закрытый тикет становится одним тредом с тегом либо ✅ Approved, либо ❌ Rejected, с именем recruiter-а и оригинальным именем канала в теле. Транскрипция сохраняет имена авторов, аватары, временные метки и вложения.
Чтобы найти старую заявку, открой forum и используй search-бар или фильтры тегов сверху.
Отказ претенденту
Два пути отказать:
- Команда
/enlist reject— передай претендента черезuser:@theirnameи опциональноreason:why. Бот DM-ит причину (если ты её указал), закрывает тикет и архивирует транскрипцию так же, как/enlist done— но получившийся forum-тред помечен ❌ Rejected вместо ✅ Approved. - Cancel в середине review — если нажал Cancel где угодно в мастере
/enlist review, мастер закрывается, но тикет остаётся открытым. Претендент не узнает, что ты почти одобрил. Решай отдельно, потом запусти/enlist rejectили сначала закрой диалог вежливо.
В тикете нет Reject-кнопки на approve-карточке — Cancel только отбрасывает мастер, не отказывает претенденту. Намеренно: отказ нуждается во втором осознанном действии.
Кастомизация конвейера
Всё ниже идёт из панели 🎯 Manage Enlist (#⚙️-guild-settings → 🎯 Manage Enlist) или эквивалентной веб-страницы Management → Discord Integration → Enlist. Оба правят одну underlying-конфигурацию.
| Контрол | Что меняет |
|---|---|
| ⚙ Reconfigure | Сменить recruiter Discord-роли. Перезапускает мастер Step 1 / Step 2. |
| ❓ Edit Questions | До 3 коротких вопросов, показываемых претенденту модалкой до открытия тикета. Ответы постятся в тикет отдельным сообщением, чтобы recruiter сразу их видел. |
| 📝 Edit Template | Шаблон имени канала для новых тикетов. Default enlist-{user}. Placeholder: {user} (Discord-username претендента), {number} (per-guild счётчик). |
| ✏ Edit Enlist Message | Pinned-тело в #📋-enlist-here — что читают претенденты до клика по кнопке. |
| ✏ Edit Ticket Message | Тело «While you wait, please tell us:» в каждом свежем тикете. |
| ✏ Edit Enlist Button | Надпись кнопки. Default «Enlist»; некоторые гильдии предпочитают «Apply» или локализованное слово. |
| 📋 Map Enlist Channel / 📂 Map Ticket Category | Указать конвейеру на существующий Discord-канал/категорию вместо bot-created defaults. Неразрушительно — старое место остаётся. |
| 🚫 Pause Enlist | Временно прекратить принимать новых. Существующие тикеты работают. Снимается тем же toggle (превращается в ✅ Resume Enlist). |
| 🔄 Refresh Pinned | Перепостить pinned-кнопку [Enlist] в #📋-enlist-here. Используй, если Discord-админ случайно удалил. |
| 🎮 Auto-Name: ON / OFF | Когда ON, /enlist review также переименовывает Discord-ник претендента на сервере в выбранного персонажа Albion при одобрении. Боту нужно Manage Nicknames на сервере (даётся Administrator-scope из /guild pair). Молча пропускает, если Discord блокирует rename (например, для server owner). |
| 🔧 Rebuild | Удаляет и пересоздаёт каналы (#📋-enlist-here + категория 🎯 Enlist). Конфиг переживает. Открытые тикеты авто-отклоняются с DM претенденту; ему придётся снова кликнуть [Enlist]. |
| 🗑 Disable Enlist | Стирает конфиг и переключает панель обратно в «Not set up». Каналы остаются — удали вручную, если не хочешь их видеть. |
Что где живёт
| Действие | Как | Где | Кто может |
|---|---|---|---|
| Подать заявку | Клик [✉ Enlist] | #📋-enlist-here (в категории 🎯 Enlist) | Любой видящий канал |
| Общаться с претендентом | Просто печатать | Per-applicant тикет (#enlist-{username} по умолчанию) | Претендент + recruiter-роли |
| Одобрить | /enlist review | Внутри тикета | Recruiter-роли |
| Отказать | /enlist reject user:@… [reason:…] | Где бот видит | Recruiter-роли |
| Закрыть + архивировать тикет | /enlist done | Внутри тикета | Recruiter-роли |
| Читать прошлые заявки | Browse threads | Forum 🗄 enlist-archive | Recruiter-роли |
| Настройка / смена Enlist-конфига (Discord) | Панель 🎯 Manage Enlist | #⚙️-guild-settings | Manage Integrations |
| Настройка / смена Enlist-конфига (web) | Management → Discord Integration → Enlist | AO Master web | Manage Integrations |
Перекрёстные ссылки
- Установка + pair — настрой самого бота перед этой страницей.
- Обзор каналов Discord — что в категории 🎯 Enlist и как это вписано в дерево каналов.
- Member ops в Discord — более широкая поверхность «что участники делают в Discord», включая
/whoamiи как работает синк ролей после одобрения. - Справочник slash-команд —
/enlist review,/enlist reject,/enlist doneсправочник. - Настройки → Интеграция Discord — web-зеркало pair + Enlist-конфига.
- Настройки → War Roles — источник списка вар-ролей, который читает Step 4.
- Настройки → Roles & Permissions — поставь default веб-роль, чтобы Step 5 не предупреждал «no roles».