Telegram: che cos’è e come funziona getUpdates

di Lorenzo Neri
783 visualizzazioni

Telegram con le sue API offre il metodo “getUpdates”: in questo articolo scopriamo assieme che cos’è e come funziona, ma soprattutto… Come usarlo.

All’interno delle API di Telegram, abbiamo a disposizione un metodo molto pratico soprattutto per i chatbot.

Ciao mi chiamo Lorenzo Neri e sono un informatico: realizzo contenuti per aiutare le persone a padroneggiare l’arte del nuovo millennio, ovvero l’informatica!

Questo metodo è appunto “getUpdates”: in sintesi permette di avere diverse informazioni da parte di chi lo usa, molto utili ed essenziali in parecchi casi, soprattutto con i chatbot di Telegram.

Partiamo allora dal punto principale del nostro discorso.

Che cos’è il metodo getUpdates

Si tratta di un metodo che permette di ottenere aggiornamenti da parte del tuo chatbot come suggerisce il nome stesso, ma sono d’accordo che significhi tutto e niente la frase di prima.

Tutti i chatbot Telegram possono ricevere messaggi di ogni tipo a qualsiasi ora del giorno.

Questo che cosa significa? Che abbiamo modo di ottenerli, di catalogarli, di capire chi li ha inviati eccetera eccetera.

Te lo devi immaginare come un grande calderone dove arriva tutto quello che viene scritto e inviato al tuo chatbot, ma con un’unica e piccola ma importante peculiarità.

Il tuo chatbot è in grado di memorizzare tutti i messaggi che vuoi, ma non devono essere più vecchi di 24 ore

Le regole le fa Telegram non io!

Questo che cosa significa?

Oggi sono 13:07 del 22 Aprile 2021 e Mario ha appena scritto un messaggio di tipo testuale al tuo chatbhot.

Tramite il metodo getUpdates, di cui tra l’altro ti lascio la referenza ufficiale qui, puoi recuperare quel messaggio fino alle 13:07 del 23 Aprile 2021: alle 13:08 e un secondo spaccato quel messaggio sarà sparito.

Quindi, l’unico modo di salvare i messaggi vecchi è sfruttare i file oppure un tuo database: ma cerchiamo anche di capire come funziona “getUpdates”.

Ti piacerebbe scoprire come realizzare chatbot Telegram per tutti i tuoi progetti?

Scopri il percorso Telegram per il mondo embedded e IoT!

Come funziona?

Il metodo getUpdates può funzionare in due modi: tramite URL o tramite codice.

In entrambi casi comunque, si tratta di una richiesta HTTP a tutti gli effetti fatta in GET.

L’URL di cui hai bisogno è il seguente:

https://api.telegram.org/botIL_TOKEN_DEL_TUO_CHATBOT/getUpdates

fermiamoci un secondo sulla parte dell’URL dove c’è scritto “botIL_TOKEN_DEL_TUO_CHATBOT”.

La parola “bot” è da considerare a parte: va messa a prescindere.

Mentre il resto nient’altro che il token del tuo chatbot che puoi ottenere tramite BotFather.

E quindi come funziona il metodo getUpdates: facendo una richiesta HTTP GET all’URL di cui abbiamo appena parlato restituisce un array di oggetti di tipo Update.

Permettimi di mostrarti un esempio:

{
   "ok":true,
   "result":[
      {
         "update_id":update_id,
         "message":{
            "message_id":6,
            "from":{
               "id":il_mio_chat_id,
               "is_bot":false,
               "first_name":"Lorenzo",
               
               "username":"il_mio_user_name",
               "language_code":"it"
            },
            "chat":{
               "id":il_mio_chat_id,
               "first_name":"Lorenzo",
               
               "username":"il_mio_user_name",
               "type":"private"
            },
            "date":1619087941,
            "text":"ciao"
         }
      },
      {
         "update_id":update_id,
         "message":{
            "message_id":8,
            "from":{
               "id":il_mio_chat_id,
               "is_bot":false,
               "first_name":"Lorenzo",
               
               "username":"il_mio_user_name",
               "language_code":"it"
            },
            "chat":{
               "id":il_mio_chat_id,
               "first_name":"Lorenzo",
               
               "username":"il_mio_user_name",
               "type":"private"
            },
            "date":1619088167,
            "text":"hola"
         }
      },
      {
         "update_id":update_id,
         "message":{
            "message_id":11,
            "from":{
               "id":il_mio_chat_id,
               "is_bot":false,
               "first_name":"Lorenzo",
               
               "username":"il_mio_user_name",
               "language_code":"it"
            },
            "chat":{
               "id":il_mio_chat_id,
               "first_name":"Lorenzo",
               
               "username":"il_mio_user_name",
               "type":"private"
            },
            "date":1619090021,
            "text":"ciao"
         }
      },
      
   ]
}

Questi sono i vari messaggi fra me e il mio chatbot.

Come potrai notare, ci sono varie informazioni: chi è l’utente, qual è il suo chat id, cosa mi ha scritto, in che data, il suo username… Veramente tutto quanto.

Quindi, ecco che cos’è e come funziona il metodo “getUpdate” in Telegram, soprattutto a che cosa ci serve.

Naturalmente ti chiederai come usarlo nel codice: in questo articolo potrai trovare il chatbot più semplice da realizzare.

Al suo interno c’è un esempio di utilizzo del metodo getUpdates!

Continua a scoprire di più con questi articoli!

Lascia un commento

Questo sito potrebbe fare uso di cookie e siccome l'UE mi obbliga a fartelo presente, eccoti il classico banner dove puoi decidere come gestirli. Accetta Leggi di più