SocialBot

SocialBotManuali › Manuale dei moduli

Manuale dei moduli

Aggiornato il 4 settembre 2026

Un modulo è un'automazione che ti costruisci: QUANDO succede qualcosa, SE valgono certe condizioni, ALLORA il bot fa una o più cose.

Con i moduli si fanno i comandi che ti mancano, le risposte automatiche, i giochi a monete, i saluti agli eventi, i timer, e i collegamenti verso servizi tuoi. Un modulo è dati, mai codice: quello che può fare è l'elenco di azioni qui sotto, e nient'altro. È il motivo per cui puoi costruirci sopra senza poter rompere niente — tuo o di altri.

QUANDO: i sei inneschi

InnescoParte quandoCosa gli dai
Comandoqualcuno scrive !nome in chatil nome (senza !) e gli alias
Parolain un messaggio compare un testoil testo, e se deve contenerlo, esserlo o iniziare così
Eventosuccede qualcosa sul canalequale evento (sotto)
Timerogni tot minutii minuti, e se vuoi un minimo di messaggi nuovi
Manualesolo quando lo lanci tuniente: si lancia da «Prova» o da fuori
Vocelo dici a voce mentre streammila frase da riconoscere

Gli eventi

EventoQuando
Nuovo followqualcuno inizia a seguirti
Sub / resubqualcuno si abbona o rinnova
Raidun altro canale ti manda i suoi spettatori
Bits / cheerqualcuno manda dei bit
Riscatto punti canalequalcuno riscatta un premio dei punti Twitch
Primo messaggio di un utentequalcuno scrive per la prima volta nel tuo canale
Sei andato in livela diretta comincia
Fine livela diretta finisce
Gesto webcam (mani/volto)la webcam riconosce un gesto o un'espressione

Il timer non parla nel vuoto: se chiedi un minimo di messaggi nuovi, il modulo tace quando la chat è ferma. È la differenza fra un promemoria e un bot che parla da solo davanti a nessuno.

SE: le condizioni

Sono tutte facoltative, e si sommano: passano tutte o il modulo non parte.

CondizioneCosa faLimiti
Chi puòda tutti, solo abbonati, solo VIP, solo moderatoriscala: tutti < sub < VIP < mod
Piattaformesolo Twitch, solo Kick, o dove vuoise non scegli, vale ovunque
Solo in direttail modulo tace a canale spento
Solo offlineil contrario: solo a canale spento
Monete richiesteserve almeno quel saldo, ma non si paga0–1.000.000
Costoquante monete si pagano per usarlo0–1.000.000, oppure una variabile
Attesaquanto aspetta prima di poter ripartire, per tuttisecondi
Attesa a testaquanto aspetta la stessa persona0–86.400 secondi
Probabilitàquante volte su cento parte0–100
Messaggio se non bastacosa dice a chi non ha abbastanza monete300 caratteri

In che ordine vengono controllate

L'ordine non è un dettaglio: decide quando si paga.

1Chi può usarlo
2La piattaforma
3Diretta accesa o spenta
4Monete richieste e costo — qui si controlla, non si paga
5L'attesa di tutti
6L'attesa della singola persona
7Il pagamento: qui le monete escono davvero
8La probabilità

Quindi si paga dopo le attese e prima del dado: chi gioca paga la giocata anche quando perde — che è come funziona una giocata — ma non paga se il comando era in attesa. Dopo il pagamento hai $costo (quanto è uscito) e $saldo (quanto è rimasto) da usare nei testi.

ALLORA: le quattordici azioni

Si eseguono in fila, fino a otto per modulo. Se una fallisce, le altre vanno avanti lo stesso: un webhook spento non deve spegnere il messaggio in chat.

