Skip to content

Przepływ Ally na Discord

Pipeline Ally to kanoniczna metoda aplikowania jako sojusznik przez Discord dla kogoś z gildii partnerskiej. Jest strukturalnym bliźniakiem przepływu Enlist — jedno kliknięcie kandydata otwiera prywatny ticket recenzji, recenzent uruchamia krótki kreator, aby zweryfikować, jako której postaci aplikuje, a transkrypcja archiwum trafia na forum przy zamknięciu.

Ta strona opisuje cały pipeline z perspektywy każdej roli — właściciel konfigurujący, kandydat sojuszniczy klikający przycisk, recenzent uruchamiający komendy slash. Kształt odzwierciedla ściśle Enlist; sekcja Różnice w stosunku do Enlist pod koniec opisuje, co jest specyficzne dla Ally.

Wymagania wstępne

  • Bot jest sparowany z twoją gildią AO Master — patrz Instalacja + parowanie.
  • Twoja gildia jest na tierze Pro lub wyższym (pipeline Sojuszu jest zablokowany za tierem).
  • Osoba konfigurująca jest albo właścicielem serwera Discord, albo ma uprawnienie Zarządzanie integracjami w AO Master.
  • Istnieje jedna rola Discord, która będzie pełnić funkcję "recenzenta" — każdy z tą rolą może działać na ticketach. Utwórz ją w Discord najpierw, jeśli jej jeszcze nie masz.

1. Właściciel — konfiguracja hubu Ally

Hub Ally jest provisionowany z tego samego kanału #⚙️-guild-settings co Enlist. Przypięta wiadomość Guild Settings ma teraz cztery przyciski w pierwszym wierszu: [🔍 View Config] [🎯 Manage Enlist] [💰 Manage Regear] [🤝 Enable Ally].

Kliknij zielony przycisk 🤝 Enable Ally. Pojawia się efemeryczny panel ze statusem "Not set up" i jednym działającym przyciskiem — ⚙ Setup.

Kreator konfiguracji (2 kroki)

Kreator jest identyczny kształtem do kreatora Enlist (ten sam wzorzec 2-krokowy opisany w przepływ Enlist):

  1. Wybierz role Discord recenzentów — dropdown wielokrotnego wyboru z rolami Discord serwera z liczbami członków na żywo. Kreator odrzuca @everyone i zarządzane role botów. Każdy z jedną z wybranych ról zobaczy tickety sojuszników i będzie mógł uruchamiać /ally review / /ally reject / /ally done.
  2. Potwierdź — krótka karta potwierdzenia wyświetlająca, co zostanie utworzone: kanał #🤝-ally-here + kategoria 🤝 Ally, plus przypięty przycisk [Apply as Ally]. Kliknij ✅ Confirm.

Po ~5 sekundach panel ponownie renderuje się do pełnego panelu Manage Ally.

Panel Manage Ally

Panel po konfiguracji odzwierciedla panel Manage Enlist z dodatkami specyficznymi dla Ally na dole. Przyciski obejmują:

  • ⚙ Reconfigure — ponowne uruchomienie selektora ról recenzentów.
  • ? Edit Questions — zmiana pytań zgłoszeniowych zadawanych kandydatom sojuszniczym. (Współdzielony edytor; te same pytania pojawiają się na stronie web /ally/<code> też.)
  • 📝 Edit Template / ✏️ Edit Ally Message / ✏️ Edit Ticket Message / ✏️ Edit Ally Button — dostosowanie treści przypiętej wiadomości, wiadomości powitalnej wewnątrz każdego ticketu, etykiety przycisku.
  • 📋 Map Ally Channel / 📂 Map Ticket Category — wskazanie istniejących kanałów Discord / kategorii zamiast auto-tworzonych.
  • 🚫 Pause Ally — zatrzymanie przyjmowania nowych kandydatów, ale zachowanie otwartych ticketów w trakcie.
  • 🔄 Refresh Pinned — ponowne wyrenderowanie przypiętej wiadomości [Apply as Ally] w #🤝-ally-here.
  • 🎮 Auto-Name: OFF / ON — przełącznik zmiany nicku Discord przy zatwierdzeniu (domyślnie ON).
  • 🔧 Rebuild — automatyczne odrzucenie każdego oczekującego kandydata sojuszniczego + wyczyszczenie kanału #🤝-ally-here i kategorii 🤝 Ally + odtworzenie ich od nowa. Role recenzentów + dostosowania wiadomości są zachowane.
  • 🗑 Disable Ally — wyczyszczenie całej konfiguracji Ally po stronie Discord. Kanały Discord pozostają, ale stają się niezarządzane. Odwracalne przez ponowne uruchomienie konfiguracji.

