Introduzione
Per sviluppare e ospitare un bot X (Twitter) 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
È richiesto un account X (Twitter) attivo per l’autenticazione e il funzionamento del bot. Se non hai un account, registrati sul sito ufficiale di X.È inoltre necessario un account X Developer per accedere alle API. Richiedi l’accesso tramite il X Developer Portal.
Applicazione bot su X
Apri il Developer Portal
- Vai al X Developer Portal.
- Accedi con il tuo account X (Twitter).
- Se è la prima volta, completa la procedura di richiesta di accesso da sviluppatore.
Crea un progetto
- Nella dashboard, clicca su “Create Project”.
- Scegli un nome per il tuo progetto (ad es. “Square Cloud Bot”).
- Seleziona il caso d’uso più appropriato (ad es. “Making a bot”).
- Fornisci una descrizione dettagliata del tuo bot.
- Conferma la creazione del progetto.
Crea un'app
- All’interno del progetto creato, clicca su “Create App”.
- Definisci un nome univoco per la tua applicazione.
- Conferma la creazione dell’applicazione.
- Annota l’App ID generato per riferimento futuro.
Genera le chiavi API
- Vai alla sezione “Keys and tokens” della tua applicazione.
- Nella sezione “Consumer Keys”, clicca su “Regenerate” per generare:
- API Key (Consumer Key)
- API Secret Key (Consumer Secret)
- Importante: copia e salva queste chiavi immediatamente, poiché non potrai più visualizzarle.
Imposta i permessi dell'app
- Vai alla sezione “App permissions”.
- Clicca su “Edit” per modificare i permessi.
- Seleziona “Read and write” per consentire al tuo bot di pubblicare tweet.
- Se necessario, seleziona “Read and write and Direct message” per la funzionalità di messaggi diretti.
- Salva le modifiche.
Genera gli access token
- Torna alla sezione “Keys and tokens”.
- Nella sezione “Access Token and Secret”, clicca su “Generate”.
- Conferma la generazione del token.
- Copia e salva:
- Access Token
- Access Token Secret
- Attenzione: questi token non possono essere visualizzati di nuovo dopo aver chiuso la pagina.
Controlla le credenziali
- Conferma di avere tutte e 4 le credenziali richieste:
- API Key (Consumer Key)
- API Secret Key (Consumer Secret)
- Access Token
- Access Token Secret
- Conserva queste credenziali in un luogo sicuro
- Importante: non condividere né esporre mai pubblicamente queste credenziali
Sviluppare il bot
- Verifica di Node.js: verifica che Node.js sia installato sul tuo sistema. In caso contrario, scaricalo dal sito ufficiale di Node.js.
- Inizializzazione del progetto: crea un nuovo progetto Node.js eseguendo:
- Installazione delle dipendenze: installa le librerie richieste per il bot:
- Credenziali: il codice legge le quattro credenziali dalle variabili d’ambiente, quindi non finiscono mai nel tuo codice. Per provare il bot sul tuo computer, inseriscile in un file
.enve avvia il bot connode --env-file=.env index.js:
- Creazione del file principale: sviluppa il file
index.jscon la struttura base del bot:
Configurare Square Cloud
Crea un filesquarecloud.app nella radice del tuo progetto, accanto a index.js. Indica a Square Cloud come eseguire il tuo bot:
MEMORYè 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: il bot chiama l’API di X e non serve pagine web.
Impostare le credenziali
API_KEY: la tua chiave API di XAPI_SECRET_KEY: la tua chiave segreta API di XACCESS_TOKEN: il tuo access tokenACCESS_TOKEN_SECRET: il tuo access token secret
- Dashboard: nella pagina di upload, apri Configurazione avanzata e aggiungi le quattro variabili. Per un bot già pubblicato, aggiungile nella pagina Variabili d’ambiente dell’applicazione e riavvia il bot.
- CLI: subito dopo aver caricato il bot (vedi Deploy e verifica), caricale dal tuo file
.envlocale consquarecloud app env sete riavvia il bot:
Cosa mettere nello ZIP
index.jse gli altri file sorgente.package.json.squarecloud.app.
node_modules: Square Cloud installa le dipendenze all’avvio del bot. Lascia fuori anche il tuo file .env: se carichi con la CLI, aggiungi una riga con .env al tuo file squarecloud.ignore così la CLI lo salta.
Deploy e verifica
Crea lo ZIP descritto sopra, poi caricalo:Tramite dashboard
Accedi alla pagina di upload
Configura il tuo ambiente
Se stai caricando un progetto web, assicurati di selezionare “Web Publication” e di impostare un sottodominio per il tuo progetto.
Esegui il deploy del tuo progetto
Dopo il deploy, puoi monitorare lo stato e i log del tuo progetto dalla dashboard.

Conferma che la tua app sia online
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
squarecloud.app che definisce l’ambiente della tua applicazione.Installa la CLI
Accedi
Carica il tuo progetto
squarecloud.ignore, e la carica:--file:Conferma che la tua app sia online
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.
Testare il bot
Dopo il deploy, controlla i log dell’applicazione nella dashboard di Square Cloud per il messaggioBot successfully initialized! per confermare che il bot si sia autenticato correttamente. Poi, da un altro account, pubblica un tweet che menziona il bot con !ping (per esempio, @your_bot !ping) e verifica che risponda con Pong! 🤖 X Bot working correctly! su X entro pochi minuti. Le menzioni pubblicate prima dell’avvio del bot vengono ignorate.
Errori comuni
Request failed with code 401
I log mostranoError verifying bot: seguito da questo errore. Una delle quattro credenziali è sbagliata o mancante. Copiale di nuovo dalla sezione “Keys and tokens”, imposta le quattro variabili e riavvia il bot.
Request failed with code 403 durante la risposta
Il bot si autentica ma non riesce a pubblicare. Gli access token sono stati generati mentre l’app aveva il permesso di sola lettura. Imposta “Read and write” nei permessi dell’app, rigenera Access Token e Secret, aggiornaACCESS_TOKEN e ACCESS_TOKEN_SECRET e riavvia il bot.
Request failed with code 429
Il bot ha raggiunto un rate limit dell’API di X. Attendi prima della richiesta successiva e distanzia le chiamate come in Rate limiting.Per andare oltre
Gli snippet qui sotto estendonoindex.js: aggiungili al file e richiamali dove il tuo bot ne ha bisogno.