AzioneCosa faCosa le daiServe
Scrivi in chatmanda un messaggioil testo (fino a 400 caratteri)
Fai partire un effettolancia un tuo effetto o suonoquale effettoun effetto già creato
Dai o togli puntimuove le monete del canaleaggiungi/togli/imposta, a chi, quanto
Contatoretiene un numero che crescenome, e se incrementare, azzerare o impostare
Crea una clipsalva una clip del momentoun testo da dire (facoltativo)il permesso clip
Cambia categoria Twitchcambia il gioco del canaleil gioco, anche da $argsil permesso di modifica canale
Cambia titolo streamcambia il titoloil testo (fino a 140 caratteri)il permesso di modifica canale
Metti una canzone in codaaggiunge un brano su Spotifyil brano, anche da $argsadd-on Musica e Spotify collegato
Annuncio in chat (/announce)un messaggio evidenziato in chatil testo e il coloreil permesso annunci
Shoutout (banner)lo shoutout ufficiale di Twitchchi, o il nome dopo il comando, o chi ha raidatoil permesso shoutout
Mostra testo sull'overlayscrive a schermo nella direttail testo e per quantol'overlay in scena
Timeout in chatmette in pausa chi ha scrittoi secondiil permesso di moderazione
Aspettauna pausa prima dell'azione dopoi secondi (fino a 30)
Chiama un webhookmanda i dati a un indirizzo tuol'URL, e se usare la rispostaun servizio tuo

Dai o togli punti

È l'azione che trasforma un modulo in un gioco. Aggiungi e togli spostano, imposta mette una cifra esatta.

Il destinatario può essere chi ha scritto, il nome dopo il comando, uno a caso fra chi ha parlato di recente, o un nome fisso. La quantità può essere un numero o una variabile: $random(10,50), $arg1.

Dopo, $mossa dice quante monete si sono mosse davvero e $bersaglio su chi. Sono la stessa cifra per tutte le azioni che seguono: senza, un furto toglierebbe una somma alla vittima e ne darebbe un'altra al ladro.

Chiama un webhook

Manda il contesto in JSON a un indirizzo tuo. Se rispondi con {"reply": "testo"} e hai spuntato «usa la risposta», il bot scrive quel testo in chat — con le variabili già espanse.

Accetta solo http e https, e non può puntare dentro una rete privata: gli indirizzi interni sono rifiutati sia scritti direttamente sia dopo aver risolto il nome, e un redirect non aggira il controllo. Cinque secondi di tempo, risposta letta fino a 10 KB.

Il ramo ALTRIMENTI

È quello che succede quando il dado non passa. Ha senso solo con una probabilità sotto il 100%: il pannello non lo lascia salvare altrimenti, perché un modulo che sembra fare due cose e ne fa una sola è peggio di un errore.

Le azioni del ramo «altrimenti» sono le stesse quattordici, e il costo è già stato pagato: la giocata persa può raccontarlo con $costo e $saldo.

Le variabili

Si scrivono nei testi e diventano quello che valgono. Una variabile che non esiste sparisce, non lascia scritto il suo nome. Non c'è nessun modo di eseguire codice: sono sostituzioni, e basta.

Chi scrive e cosa dice

$userchi ha scritto
$touseril nome scritto dopo il comando (o chi scrive, se manca)
$targetcome $touser
$argstutto quello che c'è dopo il comando
$arg1la prima parola dopo il comando (poi $arg2, $arg3…)
$canaleil nome del tuo canale

La diretta adesso

$uptimeda quanto sei in diretta (vuoto se offline)
$giocola categoria attuale
$titoloil titolo attuale
$spettatoriquanti stanno guardando ora

Le persone

$followageda quanto ti segue chi scrive, o il nome dopo il comando
$oreore guardate sul tuo canale (anche $oreguardate, $watchtime)
$chattercasouno a caso fra chi ha scritto di recente
$citauna citazione a caso fra quelle salvate
$giocotargetl'ultima categoria di chi nomini dopo il comando
$titolotargetl'ultimo titolo di chi nomini dopo il comando

Le monete

$puntiquante ne ha chi scrive
$punti(nome)quante ne ha un altro
$monetecome si chiama la tua moneta
$posizionein che posizione è chi scrive
$top(3)i primi tre, già scritti
$costoquanto è costato questo modulo
$saldoquanto è rimasto dopo il pagamento
$mossaquante monete ha mosso l'ultima azione punti
$bersagliosu chi le ha mosse

Quando l'innesco è un evento

$raiderchi ti ha raidato
$viewersquanti ne ha portati
$mesida quanti mesi è abbonato
$bitsquanti bit ha mandato
$premioquale premio ha riscattato
$gestoil gesto riconosciuto dalla webcam
$emozionel'espressione riconosciuta

Data e ora

$datala data di oggi
$orache ore sono
$giornoche giorno della settimana è

Le funzioni

$random(1,100)un numero fra due
$random(6)un numero da 1 a 6
$decimale(1,2)un numero con la virgola
$misura(1,50,cm)un numero con l'unità che vuoi
$pick(a|b|c)una a caso fra queste (anche $scegli)
$count(nome)quanto vale un contatore
$titolo($args)cambia il titolo mentre scrivi il messaggio
$categoria($args)cambia la categoria mentre scrivi il messaggio

