Tag: telegram

Roger… il primo bot per Telegram scritto in Python

Partiamo con il primo bot per Telegram scritto in python.

Come prima cosa utilizzare il bot BotFather di Telegram per creare un nuovo bot e copiare il codice di attivazione che dovrà essere inserito nel codice del programma.

Questo bot farà una cosa molto semplice, ovvero analizza il formato del messaggio digitato e non farà altro che riproporlo nel formato:

Roger... TESTO DIGITATO SU TELEGRAM... passo...

Oltre ad interagire direttamente all’interno di Telegram, il programma visualizzaerà anche i messaggi digitati all’interno della finestra dove lo script è in esecuzione.

Anticipo che Telegram può essere scaricato per qualsiasi piattaforma compreso iOS e Linux… in questo modo è possibile utilizzare dispositivi più comodi rispetto al solito smartphone.

Qui di seguito è riportato il testo funzionante di questo primo e semplice bot.

import time
import telepot
import json
from telepot.loop import MessageLoop

def handle(msg):
content_type, chat_type, chat_id = telepot.glance(msg)
print(content_type, chat_type, chat_id)

if content_type == 'text':
text = msg['text']
bot.sendMessage(chat_id, 'Roger... ' + text + '...passo...')
print(msg["from"] ["first_name"] + " ha scritto " + msg["text"])

bot = telepot.Bot('COPIARE_CODICE_ATTIVAZIONE_BOT')
MessageLoop(bot, handle).run_as_thread()
print('BOT in ascolto ...')
# Questo ciclo itera il programma (agisce come un processo sempre attivo)
while 1:
time.sleep(10)

Questa è una schermata tratta da Telegram (questa è la versione per linux)

e questo è lo stesso output che si può leggere nella console.

Permanent link to this article: http://www.andrea.rustichelli.name/roger-il-primo-bot-per-telegram-scritto-in-python/

Telegram… vieni a me

Voglio programmare un Bot in Telegram usando il linguaggio Python. Queste sono le premesse.

Ovviamente occorre installare Python e un editor sulla macchina.  Successivamente è necessario installare la libreria TELEPOT (per interfacciarsi con le API di Telegram) e PPRINT per avere delle funzionalità aggiuntive sulla scrittura dei messaggi.

Entrambe le librerie le ho installate con il comando:

sudo easy_install3 telepot
sudo easy_install3  pprint

Per l’installazione delle librerie Python preferisco utilizzare il programma easy_install al posto di pip perchè con pip su Linux Mint 18.3 ottengo sempre dei messaggi di errore.

Apro IDLE (un veloce e leggero IDE per Python) e scrivo i seguenti comandi :

import telepot [con questa istruzione importiamo la libreria 'telepot' per gestire il bot]

bot = telepot.Bot('***** PUT YOUR TOKEN HERE *****') [richiamo il bot utilizzando 
il token associato al bot]

bot.getMe() [eseguo la funzione per visualizzare i dati principali del bot]

Ecco quello che viene visualizzato:

Se visualizziamo un testo come quello sopra riportato significa che ci siamo correttamente collegati al nostro Bot di Telegram che, in questo caso, si chiama zaccabot.

Permanent link to this article: http://www.andrea.rustichelli.name/telegram-vieni-a-me/