Referência

Cargos e permissões

As permissões do Unkvoid são bits calculados pelo Laravel. O cargo @everyone sempre existe; nele, o padrão permite ver canal, enviar mensagens, conectar, falar, transmitir tela, usar vídeo e criar convite.

Grupos de permissões

Área Exemplos
Administração ADMINISTRATOR, MANAGE_SERVER, MANAGE_ROLES, MANAGE_CHANNELS
Membros KICK_MEMBERS, BAN_MEMBERS, MUTE_MEMBERS, DEAFEN_MEMBERS, MOVE_MEMBERS
Canais e chat VIEW_CHANNEL, SEND_MESSAGES, MANAGE_MESSAGES
Voz e mídia CONNECT, SPEAK, STREAM, VIDEO
Convites e auditoria CREATE_INVITE, VIEW_AUDIT_LOG

ADMINISTRATOR e a dona do servidor têm todas as permissões. Fora esses casos, o cálculo começa no @everyone, soma os cargos da pessoa e aplica as sobrescritas do canal.

Sobrescritas de canal

Uma sobrescrita pode permitir ou negar bits para @everyone, um cargo ou uma pessoa. A ordem é: @everyone, todos os cargos da pessoa e, por fim, a sobrescrita individual. Assim é possível, por exemplo, esconder um canal do servidor inteiro e liberá-lo apenas para um cargo.

Hierarquia

O cargo de posição mais alta define até onde uma pessoa pode administrar. Ela só pode modificar cargos e membros abaixo de si, e não pode atribuir uma permissão que ela própria não possui. Essas regras também valem para expulsar, banir, mutar, desconectar e mover membros.

As rotas de cargos e sobrescritas estão resumidas na API para integrações.