Quelle a caso

Danno un valore nuovo a ogni volta che compaiono: due $dado nella stessa frase danno due numeri diversi.

$dadoda 1 a 6
$monetatesta o croce
$sinosì o no
$random $numeroda 0 a 100
$percentualeda 0% a 100%
$livelloda 1 a 100
$altezzada 1,40 m a 2,10 m
$pesoda 40 a 130 kg
$lunghezzada 1 a 30 cm
$grandezzada 1 a 50 cm
$etada 1 a 99 anni
$temperaturada -10 a 45 °C
$velocitada 1 a 320 km/h
$distanzada 1 a 1000 km
$soldi $euroda 0 a 100.000 €
$coloreun colore
$animaleun animale
$emojiuna emoji

Tre esempi

Un comando con una risposta viva

QUANDO   comando  !abbraccia
ALLORA   scrivi in chat
         $user abbraccia $touser per $random(3,30) secondi.

Un saluto ai raid, con lo shoutout

QUANDO   evento  Raid
ALLORA   scrivi in chat
         Benvenuti! $raider è arrivato con $viewers persone.
ALLORA   shoutout  (a chi ha raidato)

Una scommessa

QUANDO   comando  !scommetti
SE       costo $arg1 · probabilità 45
ALLORA   dai punti  a chi scrive  +$arg1
ALLORA   scrivi in chat
         $user punta $costo $monete e vince! Ora ne ha $punti.
ALTRIMENTI  scrivi in chat
         $user punta $costo $monete e perde tutto. Ne restano $saldo.

Nel terzo: il costo è la cifra scritta da chi gioca, si paga sempre, e la vincita raddoppia perché la puntata era già uscita.

I comandi pronti, e chi vince

Il bot porta con sé una quarantina di comandi già fatti — giochi, sorteggi, ore guardate, shoutout, VIP, sondaggi, musica. In Comandi, in fondo alla scheda, ci sono tutti: ognuno si spegne, si rinomina e si può riservare ad abbonati, VIP o moderatori.

Rinominare sostituisce: se chiami !slot in un altro modo, il nome di serie smette di rispondere. Un comando ha un nome, e lo scegli tu.

Due comandi non possono chiamarsi allo stesso modo: il secondo non partirebbe mai. Se ci provi, il pannello rifiuta e ti dice quale nome è già preso.

E la regola di sempre resta: un comando tuo con lo stesso nome vince su quello pronto. Non devi spegnere niente per sovrascrivere un comando di serie — basta crearne uno tuo che si chiami così.

Limiti e sicurezza

Lanciare un modulo da fuori

Ogni canale ha una chiave (la vede solo il proprietario, mai un moderatore). Con quella, un programma tuo — un'estensione, un pulsante della tastiera fisica, uno script — può far scrivere il bot o lanciare un modulo.

Si manda una POST all'indirizzo del canale con la chiave nell'intestazione Authorization, e nel corpo cosa fare: un messaggio, un effetto, o un modulo. Trenta richieste al minuto. Una chiave sbagliata riceve un 404, senza dire perché.

Quando un modulo non parte

Domande frequenti

Che differenza c'è fra un comando e un modulo?

Un comando è un modulo con l'innesco più semplice. Nel pannello i comandi hanno una schermata più corta perché la maggior parte delle volte basta quella; quando serve di più — condizioni, più azioni, un costo — è lo stesso motore.

Un modulo può fare più cose di seguito?

Sì, fino a otto azioni in fila, e puoi metterci una pausa in mezzo. Se una fallisce le altre continuano, così un servizio esterno spento non porta giù il resto.

Posso usare i moduli per fare un gioco a monete?

È esattamente quello per cui c'è l'azione punti, insieme al costo e alla probabilità. Nella scheda Giochi, in «I tuoi giochi», trovi sei ricette già scritte da cui partire: si aprono e si modificano lì, senza cambiare scheda.

I moduli funzionano anche su Kick?

Sì. Se vuoi, ogni modulo può essere limitato a una piattaforma sola; se non scegli niente vale ovunque.

Che succede se scrivo una variabile che non esiste?

Sparisce dal testo, senza lasciare il suo nome in chat e senza errori. Conviene comunque provare il modulo prima di lasciarlo agli spettatori.