Introduzione
Per sviluppare e ospitare un bot Slack 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.
Creazione del progetto
Per creare un bot Slack, avrai bisogno di un account e dei permessi per creare app su Slack. Crea o accedi al tuo account su Slack prima di seguire i passaggi successivi.Applicazione bot su Slack
- Vai su Slack API - Your Apps e clicca su “Create New App”.
- Scegli “From scratch”, assegna un nome all’app e seleziona il workspace in cui la installerai.
- Nella sezione “Socket Mode”, abilita il Socket Mode e genera un app-level token con lo scope
connections:write. Copialo (inizia conxapp-): questo è il tuoSLACK_APP_TOKEN. - Nella sezione “OAuth & Permissions”, aggiungi gli scope di cui il tuo bot ha bisogno (ad esempio
chat:write,app_mentions:read,commands), installa l’app nel tuo workspace e copia il Bot User OAuth Token (inizia conxoxb-): questo è il tuoSLACK_BOT_TOKEN. - In “Event Subscriptions”, abilita gli eventi e iscriviti al bot event
app_mention. In “Slash Commands”, crea il comando/hello. Con il Socket Mode abilitato, nessuno dei due richiede una Request URL.
Sviluppo del progetto
Usa le sezioni sottostanti a seconda del linguaggio che scegli. Entrambi gli esempi mostrano un bot che risponde a menzioni o comandi semplici.- Node.js - @slack/bolt
- Python - slack_bolt
Configurazione dell’ambiente Node.js
- Assicurati che Node.js sia installato.
- Inizializza un progetto e installa le dipendenze:
Terminal
- Crea un file
index.jscon il seguente contenuto:
index.js
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: in Socket Mode, il bot non ha bisogno di un URL pubblico.
Impostare i token
Il tuo codice legge entrambi i token dalle variabili d’ambienteSLACK_BOT_TOKEN e SLACK_APP_TOKEN, quindi non finiscono mai nei tuoi file. Impostali in uno di questi modi:
- Dashboard: nella pagina di upload, apri Advanced configuration e aggiungi entrambe le variabili. Per un bot già pubblicato, aggiungile nella pagina Environment Variables dell’applicazione e riavvia il bot.
- CLI: subito dopo aver caricato il bot (vedi Distribuzione), impostale con
squarecloud app env sete riavvia il bot:
Distribuzione
Dopo aver preparato i file del tuo progetto, puoi ora caricarli su Square Cloud e ospitare il tuo progetto. Per farlo, crea un file ZIP contenente tutti i file del tuo progetto.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.
Test del bot
- Nel pannello dell’app Slack, sotto “OAuth & Permissions”, installa l’app nel workspace (se non l’hai ancora fatto).
- Controlla i log dell’applicazione nella dashboard di Square Cloud per eventuali errori di avvio. Con il Socket Mode non c’è nessuna Request URL da configurare: il bot si connette a Slack non appena si avvia.
- Invita il bot in un canale, poi menzionalo o esegui il comando
/helloper convalidare le risposte.
Usare la modalità HTTP al posto del Socket Mode
Le app che usano il Socket Mode non possono essere pubblicate nello Slack Marketplace pubblico. Se hai bisogno che Slack invii gli eventi via HTTP, esegui il bot come applicazione web:- Nelle impostazioni dell’app Slack, disabilita il Socket Mode e copia il Signing Secret (sotto “Basic Information”) in una variabile d’ambiente
SLACK_SIGNING_SECRET, impostata come i token. - Crea l’app con il signing secret al posto dell’app-level token e mettiti in ascolto sulla porta indicata dalla variabile d’ambiente
PORT:
0.0.0.0), come richiede Square Cloud.
- Aggiungi un
SUBDOMAINal tuo file di configurazione (oppure seleziona “Web Publication” e imposta un sottodominio quando carichi dalla dashboard), così il bot ottiene un URL pubblico. Le applicazioni web richiedono almenoMEMORY=512:
squarecloud.app
Un’applicazione caricata senza sottodominio non può riceverne uno in seguito. Se il tuo bot gira già in Socket Mode, carica la versione HTTP come nuova applicazione.
- In “Event Subscriptions” e nello slash command
/hello, imposta la Request URL suhttps://<subdomain>.squareweb.app/slack/events.
Risorse aggiuntive
Per ulteriori approfondimenti, consulta la documentazione ufficiale di Slack:Prossimi passi
L'app non si avvia
Risolvi moduli mancanti, errori di memoria e altri errori di avvio.
Variabili d'ambiente
Gestisci i token del tuo bot e gli altri segreti.
Bot Discord
Ospita un bot Discord accanto al tuo bot Slack.

