Fluxo Ally no Discord
O pipeline Ally é a forma canônica para alguém de uma guild parceira se candidatar como aliado no Discord. É o gêmeo estrutural do fluxo Enlist — um clique do candidato abre um ticket privado de revisão, um revisor executa um assistente rápido para verificar com qual personagem ele está se candidatando, e um transcript arquivado cai em um fórum ao fechar.
Esta página percorre todo o pipeline da perspectiva de cada função — proprietário configurando, candidato aliado clicando no botão, revisor executando os slash commands. O formato espelha de perto o Enlist; a seção Diferenças do Enlist perto do final destaca o que é exclusivo do Ally.
Pré-requisitos
- O bot está vinculado à sua guild AO Master — veja Instalar + vincular.
- Sua guild está no tier Pro ou acima (o pipeline de Aliança é bloqueado por tier).
- A pessoa que está configurando é o dono do servidor Discord ou tem a permissão Manage Integrations no AO Master.
- Existe uma função Discord que agirá como "revisor" — qualquer pessoa com essa função pode agir nos tickets. Crie uma no Discord primeiro se ainda não tiver.
1. Proprietário — configure o hub Ally
O hub Ally é provisionado a partir do mesmo canal #⚙️-guild-settings que o Enlist. A mensagem fixada Guild Settings agora tem quatro botões na primeira linha: [🔍 View Config] [🎯 Manage Enlist] [💰 Manage Regear] [🤝 Enable Ally].
Clique no botão verde 🤝 Enable Ally. Um painel efêmero aparece com um status "Not set up" e um único botão funcional — ⚙ Setup.
Assistente de configuração (2 etapas)
O assistente tem o mesmo formato do Enlist (mesmo padrão de 2 etapas documentado em Fluxo Enlist):
- Escolha as funções Discord de revisor — dropdown multi-seleção das funções Discord do seu servidor com contagens de membros ao vivo. O assistente recusa
@everyonee funções gerenciadas de bots. Qualquer pessoa com uma das funções escolhidas poderá ver os tickets de aliados e executar/ally review//ally reject//ally done. - Confirme — um card curto de confirmação listando o que será criado: canal
#🤝-ally-here+ categoria🤝 Ally, mais o botão[Apply as Ally]fixado. Clique em ✅ Confirm.
Após ~5 segundos, o painel rerenderiza para o dashboard completo Manage Ally.
Dashboard Manage Ally
O painel pós-configuração espelha o dashboard Manage Enlist com os extras específicos do Ally na parte inferior. Os botões incluem:
- ⚙ Reconfigure — execute novamente o seletor de funções de recrutador.
- ? Edit Questions — altere as perguntas de candidatura feitas aos aliados. (Editor compartilhado; as mesmas perguntas aparecem na página web
/ally/<codigo>também.) - 📝 Edit Template / ✏️ Edit Ally Message / ✏️ Edit Ticket Message / ✏️ Edit Ally Button — personalize o corpo da mensagem fixada, a mensagem de boas-vindas dentro de cada ticket, o rótulo do botão.
- 📋 Map Ally Channel / 📂 Map Ticket Category — aponte o botão fixado ou novos tickets para canais / categorias Discord existentes em vez dos criados automaticamente.
- 🚫 Pause Ally — pare de aceitar novos candidatos mas mantenha os tickets em andamento abertos.
- 🔄 Refresh Pinned — rerenderize a mensagem
[Apply as Ally]fixada em#🤝-ally-here. - 🎮 Auto-Name: OFF / ON — alterne o rename do nickname Discord na aprovação (padrão ON).
- 🔧 Rebuild — auto-rejeita todos os candidatos aliados pendentes + apaga o canal
#🤝-ally-heree a categoria🤝 Ally+ recria do zero. Funções de revisor + personalizações de mensagem são preservadas. - 🗑 Disable Ally — limpa toda a configuração Discord do lado Ally. Os canais Discord permanecem mas ficam sem gestão. Reversível executando novamente o setup.
Cada configuração também pode ser editada na web em #Discord Integration → Integrações → Ally (veja Integração Discord). As alterações sincronizam nos dois sentidos em tempo real.
2. Candidato aliado — clique em [Apply as Ally]
Para todos fora da guild, o único canal que podem ver dentro da categoria 🤝 Ally é #🤝-ally-here. A mensagem fixada tem o botão [Apply as Ally] (ou seu rótulo personalizado).
Quando um candidato clica no botão:
- O bot cria um canal privado com nome seguindo o modelo de nome do canal de ticket (padrão
🤝-ally-<nome-de-usuario-discord>). Apenas o candidato + as funções de revisor podem vê-lo. - O bot posta a mensagem de boas-vindas no topo do ticket — a introdução personalizada da guild anfitriã + quaisquer perguntas de candidatura que a guild anfitriã definiu.
- O bot responde com uma mensagem efêmera orientando o candidato a responder as perguntas no ticket.
O candidato digita as respostas como mensagens regulares do Discord. Os revisores veem essas mensagens no ticket; as respostas não são armazenadas no banco de dados do AO Master (ficam apenas no transcript do Discord).
3. Revisor — /ally review, /ally reject, /ally done
Três slash commands cobrem todo o lado do revisor. Os três são bloqueados pelas funções de revisor definidas no painel Manage Ally.
/ally review
Execute dentro de um canal de ticket de aliado. Abre um assistente:
- Escolha o personagem da aliança — um dropdown listando personagens de seus parceiros de aliança. O candidato declara com qual personagem está se candidatando; o seletor tem escopo para guilds parceiras de aliança para que um revisor não possa acidentalmente aprovar alguém de uma guild não-parceira.
- Confirme — um card de resumo mostra o personagem escolhido + sua guild parceira de origem (resolvida em tempo real da API do Albion). Clique em ✅ Confirm.
Ao confirmar:
- A linha do aliado é adicionada a
#Alliesno lado web do AO Master (status: Vinculado). - O bot adiciona a função AO Ally à conta Discord do candidato (criada automaticamente na primeira vez que você ativa o Ally; com a cor do chip Ally Role que você configurou).
- Se existir um mapeamento de Função de Parceiro para a guild de origem escolhida, o bot também concede essa função (ex. um candidato de "Cozy Chilipi" recebe tanto AO Ally + uma função Cozy Chilipi).
- Se Auto-Name estiver ON, o bot renomeia o nickname Discord do candidato para corresponder ao personagem Albion escolhido.
/ally reject
Execute em qualquer lugar que os revisores possam postar (tipicamente dentro do ticket). Uso:
/ally reject user:@<candidato> reason:<razão opcional>- A solicitação de entrada pendente do candidato muda para Rejeitado.
- O bot envia DM ao candidato com a razão (ou uma padrão se você pulou).
- O ticket fecha imediatamente; o transcript NÃO é arquivado (fechamentos por rejeição pulam o fórum de arquivo por design — tickets rejeitados são ruído).
/ally done
Execute dentro do ticket APÓS /ally review ter aprovado o candidato. Duas coisas acontecem:
- A conversa completa do ticket é espelhada — com nomes + avatares originais dos autores + cada arquivo anexado — em um thread de fórum privado dentro do canal de fórum
🗄-ally-archive. O fórum + o webhook que o bot usa para postar nele são criados automaticamente na primeira vez que/ally doneroda (uma guild que nunca arquiva não carrega um fórum vazio). - O canal de ticket é excluído.
O título do thread de arquivo corresponde ao nome do canal de ticket para que revisores possam buscar o fórum posteriormente por nome de usuário.
4. Diferenças do Enlist
Os dois fluxos compartilham a espinha dorsal estrutural, mas o Ally tem algumas particularidades que não existem no lado Enlist:
| Aspecto | Enlist | Ally |
|---|---|---|
| Bloqueio por tier | Tier Free e acima | Tier Pro e acima |
| Seletor de personagem | Busca livre pelo Albion | Seletor de roster de aliança (com escopo para guilds parceiras) |
| Concessão de função na aprovação | Função Discord da tabela de mapeamento | Função universal AO Ally + Função de Parceiro opcional baseada na guild de origem |
| Marcador visual na web | Função regular do AO Master | Chip Ally Role (rótulo + cor) |
| Canal de roster na web | #Members | #Allies |
| Cron de deserção | n/a | Verificação diária; muda status para Saiu da aliança quando a guild de origem do aliado sai da aliança — veja Sincronização de Cargo de Aliado |
| Slash commands | /enlist review, /enlist reject, /enlist done | /ally review, /ally reject, /ally done |
| Canal fixado padrão | #📋-enlist-here | #🤝-ally-here |
| Prefixo do canal de ticket | 🎯-enlist-… | 🤝-ally-… |
| Fórum de arquivo | apply-archive | 🗄-ally-archive |
Tudo que não está na tabela funciona da mesma forma — mesmo formato do assistente de setup, mesmo layout do painel, mesmo fluxo de transcript arquivado, mesmas semânticas de Pause / Rebuild / Disable.
5. Quando o recurso Alliance está em "hold"
Alliance é bloqueado por tier para o Pro. Se sua guild cair do Pro para um tier menor (assinatura vence, downgrade), o pipeline entra em modo hold:
- O botão 🤝 Enable Ally em
#⚙️-guild-settingsé substituído por um estado cinza[🔒 Alliance — Pro tier needed]. - Tickets de aliados existentes ficam abertos mas nenhum novo candidato pode se candidatar.
- O cron de deserção pausa (seu roster não perde aliados só porque você baixou de tier).
- Aliados existentes mantêm seu cargo AO Ally e a linha no roster.
Restaurar o tier Pro retoma o pipeline automaticamente — sem necessidade de reconfigurar.
6. Espelho no lado web
Cada configuração no painel Discord do Manage Ally também fica em #Discord Integration → Integrações → Ally na web (veja Integração Discord). As configurações entre superfícies (toggle Receive new applicants, Custom apply questions, chip Ally Role) ficam em Configurações → Recrutamento (aba externa Ally) e também aparecem na sub-página Ally da Integração Discord em um card de Configurações relacionadas.
Escolha a superfície que for mais conveniente — elas sincronizam em tempo real pelo mesmo canal.
Links relacionados
- Fluxo Enlist no Discord — o equivalente para membros (com capturas de tela completas por etapa do Discord; o formato Ally espelha elas).
- Configurações → Recrutamento — aba externa Ally (perguntas de candidatura + chip Ally Role + códigos de convite).
- Integração Discord — hub do estado vinculado (sub-página Ally fica na aba Integrações).
- Referência do canal #Allies — a página de roster do lado da guild anfitriã.
- Membros — Aliança — a visão do lado do candidato.
- Discord — Apêndice de slash commands — referência completa de todos os slash commands, incluindo
/ally review//ally reject//ally done.