Chi è online

Abbiamo 2 visitatori e nessun utente online

Tutorial LillaPedia

Ciao! Questo è LillaPedia, un bot telegram ideato dalla 4C del Liceo Scientifico e delle Scienze Applicate "V.Lilla" di Oria(BR), nell'a.s. 2018/19.
Grazie a lui potrai avere gli appunti di filosofia a portata di un semplice click e potrete dire addio a tutti quei pomeriggi passati a riassumere i mattoni di filosofia.

A questo punto vi chiederete "Come si fa?".
Semplice, occorre solo avere un account Telegram (servizio di messaggistica istantanea) e avviare la app. Ora basta digitare @lillapedia_bot nella barra di ricerca e il gioco è fatto.
Aperto il bot, avrete davanti una chat, all'interno della quale noterete il pulsante "AVVIA".
Cliccandoci sopra, LillaPedia comunicherà con voi come se fosse un normale account e allo stesso modo voi potrete interagire con lui.

Per visualizzare la lista dei filosofi presenti nel nostro database potrete utilizzare il comando /filosofi presente nel messaggio di start o premere il pulsante “filosofi” sulla tastiera.
Ma questa è solo la punta dell’iceberg, se pensate che vi possa essere utile replicare questo progetto, seguite attentamente il tutorial sottostante.

Il tutorial è strutturato in più fasi:

1. Creazione di un bot su Telegram
2. Creazione del Google Sheet
3. Creazione dello script
4. Collegamenti e conclusioni

Creazione del bot Telegram:

Una volta avviato Telegram cercate il bot che si chiama @BotFather e vi apparirà una finestra di chat.
Il passo che segue è il click del tasto “AVVIA” a cui susseguono una lunga lista di comandi con cui gestire al meglio i vostri bot. In basso digitate /newbot(il comando che ci interessa) che vi consentirà, appunto, di creare il vostro primo bot Telegram. Una volta inviato il comando vi chiede di dare un nome al bot. Infine, BotFather vi fa un’ultima richiesta (assolutamente importante), ovvero quella di dare un username al vostro nuovo bot, con l’unico obbligo di farlo terminare con la parolina “bot” o “_bot”.
BotFather vi regalerà una serie di informazioni ed in particolare un complicatissimo TOKEN API che rappresenta la chiave di accesso al bot. Appuntatevelo, vi servirà!

Creazione del Google sheet:

Bisogna specificare che Google sheet consente la pubblicazione del contenuto direttamente sul web e ci dà la possibilità di essere interrogato, perciò fungerà da database per il nostro bot telegram.
Procediamo! Creiamo un foglio di calcolo e chiamiamolo “FILOSOFIA”, poi rinominiamo le sue prime quattro colonne: Filosofo, Vita, Opere, Pensiero.
Ora basta aggiungere sotto di esse tutte le informazioni relative ai filosofi presenti, facendo attenzione a non lasciare qualche spazio vuoto, poiché provocherà un malfunzionamento del bot (vedremo in seguito il perché).
Quello che dovrete fare ora è appuntarvi un altro stranissimo codice che è il KeyID dello spreadsheet e che troverete nel link in alto, qualcosa come la parte in rosso:

https://docs.google.com/spreadsheets/d/1eTwW6bqpmde2o_tlAbHRP3QLSWc70N5Mf0CGLs6eDYc/edit#gid=0

Creazione dello script :

Questa sarà la parte più impegnativa del bot, quindi leggete con accuratezza. Partiamo col dire che il codice verrà suddiviso in quattro parti: l'area dichiarativa, la funzione di ricerca di un filosofo, la funzione di risposta e la funzione di posting.
Andiamo ad analizzare la prima:

AREA DICHIARATIVA

In questa parte di codice andremo a dichiarare come variabili globali il KeyID (ovvero la parte evidenziata in rosso nel link sopracitato) e il TOKEN API che ci ha fornito BotFather al momento della creazione del bot. In questo modo le due variabili potranno essere richiamate ovunque all'interno del codice.
Passiamo dunque a vedere la seconda parte:

FUNZIONE DI RICERCA ELENCO FILOSOFI



In questa parte andremo a dichiarare globalmente la funzione Filosofia , e al suo interno dichiareremo localmente la variabile ss (fa in modo che il codice ed lo spreadsheet si colleghino), la variabile metaSheet (la quale individua il foglio dello spreadsheet in cui cercare) , la variabile elenco, e la variabile lastrow ( ponendola =2 il bot inizierà a cercare dalla casella A1).
Con un ciclo while faremo in modo che il bot inizi a inserire in un elenco cliccabile tutti i filosofi presenti nel database, aggiornando la variabile lastrow fino a quando non incontrerà una casella vuota. (WARNING: il bot leggerà una casella come vuota, qualora ci sia uno spazio all'inizio del testo)
Adesso passeremo ad analizzare la terza parte:


FUNZIONE DI RISPOSTA INDICAZIONI SINGOLO FILOSOFO


Questa parte di script ha la funzione di rispondere al nome del filosofo cliccabile in elenco. In questo caso il bot cercherà di far combaciare l' input con uno dei filosofi presenti nel database; se il processo va a buon fine, il bot vi risponderà con tutte le informazioni relative al filosofo cercato. Qualora il filosofo non sia presente nel database il bot manderà in output un messaggio di errore.
Infine andremo ad analizzare la quarta ed ultima parte del codice:

FUNZIONE DI POSTING



Questa è la parte di script che si occupa di rispondere al messaggio di start o a /filosofi.
Con un sistema switch-case si andranno a separare le varie possibilità e per ognuna di esse scrivere un messaggio di risposta.   
Inoltre con un questo pezzo di stringa '+msg.chat.first_name+' il bot vi riconoscerà, chiamandovi con il vostro nome.

Collegamenti e conclusioni:
L’operazione che faremo si chiama WebHook. Un Webhook (in italiano letteralmente: "uncino del web") nella programmazione informatica sul web è un metodo per aumentare o alterare il comportamento di una pagina web, o di un'applicazione web con chiamate di ritorno (callback) personalizzate. In altre parole è un modo per uncinare un database e poterlo interrogare ogni volta che si vuole secondo il codice che abbiamo scritto.
Per fare il webhook abbiamo bisogno di due informazioni, il TOKEN del bot che avete salvato all’inizio e l'URL dell'App web ottenuto dopo la pubblicazione dello script.
https://api.telegram.org/bot{TOKEN}/setWebHook?url={WEB_APP_URL}
occorrerà scrivere nel vostro browser qualcosa del genere in cui dovrete sostituire al {TOKEN} quello ottenuto da botfather e a {WEB_APP_URL} il link di pubblicazione dell'App dello script.
Il browser vi restituirà un messaggio di ok ed il vostro bot sarà pronto.

PILLOLA-CITAZIONE


Oltre a rendere più semplice il vostro studio, il nostro bot è in grado di regalarvi in maniera casuale delle pillole di saggezza dei filosofi presenti nel database cliccando il comando /pillola.
Il nostro lavoro finisce qui, per ora. Speriamo di essere stati utili per una vostra nuova idea ;).

Buono studio!

%MCEPASTEBIN%

Copyright © 2019 comakinglab. Tutti i diritti riservati.
Joomla! è un software libero rilasciato sotto licenza GNU/GPL.

NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Learn more

I understand
@Progetto di "officina didattica creativa" Liceo Scientifico "Vincenzo Lilla" di Oria(BR) Docente: Prof. Domenico APRILE

Please publish modules in offcanvas position.