Skip to main content
Guide
GuideRolesBasics

Ruoli e permessi su Discord: perché il tuo bot non può assegnare quel ruolo

La gerarchia dei ruoli è il motivo più comune per cui qualcosa su Discord non funziona. Capiscila una volta e ti risparmi ore di ricerca dei problemi.

Pubblicato il di AlphaCloud4 min di lettura

C'è una situazione in cui prima o poi si imbatte ogni proprietario di server: un bot deve assegnare un ruolo e non lo fa. Il bot ha Amministratore. L'impostazione è salvata. Eppure non succede niente.

La causa è quasi sempre la stessa, e non ha niente a che fare con i permessi.

Due sistemi, non uno

Discord decide in due passaggi separati se qualcuno può fare qualcosa:

  1. Il permesso. Questo ruolo può gestire i ruoli in generale?
  2. La posizione. Questo ruolo sta abbastanza in alto da toccare il ruolo di destinazione?

La maggior parte delle persone conosce solo il primo passaggio. È nel secondo che si blocca.

La regola in una frase

Un membro, bot compresi, può assegnare e rimuovere solo i ruoli che stanno sotto il proprio ruolo più alto. E può moderare solo i membri il cui ruolo più alto sta sotto il proprio.

Questo vale anche con Amministratore. Amministratore scavalca i permessi, non la gerarchia. Un bot con Amministratore il cui ruolo sta in fondo all'elenco non può fare praticamente nulla.

Un esempio

Il tuo elenco dei ruoli è questo, dall'alto verso il basso:

Owner
Administrator
Moderator
AlphaCloud          <- the bot's role
Verified
Member

Cosa può fare il bot:

  • Assegnare e rimuovere Verified e Member
  • Moderare i membri il cui ruolo più alto è Verified o Member

Cosa il bot non può fare:

  • Assegnare Moderator, perché quel ruolo sta sopra di lui
  • Espellere, bannare o rinominare un moderatore
  • Toccare un amministratore

Se vuoi che il bot possa assegnare il ruolo di moderatore, devi trascinare il suo ruolo sopra Moderator. Non il contrario.

Il consiglio pratico

Metti il ruolo del bot subito sotto il tuo ruolo di staff più alto. Così:

Owner
Administrator
AlphaCloud          <- here
Moderator
Verified
Member

In questo modo il bot può gestire tutto ciò che sta sotto la direzione senza poter toccare la direzione stessa. È quasi sempre esattamente ciò che vuoi.

L'ordine si cambia trascinando, in Impostazioni server, Ruoli.

Tre casi speciali che comunque non funzioneranno

Anche con una gerarchia perfetta ci sono tre cose che Discord non consente mai a un bot:

Rinominare o moderare il proprietario del server. Il proprietario sta fuori dalla gerarchia. Nessun ruolo e nessun permesso cambia questo.

Modificare ruoli alla stessa posizione. Due ruoli alla stessa altezza non possono toccarsi a vicenda. Deve stare davvero sopra, non allo stesso livello.

Assegnare il ruolo @everyone. Ce l'hanno tutti automaticamente, non si può assegnare.

I permessi del canale battono i permessi del server

Il secondo caso più comune: secondo il suo ruolo il bot può inviare messaggi, ma in un canale preciso non lo fa.

Discord consente eccezioni per singolo canale ai permessi del server. Se in un canale Invia messaggi è esplicitamente negato per @everyone o per uno dei ruoli del bot, vince quello, qualunque cosa dica il ruolo del server.

Puoi verificarlo direttamente: impostazioni del canale, Permessi, poi seleziona il bot in alto sotto Visualizza i permessi per. Discord ti mostra allora esattamente cosa può fare in quel canale.

Quale permesso per cosa

Se preferisci non dare a un bot Amministratore su tutto, questo è l'elenco realistico:

Compito Permesso
Assegnare ruoli Gestisci ruoli
Ticket, canali temporanei Gestisci canali
Eliminare lo spam Gestisci messaggi
Silenziare Metti membri in timeout
Allontanare Espelli membri, Banna membri
Spostare nel canale AFK Sposta membri
Prefissi nei nickname Gestisci nickname
Sapere chi ha avviato un'azione Visualizza registro attività

Amministratore resta la scelta pragmatica se usi molte funzionalità. Non perché sia più sicuro, ma perché altrimenti ogni nuova funzionalità ti manda a caccia dell'unico permesso che manca. In ogni caso, la gerarchia resta la leva più importante.

La versione breve per la ricerca dei problemi

Quando qualcosa non funziona, passa queste quattro domande in ordine:

  1. Il ruolo del bot sta sopra il ruolo in questione?
  2. Il ruolo del bot sta sopra il membro in questione?
  3. Il bot ha il permesso corrispondente a livello di server?
  4. Quel permesso è esplicitamente negato in questo canale?

In nove casi su dieci si tratta della domanda 1 o 2.

Altri articoli