Każde ustawienie można też edytować w web pod #Integracja Discord → Integrations → Ally (patrz Integracja Discord). Zmiany synchronizują się w obu kierunkach w czasie rzeczywistym.


2. Kandydat sojuszniczy — kliknij [Apply as Ally]

Dla wszystkich poza gildią jedynym kanałem widocznym wewnątrz kategorii 🤝 Ally jest #🤝-ally-here. Przypięta wiadomość ma przycisk [Apply as Ally] (lub twoja niestandardowa etykieta).

Gdy kandydat kliknie przycisk:

  1. Bot tworzy prywatny kanał nazwanym według szablonu nazwy kanału ticketu (domyślnie 🤝-ally-<discord-username>). Tylko kandydat + role recenzentów mogą go zobaczyć.
  2. Bot publikuje wiadomość powitalną u góry ticketu — niestandardowe intro hosta + wszelkie pytania zgłoszeniowe, które host ustawił.
  3. Bot odpowiada efemerycznym podpowiedzią kierując kandydata do odpowiedzi na pytania w tickecie.

Kandydat wpisuje odpowiedzi jako zwykłe wiadomości Discord. Recenzenci widzą te wiadomości w tickecie; odpowiedzi NIE są przechowywane w bazie danych AO Master (żyją tylko w transkrypcji Discord).


3. Recenzent — /ally review, /ally reject, /ally done

Trzy komendy slash obsługują całą stronę recenzenta. Wszystkie trzy są zablokowane na rolach recenzentów ustawionych w panelu Manage Ally.

/ally review

Uruchom wewnątrz kanału ticketu sojusznika. Otwiera kreator:

  1. Wybierz postać z sojuszu — dropdown wyświetlający postacie z gildii partnerskich twojego sojuszu. Kandydat deklaruje, jako której postaci aplikuje; selektor jest ograniczony do gildii partnerskich sojuszu, więc recenzent nie może przypadkowo zatwierdzić kogoś z gildii niepartnerskiej.
  2. Potwierdź — karta podsumowania pokazuje wybraną postać + jej macierzystą gildię partnerską (ustalona na żywo z API Albion). Kliknij ✅ Confirm.

Po potwierdzeniu:

  • Wiersz sojusznika jest dodawany do #Sojusznicy po stronie web AO Master (status: Linked).
  • Bot dodaje rolę AO Ally do konta Discord kandydata (tworzona automatycznie przy pierwszym włączeniu Ally; kolorowana pasująco do chipa Ally Role).
  • Jeśli istnieje mapowanie roli Partnera dla wybranej gildii macierzystej, bot przyznaje też tę rolę (np. kandydat z "Cozy Chilipi" dostaje zarówno AO Ally + rolę Cozy Chilipi).
  • Jeśli Auto-Name jest ON, bot zmienia nickname Discord kandydata na pasujący do wybranej postaci Albion.

/ally reject

Uruchom gdziekolwiek recenzenci mogą publikować (zazwyczaj wewnątrz ticketu). Użycie:

/ally reject user:@<kandydat> reason:<opcjonalny powód>
  • Oczekujące zgłoszenie dołączenia kandydata zmienia status na Rejected.
  • Bot wysyła DM kandydatowi z powodem (lub domyślnym, jeśli go pominąłeś).
  • Ticket zamyka się natychmiast; transkrypcja NIE jest archiwizowana (zamknięcia przez odrzucenie pomijają forum archiwum celowo — odrzucone tickety to szum).

