Telegram, servizio di messaggistica istantanea, consente di avere conversazioni tra due o più utenti, effettuare chiamate vocali, scambiare messaggi vocali, videomessaggi, fotografie, video. Da qualche tempo, oltre a raccogliere sempre più consensi tra gli utenti, Telegram permette di condividere articoli, con foto e link al sito di origine, attraverso un suo canale.
Tali articoli possono essere quelli di un blog creato con i più conosciuti CMS in circolazione. Condizione importante: gli articoli devono essere distribuiti via RSS.
Telegram ed RSS da soli non bastano. Ci si deve avvalere di un servizio web, IFTTT, il quale permette la creazione di semplici catene di condizioni, chiamate applet.
Tradotto: IFTTT può automatizzare processi legati ad applicazioni web, pubblicando uno stesso contenuto su diversi social network.
La definizione appena riportata è proprio quella che fa al caso nostro ed è il fulcro del presente tutorial.
Cosa serve per distribuire automaticamente articoli attraverso il social network:
- Creazione di un canale Telegram
- Creazione di un Bot Telegram
- Rendere il Bot amministratore del canale Telegram
- Creare un account IFTTT
- Configurare ed attivare una applet in IFTTT
Creazione di un canale Telegram
Accedere a Telegram da smartphone e selezionare Nuovo canale.

Nella schermata successiva, si deve necessariamente assegnare un nome al canale. Opzionalmente possiamo inserire una foto rappresentativa, una breve descrizione ed un link che riporta al proprio sito.

Scegliere un nome breve per il canale, che identifichi il sito e che sia facilmente memorizzabile dagli altri utenti. Passaggio molto importante: impostare il canale su pubblico.

N.B. Il nome del canale non deve essere uguale allo username che è stato scelto in fase di attivazione su Telegram.
A questo punto riceveremo la notifica che il canale è stato creato, confermato dalla presenza della doppia spunta verde, a destra del nome.

Nella lista, se presente, di tutti i canali Telegram ai quali siamo iscritti, vedremo anche il nostro, appena creato.
Creazione di un Bot Telegram
Questo secondo step prevede la creazione di un bot Telegram. Di cosa si tratta?
Un bot Telegram lo si potrebbe paragonare ad un essere superiore, un super utente, con super poteri, che risponde ad un comando per il quale è stato creato.
E' un automatismo che assiste l'utente a trovare una soluzione o una informazione importante. Vedasi, per esempio, una risposta automatica quando inviamo una email, quando scriviamo un messaggio in qualche chat ecc.
Per creare il bot Telegram, dobbiamo "interrogare" un programma. Il termine corretto sarebbe invocare il padre di tutti i Bot. Per fare questo, bisogna entrare nel proprio canale e fare tap sui tre puntini verticali, in alto a destra della schermata.
Selezionare Cerca e digitare:
@BotFather
Appena appare l'icona del Bot, fare tap su di essa.

Viene mostrata una brevissima descrizione di quello che il programma può fare per noi.

Digitando /start
esso si attiverà immediatamente e mostrerà tutti i comandi che può svolgere.

Scegliere nome e username per il Bot
A noi interessa, ovviamente, il primo dei comandi: /newbot
e lo digiteremo (slash compreso e senza spazi) nella parte inferiore della chat con @BotFather.
Appena digitiamo il comando /newbot
, BotFather risponderà con:
Alright, a new bot. How are we going to call it? Please choose a name for your bot.
Noi scriveremo un nome (prendere appunti nel caso lo si dimentichi) per il Bot che @BotFather creerà per noi. Premere invio.
Successivamente @BotFather ci risponderà con il seguente messaggio:
Good. Now let's choose a username for your bot. It must end in 'bot'. Like this, for example: TetrisBot or tetris_bot.
Anche in questo caso sarebbe bene prendere appunti per ricordarsi lo username del Bot.
N.B. Il nome del Bot ed il suo username NON devono essere uguali.
Se lo username da noi scelto è disponibile e valido, il Bot ci risponderà con:
Done! Congratulations on your new bot. You will find it at t.me/NOMEBOT. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you've finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this. Use this token to access the HTTP API: TOKEN = stringa alfanumerica univoca For a description of the Bot API, see this page: https://core.telegram.org/bots/api
Prendere nota del TOKEN (una sequenza alfanumerica univoca) in quanto ci servirà nel sito IFTTT per creare e configurare una applet.

