Skip to content

Flujo de Ally en Discord

El pipeline Ally es la forma canónica para que alguien de una guild socia aplique como aliado en Discord. Es el gemelo estructural del Flujo de enlist — un clic del solicitante abre un ticket de revisión privado, un revisor ejecuta un breve asistente para verificar con qué personaje está aplicando y una transcripción archivada llega a un foro al cerrar.

Esta página recorre todo el pipeline desde el asiento de cada rol — owner configurándolo, solicitante aliado haciendo clic en el botón, revisor ejecutando los slash commands. La forma refleja Enlist de cerca; la sección Diferencias respecto a Enlist cerca del final detalla lo que es exclusivo de Ally.

Requisitos previos

  • El bot está emparejado con tu gremio de AO Master — ver Instalar + emparejar.
  • Tu gremio está en tier Pro o superior (el pipeline de Alianza está bloqueado por tier).
  • La persona que lo configura es el server owner de Discord o tiene el permiso Manage Integrations en AO Master.
  • Existe un rol de Discord que actuará como "revisor" — cualquiera con ese rol puede actuar en los tickets. Créalo primero en Discord si aún no lo tienes.

1. Owner — configura el hub de Ally

El hub de Ally se aprovisiona desde el mismo canal #⚙️-guild-settings que Enlist. El mensaje fijado Guild Settings tiene ahora cuatro botones en la primera fila: [🔍 View Config] [🎯 Manage Enlist] [💰 Manage Regear] [🤝 Enable Ally].

Haz clic en el botón verde 🤝 Enable Ally. Aparece un panel efímero con un estado "No está configurado" y un solo botón funcional — ⚙ Setup.

Asistente de configuración (2 pasos)

El asistente es idéntico en forma al de Enlist (mismo patrón de 2 pasos documentado en Flujo de enlist):

  1. Elige los roles de Discord de revisor — desplegable de selección múltiple de los roles de Discord de tu servidor con conteos de miembros en vivo. El asistente rechaza @everyone y los roles de bot gestionados. Cualquiera con uno de los roles elegidos verá los tickets de aliado y podrá ejecutar /ally review / /ally reject / /ally done.
  2. Confirmar — tarjeta de confirmación corta listando lo que se crea: canal #🤝-ally-here + categoría 🤝 Ally, más el botón fijado [Apply as Ally]. Haz clic en ✅ Confirm.

Tras ~5 segundos el panel se vuelve a renderizar en el panel completo Manage Ally.

Panel Manage Ally

El panel post-configuración refleja el panel Manage Enlist con los extras exclusivos de Ally al final. Los botones incluyen:

  • ⚙ Reconfigure — vuelve a ejecutar el selector de roles de reclutador.
  • ? Edit Questions — cambia las preguntas de solicitud que se hacen a los solicitantes aliados. (Editor compartido; las mismas preguntas se muestran también en la página web /ally/<code>.)
  • 📝 Edit Template / ✏️ Edit Ally Message / ✏️ Edit Ticket Message / ✏️ Edit Ally Button — personaliza el cuerpo del mensaje fijado, el mensaje de bienvenida dentro de cada ticket, la etiqueta del botón.
  • 📋 Map Ally Channel / 📂 Map Ticket Category — apunta el botón fijado o los nuevos tickets a canales / categorías de Discord existentes en vez de los creados automáticamente.
  • 🚫 Pause Ally — deja de aceptar nuevos solicitantes pero mantiene abiertos los tickets en curso.
  • 🔄 Refresh Pinned — vuelve a renderizar el mensaje fijado [Apply as Ally] en #🤝-ally-here.
  • 🎮 Auto-Name: OFF / ON — activa o desactiva el cambio de apodo de Discord al aprobar (por defecto ON).
  • 🔧 Rebuild — rechaza automáticamente a cada solicitante aliado pendiente + borra el canal #🤝-ally-here y la categoría 🤝 Ally + los recrea desde cero. Los roles de revisor + personalizaciones de mensajes se conservan.
  • 🗑 Disable Ally — borra toda la configuración del lado Discord de Ally. Los canales de Discord permanecen pero quedan sin gestión. Reversible volviendo a ejecutar la configuración.

Cada ajuste también puede editarse en la web en #Discord Integration → Integrations → Ally (ver Configuración → Integración Discord). Los cambios se sincronizan en ambas direcciones en tiempo real.


2. Solicitante aliado — haz clic en [Apply as Ally]

Para todos los que están fuera del gremio, el único canal que pueden ver dentro de la categoría 🤝 Ally es #🤝-ally-here. El mensaje fijado tiene el botón [Apply as Ally] (o tu etiqueta personalizada).

Cuando un solicitante hace clic en el botón:

  1. El bot crea un canal privado con el nombre según la Ticket channel name template (por defecto 🤝-ally-<discord-username>). Solo el solicitante + los roles de revisor pueden verlo.
  2. El bot publica el Welcome message en la parte superior del ticket — la intro personalizada del anfitrión + cualquier pregunta de solicitud que tenga configurada.
  3. El bot responde con un recordatorio efímero dirigiendo al solicitante a responder las preguntas en el ticket.

