Saltearse al contenido

Member

Member conecta tu flujo con Discord a través de tu bot para gestionar las personas y los roles de un servidor: ver quién forma parte del servidor y qué roles tiene cada uno, consultar los roles existentes, crear o eliminar un rol, y dar o quitar un rol a un miembro.

Los roles de Discord deciden qué puede ver y hacer cada persona en el servidor. Gestionarlos desde un flujo te permite, por ejemplo, dar acceso a los canales de clientes a quien acaba de comprar o retirarlo a quien se da de baja.

Cuándo usarlo

  • Dar el rol de cliente a una persona en cuanto completa su compra.
  • Quitar el rol de suscriptor a quien cancela su suscripción.
  • Crear un rol para cada nuevo grupo de formación.
  • Obtener la lista de miembros del servidor y sus roles para un informe.
  • Eliminar los roles de grupos que ya han terminado.

Configuración

Necesitas una credencial Discord API con el Public Key, el Application ID y el Bot Token de tu aplicación, que encuentras en el Discord Developer Portal. Para gestionar roles, el bot necesita el permiso de gestionar roles en el servidor, y su rol tiene que estar por encima de los roles que asigna. Para listar los miembros, activa la opción Server Members Intent del bot en el Discord Developer Portal. Consulta Credenciales.

En Discord, los servidores se llaman también guilds: por eso los campos hablan de Guild ID.

CampoQué hace
Credential (obligatorio)La credencial Discord API de tu bot.
Operation (obligatorio)Lo que hace el componente. Ver Operaciones.
Guild ID (obligatorio)El identificador del servidor de Discord. Lo encuentras en el resultado de Get Guilds del componente Channel.
User IDSolo en Add Roles to Member y Remove Roles from Member. El identificador de la persona. Lo encuentras en el resultado de Get Guild Members.
FilterSolo en Get Guild Roles. All Roles trae todos los roles del servidor; By Role ID trae uno concreto. Por defecto, All Roles.
Role IDEl identificador del rol. Obligatorio en Add Roles to Member, Remove Roles from Member, Delete Roles y en Get Guild Roles con By Role ID. Lo encuentras en el resultado de Get Guild Roles.
Role NameSolo en Create Role. El nombre del rol nuevo.
Role OptionsSolo en Create Role, opcional. Ajustes de Discord para el rol, como su color (color), si se muestra aparte en la lista de miembros (hoist), si se puede mencionar (mentionable) o sus permisos (permissions).

Operaciones

OperaciónQué hace
Get Guild MembersTrae todos los miembros del servidor.
Add Roles to MemberDa un rol a un miembro.
Remove Roles from MemberQuita un rol a un miembro.
Get Guild RolesTrae los roles del servidor o un rol concreto.
Create RoleCrea un rol nuevo en el servidor.
Delete RolesElimina un rol del servidor. Discord se lo quita a todos los miembros que lo tenían.

Resultado

La salida Data devuelve los miembros o roles con los que has trabajado. Cada miembro trae su identificador (id), su nombre de usuario (username), su nombre visible (global_name), su apodo en el servidor (nick), la fecha en que se unió (joined_at) y los identificadores de sus roles (roles). Cada rol trae su identificador (id), nombre, posición y permisos. Las operaciones que dan, quitan o eliminan roles devuelven una confirmación.

Si Discord rechaza la operación, por ejemplo porque el bot no tiene permisos, el resultado trae status con el valor error y el motivo, en lugar de detener el flujo.

El componente también se puede conectar a un Agente como herramienta. Ver Tool Mode.

Ejemplo

Una academia da acceso a los canales de alumnos a cada persona que se matricula.

  1. La matrícula llega al flujo con el identificador de Discord del alumno.
  2. Añade Member con la operación Add Roles to Member.
  3. En Guild ID, pega el identificador del servidor de la academia; en User ID, el del alumno; en Role ID, el del rol Alumno.
  4. Conecta el resultado a Message para dar la bienvenida al alumno en el canal de presentaciones.

Buenas prácticas

  • Obtén una vez los identificadores de tus roles con Get Guild Roles y guárdalos para usarlos en tus flujos.
  • Get Guild Members trae a todos los miembros del servidor. En servidores muy grandes, tarda más.

Componentes relacionados

  • Channel: consulta, crea y elimina canales.
  • Message: envía y lee mensajes.