Rendere il Bot amministratore del canale Telegram
Affinchè il Bot possa pubblicare articoli in automatico nel canale creato, è obbligatorio renderlo amministratore. Come se volessimo dare questo potere ad un utente.
Entrare nel canale creato dall'applicazione mobile. Selezionare l'immagine che rappresenta il canale e fare tap su Amministratori.
Nella schermata successiva, selezionare Aggiungi amministratore.

In questa fase si deve aggiungere il nome del Bot e NON lo username.
Ricordo che il nome del Bot, come indicatoci da BotFather, è quello che termina con bot
o con _bot
.
Se tutto quanto fatto fin qui è andato bene, adesso dovremmo avere il nostro Bot nell'elenco degli amministratori.

Creare un account IFTTT
L'acronimo IFTTT sta per: If This Then That, che possiamo tradurre con "se accade questo" (If This), "fai quello" (Then That).
Come scritto all'inizio dell'articolo, IFTTT può rendere automatici determinati eventi al verificarsi di alcune condizioni. Bene, adesso entriamo un po' di più nello specifico e vediamo da vicino cosa fa IFTTT.
Nel nostro caso IFTTT verifica se esiste un nuovo elemento (il nostro articolo) nel feed RSS (If This).
Esiste? La condizione IF è soddisfatta? Allora lo pubblica automaticamente in Telegram (Then That), automatismo dell'evento.
Terminata questa, spero, importante parte teorica, spostiamoci nel sito IFTTT per creare un account.
Fare click su Sign up e registrarsi con email e password. Premere il pulsante create account.
Creare una nuova Applet in IFTTT
Terminato il processo di registrazione, in alto a destra fare click sul proprio username. Dal menu a discesa selezionare: New Applet.
La pagina successiva visualizza la creazione della prima parte della "condizione" ⇒ If This.
Fare click sul link di colore celeste "+ this".

IFTTT ci visualizza la pagina nella quale scegliere quale tipo di servizio creare.
Come si può vedere, ce ne sono tantissimi a disposizione. Per il nostro scopo ci interessa RSS Feed.
Se non è immediatamente visibile, nel campo di testo scriviamo: feed.
Il motore di ricerca di IFTT esegue la query e ci mostra l'applicazione richiesta.

Click su RSS Feed. IFTTT ci fa scegliere quale deve essere l'attivatore, trigger, da selezionare.
Click su New feed item. La descrizione è molto esplicativa:
This Trigger fires every time a new item is added to the feed you specify

Il passaggio successivo, Complete trigger fields, chiede di inserire l'URL dal quale prelevare i Feed RSS. In questo caso fare attenzione all'URL del Feed del proprio sito. Scriverlo nel campo Feed URL e premere il pulsante Create trigger.

Con questi passaggi abbiamo creato la prima parte della condizione inerente l'automatizzazione degli articoli: If This.
Ci occuperemo adesso della seconda: Then That.
Infatti, immediatamente dopo aver creato il Trigger, avremo questa visualizzazione:

Come leggere questa prima parte del Trigger dopo la sua creazione?
if RSS
, vale a dire: se esiste un URL corretto che distribuisce un Feed, cosa devo fare?
Risposta: Then That. ⇒ fai quello. Fare click su "+ that".
Adesso dobbiamo selezionare un action service, servizio di azione, che pubblichi i nostri articoli in modo automatico.
Nel campo di testo, digitare: Webhooks. Fare click su di esso.

Il quarto passaggio, Choose action, ci avverte che questa azione farà una richiesta web ad un URL accessibile pubblicamente. Come è intuibile, l'URL accessibile pubblicamente è quello del nostro Feed RSS. Ed è esattamente quello che noi vogliamo che accada affinchè nel canale Telegram siano pubblicati gli articoli.