El solicitante escribe sus respuestas como mensajes regulares de Discord. Los revisores ven esos mensajes en el ticket; las respuestas no se almacenan en la base de datos de AO Master (solo viven en la transcripción de Discord).


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

Tres slash commands cubren todo el lado del revisor. Los tres están controlados por los roles de revisor establecidos en el panel Manage Ally.

/ally review

Ejecuta dentro de un canal de ticket de aliado. Abre un asistente:

  1. Elegir personaje de la alianza — un desplegable listando personajes de tus guilds socias. El solicitante declara con qué personaje está aplicando; el selector está restringido a las guilds socias de la alianza para que un revisor no pueda aprobar accidentalmente a alguien de una guild no socia.
  2. Confirmar — una tarjeta de resumen muestra el personaje elegido + su guild socia de origen (resuelta en vivo desde la API de Albion). Haz clic en ✅ Confirm.

Al confirmar:

  • La fila del aliado se añade a #Allies en el lado web de AO Master (estado: Vinculado).
  • El bot añade el rol AO Ally a la cuenta de Discord del solicitante (creado automáticamente la primera vez que habilitas Ally; con el color del Ally Role chip que hayas configurado).
  • Si existe un Partner Role mapping para la guild de origen elegida, el bot también concede ese rol (p. ej. un solicitante de "Cozy Chilipi" obtiene tanto AO Ally como un rol de Cozy Chilipi).
  • Si Auto-Name está ON, el bot cambia el apodo de Discord del solicitante para que coincida con el personaje de Albion elegido.

/ally reject

Ejecuta donde los revisores pueden publicar (normalmente dentro del ticket). Uso:

/ally reject user:@<solicitante> reason:<motivo opcional>
  • La solicitud de ingreso pendiente del solicitante cambia a Rejected.
  • El bot envía un DM al solicitante con el motivo (o uno predeterminado si lo omitiste).
  • El ticket se cierra inmediatamente; la transcripción NO se archiva (los cierres por rechazo omiten el foro de archivo por diseño — los tickets rechazados son ruido).

/ally done

Ejecuta dentro del ticket DESPUÉS de que /ally review haya aprobado al solicitante. Ocurren dos cosas:

  1. La conversación completa del ticket se duplica — con nombres + avatares originales + cada archivo adjunto — en un hilo de foro privado dentro del canal de foro 🗄-ally-archive. El foro + el webhook que el bot usa para publicar en él se crean automáticamente la primera vez que se ejecuta /ally done (un gremio que nunca archiva no lleva consigo un foro vacío).
  2. El canal del ticket se elimina.

El título del hilo de archivo coincide con el nombre del canal del ticket para que los revisores puedan buscar en el foro más tarde por nombre de usuario.


4. Diferencias respecto a Enlist

Los dos flujos comparten la columna vertebral estructural, pero Ally tiene algunos giros que no existen en el lado de Enlist:

AspectoEnlistAlly
Bloqueo por tiertier Free y superiortier Pro y superior
Selector de personajeBúsqueda de texto libre en AlbionSelector del roster de alianza (restringido a guilds socias)
Concesión de rol al aprobarRol de Discord de la tabla de mapeoRol universal AO Ally + Partner Role opcional según la guild de origen
Marcador visual en webRol regular de AO MasterAlly Role chip (etiqueta + color)
Canal del roster en web#Miembros#Allies
Cron de deserciónn/aComprobación diaria; cambia el estado a Dejó la alianza cuando la guild de origen del aliado abandona la alianza — ver Ally Role Sync
Slash commands/enlist review, /enlist reject, /enlist done/ally review, /ally reject, /ally done
Canal fijado por defecto#📋-enlist-here#🤝-ally-here
Prefijo del canal de ticket🎯-enlist-…🤝-ally-…
Foro de archivoapply-archive🗄-ally-archive

Todo lo que no está en la tabla funciona igual — misma forma del asistente de configuración, mismo esquema del panel, mismo flujo de transcripción archivada, misma semántica de Pause / Rebuild / Disable.


5. Cuando la función Alliance está "en pausa"

Alliance está bloqueada por tier en Pro. Si tu gremio baja de Pro a un tier inferior (la suscripción expira, se degrada), el pipeline entra en modo de pausa:

  • El botón 🤝 Enable Ally en #⚙️-guild-settings se reemplaza por un estado gris [🔒 Alliance — Pro tier needed].
  • Los tickets de aliado existentes permanecen abiertos pero no pueden aplicar nuevos solicitantes.
  • El cron de deserción se pausa (tu roster no cambia solo porque hayas bajado de tier).
  • Los aliados existentes conservan su rol AO Ally y su fila en el roster.

Restaurar el tier Pro vuelve a activar el pipeline automáticamente — no hace falta configurar nada de nuevo.


6. Espejo del lado web

Cada ajuste del panel Discord Manage Ally también vive en #Discord Integration → Integrations → Ally en la web (ver Configuración → Integración Discord). Los ajustes entre superficies (toggle Receive new applicants, Custom apply questions, Ally Role chip) viven en Configuración → Reclutamiento (pestaña externa Ally) y también se muestran en la sub-página Ally de Integración Discord bajo una tarjeta Related settings.

Elige la superficie que te resulte conveniente — se sincronizan en tiempo real por el mismo canal.