In questo articolo vedremo come è possibile creare un bot di Telegram per inviare i messaggi all’interno di un gruppo utilizzando Python.
BotFather: come creare e gestire il bot
Per prima cosa bisogna creare il Bot su Telegram. Per farlo occorre utilizzare il Bot di Telegram BotFather.
Questo Bot vi permette di creare e gestire i Bot che avete precedentemente creato. BotFather lo trovate cercando “BotFather” nella barra di ricerca di Telegram, oppure all’indirizzo diretto https://t.me/botfather.
La creazione del Bot
Ecco i passi da seguire per la creazione del Bot:
- Aprite il bot di Telegram BotFather
- Cliccate in basso sui comandi del bot (icona / di fianco alla casella per scrivere i messaggi) e selezionate il comando /newbot
- Digitate il nome che volete dare al bot
- Digitate l’username che volete dare al bot
- Salvatevi il token di accesso alle API HTTP che vi ha generato
Prepariamo l’ambiente di sviluppo
Per poter controllare il bot e farlo interagire è necessario sviluppare uno script in Python.
Per preparare l’ambiente di sviluppo per prima cosa bisogna accertarsi di aver installato Python3. Nel caso di Ubuntu, per installare Python3 basta eseguire il comando da terminale:
sudo apt install python3
Per installare la libreria del bot bisogna verificare che sia installato il gestore dei pacchetti di python3, ovvero pip3. Nel caso di Ubuntu, per installarlo bisogna eseguire il comando da terminale:
sudo apt install python3-pip
Una volta installato i due pacchetti o controllato di averli bisogna installare la libreria del bot telepot. Nel caso di Ubuntu, per installarlo bisogna eseguire il comando da terminale:
pip3 install telepot
La struttura dello script in Python
Una volta predisposto l’ambiente di sviluppo possiamo preparare lo script in Python per inviare i messaggi con il Bot. La struttura dello script in Python è la seguente:
import telepot
TOKEN="xxxxxxxxxxxxxxx"
chat_id="xxxxxxxxxxxxxx"
bot=telepot.Bot(TOKEN)
bot.sendMessage(chat_id,"Il testo del messaggio")
Vediamo la spiegazione del codice nel dettaglio:
import telepot in questa riga importiamo la libreria telepot per poter mandare i messaggi al bot.
TOKEN è la variabile in cui bisogna inserire il codice di accesso alle API HTTP che vi ha fornito BotFather quando avete creato il bot.
chat_id è l’id dell gruppo in cui volete inserire il bot. Per inserire il bot nel gruppo basta digitare il suo nickname dove di solito aggiungete i membri del gruppo stesso. Per vedere come trovare il chat_id di un gruppo consultate questo link in cui vi viene spiegato passo passo come fare.
bot= telepot.Bot(TOKEN) in questa riga si va a creare il riferimento al vostro bot grazie al TOKEN.
bot.sendMessage(chat_id,”Il testo del messaggio”) è la funzione con cui il bot manda il messaggio nel gruppo in cui lo avete inserito. Come parametri si aspetta il chat_id del gruppo e il messaggio da inviare sotto forma di stringa.
Considerazioni finali e spunti
Ovviamente il codice che abbiamo visto è molto semplice, ma immaginate con qualche piccola modifica con cosa potete sfruttarlo. Ad esempio se avete un sistema domotico nella vostra abitazione potete creare un bot che in maniera periodica vi informa dei dati dei sensori del vostro sistema.