Fare click su Make a web request.
Nel passaggio successivo, Complete action fields, dobbiamo configurare i campi di azione con tutti i dati, come segue.
URL
Prestare attenzione quando si scrive l'URL. In esso devono essere inseriti due dati molto importanti.
- TOKEN
- Nome Canale
Il TOKEN
è la sequenza alfanumerica ricevuta da @BotFather
in fase di creazione del Bot.
Il nome del canale è quello scelto da noi quando abbiamo creato il canale su Telegram.
Fatte queste due precisazioni, l'URL deve essere scritto nel modo riportato di seguito.
https://api.telegram.org/botTOKEN-INVIATO-DA-BotFather/sendMessage?chat_id=@NOME-CANALE-TELEGRAM&text={{EntryUrl}}
N.B. Il modo corretto di scrivere il TOKEN è:
/botTOKEN-INVIATO-DA-BotFather
NON
/bot spazio TOKEN-INVIATO-DA-BotFather
Method
Per quanto riguarda il metodo, la demo è stata fatta con POST
. Funziona, in quanto verificato. Con GET è probabile che il comportamento sia identico ma sarebbe da provare. Quindi selezionare:
POST
Content Type
Per il Content Type selezionare:
application/x-www-form-urlencoded
Body possiamo lasciarlo vuoto.
Fare click su Create action e poi su Finish.
Se tutto è andato per il verso giusto, vedremo la nostra applet in cima alle altre presenti ed associate allo username di IFTTT.
Effettuare controlli con Webhooks
Dopo che è stato settato il tutto e, cosa più importante Webhooks, dovremmo scrivere un articolo nel notro sito per vederlo nel canale Telegram. A questo punto o incrociamo le dita oppure possiamo "interrogare" Webhooks da browser web.
Innanzitutto, per vedere se è configurato correttamente, possiamo agire con il comando setWebhook
. Ecco cosa scriveremo nella barra degli indirizzi.
https://api.telegram.org/botTOKEN-INVIATO-DA-BotFather/setWebhook?url=https://telegram.org/nomebotBot
oppure
https://api.telegram.org/botTOKEN-INVIATO-DA-BotFather/setWebhook?url=https://telegram.org/nomebot_bot
a seconda del nome scelto pe il Bot.
La risposta che riceveremo sarà:
{"ok":true,"result":true,"description":"Webhook is already set"}
Webhook is already set
è la risposta che ci attendiamo. Fin qui tutto ok e nessun problema.
Aggiungere testo da browser web nel canale Telegram
Sempre per verificare che il Webhook sia stato configurato in maniera corretta, possiamo aggiungere una parola, una frase, quello che vogliamo, nel nostro canale Telegram.
Nel browser, scrivere:
https://api.telegram.org/botTOKEN-INVIATO-DA-BotFather/sendMessage?chat_id=@NomeCanaleTelegram&text=Hello World Telegram!
Appena premuto INVIO, la risposta è stata:
{ "ok":true, "result":{ "message_id":8, "chat":{ "id":-NUMERO ID CHAT, "title":"NOME CANALE", "username":"TUO USERNAME", "type":"channel" }, "date":1552647196, "text":"Hello World Telegram!" } }
E nel mio canale è apparso il testo: "Hello World Telegram!"
Due test su due sono andati a buon fine. La cosa ci lascia molto ben sperare :)
Prova definitiva. Ho scritto un articolo demo in un mio sito di prova. Dopo qualche secondo ho visto lo stesso articolo condiviso nel canale Telegram come mostrato nell'immagine che segue.

Aggiornamento in tempo reale
L'applet IFTTT comincia a condividere articoli dopo che è stata creata e configurata. Essa viene "allertata" attraverso la lettura del Feed RSS.
Se dovesse rilevare la presenza di un nuovo articolo, immediatamente lo distribuisce nel canale Telegram. Di seguito posto la screenshot, presa dal mio smartphone, del presente tutorial. Appena pubblicato, immediatamente condiviso.

Conclusioni
L'immagine qui su mostra 2 diverse URL. Il mio sito personale ed uno di prova, realizzato con Joomla!
Nulla vieta, in IFTTT, di creare 2 o più applet e convogliare le loro action in un unico canale Telegram.
Che si abbia un sito statico, o realizzato con un CMS proprietario, o con Wordpress oppure Joomla!, non fa alcuna differenza.
Quello che conta è fare tutti i passaggi in maniera corretta e distribuire gli articoli via Feed RSS.
Spero che questa guida ti sia stata utile e ti ringrazio sin da ora se vorrai continuare a seguirmi.