Skip to content

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):

  1. 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 @everyone e 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.
  2. 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-here e 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:

  1. 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.
  2. 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.
  3. 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:

  1. 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.
  2. 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 #Allies no 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:

  1. 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 done roda (uma guild que nunca arquiva não carrega um fórum vazio).
  2. 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:

AspectoEnlistAlly
Bloqueio por tierTier Free e acimaTier Pro e acima
Seletor de personagemBusca livre pelo AlbionSeletor de roster de aliança (com escopo para guilds parceiras)
Concessão de função na aprovaçãoFunção Discord da tabela de mapeamentoFunção universal AO Ally + Função de Parceiro opcional baseada na guild de origem
Marcador visual na webFunção regular do AO MasterChip Ally Role (rótulo + cor)
Canal de roster na web#Members#Allies
Cron de deserçãon/aVerificaçã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 arquivoapply-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.