Introduzione
Per sviluppare e ospitare un bot Discord su Square Cloud, è essenziale seguire una sequenza strutturata di configurazioni e prerequisiti. Questa guida tecnica coprirà l’intero processo, dalla configurazione iniziale al deploy in produzione.Prerequisiti
- Account Square Cloud: Registrati tramite la pagina di registrazione usando la tua email.
- Piano attivo: Garantisce risorse dedicate e prestazioni ottimizzate per la tua applicazione. Consulta i nostri piani disponibili e scegli quello più adatto alle tue esigenze.
Creare il progetto
Ti serve un account Discord per creare e gestire i bot. Se non ne hai uno, crealo sul sito ufficiale di Discord.Applicazione bot su Discord
Crea l'applicazione
Accedi al Developer Portal e clicca su “New Application”. Definisci un nome per il tuo bot e clicca su “Create” per creare l’applicazione.

Genera il token
Dopo aver creato l’applicazione, vai alla scheda “Bot” e clicca su “Reset Token” per generare il token di autenticazione. Copialo: lo imposterai come variabile d’ambiente su Square Cloud, mai nel tuo codice.

Attiva i privileged intent
Il bot di esempio legge il testo dei messaggi, quindi ha bisogno del Message Content Intent. Rimani nella scheda “Bot”, scorri verso il basso fino a “Privileged Gateway Intents” e attiva Message Content Intent. Questo esempio non ha bisogno degli altri due privileged intent (Presence e Server Members).

Sviluppare il bot
Scrivi il bot con discord.js (Node.js) o discord.py (Python):- Discord.js (Node.js)
- Discord.py (Python)
- Verifica che Node.js sia installato sul tuo sistema. In caso contrario, scaricalo dal sito ufficiale di Node.js.
- Inizializza un nuovo progetto Node.js:
Terminal
- Installa la libreria discord.js:
Terminal
- Crea un file JavaScript (ad esempio,
index.js) e aggiungi il seguente codice per creare un bot Discord di base:
index.js
Events.ClientReady ("clientReady"). Il vecchio nome "ready" è deprecato.Configurare Square Cloud
Crea un filesquarecloud.app nella radice del tuo progetto, accanto al file principale. Indica a Square Cloud come eseguire il tuo bot:
MAINè il file che Square Cloud esegue, eMEMORYè la RAM del bot in MB. I bot richiedono almeno 256 MB; 512 MB lasciano spazio per crescere.AUTORESTART=trueriavvia il bot se va in crash. Consulta come funziona il riavvio automatico.- Non c’è
SUBDOMAIN: un bot non serve pagine web.
Impostare il token del bot
Il tuo codice legge il token dalla variabile d’ambienteDISCORD_TOKEN, quindi il token non finisce mai nei tuoi file. Impostalo in uno di questi modi:
- Dashboard: nella pagina di upload, apri Configurazione avanzata e aggiungi una variabile chiamata
DISCORD_TOKENcon il tuo token come valore. Per un bot già pubblicato, aggiungila nella pagina Variabili d’ambiente dell’applicazione e riavvia il bot. - CLI: subito dopo aver caricato il bot (vedi Deploy e verifica), impostala con
squarecloud app env sete riavvia il bot:
Cosa mettere nello ZIP
- Il file principale (
index.jsomain.py) e gli altri file sorgente. package.jsonorequirements.txt.squarecloud.app.
node_modules, .venv e __pycache__: Square Cloud installa le dipendenze all’avvio del bot.
Deploy e verifica
Crea lo ZIP descritto sopra, poi caricalo:Tramite dashboard
1
Accedi alla pagina di upload
Accedi alla pagina di upload e carica il file zip del tuo progetto.
2
Configura il tuo ambiente
Dopo aver caricato il tuo zip, dovrai configurare il nome, il file principale o il runtime environment e altre impostazioni per il tuo progetto.
Se stai caricando un progetto web, assicurati di selezionare “Web Publication” e di impostare un sottodominio per il tuo progetto.
Se stai caricando un progetto web, assicurati di selezionare “Web Publication” e di impostare un sottodominio per il tuo progetto.
3
Esegui il deploy del tuo progetto
Infine, clicca sul pulsante “Deploy” per ospitare il tuo progetto su Square Cloud.
Dopo il deploy, puoi monitorare lo stato e i log del tuo progetto dalla dashboard.
Dopo il deploy, puoi monitorare lo stato e i log del tuo progetto dalla dashboard.

