• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 1 voto(i) - 5 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
telegram un python semplice con creiamo bot

[Tutorial] Creiamo un semplice BOT telegram con python
#1
Ciao a tutti.

I requisiti per una corretta esecuzione del tutorial che vi sto a presentare sono:
  • smartphone con telegram installato
  • raspberry con raspbian jessy
  • mouse&tastiera
Cominciamo.

In primis apriamo il nostro telegram e aggiungiamo alla lista contatti un certo tipo che si chiama BotFather.
Costui non è altro che un creatore automatico di BOT, ovvero entità virtuali che eseguono comandi.
Il nostro scopo sarà spiegargli che deve crearne uno con il nome che preferiamo e immediatamente dopo configurare il raspberry per fargli assumere l'identità di questa entità virtuale. 
Alla fine della fiera - per farla pratica e sintetica - ci troveremo col nostro cellulare che, tramite una chat simil-whatsapp (quella di telegram appunto) parleremo col nostro raspberry che eseguirà i compiti per cui è stato programmato.

Apriamo la chat con BotFather e diamo la seguente istruzione
Codice:
/newbot

Il sistema ci chiederà di scrivere il nome del nostro bot, riportiamo il nome che preferiamo (esempio: ilmioraspberry)
Immediatamente dopo ci chiederà il nickname del bot, riportiamo anche qui il nome che preferiamo tenendo conto del fatto che DEVE finire con il suffisso "bot" (esempio: ilmioraspberrybot).

Ora il sistema finalmente ci risponderà con due informazioni vitali per proseguire.
  • un link del tipo: telegram.me/ilmioraspberrybot
  • un codice API in questo formato: 292514354:AAEOrtAuOTWInyFuWQ3rj0QhBFXN32ASf2Q
Al primo link ci clicchiamo sopra per aprire la chat col nostro bot ancora silente.
Il secondo lo teniamo per dopo.

Adesso accediamo al nostro raspberry e diamo
Codice:
sudo apt-get install python3 python3-pip

e poi diamo
Codice:
sudo pip install telepot

adesso creiamo il file di funzionamento del bot
Codice:
nano raspybot.py

e ci incolliamo dentro questa sfilza di codici
Codice:
#!/usr/bin/python
import time
import telepot
import commands

def handle(msg):
   chat_id = msg['chat']['id']
   command = msg['text']

   print ('Got command: %s' % command)

   if command == '/uptime':
       var1 = commands.getoutput("uptime")
       bot.sendMessage(chat_id,var1)
   elif command == '/start':
       bot.sendMessage(chat_id,"Ciao, bentornato.")
   elif command == '/ciao':
       bot.sendMessage(chat_id,"Ciao a te!")

bot = telepot.Bot('ILPROPRIOCODICEAPI')
bot.message_loop(handle)
print ('Sto ascoltando ...')

while 1:
    time.sleep(10)
Abbiate cura di sostituire la parola ILPROPRIOCODICEAPI con il vostro, che vi siete segnati poco più sopra.

Adesso lo eseguiamo con
Codice:
python raspybot.py

Il sistema ci risponderà con la frase "Sto ascoltando..."

Andiamo nella chat del nostro bot sul nostro cellulare e digitiamo
Codice:
/ciao

E, se tutto va bene, il bot ci risponderà salutandoci.

I comandi con cui lo abbiamo programmato sono /ciao per un saluto, /start per un messaggio di benvenuto e /uptime per avere informazioni circa l'uptime del proprio raspberry.

Per avviare lo script in avvio al sistema basta aprire il file /etc/rc.local e prima della riga con "exit 0" incollare
Codice:
python /home/UTENTE/raspbybot.py &
al posto di UTENTE ovviamente metteteci il vostro utente.

Spero il tutorial sia chiaro e lineare, se incontrate problemi sarò ben felice di approfondirli con voi perchè sono alle prime armi anche io Smile



Coltiva linux, che windows si pianta da solo! (cit.)
Risposta
#2
Fantastico, complimenti!!
Risposta
#3
grazie , fantastico!
Heart Libro  | Blog EnricoSartori.it | Idea YouTube
Se un utente ti è stato utile, aumenta la sua reputazione! premi il Pollicione! 
Risposta
#4
Big Grin 
per gli script python :

Codice:
elif command == '/temp':
       var1 = commands.getoutput("python /home/pi/script/am2320.py")
       bot.sendMessage(chat_id,var1)

Alla fine chattate con BotFather selezionando /setcommands, per dargli la lista dei comandi impostati nel bot.
e /setuserpic per caricagli una foto
Heart Libro  | Blog EnricoSartori.it | Idea YouTube
Se un utente ti è stato utile, aumenta la sua reputazione! premi il Pollicione! 
Risposta
#5
Grazie per le integrazioni Smile
Quanto prima le includo nel tutorial per renderle disponibili a chi legge.



Coltiva linux, che windows si pianta da solo! (cit.)
Risposta
#6
ciao qualcuno ha già creato un codice per python3?
Risposta
  


Vai al forum:


Navigazione: 2 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect