Telegram bot amb Python: Diferència entre les revisions

De Cacauet Wiki
Dreceres ràpides: navegació, cerca
(Bots)
(Telepot, una llibreria per bots de Telegram amb Python)
Línia 43: Línia 43:
 
Implementa diferents comandes pel bot, com a mínim la comanda que llisti totes les comandes disponibles:
 
Implementa diferents comandes pel bot, com a mínim la comanda que llisti totes les comandes disponibles:
 
  /help
 
  /help
 +
 +
ENTREGA:
 +
* Codi del teu bot
 +
* Nom del bot que has creat, per tal que el professor pugui comprovar la funcionalitat
  
 
<br>
 
<br>

Revisió de 19:26, 7 març 2017

La missatgeria instantània ha esdevingut molt important sobretot amb aplicacions mòbils com WhatsApp i Telegram.

Telegram té diversos avantatges pels programadors:

  • ens permet fer aquests "roBOTS" als que podem enviar comandes i automatitzar funcions per als nostres xats.
  • hi ha clients per línia de comandes i per versió Desktop tant en Windows com en Linux.


Intro

Info:


Telegram des de línia de comandes

Instal·la't això:

https://github.com/vysheng/tg

Potser et cal instal·lar aquestes libs:

# apt-get install libevent-dev openssl libssl-dev libreadline libreadline-dev libconfig-dev libjansson-dev 



Bots

Per aconseguir posar en marxa el nostre BOT, caldrà:

  1. Tenir un compte de Telegram (caldrà tenir el mòbil a mà perquè ens validarà per SMS).
  2. Demanar la creació d'un nou bot a l'usuari BotFather del Telegram amb la comanda
    /newbot
  3. El nou bot té un TOKEN, que cal apuntar per utilitzar-ho més tard.

El bot, en principi, no té accés a les converses del xat (es pot habilitar, però per defecte no les llegeix). Només llegirà els missatges que comencin per "/", a les que anomenarem comandes.


Telepot, una llibreria per bots de Telegram amb Python

Hi ha diverses llibreries possibles, però aquesta és prou senzilla d'utilitzar:

http://telepot.readthedocs.io

Segueix el propi tutorial de la documentació. Veuràs que et guia perquè creis el codi. Bàsicament tens diverses opcions:

  • Carregar síncronament els missatges que hi hagi a la cua cada certs segons.
  • Fer una funció handle que es cridi (mitjançant un message_loop) quan algú ens envii una comanda.

Implementa diferents comandes pel bot, com a mínim la comanda que llisti totes les comandes disponibles:

/help

ENTREGA:

  • Codi del teu bot
  • Nom del bot que has creat, per tal que el professor pugui comprovar la funcionalitat