4
Conferma che la tua app sia online
Il primo deploy richiede di solito meno di un minuto. Nella dashboard, attendi che lo stato della tua applicazione mostri “in esecuzione” e controlla i log per eventuali errori di avvio.
Se hai fatto il deploy di un sito web o di un’API, apri
Se hai fatto il deploy di un sito web o di un’API, apri
https://<tuo-sottodominio>.squareweb.app nel tuo browser: dovresti vedere la tua applicazione rispondere. Se hai fatto il deploy di un bot, invia un comando per confermare che sia online.
Tramite CLI
Per utilizzare questo metodo, il tuo progetto deve avere un file di configurazione chiamatosquarecloud.app nella sua radice. Indica a Square Cloud come eseguire la tua applicazione.
Guida al file di configurazione
Scopri come creare il file di configurazione
squarecloud.app che definisce l’ambiente della tua applicazione.1
Installa la CLI
Installa la CLI di Square Cloud. Se ce l’hai già, esegui lo stesso comando per aggiornarla:
2
Accedi
Esegui il comando qui sotto. Apre il tuo browser: approva l’accesso lì e la CLI è pronta. Non c’è nessuna chiave API da copiare. Per script e CI, consulta Autenticazione della CLI.
3
Carica il tuo progetto
Dalla cartella del tuo progetto, esegui il comando qui sotto. La CLI comprime la cartella corrente, escludendo ciò che elenca Per caricare uno zip che hai creato tu, passalo con
squarecloud.ignore, e la carica:--file:4
Conferma che la tua app sia online
Il primo deploy richiede di solito meno di un minuto. Controlla lo stato e i log della tua applicazione direttamente dal terminale:Se hai fatto il deploy di un sito web o di un’API, apri
https://<tuo-sottodominio>.squareweb.app nel tuo browser: dovresti vedere la tua applicazione rispondere. Se hai fatto il deploy di un bot, invia un comando per confermare che sia online.
Invitare il bot nel tuo server
Per inviare un comando al bot, aggiungilo a un server Discord:- Accedi al Developer Portal e seleziona il tuo bot.
- Vai alla scheda “OAuth2” e poi su “OAuth2 URL Generator”.
- In “Scopes”, seleziona l’opzione “bot”.
- In “Bot Permissions”, seleziona solo ciò che serve all’esempio: View Channels, Send Messages e Read Message History. Evita Administrator: i bot ne hanno bisogno raramente, e un token trapelato controllerebbe allora l’intero server.
- Copia l’URL generato, aprilo nel browser e aggiungi il bot al tuo server. L’URL assomiglia a questo:
68608 è la somma di questi tre permessi. Sostituisci YOUR_CLIENT_ID con l’ID della tua applicazione, mostrato nella scheda “General Information”. Se aggiungi comandi che richiedono più permessi, genera un nuovo URL selezionandoli.
Poi invia !hello in un canale che il bot può vedere. Il bot risponde con Hello!.

Errori comuni
An invalid token was provided
I log mostranoError [TokenInvalid]: An invalid token was provided. (discord.js) o discord.errors.LoginFailure: Improper token has been passed. (discord.py). La variabile DISCORD_TOKEN manca o contiene un token vecchio. Copia il token attuale dalla scheda “Bot”, impostalo di nuovo e riavvia il bot. Con discord.py, un KeyError: 'DISCORD_TOKEN' significa che la variabile non è impostata affatto.
Used disallowed intents
I log mostranoError [DisallowedIntents]: Privileged intent provided is not enabled or whitelisted. (discord.js) o discord.errors.PrivilegedIntentsRequired (discord.py). Il codice richiede il Message Content Intent, ma è disattivato nel Developer Portal. Attivalo nella scheda “Bot”, come in Applicazione bot su Discord, poi riavvia il bot.
Il bot è online ma non risponde a !hello
Controlla che il bot possa vedere e inviare messaggi in quel canale e che il Message Content Intent sia attivo: senza di esso, il bot riceve i messaggi con il testo vuoto.
Per altri messaggi e soluzioni, consulta Errori dei bot Discord.
Prossimi passi
Errori dei bot Discord
Risolvi token non valido, intent mancanti e altri errori comuni.
Variabili d'ambiente
Gestisci il token del tuo bot e gli altri segreti.
Server Lavalink
Ospita un server Lavalink per riprodurre musica nel tuo bot.