/ally done

Uruchom wewnątrz ticketu PO tym, jak /ally review zatwierdził kandydata. Dzieją się dwie rzeczy:

  1. Pełna rozmowa ticketu jest kopiowana — z oryginalnymi nazwami autorów + awatarami + każdym załączonym plikiem — do prywatnego wątku forum wewnątrz kanału forum 🗄-ally-archive. Forum + webhook, z którego bot korzysta do publikowania, są tworzone automatycznie przy pierwszym uruchomieniu /ally done (gildia, która nigdy nie archiwizuje, nie posiada pustego forum).
  2. Kanał ticketu jest usuwany.

Tytuł wątku archiwum pasuje do nazwy kanału ticketu, więc recenzenci mogą później przeszukiwać forum według nazwy użytkownika.


4. Różnice w stosunku do Enlist

Oba przepływy współdzielą strukturalny szkielet, ale Ally ma kilka różnic, których nie ma po stronie Enlist:

AspektEnlistAlly
Blokada tieremFree tier i wyżejTier Pro i wyżej
Selektor postaciWolne wyszukiwanie po AlbionSelektor rostera sojuszu (ograniczony do gildii partnerskich)
Rola przyznana przy zatwierdzeniuRola Discord z tabeli mapowaniaUniwersalna rola AO Ally + opcjonalna rola Partnera na podstawie gildii macierzystej
Wizualny znacznik w webZwykła rola AO MasterChip Ally Role (etykieta + kolor)
Kanał rostera w web#Członkowie#Sojusznicy
Cron dezercjin/dCodzienne sprawdzenie; zmienia status na Left alliance, gdy gildia macierzysta sojusznika opuszcza sojusz — patrz Synchronizacja roli sojusznika
Komendy slash/enlist review, /enlist reject, /enlist done/ally review, /ally reject, /ally done
Domyślny kanał przypięty#📋-enlist-here#🤝-ally-here
Prefiks kanału ticketu🎯-enlist-…🤝-ally-…
Forum archiwumapply-archive🗄-ally-archive

Wszystko, czego nie ma w tabeli, działa tak samo — ten sam kształt kreatora konfiguracji, ten sam układ panelu, ten sam przepływ transkrypcji archiwum, ta sama semantyka Pause / Rebuild / Disable.


5. Gdy funkcja Sojuszu jest "wstrzymana"

Sojusz jest zablokowany za tierem Pro. Jeśli twoja gildia spadnie z Pro do niższego tieru (wygaśnięcie subskrypcji, downgrade), pipeline wchodzi w tryb wstrzymania:

  • Przycisk 🤝 Enable Ally na #⚙️-guild-settings jest zastąpiony wyszarzonym stanem [🔒 Alliance — Pro tier needed].
  • Istniejące tickety sojusznicze pozostają otwarte, ale nowi kandydaci nie mogą aplikować.
  • Cron dezercji jest wstrzymany (twój roster nie rotuje tylko dlatego, że obniżyłeś tier).
  • Istniejący sojusznicy zachowują swoją rolę AO Ally i wiersz rostera.

Przywrócenie tieru Pro automatycznie przełącza pipeline z powrotem do aktywnego — ponowna konfiguracja nie jest potrzebna.


6. Lustrzane odbicie po stronie web

Każde ustawienie na panelu Manage Ally Discord żyje też pod #Integracja Discord → Integrations → Ally w web (patrz Integracja Discord). Ustawienia wielopowierzchniowe (przełącznik Przyjmuj nowych kandydatów, Niestandardowe pytania zgłoszeniowe, chip Ally Role) żyją w Ustawienia → Rekrutacja (zewnętrzna zakładka Sojusznik) i są też widoczne na podstronie Ally Integracji Discord pod kartą Powiązane ustawienia.

Wybierz tę powierzchnię, która jest wygodna — synchronizują się w czasie rzeczywistym przez ten sam kanał.