Ho un videogioco startup a cui intendo dedicare un forum. Le mie ambizioni potrebbero essere un po’ fuori dagli schemi, quindi volevo chiedere a qualcuno con più esperienza su questa piattaforma se sto davvero facendo la scelta giusta scegliendo Discourse. Intendo un’integrazione completa: una notifica dai forum arriva nel gioco e viceversa. Ad esempio, inviare un messaggio privato a un giocatore offline verrebbe recapitato nella sua casella di posta del forum; quando si collega, riceverà una notifica dei messaggi nella casella offline.
Ho già installato il mio primo server di sviluppo e sono rimasto impressionato dalle sue funzionalità. Tuttavia, dopo essere entrato nel pannello di amministrazione, mi sono trovato con più domande che mai.
Vorrei sapere quanto delle seguenti funzionalità è già presente in Discourse e cosa dovrò implementare io stesso:
Generare automaticamente un account forum collegato a un account di gioco
Impostare il segreto OAUTH (2FA) di un utente in modo che corrisponda al 2FA di un account di gioco (fonte esterna)
Revocare o aggiungere permessi tramite API (aggiungere/rimuovere moderatori giocatori)
Aggiungere badge o titoli a un utente tramite API (assegnare “flair” ai giocatori per competizioni)
Inviare webhook quando un utente riceve un messaggio nella casella di posta o una notifica (per inoltrarli al server di gioco come notifica in-game)
Inviare un webhook in caso di ban dal forum (per silenziarli anche sui server di gioco)
Bannare qualcuno o eliminare l’utente tramite API (se viene bannato nel gioco)
Cambiare il nome utente tramite API (quello con cui si effettua il login, non le email di notifica, ad esempio se cambiano il nome visualizzato nel gioco)
Innanzitutto, grazie. Hai risposto a molte di quelle domande in modo eccellente.
Per approfondire il punto 2:
L’autenticazione a due fattori (2FA) utilizza una chiave condivisa, solitamente nascosta dietro un codice QR. Ogni volta che scansioni un codice QR, in realtà stai acquisendo una chiave privata per generare i codici 2FA basati sul tempo. Ho notato che il 2FA è possibile su questo sito web, ma non sono sicuro che sia possibile distribuire o assegnare questi codici 2FA agli account direttamente, invece di farli generare dagli utenti.
Caso d’uso: Immagina di gestire il 2FA sul sito web del tuo gioco. Gli utenti si registrano per il 2FA sul tuo sito, e il tuo sito fornisce loro una chiave privata per il loro telefono per accedere al gioco e al forum. Di conseguenza, voglio che lo stesso codice 2FA funzioni sia per l’account del gioco che per quello del forum. Pertanto, in background, assegnerò la loro chiave privata 2FA all’account del forum quando si registrano con successo.
Voglio dire, non potrei semplicemente inserire un utente nel database? O non esiste una chiamata API per creare un account? Sarebbe sorprendente se non ci fosse.